about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorPaul Frazee <pfrazee@gmail.com>2023-11-08 09:46:07 -0800
committerGitHub <noreply@github.com>2023-11-08 09:46:07 -0800
commit5eadadffbf5475b233da7b1463e2345ff3e3cfce (patch)
treeaf3dd9f05a6eab919515b7de965a1fea51ad346b /src
parent5843e212c0ebbfc6c3831929bbbaa72e1a289aba (diff)
downloadvoidsky-5eadadffbf5475b233da7b1463e2345ff3e3cfce.tar.zst
State layer cleanup: move alt-text-required into preferences and fix a bug in reminders (#1845)
* Move alt-text-required into preferences

* Fix bug: reminders now using new onboarding state
Diffstat (limited to 'src')
-rw-r--r--src/state/models/ui/shell.ts7
-rw-r--r--src/state/preferences/alt-text-required.tsx (renamed from src/state/shell/alt-text-required.tsx)0
-rw-r--r--src/state/preferences/index.tsx11
-rw-r--r--src/state/shell/index.tsx9
-rw-r--r--src/state/shell/reminders.e2e.ts6
-rw-r--r--src/state/shell/reminders.ts9
-rw-r--r--src/view/com/composer/Composer.tsx2
-rw-r--r--src/view/screens/Settings.tsx6
8 files changed, 21 insertions, 29 deletions
diff --git a/src/state/models/ui/shell.ts b/src/state/models/ui/shell.ts
index 343fff86d..b5fa4e591 100644
--- a/src/state/models/ui/shell.ts
+++ b/src/state/models/ui/shell.ts
@@ -362,12 +362,7 @@ export class ShellUiModel {
 
   setupLoginModals() {
     this.rootStore.onSessionReady(() => {
-      if (
-        shouldRequestEmailConfirmation(
-          this.rootStore.session,
-          this.rootStore.onboarding,
-        )
-      ) {
+      if (shouldRequestEmailConfirmation(this.rootStore.session)) {
         this.openModal({name: 'verify-email', showReminder: true})
         setEmailConfirmationRequested()
       }
diff --git a/src/state/shell/alt-text-required.tsx b/src/state/preferences/alt-text-required.tsx
index 81de9e006..81de9e006 100644
--- a/src/state/shell/alt-text-required.tsx
+++ b/src/state/preferences/alt-text-required.tsx
diff --git a/src/state/preferences/index.tsx b/src/state/preferences/index.tsx
index 56c93f812..50cb86c65 100644
--- a/src/state/preferences/index.tsx
+++ b/src/state/preferences/index.tsx
@@ -1,8 +1,17 @@
 import React from 'react'
 import {Provider as LanguagesProvider} from './languages'
+import {Provider as AltTextRequiredProvider} from '../preferences/alt-text-required'
 
 export {useLanguagePrefs, useSetLanguagePrefs} from './languages'
+export {
+  useRequireAltTextEnabled,
+  useSetRequireAltTextEnabled,
+} from './alt-text-required'
 
 export function Provider({children}: React.PropsWithChildren<{}>) {
-  return <LanguagesProvider>{children}</LanguagesProvider>
+  return (
+    <LanguagesProvider>
+      <AltTextRequiredProvider>{children}</AltTextRequiredProvider>
+    </LanguagesProvider>
+  )
 }
diff --git a/src/state/shell/index.tsx b/src/state/shell/index.tsx
index 0bb8988a6..6291d3224 100644
--- a/src/state/shell/index.tsx
+++ b/src/state/shell/index.tsx
@@ -3,7 +3,6 @@ import {Provider as DrawerOpenProvider} from './drawer-open'
 import {Provider as DrawerSwipableProvider} from './drawer-swipe-disabled'
 import {Provider as MinimalModeProvider} from './minimal-mode'
 import {Provider as ColorModeProvider} from './color-mode'
-import {Provider as AltTextRequiredProvider} from './alt-text-required'
 import {Provider as OnboardingProvider} from './onboarding'
 
 export {useIsDrawerOpen, useSetDrawerOpen} from './drawer-open'
@@ -13,10 +12,6 @@ export {
 } from './drawer-swipe-disabled'
 export {useMinimalShellMode, useSetMinimalShellMode} from './minimal-mode'
 export {useColorMode, useSetColorMode} from './color-mode'
-export {
-  useRequireAltTextEnabled,
-  useSetRequireAltTextEnabled,
-} from './alt-text-required'
 export {useOnboardingState, useOnboardingDispatch} from './onboarding'
 
 export function Provider({children}: React.PropsWithChildren<{}>) {
@@ -25,9 +20,7 @@ export function Provider({children}: React.PropsWithChildren<{}>) {
       <DrawerSwipableProvider>
         <MinimalModeProvider>
           <ColorModeProvider>
-            <OnboardingProvider>
-              <AltTextRequiredProvider>{children}</AltTextRequiredProvider>
-            </OnboardingProvider>
+            <OnboardingProvider>{children}</OnboardingProvider>
           </ColorModeProvider>
         </MinimalModeProvider>
       </DrawerSwipableProvider>
diff --git a/src/state/shell/reminders.e2e.ts b/src/state/shell/reminders.e2e.ts
index 6238ffa29..d7703e9e0 100644
--- a/src/state/shell/reminders.e2e.ts
+++ b/src/state/shell/reminders.e2e.ts
@@ -1,10 +1,6 @@
-import {OnboardingModel} from '../models/discovery/onboarding'
 import {SessionModel} from '../models/session'
 
-export function shouldRequestEmailConfirmation(
-  _session: SessionModel,
-  _onboarding: OnboardingModel,
-) {
+export function shouldRequestEmailConfirmation(_session: SessionModel) {
   return false
 }
 
diff --git a/src/state/shell/reminders.ts b/src/state/shell/reminders.ts
index d68a272ac..e7ee7a5fe 100644
--- a/src/state/shell/reminders.ts
+++ b/src/state/shell/reminders.ts
@@ -1,12 +1,9 @@
 import * as persisted from '#/state/persisted'
-import {OnboardingModel} from '../models/discovery/onboarding'
 import {SessionModel} from '../models/session'
 import {toHashCode} from 'lib/strings/helpers'
+import {isOnboardingActive} from './onboarding'
 
-export function shouldRequestEmailConfirmation(
-  session: SessionModel,
-  onboarding: OnboardingModel,
-) {
+export function shouldRequestEmailConfirmation(session: SessionModel) {
   const sess = session.currentSession
   if (!sess) {
     return false
@@ -14,7 +11,7 @@ export function shouldRequestEmailConfirmation(
   if (sess.emailConfirmed) {
     return false
   }
-  if (onboarding.isActive) {
+  if (isOnboardingActive()) {
     return false
   }
   // only prompt once
diff --git a/src/view/com/composer/Composer.tsx b/src/view/com/composer/Composer.tsx
index 4ebbfd666..632e72fde 100644
--- a/src/view/com/composer/Composer.tsx
+++ b/src/view/com/composer/Composer.tsx
@@ -49,7 +49,7 @@ import {LabelsBtn} from './labels/LabelsBtn'
 import {SelectLangBtn} from './select-language/SelectLangBtn'
 import {EmojiPickerButton} from './text-input/web/EmojiPicker.web'
 import {insertMentionAt} from 'lib/strings/mention-manip'
-import {useRequireAltTextEnabled} from '#/state/shell'
+import {useRequireAltTextEnabled} from '#/state/preferences'
 import {
   useLanguagePrefs,
   useSetLanguagePrefs,
diff --git a/src/view/screens/Settings.tsx b/src/view/screens/Settings.tsx
index 37c2961b4..570f8b7e0 100644
--- a/src/view/screens/Settings.tsx
+++ b/src/view/screens/Settings.tsx
@@ -50,10 +50,12 @@ import {
   useSetMinimalShellMode,
   useColorMode,
   useSetColorMode,
-  useRequireAltTextEnabled,
-  useSetRequireAltTextEnabled,
   useOnboardingDispatch,
 } from '#/state/shell'
+import {
+  useRequireAltTextEnabled,
+  useSetRequireAltTextEnabled,
+} from '#/state/preferences'
 
 // TEMPORARY (APP-700)
 // remove after backend testing finishes