fixed custom smtp server UI bug

This commit is contained in:
Zai Shi 2025-01-21 13:10:15 -08:00
parent 6337daf087
commit 2206d9d782

View File

@ -130,9 +130,9 @@ function SubjectPreview(props: { subject: string, type: EmailTemplateType }) {
return subject;
}
function definedWhenShared<S extends yup.AnyObject>(schema: S, message: string): S {
return schema.when('shared', {
is: 'false',
function definedWhenNotShared<S extends yup.AnyObject>(schema: S, message: string): S {
return schema.when('type', {
is: 'standard',
then: (schema: S) => schema.defined(message),
otherwise: (schema: S) => schema.optional()
});
@ -158,12 +158,12 @@ const getDefaultValues = (emailConfig: AdminEmailConfig | undefined, project: Ad
const emailServerSchema = yup.object({
type: yup.string().oneOf(['shared', 'standard']).defined(),
host: definedWhenShared(yup.string(), "Host is required"),
port: definedWhenShared(yup.number(), "Port is required"),
username: definedWhenShared(yup.string(), "Username is required"),
password: definedWhenShared(yup.string(), "Password is required"),
senderEmail: definedWhenShared(strictEmailSchema("Sender email must be a valid email"), "Sender email is required"),
senderName: definedWhenShared(yup.string(), "Email sender name is required"),
host: definedWhenNotShared(yup.string(), "Host is required"),
port: definedWhenNotShared(yup.number(), "Port is required"),
username: definedWhenNotShared(yup.string(), "Username is required"),
password: definedWhenNotShared(yup.string(), "Password is required"),
senderEmail: definedWhenNotShared(strictEmailSchema("Sender email must be a valid email"), "Sender email is required"),
senderName: definedWhenNotShared(yup.string(), "Email sender name is required"),
});
function EditEmailServerDialog(props: {