diff --git a/src/frontend/src/CustomNodes/GenericNode/index.tsx b/src/frontend/src/CustomNodes/GenericNode/index.tsx index f7fa61edf..e3925fda9 100644 --- a/src/frontend/src/CustomNodes/GenericNode/index.tsx +++ b/src/frontend/src/CustomNodes/GenericNode/index.tsx @@ -7,7 +7,6 @@ import { useSSE } from "../../contexts/SSEContext"; import { alertContext } from "../../contexts/alertContext"; import { PopUpContext } from "../../contexts/popUpContext"; import { typesContext } from "../../contexts/typesContext"; -import NodeModal from "../../modals/NodeModal"; import NodeToolbarComponent from "../../pages/FlowPage/components/nodeToolbarComponent"; import { NodeDataType } from "../../types/flow"; import { nodeColors, nodeIconsLucide } from "../../utils/styleUtils"; @@ -91,13 +90,6 @@ export default function GenericNode({
-
diff --git a/src/frontend/src/modals/EditNodeModal/index.tsx b/src/frontend/src/modals/EditNodeModal/index.tsx index b9b97c97e..05885a242 100644 --- a/src/frontend/src/modals/EditNodeModal/index.tsx +++ b/src/frontend/src/modals/EditNodeModal/index.tsx @@ -35,6 +35,7 @@ import { TabsContext } from "../../contexts/tabsContext"; import { typesContext } from "../../contexts/typesContext"; import { NodeDataType } from "../../types/flow"; import { classNames } from "../../utils/utils"; +import { editNodeToggleType } from "../../types/components"; export default function EditNodeModal({ data, @@ -87,7 +88,8 @@ export default function EditNodeModal({ setNodeValue(!nodeValue); } - const handleOnNewValue = (newValue: any, name) => { + const handleOnNewValue = (newValue, name) => { + console.log({ newValue, name }) data.node.template[name].value = newValue; // Set state to pending setTabsState((prev) => { @@ -210,6 +212,7 @@ export default function EditNodeModal({ ) : data.node.template[n].type === "bool" ? (
{" "} + oi
- ) : data.node.template[n].type === "str" && + ) : data.node.template[n].type === "str" && data.node.template[n].options ? (
- t.charAt(0) !== "_" && - data.node.template[t].advanced && - data.node.template[t].show - ).length - - 1 === - index - ? "pb-4" - : "" - )} - > - {display && ( -
- {title} - {required ? " *" : ""} -
- )} - - {type === "str" && !data.node.template[name].options ? ( -
- {data.node.template[name].list ? ( - { - data.node.template[name].value = t; - }} - /> - ) : data.node.template[name].multiline ? ( - { - data.node.template[name].value = t; - }} - /> - ) : ( - { - data.node.template[name].value = t; - }} - /> - )} -
- ) : type === "bool" ? ( -
- {" "} - { - data.node.template[name].value = t; - setEnabled(t); - }} - size="small" - /> -
- ) : type === "float" ? ( -
- { - data.node.template[name].value = t; - }} - /> -
- ) : type === "str" && data.node.template[name].options ? ( -
- (data.node.template[name].value = newValue)} - value={data.node.template[name].value ?? "Choose an option"} - > -
- ) : type === "int" ? ( -
- { - data.node.template[name].value = t; - }} - /> -
- ) : type === "file" ? ( -
- { - data.node.template[name].value = t; - }} - fileTypes={data.node.template[name].fileTypes} - suffixes={data.node.template[name].suffixes} - onFileChange={(t: string) => { - data.node.template[name].content = t; - }} - > -
- ) : type === "prompt" ? ( -
- { - data.node.template[name].value = t; - }} - /> -
- ) : type === "code" ? ( -
- { - data.node.template[name].value = t; - }} - /> -
- ) : ( -
- )} -
- ); -} diff --git a/src/frontend/src/modals/NodeModal/index.tsx b/src/frontend/src/modals/NodeModal/index.tsx deleted file mode 100644 index 1a53ec312..000000000 --- a/src/frontend/src/modals/NodeModal/index.tsx +++ /dev/null @@ -1,167 +0,0 @@ -import { Dialog, Transition } from "@headlessui/react"; -import { Fragment, useContext, useRef, useState } from "react"; -import IconComponent from "../../components/genericIconComponent"; -import { limitScrollFieldsModal } from "../../constants/constants"; -import { PopUpContext } from "../../contexts/popUpContext"; -import { typesContext } from "../../contexts/typesContext"; -import { NodeDataType } from "../../types/flow"; -import { nodeColors, nodeIconsLucide } from "../../utils/styleUtils"; -import { classNames, toTitleCase } from "../../utils/utils"; -import ModalField from "./components/ModalField"; - -export default function NodeModal({ - data, -}: { - data: NodeDataType; -}): JSX.Element { - const [open, setOpen] = useState(true); - const { closePopUp } = useContext(PopUpContext); - const { types } = useContext(typesContext); - const ref = useRef(); - function setModalOpen(x: boolean) { - setOpen(x); - if (x === false) { - setTimeout(() => { - closePopUp(); - }, 300); - } - } - // any to avoid type conflict - const Icon: any = nodeIconsLucide[types[data.type]]; - return ( - - - -
- - -
-
- - -
- -
-
-
- -
- - {data.type} - -
-
-
-
-
- t.charAt(0) !== "_" && - data.node.template[t].advanced && - data.node.template[t].show - ).length > limitScrollFieldsModal - ? "overflow-scroll overflow-x-hidden custom-scroll" - : "overflow-hidden" - )} - > -
- {Object.keys(data.node.template) - .filter( - (t) => - t.charAt(0) !== "_" && - data.node.template[t].advanced && - data.node.template[t].show - ) - .map((t: string, idx) => { - return ( - - ); - })} -
-
-
-
-
- -
-
-
-
-
-
-
-
- ); -} diff --git a/src/frontend/src/types/components/index.ts b/src/frontend/src/types/components/index.ts index 17ecee167..0472e0a0f 100644 --- a/src/frontend/src/types/components/index.ts +++ b/src/frontend/src/types/components/index.ts @@ -2,6 +2,7 @@ import { ReactElement, ReactNode } from "react"; import { APIClassType } from "../api"; import { FlowStyleType, NodeDataType } from "../flow/index"; import { typesContextType } from "../typesContext"; +import { BlobOptions } from "buffer"; export type InputComponentType = { value: string; @@ -463,3 +464,16 @@ export type chatInputType = { sendMessage: () => void; setChatValue: (value: string) => void; }; + +export type editNodeToggleType = { + advanced: boolean; + info: string; + list: boolean; + multiline: boolean; + name: string; + password: boolean; + placeholder: string; + required: boolean; + show: boolean; + type: string; +};