diff --git a/apps/studio/components/interfaces/Account/Preferences/AnalyticsSettings.tsx b/apps/studio/components/interfaces/Account/Preferences/AnalyticsSettings.tsx index 73d736d80a83b..694d94dd4ee60 100644 --- a/apps/studio/components/interfaces/Account/Preferences/AnalyticsSettings.tsx +++ b/apps/studio/components/interfaces/Account/Preferences/AnalyticsSettings.tsx @@ -1,21 +1,21 @@ -import { Alert_Shadcn_, AlertDescription_Shadcn_, AlertTitle_Shadcn_, Badge, Toggle } from 'ui' import { ButtonTooltip } from 'components/ui/ButtonTooltip' import { X } from 'lucide-react' import { toast } from 'sonner' +import { Alert_Shadcn_, AlertDescription_Shadcn_, AlertTitle_Shadcn_, Badge, Toggle } from 'ui' import { useConsentState } from 'common' +import { LOCAL_STORAGE_KEYS } from 'common/constants/local-storage' import Panel from 'components/ui/Panel' import { useSendResetMutation } from 'data/telemetry/send-reset-mutation' import { useLocalStorageQuery } from 'hooks/misc/useLocalStorage' -import { LOCAL_STORAGE_KEYS } from 'common/constants/local-storage' export const TermsUpdateBanner = () => { - const [termsUpdateAcknowledged, setTermsUpdateAcknowledged] = useLocalStorageQuery( + const [termsUpdateAcknowledged, setTermsUpdateAcknowledged, { isSuccess }] = useLocalStorageQuery( LOCAL_STORAGE_KEYS.TERMS_OF_SERVICE_ACKNOWLEDGED, false ) - if (termsUpdateAcknowledged) return null + if (!isSuccess || termsUpdateAcknowledged) return null return ( diff --git a/apps/studio/components/interfaces/Auth/AuthProvidersFormValidation.tsx b/apps/studio/components/interfaces/Auth/AuthProvidersFormValidation.tsx index 1931a49b40861..0137a0685f3b5 100644 --- a/apps/studio/components/interfaces/Auth/AuthProvidersFormValidation.tsx +++ b/apps/studio/components/interfaces/Auth/AuthProvidersFormValidation.tsx @@ -19,11 +19,6 @@ const PROVIDER_EMAIL = { description: 'This will enable Email based signup and login for your application', type: 'boolean', }, - MAILER_AUTOCONFIRM: { - title: 'Confirm email', - description: `Users will need to confirm their email address before signing in for the first time.`, - type: 'boolean', - }, MAILER_SECURE_EMAIL_CHANGE_ENABLED: { title: 'Secure email change', description: `Users will be required to confirm any email change on both the old email address and new email address. diff --git a/apps/studio/components/interfaces/Auth/BasicAuthSettingsForm/BasicAuthSettingsForm.tsx b/apps/studio/components/interfaces/Auth/BasicAuthSettingsForm/BasicAuthSettingsForm.tsx index 18623d0ab944f..54edfebbf88a1 100644 --- a/apps/studio/components/interfaces/Auth/BasicAuthSettingsForm/BasicAuthSettingsForm.tsx +++ b/apps/studio/components/interfaces/Auth/BasicAuthSettingsForm/BasicAuthSettingsForm.tsx @@ -35,6 +35,7 @@ const schema = object({ DISABLE_SIGNUP: boolean().required(), EXTERNAL_ANONYMOUS_USERS_ENABLED: boolean().required(), SECURITY_MANUAL_LINKING_ENABLED: boolean().required(), + MAILER_AUTOCONFIRM: boolean().required(), SITE_URL: string().required('Must have a Site URL'), }) @@ -52,6 +53,7 @@ const BasicAuthSettingsForm = () => { DISABLE_SIGNUP: true, EXTERNAL_ANONYMOUS_USERS_ENABLED: false, SECURITY_MANUAL_LINKING_ENABLED: false, + MAILER_AUTOCONFIRM: true, SITE_URL: '', }, }) @@ -61,7 +63,8 @@ const BasicAuthSettingsForm = () => { form.reset({ DISABLE_SIGNUP: !authConfig.DISABLE_SIGNUP, EXTERNAL_ANONYMOUS_USERS_ENABLED: authConfig.EXTERNAL_ANONYMOUS_USERS_ENABLED, - SECURITY_MANUAL_LINKING_ENABLED: authConfig.SECURITY_MANUAL_LINKING_ENABLED || false, + SECURITY_MANUAL_LINKING_ENABLED: authConfig.SECURITY_MANUAL_LINKING_ENABLED, + MAILER_AUTOCONFIRM: authConfig.MAILER_AUTOCONFIRM, SITE_URL: authConfig.SITE_URL, }) } @@ -250,6 +253,27 @@ const BasicAuthSettingsForm = () => { )} + + ( + + + + + + )} + /> + {form.formState.isDirty && (