improve signup container

This commit is contained in:
2025-09-10 06:34:27 +03:00
parent b8a8eab87c
commit 8b3e58e833
15 changed files with 92 additions and 40 deletions

View File

@@ -5,6 +5,7 @@ type SupabaseExternalProvider = Provider | 'email';
interface SupabaseAuthSettings {
external: Record<SupabaseExternalProvider, boolean>;
disable_signup: boolean;
mailer_autoconfirm: boolean;
}
export class AuthProvidersService {
@@ -61,6 +62,10 @@ export class AuthProvidersService {
return process.env.NEXT_PUBLIC_AUTH_PASSWORD === 'true';
}
isMailerAutoconfirmEnabled({ settings }: { settings: SupabaseAuthSettings | null }): boolean {
return settings?.mailer_autoconfirm === true;
}
isMagicLinkEnabled(): boolean {
return process.env.NEXT_PUBLIC_AUTH_MAGIC_LINK === 'true';
}
@@ -105,10 +110,11 @@ export class AuthProvidersService {
async getAuthConfig() {
const settings = await this.fetchAuthSettings();
const [passwordEnabled, magicLinkEnabled, oAuthProviders] = await Promise.all([
const [passwordEnabled, magicLinkEnabled, oAuthProviders, isMailerAutoconfirmEnabled] = await Promise.all([
this.isPasswordEnabled({ settings }),
this.isMagicLinkEnabled(),
this.getEnabledOAuthProviders({ settings }),
this.isMailerAutoconfirmEnabled({ settings }),
]);
return {
@@ -118,6 +124,7 @@ export class AuthProvidersService {
oAuth: oAuthProviders,
},
displayTermsCheckbox: authConfig.displayTermsCheckbox,
isMailerAutoconfirmEnabled,
};
}