From d74033f57b535a44f4a0b0667bef2a666d4467d8 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Mon, 17 Jun 2024 14:15:59 -0500 Subject: [PATCH] Snooze immediately after account creation, prevent showing right after signup --- src/state/session/agent.ts | 8 ++++++++ src/state/shell/reminders.ts | 8 ++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/state/session/agent.ts b/src/state/session/agent.ts index 48f5614bd8..6afb3af88c 100644 --- a/src/state/session/agent.ts +++ b/src/state/session/agent.ts @@ -11,6 +11,7 @@ import { import {tryFetchGates} from '#/lib/statsig/statsig' import {getAge} from '#/lib/strings/time' import {logger} from '#/logger' +import {snoozeEmailConfirmationPrompt} from '#/state/shell/reminders' import { configureModerationForAccount, configureModerationForGuest, @@ -191,6 +192,13 @@ export async function createAgentAndCreateAccount( agent.setPersonalDetails({birthDate: birthDate.toISOString()}) } + try { + // snooze first prompt after signup, defer to next prompt + snoozeEmailConfirmationPrompt() + } catch (e: any) { + logger.error(e, {context: `session: failed snoozeEmailConfirmationPrompt`}) + } + return prepareAgent(agent, gates, moderation, onSessionChange) } diff --git a/src/state/shell/reminders.ts b/src/state/shell/reminders.ts index c5ded4db3d..fd5bb0b0a8 100644 --- a/src/state/shell/reminders.ts +++ b/src/state/shell/reminders.ts @@ -23,7 +23,7 @@ export function shouldRequestEmailConfirmation(account: SessionAccount) { // never been snoozed, new account if (!snoozedAt) { - snooze() + snoozeEmailConfirmationPrompt() return true } @@ -34,16 +34,16 @@ export function shouldRequestEmailConfirmation(account: SessionAccount) { // snoozed recently if (snoozedAt !== today) { - snooze() + snoozeEmailConfirmationPrompt() return true } // should never happen - snooze() + snoozeEmailConfirmationPrompt() return true } -export function snooze() { +export function snoozeEmailConfirmationPrompt() { const lastEmailConfirm = new Date().toISOString() logger.debug('Snoozing email confirmation reminder', { snoozedAt: lastEmailConfirm,