diff --git a/frontend/src/schemas/forms/outbound-form.ts b/frontend/src/schemas/forms/outbound-form.ts index c4ceb074..96ca63bf 100644 --- a/frontend/src/schemas/forms/outbound-form.ts +++ b/frontend/src/schemas/forms/outbound-form.ts @@ -64,7 +64,7 @@ export const VlessOutboundFormSettingsSchema = z.object({ port: PortSchema.default(443), id: z.string().default(''), flow: z.string().default(''), - encryption: z.literal('none').default('none'), + encryption: z.string().min(1).default('none'), reverseTag: z.string().default(''), reverseSniffing: ReverseSniffingFormSchema.default({ enabled: false, diff --git a/frontend/src/schemas/protocols/inbound/vless.ts b/frontend/src/schemas/protocols/inbound/vless.ts index 9badf0d4..381cd7d5 100644 --- a/frontend/src/schemas/protocols/inbound/vless.ts +++ b/frontend/src/schemas/protocols/inbound/vless.ts @@ -39,8 +39,8 @@ export type VlessClient = z.infer; export const VlessInboundSettingsSchema = z.object({ clients: z.array(VlessClientSchema).default([]), - decryption: z.literal('none').default('none'), - encryption: z.literal('none').default('none'), + decryption: z.string().min(1).default('none'), + encryption: z.string().min(1).default('none'), fallbacks: z.array(VlessFallbackSchema).default([]), // TODO: narrow to flow === 'xtls-rprx-vision' once a per-flow discriminator // exists. 4-positive-int padding seed for xtls-rprx-vision; backend uses diff --git a/frontend/src/schemas/protocols/outbound/vless.ts b/frontend/src/schemas/protocols/outbound/vless.ts index 792e4226..32f5ab93 100644 --- a/frontend/src/schemas/protocols/outbound/vless.ts +++ b/frontend/src/schemas/protocols/outbound/vless.ts @@ -7,7 +7,7 @@ export const VlessOutboundSettingsSchema = z.object({ port: z.number().int().min(1).max(65535), id: z.uuid(), flow: FlowSchema.default(''), - encryption: z.literal('none').default('none'), + encryption: z.string().min(1).default('none'), reverse: z .object({ tag: z.string(),