From 97eb08a1ad918b03eef1cb797f67fe2fe25198ae Mon Sep 17 00:00:00 2001 From: xudaotutou <13435638964@163.com> Date: Thu, 20 Feb 2025 18:07:09 +0800 Subject: [PATCH] perf: sms env --- .../account/AccountCenter/index.tsx | 2 +- .../src/pages/api/platform/getAuthConfig.ts | 6 +-- frontend/desktop/src/services/backend/sms.ts | 4 +- frontend/desktop/src/services/enable.ts | 3 +- frontend/desktop/src/types/system.ts | 52 +++++++++---------- 5 files changed, 33 insertions(+), 34 deletions(-) diff --git a/frontend/desktop/src/components/account/AccountCenter/index.tsx b/frontend/desktop/src/components/account/AccountCenter/index.tsx index 3d45b3d3dfa..06c689934ed 100644 --- a/frontend/desktop/src/components/account/AccountCenter/index.tsx +++ b/frontend/desktop/src/components/account/AccountCenter/index.tsx @@ -348,7 +348,7 @@ export default function Index(props: Omit) { } /> )} - {conf.authConfig?.idp.sms.enabled && conf.authConfig.idp.sms.email.enabled && ( + {conf.authConfig?.idp.email.enabled && ( {t('common:email')}} RightElement={ diff --git a/frontend/desktop/src/pages/api/platform/getAuthConfig.ts b/frontend/desktop/src/pages/api/platform/getAuthConfig.ts index 45548571a8e..d9a0a5fd9e4 100644 --- a/frontend/desktop/src/pages/api/platform/getAuthConfig.ts +++ b/frontend/desktop/src/pages/api/platform/getAuthConfig.ts @@ -33,11 +33,11 @@ function genResAuthClientConfig(conf: AuthConfigType) { enabled: !!conf.idp.sms?.enabled, ali: { enabled: !!conf.idp.sms?.ali?.enabled - }, - email: { - enabled: !!conf.idp.sms?.email?.enabled } }, + email: { + enabled: !!conf.idp.email?.enabled + }, github: { enabled: !!conf.idp.github?.enabled, proxyAddress: conf.idp.github?.proxyAddress || '', diff --git a/frontend/desktop/src/services/backend/sms.ts b/frontend/desktop/src/services/backend/sms.ts index 7af35c726a3..ea5f9aa97fc 100644 --- a/frontend/desktop/src/services/backend/sms.ts +++ b/frontend/desktop/src/services/backend/sms.ts @@ -9,7 +9,7 @@ import Captcha, * as $Captcha from '@alicloud/captcha20230305'; import nodemailer from 'nodemailer'; const getTransporter = () => { if (!global.nodemailer) { - const emailConfig = global.AppConfig.desktop.auth.idp.sms?.email; + const emailConfig = global.AppConfig.desktop.auth.idp.email; if (!emailConfig) throw Error('email transporter config error'); const transporter = nodemailer.createTransport({ pool: true, @@ -118,7 +118,7 @@ export const captchaReq = async ({ captchaVerifyParam }: { captchaVerifyParam?: }, 3); }; export const emailSmsReq = async (email: string) => { - const emailConfig = global.AppConfig.desktop.auth.idp.sms?.email; + const emailConfig = global.AppConfig.desktop.auth.idp.email; if (!emailConfig) throw Error('config error'); const code = Math.floor(Math.random() * 900000 + 100000).toString(); diff --git a/frontend/desktop/src/services/enable.ts b/frontend/desktop/src/services/enable.ts index 4eb2b97ab63..e08e93ee7c2 100644 --- a/frontend/desktop/src/services/enable.ts +++ b/frontend/desktop/src/services/enable.ts @@ -7,8 +7,7 @@ export const enableGithub = () => global.AppConfig.desktop.auth.idp.github?.enab export const enableSms = () => global.AppConfig.desktop.auth.idp.sms?.enabled || false; export const enablePhoneSms = () => enableSms() && !!global.AppConfig.desktop.auth.idp.sms?.ali?.enabled; -export const enableEmailSms = () => - enableSms() && !!global.AppConfig.desktop.auth.idp.sms?.email?.enabled; +export const enableEmailSms = () => !!global.AppConfig.desktop.auth.idp.email?.enabled; export const enableWechat = () => global.AppConfig.desktop.auth.idp.wechat?.enabled || false; export const enableGoogle = () => global.AppConfig.desktop.auth.idp.google?.enabled || false; export const enableSignUp = () => global.AppConfig.desktop.auth.signUpEnabled || false; diff --git a/frontend/desktop/src/types/system.ts b/frontend/desktop/src/types/system.ts index acd2ec0e941..61b419dec5f 100644 --- a/frontend/desktop/src/types/system.ts +++ b/frontend/desktop/src/types/system.ts @@ -132,13 +132,13 @@ export type AuthConfigType = { accessKeyID: string; accessKeySecret?: string; }; - email?: { - enabled: boolean; - host: string; - port: number; - user: string; - password: string; - }; + }; + email?: { + enabled: boolean; + host: string; + port: number; + user: string; + password: string; }; }; captcha?: { @@ -154,7 +154,19 @@ export type AuthConfigType = { }; }; -export type AuthClientConfigType = DeepRequired< +export type AuthClientConfigType = { + idp: { + sms: { + enabled: boolean; + ali: { + enabled: boolean; + }; + }; + email: { + enabled: boolean; + }; + }; +} & DeepRequired< OmitPathArr< AuthConfigType, [ @@ -166,8 +178,8 @@ export type AuthClientConfigType = DeepRequired< 'idp.github.clientSecret', 'idp.wechat.clientSecret', 'idp.google.clientSecret', - 'idp.sms.ali', - 'idp.sms.email', + 'idp.sms', + 'idp.email', 'idp.oauth2.clientSecret', 'jwt', 'billingUrl', @@ -179,19 +191,7 @@ export type AuthClientConfigType = DeepRequired< 'captcha.ali.endpoint' ] > -> & { - idp: { - sms: { - enabled: boolean; - ali: { - enabled: boolean; - }; - email: { - enabled: boolean; - }; - }; - }; -}; +>; export type JwtConfigType = { internal?: string; @@ -313,11 +313,11 @@ export const DefaultAuthClientConfig: AuthClientConfigType = { enabled: false, ali: { enabled: false - }, - email: { - enabled: false } }, + email: { + enabled: false + }, oauth2: { enabled: false, callbackURL: '',