feat: add Variables component to flow (#1839)

This commit is contained in:
Dreammy23
2024-08-19 10:42:43 +08:00
committed by GitHub
3 changed files with 30 additions and 1 deletions

View File

@@ -18,6 +18,7 @@ import {
RenderUpload,
RenderCodeEditor,
RenderPassword,
RenderVariables,
} from './node-renderer';
interface NodeParamHandlerProps {
@@ -117,7 +118,7 @@ const NodeParamHandler: React.FC<NodeParamHandlerProps> = ({ node, data, label,
function renderNodeWithUiParam(data: IFlowNodeParameter) {
let defaultValue = data.value ?? data.default;
const props = { data, defaultValue, onChange };
switch (data?.ui?.ui_type) {
case 'select':
return <RenderSelect {...props} />;

View File

@@ -11,3 +11,4 @@ export * from './tree-select';
export * from './codeEditor';
export * from './upload';
export * from './password';
export * from './variables';

View File

@@ -0,0 +1,27 @@
import { IFlowNodeParameter } from '@/types/flow';
import { convertKeysToCamelCase } from '@/utils/flow';
import { Input } from 'antd';
type Props = {
data: IFlowNodeParameter;
defaultValue: any;
onChange: (value: any) => void;
};
export const RenderVariables = (params: Props) => {
const { data, defaultValue, onChange } = params;
const attr = convertKeysToCamelCase(data.ui?.attr || {});
return (
<Input
{...attr}
className="w-full"
placeholder="please input"
defaultValue={defaultValue}
allowClear
onChange={(e) => {
onChange(e.target.value);
}}
/>
);
};