Merge branch 'dynamicNode' into python_custom_node_component

This commit is contained in:
anovazzi1 2023-06-27 16:25:26 -03:00
commit cfa7dd6800
5 changed files with 29 additions and 27 deletions

View file

@ -227,8 +227,8 @@ export default function ParameterComponent({
</div>
) : left === true && type === "code" ? (
<CodeAreaComponent
setTemplate={(template)=>{data.node.template = template}}
template={data.node.template}
setNodeClass={(nodeClass)=>{data.node = nodeClass}}
nodeClass={data.node}
disabled={disabled}
value={data.node.template[name].value ?? ""}
onChange={handleOnNewValue}

View file

@ -11,8 +11,8 @@ export default function CodeAreaComponent({
onChange,
disabled,
editNode = false,
template,
setTemplate,
nodeClass,
setNodeClass,
}: CodeAreaComponentType) {
const [myValue, setMyValue] = useState(value);
const { openPopUp } = useContext(PopUpContext);
@ -39,8 +39,8 @@ export default function CodeAreaComponent({
openPopUp(
<CodeAreaModal
value={myValue}
template={template}
setTemplate={setTemplate}
nodeClass={nodeClass}
setNodeClass={setNodeClass}
setValue={(t: string) => {
setMyValue(t);
onChange(t);
@ -63,9 +63,9 @@ export default function CodeAreaComponent({
onClick={() => {
openPopUp(
<CodeAreaModal
setTemplate={setTemplate}
setNodeClass={setNodeClass}
value={myValue}
template={template}
nodeClass={nodeClass}
setValue={(t: string) => {
setMyValue(t);
onChange(t);

View file

@ -4,6 +4,7 @@ import {
errorsTypeAPI,
InitTypeAPI,
APITemplateType,
APIClassType,
} from "./../../types/api/index";
import { APIObjectType, sendAllProps } from "../../types/api/index";
import axios, { AxiosResponse } from "axios";
@ -321,8 +322,6 @@ export async function postBuildInit(
return await axios.post(`/api/v1/build/init`, flow);
}
export async function postCustomComponent(
code: string
): Promise<AxiosResponse<{ template: APITemplateType }>> {
return await axios.post(`/api/v1/custom_component`, { code });
export async function UpdateTemplate(type:string, template:APITemplateType):Promise<AxiosResponse<{template:APITemplateType}>>{
return await axios.get(`/dynamic_node`);
}

View file

@ -21,18 +21,19 @@ import {
} from "../../components/ui/dialog";
import { Button } from "../../components/ui/button";
import { CODE_PROMPT_DIALOG_SUBTITLE } from "../../constants";
import { APITemplateType } from "../../types/api";
import Loading from "../../components/ui/loading";
import { APIClassType, APITemplateType } from "../../types/api";
export default function CodeAreaModal({
value,
setValue,
template,
setTemplate,
nodeClass,
setNodeClass
}: {
setValue: (value: string) => void;
value: string;
template: APITemplateType;
setTemplate: (template: APITemplateType) => void;
nodeClass: APIClassType,
setNodeClass: (Class: APIClassType) => void;
}) {
const [open, setOpen] = useState(true);
const [code, setCode] = useState(value);
@ -86,14 +87,16 @@ export default function CodeAreaModal({
.catch((_) => {
setLoading(false);
setErrorData({
title: "There is something wrong with this code, please review it",
});
});
postCustomComponent(code).then((apiReturn) => {
title:
"There is something wrong with this code, please review it",
})
}
);
UpdateTemplate('code',nodeClass).then((apiReturn) => {
const data = apiReturn.data;
if (data.template) {
console.log("updated");
setTemplate(data.template);
if (data) {
console.log(data)
setNodeClass(data);
setModalOpen(false);
}
});

View file

@ -1,7 +1,7 @@
import { ForwardRefExoticComponent, ReactElement, ReactNode } from "react";
import { NodeDataType } from "../flow/index";
import { typesContextType } from "../typesContext";
import { APITemplateType } from "../api";
import { APIClassType, APITemplateType } from "../api";
export type InputComponentType = {
value: string;
disabled?: boolean;
@ -56,8 +56,8 @@ export type CodeAreaComponentType = {
onChange: (value: string[] | string) => void;
value: string;
editNode?: boolean;
template: APITemplateType;
setTemplate: (value: APITemplateType) => void;
nodeClass: APIClassType;
setNodeClass: (value: APIClassType) => void;
};
export type FileComponentType = {