about summary refs log tree commit diff
path: root/src/lib/hooks/useEmail.ts
diff options
context:
space:
mode:
authorHailey <me@haileyok.com>2024-11-15 17:32:28 -0800
committerGitHub <noreply@github.com>2024-11-15 17:32:28 -0800
commitc0fb5245f1201ac424f6fb2f789510f94fa6d2fc (patch)
tree5f4499c07990e37ac8e5d5514a3d3c92dd1ce3a3 /src/lib/hooks/useEmail.ts
parenta9cacbf265526879b7eb5f89fcc0df099edb0e5b (diff)
downloadvoidsky-c0fb5245f1201ac424f6fb2f789510f94fa6d2fc.tar.zst
Tweak email verification dialog (#6397)
Diffstat (limited to 'src/lib/hooks/useEmail.ts')
-rw-r--r--src/lib/hooks/useEmail.ts16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/lib/hooks/useEmail.ts b/src/lib/hooks/useEmail.ts
index 6e52846d1..ab87f057e 100644
--- a/src/lib/hooks/useEmail.ts
+++ b/src/lib/hooks/useEmail.ts
@@ -1,4 +1,5 @@
 import {useServiceConfigQuery} from '#/state/queries/email-verification-required'
+import {useProfileQuery} from '#/state/queries/profile'
 import {useSession} from '#/state/session'
 import {BSKY_SERVICE} from '../constants'
 import {getHostnameFromUrl} from '../strings/url-helpers'
@@ -7,13 +8,24 @@ export function useEmail() {
   const {currentAccount} = useSession()
 
   const {data: serviceConfig} = useServiceConfigQuery()
+  const {data: profile} = useProfileQuery({did: currentAccount?.did})
+
+  const checkEmailConfirmed = !!serviceConfig?.checkEmailConfirmed
+
+  const isNewEnough =
+    !!profile?.createdAt &&
+    Date.parse(profile.createdAt) >= Date.parse('2024-11-16T02:00:00.000Z')
 
   const isSelfHost =
-    serviceConfig?.checkEmailConfirmed &&
     currentAccount &&
     getHostnameFromUrl(currentAccount.service) !==
       getHostnameFromUrl(BSKY_SERVICE)
-  const needsEmailVerification = !isSelfHost && !currentAccount?.emailConfirmed
+
+  const needsEmailVerification =
+    !isSelfHost &&
+    checkEmailConfirmed &&
+    !!currentAccount?.emailConfirmed &&
+    isNewEnough
 
   return {needsEmailVerification}
 }