From 4a907257c62bb9715e199aab7d6ccad73ffe58d0 Mon Sep 17 00:00:00 2001 From: web Date: Tue, 12 Aug 2025 05:47:58 -0700 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(editor):=20Add=20Go=20templa?= =?UTF-8?q?te=20editor=20component=20and=20update=20related=20schemas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/dashboard/subscribe/protocol-form.tsx | 28 +- apps/admin/locales/en-US/subscribe.json | 8 +- apps/admin/locales/zh-CN/subscribe.json | 8 +- apps/admin/services/admin/index.ts | 2 +- apps/admin/services/admin/typings.d.ts | 3 + packages/ui/package.json | 1 + .../custom-components/editor/go-template.tsx | 402 ++++++++++++++++++ .../ui/src/custom-components/editor/index.tsx | 1 + .../editor/monaco-editor.tsx | 8 +- 9 files changed, 435 insertions(+), 26 deletions(-) create mode 100644 packages/ui/src/custom-components/editor/go-template.tsx diff --git a/apps/admin/app/dashboard/subscribe/protocol-form.tsx b/apps/admin/app/dashboard/subscribe/protocol-form.tsx index 4cdc459..8c697a2 100644 --- a/apps/admin/app/dashboard/subscribe/protocol-form.tsx +++ b/apps/admin/app/dashboard/subscribe/protocol-form.tsx @@ -46,6 +46,7 @@ import { TooltipTrigger, } from '@workspace/ui/components/tooltip'; import { ConfirmButton } from '@workspace/ui/custom-components/confirm-button'; +import { GoTemplateEditor } from '@workspace/ui/custom-components/editor'; import { EnhancedInput } from '@workspace/ui/custom-components/enhanced-input'; import { Icon } from '@workspace/ui/custom-components/icon'; import { UploadImage } from '@workspace/ui/custom-components/upload-image'; @@ -63,7 +64,7 @@ const createClientFormSchema = (t: any) => description: z.string().optional(), icon: z.string().optional(), user_agent: z.string().min(1, `User-Agent ${t('form.validation.userAgentRequiredSuffix')}`), - proxy_template: z.string().default(''), + schema: z.string().default(''), template: z.string().default(''), output_format: z.string().default(''), download_link: z.object({ @@ -94,7 +95,7 @@ export function ProtocolForm() { description: '', icon: '', user_agent: '', - proxy_template: '', + schema: '', template: '', output_format: '', download_link: { @@ -230,7 +231,7 @@ export function ProtocolForm() { description: '', icon: '', user_agent: '', - proxy_template: '', + schema: '', template: '', output_format: '', download_link: { @@ -252,7 +253,7 @@ export function ProtocolForm() { description: client.description || '', icon: client.icon || '', user_agent: client.user_agent, - proxy_template: client.proxy_template || '', + schema: client.proxy_template || '', template: client.template || '', output_format: client.output_format || '', download_link: { @@ -301,6 +302,7 @@ export function ProtocolForm() { if (editingClient) { await updateSubscribeApplication({ ...data, + proxy_template: data.schema || '', is_default: editingClient.is_default, id: editingClient.id, }); @@ -308,6 +310,7 @@ export function ProtocolForm() { } else { await createSubscribeApplication({ ...data, + proxy_template: data.schema || '', is_default: false, }); toast.success(t('actions.createSuccess')); @@ -491,20 +494,17 @@ export function ProtocolForm() { ( - {t('form.fields.proxyTemplate')} + {t('form.fields.schema')} - - {t('form.descriptions.proxyTemplate')} - {`{url} {name}`} - + {t('form.descriptions.schema')} )} @@ -517,10 +517,10 @@ export function ProtocolForm() { {t('form.fields.template')} -