This commit is contained in:
dengqichen 2024-12-20 14:33:23 +08:00
parent 7045d6ccf7
commit 8cdf4ff318

View File

@ -124,32 +124,6 @@ const NodeConfigDrawer: React.FC<NodeConfigDrawerProps> = ({
} }
}; };
const renderFormItems = () => {
if (!nodeDefinition?.graphConfig.configSchema) {
console.log('NodeConfigModal - No configSchema found');
return null;
}
const {configSchema} = nodeDefinition.graphConfig;
console.log('NodeConfigModal - Rendering form items with schema:', configSchema);
const formItems: ReactNode[] = [];
// 根据 configSchema 生成表单项
if (configSchema.properties) {
Object.entries(configSchema.properties).forEach(([key, property]) => {
console.log('NodeConfigModal - Rendering field:', key, property);
const isRequired = configSchema.required?.includes(key) || false;
const formItem = renderFormItem(key, property, isRequired);
if (formItem) {
formItems.push(formItem);
}
});
}
return formItems;
};
return ( return (
<Drawer <Drawer
title={`编辑节点 - ${nodeDefinition?.nodeName || ''}`} title={`编辑节点 - ${nodeDefinition?.nodeName || ''}`}
@ -167,25 +141,25 @@ const NodeConfigDrawer: React.FC<NodeConfigDrawerProps> = ({
} }
> >
<Form form={form} layout="vertical"> <Form form={form} layout="vertical">
<Tabs> <Tabs items={[
{nodeDefinition?.panelVariablesSchema && ( nodeDefinition?.panelVariablesSchema && {
<Tabs.TabPane tab="面板变量" key="panel"> key: 'panel',
{Object.entries(nodeDefinition.panelVariablesSchema.properties).map(([key, property]) => { label: '面板变量',
children: Object.entries(nodeDefinition.panelVariablesSchema.properties).map(([key, property]) => {
const required = nodeDefinition.panelVariablesSchema?.properties.required?.includes(key) || false; const required = nodeDefinition.panelVariablesSchema?.properties.required?.includes(key) || false;
return renderFormItem(key, property as SchemaProperty, required, false); return renderFormItem(key, property as SchemaProperty, required, false);
})} })
</Tabs.TabPane> },
)} nodeDefinition?.localVariablesSchema && {
{nodeDefinition?.localVariablesSchema && ( key: 'local',
<Tabs.TabPane tab="环境变量" key="local"> label: '环境变量',
{Object.entries(nodeDefinition.localVariablesSchema.properties).map(([key, property]) => { children: Object.entries(nodeDefinition.localVariablesSchema.properties).map(([key, property]) => {
console.log('NodeConfigModal - Local Schema Property:', key, property); console.log('NodeConfigModal - Local Schema Property:', key, property);
const required = nodeDefinition.localVariablesSchema?.properties.required?.includes(key) || false; const required = nodeDefinition.localVariablesSchema?.properties.required?.includes(key) || false;
return renderFormItem(key, property as SchemaProperty, required, true); return renderFormItem(key, property as SchemaProperty, required, true);
})} })
</Tabs.TabPane> }
)} ].filter(Boolean)} />
</Tabs>
</Form> </Form>
</Drawer> </Drawer>
); );