diff --git a/web/app/components/base/form/components/field/variable-or-constant-input.tsx b/web/app/components/base/form/components/field/variable-or-constant-input.tsx index 7092275519..a07e356fa2 100644 --- a/web/app/components/base/form/components/field/variable-or-constant-input.tsx +++ b/web/app/components/base/form/components/field/variable-or-constant-input.tsx @@ -1,8 +1,11 @@ +import type { ChangeEvent } from 'react' import { useState } from 'react' import { RiEditLine } from '@remixicon/react' import cn from '@/utils/classnames' import SegmentedControl from '@/app/components/base/segmented-control' import { VariableX } from '@/app/components/base/icons/src/vender/workflow' +import Input from '@/app/components/base/input' +import VarReferencePicker from '@/app/components/workflow/nodes/_base/components/variable/var-reference-picker' import type { LabelProps } from '../label' import Label from '../label' @@ -22,12 +25,10 @@ const VariableOrConstantInputField = ({ const options = [ { Icon: VariableX, - text: '', value: 'variable', }, { Icon: RiEditLine, - text: '', value: 'constant', }, ] @@ -36,6 +37,14 @@ const VariableOrConstantInputField = ({ setVariableType(value) } + const handleVariableValueChange = () => { + console.log('Variable value changed') + } + + const handleConstantValueChange = (e: ChangeEvent) => { + console.log('Constant value changed:', e.target.value) + } + return (
) diff --git a/web/app/components/base/form/components/field/variable-selector.tsx b/web/app/components/base/form/components/field/variable-selector.tsx new file mode 100644 index 0000000000..3c4042b118 --- /dev/null +++ b/web/app/components/base/form/components/field/variable-selector.tsx @@ -0,0 +1,41 @@ +import cn from '@/utils/classnames' +import VarReferencePicker from '@/app/components/workflow/nodes/_base/components/variable/var-reference-picker' +import type { LabelProps } from '../label' +import Label from '../label' + +type VariableOrConstantInputFieldProps = { + label: string + labelOptions?: Omit + className?: string +} + +const VariableOrConstantInputField = ({ + className, + label, + labelOptions, +}: VariableOrConstantInputFieldProps) => { + const handleVariableValueChange = () => { + console.log('Variable value changed') + } + + return ( +
+
+ ) +} + +export default VariableOrConstantInputField diff --git a/web/app/components/workflow/nodes/data-source/panel.tsx b/web/app/components/workflow/nodes/data-source/panel.tsx index 0d6d95586f..7083dfcc3f 100644 --- a/web/app/components/workflow/nodes/data-source/panel.tsx +++ b/web/app/components/workflow/nodes/data-source/panel.tsx @@ -3,14 +3,25 @@ import { memo } from 'react' import type { DataSourceNodeType } from './types' import type { NodePanelProps } from '@/app/components/workflow/types' import VariableOrConstantInputField from '@/app/components/base/form/components/field/variable-or-constant-input' +import VariableSelector from '@/app/components/base/form/components/field/variable-selector' const Panel: FC> = () => { return (
datasource - +
+ + +
) }