Files
supabase/apps/studio/components/interfaces/Auth/SmtpForm/SmtpForm.utils.ts
Ivan Vasilov 4c7ff74a00 fix: Update the types in api.d.ts. (#21287)
* Update the types in api.d.ts.

* Send zero for integration id.
2024-02-15 13:01:12 +01:00

34 lines
1022 B
TypeScript

import { components } from 'data/api'
type AuthConfig = components['schemas']['GoTrueConfigResponse']
interface AuthConfigForm extends AuthConfig {
ENABLE_SMTP: boolean
}
export const isSmtpEnabled = (config?: Partial<AuthConfig>): boolean => {
return !!(
config?.SMTP_ADMIN_EMAIL &&
config?.SMTP_SENDER_NAME &&
config?.SMTP_USER &&
config?.SMTP_HOST &&
config?.SMTP_PASS &&
config?.SMTP_PORT &&
(config?.SMTP_MAX_FREQUENCY ?? 0) >= 0
)
}
export const generateFormValues = (config?: Partial<AuthConfig>): Partial<AuthConfigForm> => {
return {
ENABLE_SMTP: isSmtpEnabled(config),
SMTP_ADMIN_EMAIL: config?.SMTP_ADMIN_EMAIL ?? '',
SMTP_SENDER_NAME: config?.SMTP_SENDER_NAME ?? '',
SMTP_USER: config?.SMTP_USER ?? '',
SMTP_HOST: config?.SMTP_HOST ?? '',
SMTP_PASS: config?.SMTP_PASS ?? '',
SMTP_PORT: config?.SMTP_PORT ?? '465',
SMTP_MAX_FREQUENCY: config?.SMTP_MAX_FREQUENCY ?? 60,
RATE_LIMIT_EMAIL_SENT: config?.RATE_LIMIT_EMAIL_SENT ?? 30,
}
}