update validation for human input node

This commit is contained in:
JzoNg 2025-08-08 10:38:32 +08:00
parent 05453cb22f
commit 242826013e
3 changed files with 30 additions and 6 deletions

View File

@ -3,6 +3,8 @@ import type { HumanInputNodeType } from './types'
import { DeliveryMethodType, UserActionButtonType } from './types'
import { ALL_CHAT_AVAILABLE_BLOCKS } from '@/app/components/workflow/blocks'
const i18nPrefix = 'workflow.nodes.humanInput.errorMsg'
const nodeDefault: NodeDefault<HumanInputNodeType> = {
defaultValue: {
delivery_methods: [
@ -50,12 +52,24 @@ const nodeDefault: NodeDefault<HumanInputNodeType> = {
const nodes = ALL_CHAT_AVAILABLE_BLOCKS
return nodes
},
checkValid() {
return {
isValid: true,
errorMessage: '',
}
},
checkValid(payload: HumanInputNodeType, t: any) {
let errorMessages = ''
if (!errorMessages && !payload.delivery_methods.length)
errorMessages = t(`${i18nPrefix}.noDeliveryMethod`)
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.user_actions.length)
errorMessages = t(`${i18nPrefix}.noUserActions`)
return {
isValid: !errorMessages,
errorMessage: errorMessages,
}
},
}
export default nodeDefault

View File

@ -977,6 +977,11 @@ const translation = {
editor: {
notes: 'notes',
},
errorMsg: {
noDeliveryMethod: 'Please select at least one delivery method',
noDeliveryMethodEnabled: 'Please enable at least one delivery method',
noUserActions: 'Please add at least one user action',
},
},
},
tracing: {

View File

@ -978,6 +978,11 @@ const translation = {
editor: {
notes: ' 笔记',
},
errorMsg: {
noDeliveryMethod: '请至少选择一种提交方式',
noDeliveryMethodEnabled: '请至少启用一种提交方式',
noUserActions: '请添加至少一个用户操作',
},
},
},
tracing: {