diff --git a/src/frontend/src/components/dropdownComponent/index.tsx b/src/frontend/src/components/dropdownComponent/index.tsx index aa1ee20d1..c8fdb96f6 100644 --- a/src/frontend/src/components/dropdownComponent/index.tsx +++ b/src/frontend/src/components/dropdownComponent/index.tsx @@ -2,7 +2,7 @@ import { PopoverAnchor } from "@radix-ui/react-popover"; import Fuse from "fuse.js"; import { cloneDeep } from "lodash"; import { ChangeEvent, useEffect, useRef, useState } from "react"; -import { DropDownComponentType } from "../../types/components"; +import { DropDownComponent } from "../../types/components"; import { cn } from "../../utils/utils"; import { default as ForwardedIconComponent } from "../genericIconComponent"; import ShadTooltip from "../shadTooltipComponent"; @@ -31,7 +31,7 @@ export default function Dropdown({ editNode = false, id = "", children, -}: DropDownComponentType): JSX.Element { +}: DropDownComponent): JSX.Element { const [open, setOpen] = useState(children ? true : false); const refButton = useRef(null); diff --git a/src/frontend/src/components/parameterRenderComponent/component/strRenderComponent/index.tsx b/src/frontend/src/components/parameterRenderComponent/component/strRenderComponent/index.tsx deleted file mode 100644 index 9f0773f67..000000000 --- a/src/frontend/src/components/parameterRenderComponent/component/strRenderComponent/index.tsx +++ /dev/null @@ -1,102 +0,0 @@ -import { handleOnNewValueType } from "@/CustomNodes/hooks/use-handle-new-value"; -import { InputFieldType } from "@/types/api"; -import Dropdown from "../../../dropdownComponent"; -import InputGlobalComponent from "../../../inputGlobalComponent"; -import InputListComponent from "../../../inputListComponent"; -import MultiselectComponent from "../../../multiselectComponent"; -import TextAreaComponent from "../../../textAreaComponent"; - -export function StrRenderComponent({ - templateData, - value, - name, - disabled, - handleOnNewValue, - editNode, - id, -}: { - templateData: Partial; - value: any; - name: string; - disabled: boolean; - handleOnNewValue: handleOnNewValueType; - editNode: boolean; - id: string; -}) { - const onChange = (value: any, dbValue?: boolean, skipSnapshot?: boolean) => { - handleOnNewValue({ value, load_from_db: dbValue }, { skipSnapshot }); - }; - - if (!templateData.options) { - return templateData?.list ? ( - - ) : templateData.multiline ? ( - { - if (templateData.password !== undefined) { - handleOnNewValue( - { password: !templateData.password }, - { skipSnapshot: true }, - ); - } - }} - id={`textarea_${id}`} - disabled={disabled} - editNode={editNode} - value={value ?? ""} - onChange={onChange} - /> - ) : ( - - ); - } - - if (!!templateData.options && !!templateData?.list) { - return ( - - ); - } - - if (!!templateData.options) { - return ( - - ); - } -} diff --git a/src/frontend/src/components/TableNodeComponent/index.tsx b/src/frontend/src/components/parameterRenderComponent/components/TableNodeComponent/index.tsx similarity index 85% rename from src/frontend/src/components/TableNodeComponent/index.tsx rename to src/frontend/src/components/parameterRenderComponent/components/TableNodeComponent/index.tsx index 6c179ec6e..113ead8be 100644 --- a/src/frontend/src/components/TableNodeComponent/index.tsx +++ b/src/frontend/src/components/parameterRenderComponent/components/TableNodeComponent/index.tsx @@ -4,19 +4,20 @@ import { DataTypeDefinition, SelectionChangedEvent } from "ag-grid-community"; import { AgGridReact } from "ag-grid-react"; import { cloneDeep } from "lodash"; import { useMemo, useRef, useState } from "react"; -import { ForwardedIconComponent } from "../../components/genericIconComponent"; -import { TableComponentType } from "../../types/components"; -import { Button } from "../ui/button"; +import { ForwardedIconComponent } from "../../../genericIconComponent"; +import { Button } from "../../../ui/button"; +import { InputProps, TableComponentType } from "../../types"; export default function TableNodeComponent({ tableTitle, description, value, - onChange, editNode = false, id = "", columns, -}: TableComponentType): JSX.Element { + handleOnNewValue, + disabled = false, +}: InputProps): JSX.Element { const dataTypeDefinitions: { [cellDataType: string]: DataTypeDefinition; } = useMemo(() => { @@ -68,7 +69,7 @@ export default function TableNodeComponent({ if (agGrid.current && !agGrid.current.api.isDestroyed()) { const rows: any = []; agGrid.current.api.forEachNode((node) => rows.push(node.data)); - onChange(rows); + handleOnNewValue({ value: rows }); } } function deleteRow() { @@ -85,7 +86,7 @@ export default function TableNodeComponent({ const toDuplicate = selectedNodes.map((node) => cloneDeep(node.data)); setSelectedNodes([]); const rows: any = []; - onChange([...value, ...toDuplicate]); + handleOnNewValue({ value: [...value, ...toDuplicate] }); } } function addRow() { @@ -93,7 +94,7 @@ export default function TableNodeComponent({ componentColumns.forEach((column) => { newRow[column.name] = null; }); - onChange([...value, newRow]); + handleOnNewValue({ value: [...value, newRow] }); } function updateComponent() { @@ -111,7 +112,11 @@ export default function TableNodeComponent({ }); return ( -
+