fix: tool use file caused error (#9660)
This commit is contained in:
parent
3ae05a672d
commit
7d7e0f9800
@ -99,6 +99,18 @@ const InputVarList: FC<Props> = ({
|
|||||||
}
|
}
|
||||||
}, [value, onChange])
|
}, [value, onChange])
|
||||||
|
|
||||||
|
const handleFileChange = useCallback((variable: string) => {
|
||||||
|
return (varValue: ValueSelector | string) => {
|
||||||
|
const newValue = produce(value, (draft: ToolVarInputs) => {
|
||||||
|
draft[variable] = {
|
||||||
|
type: VarKindType.variable,
|
||||||
|
value: varValue,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
onChange(newValue)
|
||||||
|
}
|
||||||
|
}, [value, onChange])
|
||||||
|
|
||||||
const [inputsIsFocus, setInputsIsFocus] = useState<Record<string, boolean>>({})
|
const [inputsIsFocus, setInputsIsFocus] = useState<Record<string, boolean>>({})
|
||||||
const handleInputFocus = useCallback((variable: string) => {
|
const handleInputFocus = useCallback((variable: string) => {
|
||||||
return (value: boolean) => {
|
return (value: boolean) => {
|
||||||
@ -129,7 +141,8 @@ const InputVarList: FC<Props> = ({
|
|||||||
const isSelect = type === FormTypeEnum.select
|
const isSelect = type === FormTypeEnum.select
|
||||||
const isFile = type === FormTypeEnum.file
|
const isFile = type === FormTypeEnum.file
|
||||||
const isFileArray = type === FormTypeEnum.files
|
const isFileArray = type === FormTypeEnum.files
|
||||||
const isString = type !== FormTypeEnum.textNumber && type !== FormTypeEnum.files && type !== FormTypeEnum.select
|
const isString = !isNumber && !isSelect && !isFile && !isFileArray
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div key={variable} className='space-y-1'>
|
<div key={variable} className='space-y-1'>
|
||||||
<div className='flex items-center h-[18px] space-x-2'>
|
<div className='flex items-center h-[18px] space-x-2'>
|
||||||
@ -158,7 +171,6 @@ const InputVarList: FC<Props> = ({
|
|||||||
value={varInput?.type === VarKindType.constant ? (varInput?.value || '') : (varInput?.value || [])}
|
value={varInput?.type === VarKindType.constant ? (varInput?.value || '') : (varInput?.value || [])}
|
||||||
onChange={handleNotMixedTypeChange(variable)}
|
onChange={handleNotMixedTypeChange(variable)}
|
||||||
onOpen={handleOpen(index)}
|
onOpen={handleOpen(index)}
|
||||||
isSupportConstantValue={isSupportConstantValue}
|
|
||||||
defaultVarKindType={varInput?.type}
|
defaultVarKindType={varInput?.type}
|
||||||
filterVar={isNumber ? filterVar : undefined}
|
filterVar={isNumber ? filterVar : undefined}
|
||||||
availableVars={isSelect ? availableVars : undefined}
|
availableVars={isSelect ? availableVars : undefined}
|
||||||
@ -170,8 +182,8 @@ const InputVarList: FC<Props> = ({
|
|||||||
readonly={readOnly}
|
readonly={readOnly}
|
||||||
isShowNodeName
|
isShowNodeName
|
||||||
nodeId={nodeId}
|
nodeId={nodeId}
|
||||||
value={varInput?.type === VarKindType.constant ? (varInput?.value || '') : (varInput?.value || [])}
|
value={varInput?.value || []}
|
||||||
onChange={handleNotMixedTypeChange(variable)}
|
onChange={handleFileChange(variable)}
|
||||||
onOpen={handleOpen(index)}
|
onOpen={handleOpen(index)}
|
||||||
defaultVarKindType={VarKindType.variable}
|
defaultVarKindType={VarKindType.variable}
|
||||||
filterVar={(varPayload: Var) => varPayload.type === VarType.file}
|
filterVar={(varPayload: Var) => varPayload.type === VarType.file}
|
||||||
@ -182,8 +194,8 @@ const InputVarList: FC<Props> = ({
|
|||||||
readonly={readOnly}
|
readonly={readOnly}
|
||||||
isShowNodeName
|
isShowNodeName
|
||||||
nodeId={nodeId}
|
nodeId={nodeId}
|
||||||
value={varInput?.type === VarKindType.constant ? (varInput?.value || '') : (varInput?.value || [])}
|
value={varInput?.value || []}
|
||||||
onChange={handleNotMixedTypeChange(variable)}
|
onChange={handleFileChange(variable)}
|
||||||
onOpen={handleOpen(index)}
|
onOpen={handleOpen(index)}
|
||||||
defaultVarKindType={VarKindType.variable}
|
defaultVarKindType={VarKindType.variable}
|
||||||
filterVar={(varPayload: Var) => varPayload.type === VarType.arrayFile}
|
filterVar={(varPayload: Var) => varPayload.type === VarType.arrayFile}
|
||||||
|
Loading…
Reference in New Issue
Block a user