fix(types): add 'readonly' property to TemplateVariableType to indicate if a variable is read-only

fix(types): add 'selected' property to NodeType to indicate if a node is selected
fix(reactflowUtils): change 'dynamic' property to 'readonly' when updating group node template
fix(reactflowUtils): update group node template fields with correct values and set 'selected' property to false
This commit is contained in:
anovazzi1 2023-09-14 21:51:55 -03:00
commit a273aab2cc
3 changed files with 13 additions and 11 deletions

View file

@ -27,6 +27,7 @@ export type TemplateVariableType = {
placeholder?: string;
list: boolean;
show: boolean;
readonly: boolean;
multiline?: boolean;
value?: any;
dynamic?:boolean;

View file

@ -13,6 +13,7 @@ export type NodeType = {
type?: string;
position: XYPosition;
data: NodeDataType;
selected?: boolean;
};
export type NodeDataType = {

View file

@ -534,7 +534,7 @@ function updateGroupNodeTemplate(template: APITemplateType) {
) {
template[key].advanced = true;
if (template[key].dynamic) {
template[key].dynamic = false;
template[key].readonly = true;
}
}
});
@ -789,7 +789,7 @@ export function expandGroupNode(
) {
const {template} = groupNode.node!
const {flow} = groupNode.node!;
const gNodes = _.cloneDeep(flow!.data!.nodes);
const gNodes:NodeType[] = _.cloneDeep(flow!.data!.nodes);
const gEdges = flow!.data!.edges;
//redirect edges to correct proxy node
let updatedEdges: Edge[] = [];
@ -840,17 +840,17 @@ export function expandGroupNode(
let nodeIndex = gNodes.findIndex((n) => n.id === id);
if (nodeIndex !== -1) {
let display_name: string;
let show = gNodes[nodeIndex].data.node.template[field].show;
let advanced = gNodes[nodeIndex].data.node.template[field].advanced;
if (gNodes[nodeIndex].data.node.template[field].display_name) {
display_name = gNodes[nodeIndex].data.node.template[field].display_name;
let show = gNodes[nodeIndex].data.node!.template[field].show;
let advanced = gNodes[nodeIndex].data.node!.template[field].advanced;
if (gNodes[nodeIndex].data.node!.template[field].display_name) {
display_name = gNodes[nodeIndex].data.node!.template[field].display_name;
} else {
display_name = gNodes[nodeIndex].data.node.template[field].name;
display_name = gNodes[nodeIndex].data.node!.template[field].name;
}
gNodes[nodeIndex].data.node.template[field] = template[key];
gNodes[nodeIndex].data.node.template[field].show = show;
gNodes[nodeIndex].data.node.template[field].advanced = advanced;
gNodes[nodeIndex].data.node.template[field].display_name = display_name;
gNodes[nodeIndex].data.node!.template[field] = template[key];
gNodes[nodeIndex].data.node!.template[field].show = show;
gNodes[nodeIndex].data.node!.template[field].advanced = advanced;
gNodes[nodeIndex].data.node!.template[field].display_name = display_name;
gNodes[nodeIndex].selected=false;
}
});