6262 class =" border-r-4 p-8-12 mb-8 layout-bg lighter"
6363 v-if =" form_data.tool_params[form_data.params_nested]"
6464 >
65- <DynamicsForm
66- v-if =" form_data.mcp_tool"
67- v-model =" form_data.tool_params[form_data.params_nested]"
68- :model =" form_data.tool_params[form_data.params_nested]"
65+ <el-form
66+ ref =" dynamicsFormRef"
6967 label-position =" top"
68+ v-loading =" loading"
7069 require-asterisk-position =" right"
71- :render_data =" form_data.tool_form_field"
72- ref =" dynamicsFormRef"
70+ :hide-required-asterisk =" true"
71+ v-if =" form_data.mcp_tool"
72+ @submit.prevent
7373 >
74- </DynamicsForm >
74+ <el-form-item v-for =" item in form_data.tool_form_field" :key =" item.field"
75+ :rules =" [item.props_info.rules]" :required =" item.required" >
76+ <template #label >
77+ <div class =" flex-between" >
78+ <div >
79+ <TooltipLabel :label =" item.label.label" :tooltip =" item.label.attrs.tooltip" />
80+ <span v-if =" item.required" class =" danger" >*</span >
81+ </div >
82+ <el-select :teleported =" false" v-model =" item.source" size =" small" style =" width : 85px "
83+ @change =" form_data.tool_params[form_data.params_nested] = {}" >
84+ <el-option
85+ :label =" $t('views.applicationWorkflow.nodes.replyNode.replyContent.reference')"
86+ value =" referencing"
87+ />
88+ <el-option
89+ :label =" $t('views.applicationWorkflow.nodes.replyNode.replyContent.custom')"
90+ value =" custom"
91+ />
92+ </el-select >
93+ </div >
94+ </template >
95+ <el-input
96+ v-if =" item.source === 'custom'"
97+ v-model =" form_data.tool_params[form_data.params_nested][item.label.label]"
98+ />
99+ <NodeCascader
100+ v-else
101+ ref =" nodeCascaderRef2"
102+ :nodeModel =" nodeModel"
103+ class =" w-full"
104+ :placeholder =" $t('views.applicationWorkflow.variable.placeholder')"
105+ v-model =" form_data.tool_params[form_data.params_nested][item.label.label]"
106+ />
107+ </el-form-item >
108+ </el-form >
75109 </div >
76110 <div class =" border-r-4 p-8-12 mb-8 layout-bg lighter" v-else >
77- <DynamicsForm
78- v-if =" form_data.mcp_tool"
79- v-model =" form_data.tool_params"
80- :model =" form_data.tool_params"
111+ <el-form
112+ ref =" dynamicsFormRef"
81113 label-position =" top"
114+ v-loading =" loading"
82115 require-asterisk-position =" right"
83- :render_data =" form_data.tool_form_field"
84- ref =" dynamicsFormRef"
116+ :hide-required-asterisk =" true"
117+ v-if =" form_data.mcp_tool"
118+ @submit.prevent
85119 >
86- </DynamicsForm >
120+ <el-form-item v-for =" item in form_data.tool_form_field" :key =" item.field"
121+ :rules =" [item.props_info.rules]" :required =" item.required" >
122+ <template #label >
123+ <div class =" flex-between" >
124+ <div >
125+ <TooltipLabel :label =" item.label.label" :tooltip =" item.label.attrs.tooltip" />
126+ <span v-if =" item.required" class =" danger" >*</span >
127+ </div >
128+ <el-select :teleported =" false" v-model =" item.source" size =" small" style =" width : 85px " >
129+ <el-option
130+ :label =" $t('views.applicationWorkflow.nodes.replyNode.replyContent.reference')"
131+ value =" referencing"
132+ />
133+ <el-option
134+ :label =" $t('views.applicationWorkflow.nodes.replyNode.replyContent.custom')"
135+ value =" custom"
136+ />
137+ </el-select >
138+ </div >
139+ </template >
140+ <el-input
141+ v-if =" item.source === 'custom'"
142+ v-model =" form_data.tool_params[item.label.label]"
143+ />
144+ <NodeCascader
145+ v-else
146+ ref =" nodeCascaderRef2"
147+ :nodeModel =" nodeModel"
148+ class =" w-full"
149+ :placeholder =" $t('views.applicationWorkflow.variable.placeholder')"
150+ v-model =" form_data.tool_params[item.label.label]"
151+ />
152+ </el-form-item >
153+ </el-form >
87154 </div >
88155 </NodeContainer >
89156</template >
@@ -94,8 +161,9 @@ import { computed, onMounted, ref } from 'vue'
94161import { isLastNode } from ' @/workflow/common/data'
95162import applicationApi from ' @/api/application'
96163import { t } from ' @/locales'
97- import DynamicsForm from ' @/components/dynamics-form/index.vue'
98164import { MsgError , MsgSuccess } from ' @/utils/message'
165+ import TooltipLabel from ' @/components/dynamics-form/items/label/TooltipLabel.vue'
166+ import NodeCascader from ' @/workflow/common/NodeCascader.vue'
99167
100168const props = defineProps <{ nodeModel: any }>()
101169
@@ -168,9 +236,8 @@ function changeTool() {
168236 props_info: {}
169237 },
170238 input_type: ' TextInput' ,
239+ source: ' custom' ,
171240 required: args_schema .properties [item ].required ?.indexOf (item2 ) !== - 1 ,
172- default_value: ' ' ,
173- show_default_value: false ,
174241 props_info: {
175242 rules: [
176243 {
@@ -193,9 +260,8 @@ function changeTool() {
193260 props_info: {}
194261 },
195262 input_type: ' TextInput' ,
263+ source: ' custom' ,
196264 required: args_schema .required ?.indexOf (item ) !== - 1 ,
197- default_value: ' ' ,
198- show_default_value: false ,
199265 props_info: {
200266 rules: [
201267 {
@@ -211,15 +277,9 @@ function changeTool() {
211277 //
212278 if (form_data .value .params_nested ) {
213279 form_data .value .tool_params = { [form_data .value .params_nested ]: {} }
214- dynamicsFormRef .value ?.render (
215- form_data .value .tool_form_field ,
216- form_data .value .tool_params [form_data .value .params_nested ]
217- )
218280 } else {
219281 form_data .value .tool_params = {}
220- dynamicsFormRef .value ?.render (form_data .value .tool_form_field , form_data .value .tool_params )
221282 }
222- console .log (form_data .value .tool_params )
223283}
224284
225285const form_data = computed ({
0 commit comments