| @@ -1011,7 +1011,9 @@ class ToolManager: | |||
| if variable is None: | |||
| raise ToolParameterError(f"Variable {tool_input.value} does not exist") | |||
| parameter_value = variable.value | |||
| elif tool_input.type in {"mixed", "constant"}: | |||
| elif tool_input.type == "constant": | |||
| parameter_value = tool_input.value | |||
| elif tool_input.type == "mixed": | |||
| segment_group = variable_pool.convert_template(str(tool_input.value)) | |||
| parameter_value = segment_group.text | |||
| else: | |||
| @@ -54,7 +54,7 @@ class ToolNodeData(BaseNodeData, ToolEntity): | |||
| for val in value: | |||
| if not isinstance(val, str): | |||
| raise ValueError("value must be a list of strings") | |||
| elif typ == "constant" and not isinstance(value, str | int | float | bool): | |||
| elif typ == "constant" and not isinstance(value, str | int | float | bool | dict): | |||
| raise ValueError("value must be a string, int, float, or bool") | |||
| return typ | |||
| @@ -164,7 +164,7 @@ const FormInputItem: FC<Props> = ({ | |||
| ...value, | |||
| [variable]: { | |||
| ...varInput, | |||
| ...newValue, | |||
| value: newValue, | |||
| }, | |||
| }) | |||
| } | |||
| @@ -242,7 +242,7 @@ const FormInputItem: FC<Props> = ({ | |||
| <AppSelector | |||
| disabled={readOnly} | |||
| scope={scope || 'all'} | |||
| value={varInput as any} | |||
| value={varInput?.value} | |||
| onSelect={handleAppOrModelSelect} | |||
| /> | |||
| )} | |||
| @@ -251,7 +251,7 @@ const FormInputItem: FC<Props> = ({ | |||
| popupClassName='!w-[387px]' | |||
| isAdvancedMode | |||
| isInWorkflow | |||
| value={varInput} | |||
| value={varInput?.value} | |||
| setModel={handleAppOrModelSelect} | |||
| readonly={readOnly} | |||
| scope={scope} | |||