hotfix for file nodes and save on localStorage

This commit is contained in:
anovazzi1 2023-05-28 10:49:23 -03:00
commit 129088d61e
2 changed files with 20 additions and 15 deletions

View file

@ -86,6 +86,7 @@ export default function GenericNode({
deleteNode(data.id); deleteNode(data.id);
return; return;
} }
console.log(data)
return ( return (
<div <div

View file

@ -51,30 +51,34 @@ export function TabsProvider({ children }: { children: ReactNode }) {
return newNodeId.current; return newNodeId.current;
} }
function save() { function save() {
// added clone deep to avoid mutating the original object
let Saveflows = _.cloneDeep(flows); let Saveflows = _.cloneDeep(flows);
if (Saveflows.length !== 0) if (Saveflows.length !== 0){
Saveflows.forEach((flow) => { Saveflows.forEach((flow) => {
if(flow.data && flow.data?.nodes) flow.data?.nodes.forEach((node) => { if(flow.data && flow.data?.nodes) flow.data?.nodes.forEach((node) => {
console.log(node.data.type) console.log(node.data.type)
Object.keys(node.data.node.template).forEach((key) => { //looking for file fields to prevent saving the content and breaking the flow for exceeding the the data limite for local storage
console.log(node.data.node.template[key].type) Object.keys(node.data.node.template).forEach((key) => {
if(node.data.node.template[key].type==="file"){ console.log(node.data.node.template[key].type)
console.log(node.data.node.template[key]) if(node.data.node.template[key].type==="file"){
node.data.node.template[key].content = ""; console.log(node.data.node.template[key])
} node.data.node.template[key].content = null;
}) node.data.node.template[key].value = "";
})
}) }
window.localStorage.setItem( })
})
})
window.localStorage.setItem(
"tabsData", "tabsData",
JSON.stringify({ tabIndex, flows:Saveflows, id}) JSON.stringify({ tabIndex, flows:Saveflows, id})
); );
}
} }
useEffect(() => { useEffect(() => {
//get tabs locally saved //get tabs locally saved
let cookie = window.localStorage.getItem("tabsData"); let cookie = window.localStorage.getItem("tabsData");
console.log(cookie)
if (cookie && Object.keys(templates).length > 0) { if (cookie && Object.keys(templates).length > 0) {
let cookieObject: LangFlowState = JSON.parse(cookie); let cookieObject: LangFlowState = JSON.parse(cookie);
cookieObject.flows.forEach((flow) => { cookieObject.flows.forEach((flow) => {