fix: the input field of tool panel not worked as expected (#6003)

This commit is contained in:
非法操作 2024-07-06 09:54:30 +08:00 committed by GitHub
parent ab847c81fa
commit eee779a923
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 16 additions and 9 deletions

View File

@ -201,7 +201,7 @@ class ToolManager:
init runtime parameter init runtime parameter
""" """
parameter_value = parameters.get(parameter_rule.name) parameter_value = parameters.get(parameter_rule.name)
if not parameter_value: if not parameter_value and parameter_value != 0:
# get default value # get default value
parameter_value = parameter_rule.default parameter_value = parameter_rule.default
if not parameter_value and parameter_rule.required: if not parameter_value and parameter_rule.required:

View File

@ -191,6 +191,7 @@ const SimpleSelect: FC<ISelectProps> = ({
onClick={(e) => { onClick={(e) => {
e.stopPropagation() e.stopPropagation()
setSelectedItem(null) setSelectedItem(null)
onSelect({ value: null })
}} }}
className="h-5 w-5 text-gray-400 cursor-pointer" className="h-5 w-5 text-gray-400 cursor-pointer"
aria-hidden="false" aria-hidden="false"

View File

@ -114,7 +114,7 @@ const Form: FC<FormProps> = ({
validated={validatedSuccess} validated={validatedSuccess}
placeholder={placeholder?.[language] || placeholder?.en_US} placeholder={placeholder?.[language] || placeholder?.en_US}
disabled={disabed} disabled={disabed}
type={formSchema.type === FormTypeEnum.textNumber ? 'number' : 'text'} type={formSchema.type === FormTypeEnum.textNumber ? 'number' : formSchema.type === FormTypeEnum.secretInput ? 'password' : 'text'}
{...(formSchema.type === FormTypeEnum.textNumber ? { min: (formSchema as CredentialFormSchemaNumberInput).min, max: (formSchema as CredentialFormSchemaNumberInput).max } : {})} {...(formSchema.type === FormTypeEnum.textNumber ? { min: (formSchema as CredentialFormSchemaNumberInput).min, max: (formSchema as CredentialFormSchemaNumberInput).max } : {})}
/> />
{fieldMoreInfo?.(formSchema)} {fieldMoreInfo?.(formSchema)}
@ -229,6 +229,7 @@ const Form: FC<FormProps> = ({
variable, variable,
label, label,
show_on, show_on,
required,
} = formSchema as CredentialFormSchemaRadio } = formSchema as CredentialFormSchemaRadio
if (show_on.length && !show_on.every(showOnItem => value[showOnItem.variable] === showOnItem.value)) if (show_on.length && !show_on.every(showOnItem => value[showOnItem.variable] === showOnItem.value))
@ -239,11 +240,16 @@ const Form: FC<FormProps> = ({
<div className='flex items-center justify-between py-2 text-sm text-gray-900'> <div className='flex items-center justify-between py-2 text-sm text-gray-900'>
<div className='flex items-center space-x-2'> <div className='flex items-center space-x-2'>
<span className={cn(fieldLabelClassName, 'py-2 text-sm text-gray-900')}>{label[language] || label.en_US}</span> <span className={cn(fieldLabelClassName, 'py-2 text-sm text-gray-900')}>{label[language] || label.en_US}</span>
{
required && (
<span className='ml-1 text-red-500'>*</span>
)
}
{tooltipContent} {tooltipContent}
</div> </div>
<Radio.Group <Radio.Group
className='flex items-center' className='flex items-center'
value={value[variable] ? 1 : 0} value={value[variable] === null ? undefined : (value[variable] ? 1 : 0)}
onChange={val => handleFormChange(variable, val === 1)} onChange={val => handleFormChange(variable, val === 1)}
> >
<Radio value={1} className='!mr-1'>True</Radio> <Radio value={1} className='!mr-1'>True</Radio>

View File

@ -53,7 +53,7 @@ const Input: FC<InputProps> = ({
onChange={e => onChange(e.target.value)} onChange={e => onChange(e.target.value)}
onBlur={e => toLimit(e.target.value)} onBlur={e => toLimit(e.target.value)}
onFocus={onFocus} onFocus={onFocus}
value={value || ''} value={value}
disabled={disabled} disabled={disabled}
type={type} type={type}
min={min} min={min}