From 562efe28679a12a72f718aeb079972fb17f1b8cb Mon Sep 17 00:00:00 2001 From: anovazzi1 Date: Tue, 4 Jul 2023 14:55:17 -0300 Subject: [PATCH] new attribute dynamic added --- .../components/parameterComponent/index.tsx | 1 + .../components/codeAreaComponent/index.tsx | 3 +++ .../src/modals/EditNodeModal/index.tsx | 11 ++++++--- .../NodeModal/components/ModalField/index.tsx | 7 +++++- .../src/modals/codeAreaModal/index.tsx | 23 ++++++++++++------- src/frontend/src/types/components/index.ts | 1 + 6 files changed, 34 insertions(+), 12 deletions(-) diff --git a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx index af3af0aa7..ca34e345f 100644 --- a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx +++ b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx @@ -234,6 +234,7 @@ export default function ParameterComponent({ ) : left === true && type === "code" ? ( { data.node = nodeClass; }} diff --git a/src/frontend/src/components/codeAreaComponent/index.tsx b/src/frontend/src/components/codeAreaComponent/index.tsx index 6b9cc7725..010b9cfbf 100644 --- a/src/frontend/src/components/codeAreaComponent/index.tsx +++ b/src/frontend/src/components/codeAreaComponent/index.tsx @@ -13,6 +13,7 @@ export default function CodeAreaComponent({ editNode = false, nodeClass, setNodeClass, + dynamic, }: CodeAreaComponentType) { const [myValue, setMyValue] = useState(value); const { openPopUp } = useContext(PopUpContext); @@ -38,6 +39,7 @@ export default function CodeAreaComponent({ onClick={() => { openPopUp( { openPopUp( {}, [closePopUp, data.node.template]); + useEffect(() => { }, [closePopUp, data.node.template]); function changeAdvanced(node): void { Object.keys(data.node.template).filter((n, i) => { @@ -142,7 +142,7 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) { {data.node.template[n].type === "str" && - !data.node.template[n].options ? ( + !data.node.template[n].options ? (
{data.node.template[n].list ? ( { + data.node = nodeClass; + }} + nodeClass={data.node} disabled={false} editNode={true} value={data.node.template[n].value ?? ""} diff --git a/src/frontend/src/modals/NodeModal/components/ModalField/index.tsx b/src/frontend/src/modals/NodeModal/components/ModalField/index.tsx index a0b0c150c..037409fd7 100644 --- a/src/frontend/src/modals/NodeModal/components/ModalField/index.tsx +++ b/src/frontend/src/modals/NodeModal/components/ModalField/index.tsx @@ -64,7 +64,7 @@ export default function ModalField({ disabled={false} value={ !data.node.template[name].value || - data.node.template[name].value === "" + data.node.template[name].value === "" ? [""] : data.node.template[name].value } @@ -160,6 +160,11 @@ export default function ModalField({ ) : type === "code" ? (
{ + data.node = nodeClass; + }} + nodeClass={data.node} disabled={false} value={data.node.template[name].value ?? ""} onChange={(t: string) => { diff --git a/src/frontend/src/modals/codeAreaModal/index.tsx b/src/frontend/src/modals/codeAreaModal/index.tsx index 1605a21db..e08662349 100644 --- a/src/frontend/src/modals/codeAreaModal/index.tsx +++ b/src/frontend/src/modals/codeAreaModal/index.tsx @@ -35,11 +35,13 @@ export default function CodeAreaModal({ setValue, nodeClass, setNodeClass, + dynamic }: { setValue: (value: string) => void; value: string; nodeClass: APIClassType; setNodeClass: (Class: APIClassType) => void; + dynamic?: boolean; }) { const [open, setOpen] = useState(true); const [code, setCode] = useState(value); @@ -61,7 +63,8 @@ export default function CodeAreaModal({ function handleClick() { setLoading(true); - postValidateCode(code) + if(!dynamic){ + postValidateCode(code) .then((apiReturn) => { setLoading(false); if (apiReturn.data) { @@ -98,13 +101,17 @@ export default function CodeAreaModal({ title: "There is something wrong with this code, please review it", }); }); - postCustomComponent(code, nodeClass).then((apiReturn) => { - const {data} = apiReturn; - if (data) { - setNodeClass(data); - setModalOpen(false); - } - }); + } + else + { + postCustomComponent(code, nodeClass).then((apiReturn) => { + const {data} = apiReturn; + if (data) { + setNodeClass(data); + setModalOpen(false); + } + }); + } // axios.get("/api/v1/custom_component_error").catch((err) => { // console.log(err.response.data); // setError(err.response.data); diff --git a/src/frontend/src/types/components/index.ts b/src/frontend/src/types/components/index.ts index 85f3ec1cd..76a1df69d 100644 --- a/src/frontend/src/types/components/index.ts +++ b/src/frontend/src/types/components/index.ts @@ -61,6 +61,7 @@ export type CodeAreaComponentType = { editNode?: boolean; nodeClass: APIClassType; setNodeClass: (value: APIClassType) => void; + dynamic?: boolean; }; export type FileComponentType = {