From f0d7c38e031f103d9323629b7fd0483640c16e30 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Tue, 17 Jun 2025 18:36:04 -0500 Subject: [PATCH] Remove prev NUX, add new gating util --- src/components/dialogs/nuxs/index.tsx | 14 ++++++-------- src/components/dialogs/nuxs/utils.ts | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/components/dialogs/nuxs/index.tsx b/src/components/dialogs/nuxs/index.tsx index 24fb75a029..278272bf24 100644 --- a/src/components/dialogs/nuxs/index.tsx +++ b/src/components/dialogs/nuxs/index.tsx @@ -17,7 +17,7 @@ import {InitialVerificationAnnouncement} from '#/components/dialogs/nuxs/Initial * NUXs */ import {isSnoozed, snooze, unsnooze} from '#/components/dialogs/nuxs/snoozing' -import {isDaysOld} from '#/components/dialogs/nuxs/utils' +import {isExistingUserAsOf} from '#/components/dialogs/nuxs/utils' type Context = { activeNux: Nux | undefined @@ -33,16 +33,14 @@ const queuedNuxs: { preferences: UsePreferencesQueryResponse }) => boolean }[] = [ - { - id: Nux.InitialVerificationAnnouncement, - enabled: ({currentProfile}) => { - return isDaysOld(2, currentProfile.createdAt) - }, - }, { id: Nux.ActivityNotificationsAnnouncement, enabled: ({currentProfile}) => { - return isDaysOld(2, currentProfile.createdAt) + // TODO just filler rn + return isExistingUserAsOf( + '2025-06-17T00:00:00.000Z', + currentProfile.createdAt, + ) }, }, ] diff --git a/src/components/dialogs/nuxs/utils.ts b/src/components/dialogs/nuxs/utils.ts index 0cc5104840..ba8f0169d6 100644 --- a/src/components/dialogs/nuxs/utils.ts +++ b/src/components/dialogs/nuxs/utils.ts @@ -16,3 +16,18 @@ export function isDaysOld(days: number, createdAt?: string) { if (isOldEnough) return true return false } + +export function isExistingUserAsOf(date: string, createdAt?: string) { + /* + * Should never happen because we gate NUXs to only accounts with a valid + * profile and a `createdAt` (see `nuxs/index.tsx`). But if it ever did, the + * account is either old enough to be pre-onboarding, or some failure happened + * during account creation. Fail closed. - esb + */ + if (!createdAt) return false + + const threshold = Date.parse(date) + const then = new Date(createdAt).getTime() + + return then < threshold +}