mirror of
https://github.com/netzbegruenung/jitsi-meet-electron.git
synced 2024-05-04 01:33:42 +02:00
38 lines
1 KiB
JavaScript
38 lines
1 KiB
JavaScript
|
// @flow
|
||
|
|
||
|
import { setActiveOnboarding } from './actions';
|
||
|
import { CONTINUE_ONBOARDING, START_ONBOARDING } from './actionTypes';
|
||
|
import { onboardingSteps } from './constants';
|
||
|
|
||
|
export default (store: Object) => (next: Function) => (action: Object) => {
|
||
|
const result = next(action);
|
||
|
const state = store.getState();
|
||
|
|
||
|
switch (action.type) {
|
||
|
case CONTINUE_ONBOARDING: {
|
||
|
const section = state.onboarding.activeOnboardingSection;
|
||
|
|
||
|
const nextStep = onboardingSteps[section].find(
|
||
|
step => !state.onboarding.onboardingShown.includes(step)
|
||
|
);
|
||
|
|
||
|
store.dispatch(setActiveOnboarding(nextStep, nextStep && section));
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
case START_ONBOARDING: {
|
||
|
const { section } = action;
|
||
|
const nextStep = onboardingSteps[section].find(
|
||
|
step => !state.onboarding.onboardingShown.includes(step)
|
||
|
);
|
||
|
|
||
|
if (nextStep) {
|
||
|
store.dispatch(setActiveOnboarding(nextStep, section));
|
||
|
}
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return result;
|
||
|
};
|