Fix loading the diagram on open to load in types and enums
This commit is contained in:
parent
c907cfea47
commit
c84990ca6d
@ -17,6 +17,7 @@ import {
|
|||||||
useTransform,
|
useTransform,
|
||||||
useTypes,
|
useTypes,
|
||||||
useUndoRedo,
|
useUndoRedo,
|
||||||
|
useTasks,
|
||||||
} from "../../../hooks";
|
} from "../../../hooks";
|
||||||
import { saveAs } from "file-saver";
|
import { saveAs } from "file-saver";
|
||||||
import { Parser } from "node-sql-parser";
|
import { Parser } from "node-sql-parser";
|
||||||
@ -61,6 +62,7 @@ export default function Modal({
|
|||||||
const { setTypes } = useTypes();
|
const { setTypes } = useTypes();
|
||||||
const { settings } = useSettings();
|
const { settings } = useSettings();
|
||||||
const { setEnums } = useEnums();
|
const { setEnums } = useEnums();
|
||||||
|
const { setTasks } = useTasks();
|
||||||
const { setTransform } = useTransform();
|
const { setTransform } = useTransform();
|
||||||
const { setUndoStack, setRedoStack } = useUndoRedo();
|
const { setUndoStack, setRedoStack } = useUndoRedo();
|
||||||
const [importSource, setImportSource] = useState({
|
const [importSource, setImportSource] = useState({
|
||||||
@ -99,23 +101,31 @@ export default function Modal({
|
|||||||
setDiagramId(diagram.id);
|
setDiagramId(diagram.id);
|
||||||
setTitle(diagram.name);
|
setTitle(diagram.name);
|
||||||
setTables(diagram.tables);
|
setTables(diagram.tables);
|
||||||
setTypes(diagram.types);
|
|
||||||
setRelationships(diagram.references);
|
setRelationships(diagram.references);
|
||||||
setAreas(diagram.areas);
|
setAreas(diagram.areas);
|
||||||
setNotes(diagram.notes);
|
setNotes(diagram.notes);
|
||||||
|
setTasks(diagram.todos ?? []);
|
||||||
setTransform({
|
setTransform({
|
||||||
pan: diagram.pan,
|
pan: diagram.pan,
|
||||||
zoom: diagram.zoom,
|
zoom: diagram.zoom,
|
||||||
});
|
});
|
||||||
setUndoStack([]);
|
setUndoStack([]);
|
||||||
setRedoStack([]);
|
setRedoStack([]);
|
||||||
|
if (databases[database].hasTypes) {
|
||||||
|
setTypes(diagram.types ?? []);
|
||||||
|
}
|
||||||
|
if (databases[database].hasEnums) {
|
||||||
|
setEnums(diagram.enums ?? []);
|
||||||
|
}
|
||||||
window.name = `d ${diagram.id}`;
|
window.name = `d ${diagram.id}`;
|
||||||
} else {
|
} else {
|
||||||
Toast.error("Oops! Something went wrong.");
|
window.name = "";
|
||||||
|
Toast.error(t("didnt_find_diagram"));
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch((error) => {
|
||||||
Toast.error("Oops! Couldn't load diagram.");
|
console.log(error);
|
||||||
|
Toast.error(t("didnt_find_diagram"));
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -227,6 +227,7 @@ const en = {
|
|||||||
no_enums_text: "Define enums here",
|
no_enums_text: "Define enums here",
|
||||||
declare_array: "Declare array",
|
declare_array: "Declare array",
|
||||||
empty_index_name: "Declared an index with no name in table '{{tableName}}'",
|
empty_index_name: "Declared an index with no name in table '{{tableName}}'",
|
||||||
|
didnt_find_diagram: "Oops! Didn't find the diagram.",
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user