Fixed bug where PromptComponent does not save, but there is no Clean Edges now

This commit is contained in:
Lucas Oliveira 2023-07-19 11:01:23 -03:00
commit be712a45af
3 changed files with 6 additions and 22 deletions

View file

@ -17,7 +17,6 @@ import { MAX_LENGTH_TO_SCROLL_TOOLTIP } from "../../../../constants";
import { TabsContext } from "../../../../contexts/tabsContext";
import { typesContext } from "../../../../contexts/typesContext";
import { ParameterComponentType } from "../../../../types/components";
import { cleanEdges } from "../../../../util/reactflowUtils";
import {
classNames,
getRandomKeyByssmm,
@ -314,15 +313,6 @@ export default function ParameterComponent({
field_name={name}
setNodeClass={(nodeClass) => {
data.node = nodeClass;
if (reactFlowInstance) {
cleanEdges({
flow: {
edges: reactFlowInstance.getEdges(),
nodes: reactFlowInstance.getNodes(),
},
updateEdge: (edge) => reactFlowInstance.setEdges(edge),
});
}
}}
nodeClass={data.node}
disabled={disabled}

View file

@ -1,9 +1,8 @@
import { useContext, useEffect, useState } from "react";
import { useEffect } from "react";
import GenericModal from "../../modals/genericModal";
import { TextAreaComponentType } from "../../types/components";
import { ExternalLink } from "lucide-react";
import { typesContext } from "../../contexts/typesContext";
import { postValidatePrompt } from "../../controllers/API";
export default function PromptAreaComponent({
@ -15,17 +14,13 @@ export default function PromptAreaComponent({
disabled,
editNode = false,
}: TextAreaComponentType) {
const [myValue, setMyValue] = useState(value);
const { reactFlowInstance } = useContext(typesContext);
useEffect(() => {
if (disabled) {
setMyValue("");
onChange("");
}
}, [disabled, onChange]);
}, [disabled]);
useEffect(() => {
setMyValue(value);
if (value !== "" && !editNode) {
postValidatePrompt(field_name, value, nodeClass).then((apiReturn) => {
if (apiReturn.data) {
@ -34,17 +29,16 @@ export default function PromptAreaComponent({
}
});
}
}, [value, reactFlowInstance]);
}, []);
return (
<div className={disabled ? "pointer-events-none w-full " : " w-full"}>
<GenericModal
type={"prompt"}
value={myValue}
value={value}
buttonText="Check & Save"
modalTitle="Edit Prompt"
setValue={(t: string) => {
setMyValue(t);
onChange(t);
}}
nodeClass={nodeClass}
@ -59,7 +53,7 @@ export default function PromptAreaComponent({
" input-primary text-muted-foreground "
}
>
{myValue !== "" ? myValue : "Type your prompt here..."}
{value !== "" ? value : "Type your prompt here..."}
</span>
{!editNode && (
<ExternalLink

View file

@ -128,7 +128,6 @@ export default function GenericModal({
postValidatePrompt(field_name, inputValue, nodeClass)
.then((apiReturn) => {
if (apiReturn.data) {
setNodeClass(apiReturn.data?.frontend_node);
let inputVariables = apiReturn.data.input_variables ?? [];
if (inputVariables && inputVariables.length === 0) {
setIsEdit(true);
@ -140,6 +139,7 @@ export default function GenericModal({
setSuccessData({
title: "Prompt is ready",
});
setNodeClass(apiReturn.data?.frontend_node);
setModalOpen(closeModal);
setValue(inputValue);
}