aboutsummaryrefslogtreecommitdiff
path: root/app/features/onboarding/constants.js
blob: 2e115000e19412c2c5019931edfd84ae522d0a71 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// @flow
import { OnboardingModal, OnboardingSpotlight } from './components';
import { openDrawer, closeDrawer } from '../navbar';
import { SettingsDrawer } from '../settings';

export const onboardingSteps = {
    'welcome-page': [
        'onboarding-modal',
        'conference-url',
        'settings-drawer-button'
    ],
    'settings-drawer': [
        'server-setting',
        'server-timeout',
        'always-on-top-window'
    ]
};

export const onboardingComponents = {
    'onboarding-modal': { type: OnboardingModal },
    'conference-url': {
        type: OnboardingSpotlight,
        dialogPlacement: 'bottom center',
        target: 'conference-url',
        text: 'onboarding.conferenceUrl'
    },
    'settings-drawer-button': {
        type: OnboardingSpotlight,
        dialogPlacement: 'top right',
        target: 'settings-drawer-button',
        text: 'onboarding.settingsDrawerButton',
        onNext: (props: OnboardingSpotlight.props) => props.dispatch(openDrawer(SettingsDrawer))
    },
    'server-setting': {
        type: OnboardingSpotlight,
        dialogPlacement: 'top right',
        target: 'server-setting',
        text: 'onboarding.serverSetting'
    },
    'server-timeout': {
        type: OnboardingSpotlight,
        dialogPlacement: 'top right',
        target: 'server-timeout',
        text: 'onboarding.serverTimeout'
    },
    'always-on-top-window': {
        type: OnboardingSpotlight,
        dialogPlacement: 'top right',
        target: 'always-on-top-window',
        text: 'onboarding.alwaysOnTop',
        onNext: (props: OnboardingSpotlight.props) => setTimeout(() => {
            props.dispatch(closeDrawer());
        }, 300)
    }
};