|
@@ -43,8 +43,14 @@ function useOutputVarList<T>({
|
|
|
handleOutVarRenameChange(id, [id, outputKeyOrders[changedIndex!]], [id, newKey])
|
|
|
}, [inputs, setInputs, handleOutVarRenameChange, id, outputKeyOrders, varKey, onOutputKeyOrdersChange])
|
|
|
|
|
|
+ const generateNewKey = useCallback(() => {
|
|
|
+ let keyIndex = Object.keys((inputs as any)[varKey]).length + 1
|
|
|
+ while (((inputs as any)[varKey])[`var_${keyIndex}`])
|
|
|
+ keyIndex++
|
|
|
+ return `var_${keyIndex}`
|
|
|
+ }, [inputs, varKey])
|
|
|
const handleAddVariable = useCallback(() => {
|
|
|
- const newKey = `var_${Object.keys((inputs as any)[varKey]).length + 1}`
|
|
|
+ const newKey = generateNewKey()
|
|
|
const newInputs = produce(inputs, (draft: any) => {
|
|
|
draft[varKey] = {
|
|
|
...draft[varKey],
|
|
@@ -56,7 +62,7 @@ function useOutputVarList<T>({
|
|
|
})
|
|
|
setInputs(newInputs)
|
|
|
onOutputKeyOrdersChange([...outputKeyOrders, newKey])
|
|
|
- }, [inputs, setInputs, varKey, outputKeyOrders, onOutputKeyOrdersChange])
|
|
|
+ }, [generateNewKey, inputs, setInputs, onOutputKeyOrdersChange, outputKeyOrders, varKey])
|
|
|
|
|
|
const [isShowRemoveVarConfirm, {
|
|
|
setTrue: showRemoveVarConfirm,
|