about summary refs log tree commit diff
path: root/src/lib/hooks/useOnboarding.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/hooks/useOnboarding.ts')
-rw-r--r--src/lib/hooks/useOnboarding.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/lib/hooks/useOnboarding.ts b/src/lib/hooks/useOnboarding.ts
new file mode 100644
index 000000000..cdf24bc14
--- /dev/null
+++ b/src/lib/hooks/useOnboarding.ts
@@ -0,0 +1,23 @@
+import React from 'react'
+import {useStores} from 'state/index'
+import {useNavigation} from '@react-navigation/native'
+import {NavigationProp} from 'lib/routes/types'
+import {isNative, isWeb} from 'platform/detection'
+
+export function useOnboarding() {
+  const store = useStores()
+  const navigation = useNavigation<NavigationProp>()
+
+  React.useEffect(() => {
+    if (store.onboarding.isActive) {
+      if (isWeb) {
+        store.shell.openModal({name: 'onboarding'})
+        return
+      }
+      if (isNative) {
+        navigation.navigate('Welcome')
+        return
+      }
+    }
+  }, [store.onboarding.isActive, navigation, store.shell])
+}