new attribute dynamic added

This commit is contained in:
anovazzi1 2023-07-04 14:55:17 -03:00
commit 562efe2867
6 changed files with 34 additions and 12 deletions

View file

@ -234,6 +234,7 @@ export default function ParameterComponent({
</div>
) : left === true && type === "code" ? (
<CodeAreaComponent
dynamic = {data.node.template[name].dynamic ?? false}
setNodeClass={(nodeClass) => {
data.node = nodeClass;
}}

View file

@ -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(
<CodeAreaModal
dynamic={dynamic}
value={myValue}
nodeClass={nodeClass}
setNodeClass={setNodeClass}
@ -63,6 +65,7 @@ export default function CodeAreaComponent({
onClick={() => {
openPopUp(
<CodeAreaModal
dynamic={dynamic}
setNodeClass={setNodeClass}
value={myValue}
nodeClass={nodeClass}

View file

@ -66,7 +66,7 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) {
}
}
useEffect(() => {}, [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 }) {
</TableCell>
<TableCell className="p-0 text-center text-gray-900 text-xs w-[300px] dark:text-gray-300">
{data.node.template[n].type === "str" &&
!data.node.template[n].options ? (
!data.node.template[n].options ? (
<div className="mx-auto">
{data.node.template[n].list ? (
<InputListComponent
@ -150,7 +150,7 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) {
disabled={false}
value={
!data.node.template[n].value ||
data.node.template[n].value === ""
data.node.template[n].value === ""
? [""]
: data.node.template[n].value
}
@ -262,6 +262,11 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) {
) : data.node.template[n].type === "code" ? (
<div className="mx-auto">
<CodeAreaComponent
dynamic={data.node.template[n].dynamic ?? false}
setNodeClass={(nodeClass) => {
data.node = nodeClass;
}}
nodeClass={data.node}
disabled={false}
editNode={true}
value={data.node.template[n].value ?? ""}

View file

@ -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" ? (
<div className="w-1/2">
<CodeAreaComponent
dynamic={data.node.template[name].dynamic ?? false}
setNodeClass={(nodeClass) => {
data.node = nodeClass;
}}
nodeClass={data.node}
disabled={false}
value={data.node.template[name].value ?? ""}
onChange={(t: string) => {

View file

@ -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);

View file

@ -61,6 +61,7 @@ export type CodeAreaComponentType = {
editNode?: boolean;
nodeClass: APIClassType;
setNodeClass: (value: APIClassType) => void;
dynamic?: boolean;
};
export type FileComponentType = {