diff options
author | Paul Frazee <pfrazee@gmail.com> | 2022-11-07 15:35:51 -0600 |
---|---|---|
committer | Paul Frazee <pfrazee@gmail.com> | 2022-11-07 15:35:51 -0600 |
commit | d228a5f4f5d118f30129f3bafd676bfe0e80bf38 (patch) | |
tree | e292e9d3b1f7a027298308ef583a7d3b90b59157 /src/view/screens/Onboard.tsx | |
parent | b4097e25d67739c0ab6bc5b5f6ce8ee062796458 (diff) | |
download | voidsky-d228a5f4f5d118f30129f3bafd676bfe0e80bf38.tar.zst |
Add onboarding (WIP)
Diffstat (limited to 'src/view/screens/Onboard.tsx')
-rw-r--r-- | src/view/screens/Onboard.tsx | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/view/screens/Onboard.tsx b/src/view/screens/Onboard.tsx new file mode 100644 index 000000000..0f36494e6 --- /dev/null +++ b/src/view/screens/Onboard.tsx @@ -0,0 +1,33 @@ +import React, {useEffect} from 'react' +import {View} from 'react-native' +import {observer} from 'mobx-react-lite' +import {FeatureExplainer} from '../com/onboard/FeatureExplainer' +import {Follows} from '../com/onboard/Follows' +import {OnboardStage, OnboardStageOrder} from '../../state/models/onboard' +import {useStores} from '../../state' + +export const Onboard = observer(() => { + const store = useStores() + + useEffect(() => { + // sanity check - bounce out of onboarding if the stage is wrong somehow + if (!OnboardStageOrder.includes(store.onboard.stage)) { + store.onboard.stop() + } + }, [store.onboard.stage]) + + let Com + if (store.onboard.stage === OnboardStage.Explainers) { + Com = FeatureExplainer + } else if (store.onboard.stage === OnboardStage.Follows) { + Com = Follows + } else { + Com = View + } + + return ( + <View style={{flex: 1}}> + <Com /> + </View> + ) +}) |