From 495f901798ea3871df9de6f3e4060437f6abbe53 Mon Sep 17 00:00:00 2001 From: JzoNg Date: Mon, 8 Sep 2025 11:43:51 +0800 Subject: [PATCH] add validation for form content --- web/app/components/workflow/nodes/human-input/default.ts | 9 ++++++++- web/i18n/en-US/workflow.ts | 2 ++ web/i18n/zh-Hans/workflow.ts | 2 ++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/web/app/components/workflow/nodes/human-input/default.ts b/web/app/components/workflow/nodes/human-input/default.ts index db2ff304ed..9e8da5786e 100644 --- a/web/app/components/workflow/nodes/human-input/default.ts +++ b/web/app/components/workflow/nodes/human-input/default.ts @@ -60,7 +60,14 @@ const nodeDefault: NodeDefault = { if (!errorMessages && payload.delivery_methods.length > 0 && !payload.delivery_methods.some(method => method.enabled)) errorMessages = t(`${i18nPrefix}.noDeliveryMethodEnabled`) - // TODO : Add more validation for form content + if (!errorMessages && !payload.form_content) + errorMessages = t(`${i18nPrefix}.noFormContent`) + + if (!errorMessages && payload.form_content) { + const regex = /\{\{#\$output\.[^#]+#\}\}/ + if (!regex.test(payload.form_content)) + errorMessages = t(`${i18nPrefix}.noFormInputField`) + } if (!errorMessages && !payload.user_actions.length) errorMessages = t(`${i18nPrefix}.noUserActions`) diff --git a/web/i18n/en-US/workflow.ts b/web/i18n/en-US/workflow.ts index ca06c1db29..b199197e7c 100644 --- a/web/i18n/en-US/workflow.ts +++ b/web/i18n/en-US/workflow.ts @@ -1020,6 +1020,8 @@ const translation = { errorMsg: { noDeliveryMethod: 'Please select at least one delivery method', noDeliveryMethodEnabled: 'Please enable at least one delivery method', + noFormContent: 'Please add form content', + noFormInputField: 'Please add at least one form input field', noUserActions: 'Please add at least one user action', }, log: { diff --git a/web/i18n/zh-Hans/workflow.ts b/web/i18n/zh-Hans/workflow.ts index 5655c15300..40d772d954 100644 --- a/web/i18n/zh-Hans/workflow.ts +++ b/web/i18n/zh-Hans/workflow.ts @@ -1020,6 +1020,8 @@ const translation = { errorMsg: { noDeliveryMethod: '请至少选择一种提交方式', noDeliveryMethodEnabled: '请至少启用一种提交方式', + noFormContent: '请添加表单内容', + noFormInputField: '请至少添加一个表单输入字段', noUserActions: '请添加至少一个用户操作', }, log: {