2024-10-22 15:15:55 +02:00
|
|
|
import ACTION_TYPES from './action-types';
|
|
|
|
|
|
|
|
const defaultState = {
|
|
|
|
isSaving: false,
|
2024-10-23 18:15:37 +02:00
|
|
|
clientId: '',
|
|
|
|
clientSecret: '',
|
2024-10-22 15:15:55 +02:00
|
|
|
data: {
|
|
|
|
step: 0,
|
2024-10-23 15:38:00 +02:00
|
|
|
useSandbox: false,
|
|
|
|
useManualConnection: false,
|
2024-10-22 15:15:55 +02:00
|
|
|
},
|
|
|
|
};
|
|
|
|
|
|
|
|
export const onboardingReducer = (
|
|
|
|
state = defaultState,
|
|
|
|
{ type, ...action }
|
|
|
|
) => {
|
|
|
|
switch ( type ) {
|
2024-10-23 18:14:25 +02:00
|
|
|
// Transient data.
|
|
|
|
case ACTION_TYPES.SET_IS_SAVING_ONBOARDING_DETAILS:
|
2024-10-22 15:15:55 +02:00
|
|
|
return {
|
|
|
|
...state,
|
2024-10-23 18:14:25 +02:00
|
|
|
isSaving: action.isSaving,
|
2024-10-22 15:15:55 +02:00
|
|
|
};
|
|
|
|
|
2024-10-23 18:15:37 +02:00
|
|
|
case ACTION_TYPES.SET_CLIENT_ID:
|
|
|
|
return {
|
|
|
|
...state,
|
|
|
|
clientId: action.clientId,
|
|
|
|
};
|
|
|
|
|
|
|
|
case ACTION_TYPES.SET_CLIENT_SECRET:
|
|
|
|
return {
|
|
|
|
...state,
|
|
|
|
clientSecret: action.clientSecret,
|
|
|
|
};
|
|
|
|
|
2024-10-23 18:14:25 +02:00
|
|
|
// Persistent data.
|
|
|
|
case ACTION_TYPES.SET_ONBOARDING_DETAILS:
|
2024-10-22 15:15:55 +02:00
|
|
|
return {
|
|
|
|
...state,
|
2024-10-23 18:14:25 +02:00
|
|
|
data: action.payload,
|
2024-10-22 15:15:55 +02:00
|
|
|
};
|
2024-10-22 18:56:37 +02:00
|
|
|
|
|
|
|
case ACTION_TYPES.SET_ONBOARDING_STEP:
|
|
|
|
return {
|
|
|
|
...state,
|
|
|
|
data: {
|
|
|
|
...( state.data || {} ),
|
|
|
|
step: action.step,
|
|
|
|
},
|
|
|
|
};
|
|
|
|
|
2024-10-23 15:38:00 +02:00
|
|
|
case ACTION_TYPES.SET_SANDBOX_MODE:
|
|
|
|
return {
|
|
|
|
...state,
|
|
|
|
data: {
|
|
|
|
...( state.data || {} ),
|
|
|
|
useSandbox: action.useSandbox,
|
|
|
|
},
|
|
|
|
};
|
|
|
|
|
|
|
|
case ACTION_TYPES.SET_MANUAL_CONNECTION_MODE:
|
|
|
|
return {
|
|
|
|
...state,
|
|
|
|
data: {
|
|
|
|
...( state.data || {} ),
|
|
|
|
useManualConnection: action.useManualConnection,
|
|
|
|
},
|
|
|
|
};
|
|
|
|
|
2024-10-22 18:56:37 +02:00
|
|
|
default:
|
2024-10-22 15:15:55 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
return state;
|
|
|
|
};
|
|
|
|
|
|
|
|
export default onboardingReducer;
|