Update relationships that come after deleted tableId
This commit is contained in:
parent
96e2daad6d
commit
113e0f3593
@ -297,14 +297,25 @@ export default function Editor() {
|
|||||||
]);
|
]);
|
||||||
setRedoStack([]);
|
setRedoStack([]);
|
||||||
}
|
}
|
||||||
setTables((prev) =>
|
setRelationships((prevR) => {
|
||||||
prev.filter((e) => e.id !== id).map((e, i) => ({ ...e, id: i }))
|
return prevR
|
||||||
);
|
.filter((e) => !(e.startTableId === id || e.endTableId === id))
|
||||||
setRelationships((prev) =>
|
.map((e, i) => {
|
||||||
prev
|
const newR = { ...e };
|
||||||
.filter((e) => e.startTableId !== id && e.endTableId !== id)
|
|
||||||
.map((e, i) => ({ ...e, id: i }))
|
if (e.startTableId > id) {
|
||||||
);
|
newR.startTableId = e.startTableId - 1;
|
||||||
|
}
|
||||||
|
if (e.endTableId > id) {
|
||||||
|
newR.endTableId = e.endTableId - 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return { ...newR, id: i };
|
||||||
|
});
|
||||||
|
});
|
||||||
|
setTables((prev) => {
|
||||||
|
return prev.filter((e) => e.id !== id).map((e, i) => ({ ...e, id: i }));
|
||||||
|
});
|
||||||
if (id === selectedElement.id) {
|
if (id === selectedElement.id) {
|
||||||
setSelectedElement({
|
setSelectedElement({
|
||||||
element: ObjectType.NONE,
|
element: ObjectType.NONE,
|
||||||
@ -450,11 +461,11 @@ export default function Editor() {
|
|||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (
|
if (
|
||||||
tables.length === 0 &&
|
tables?.length === 0 &&
|
||||||
areas.length === 0 &&
|
areas?.length === 0 &&
|
||||||
notes.length === 0 &&
|
notes?.length === 0 &&
|
||||||
types.length === 0 &&
|
types?.length === 0 &&
|
||||||
tasks.length === 0
|
tasks?.length === 0
|
||||||
)
|
)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -465,11 +476,11 @@ export default function Editor() {
|
|||||||
undoStack,
|
undoStack,
|
||||||
redoStack,
|
redoStack,
|
||||||
settings.autosave,
|
settings.autosave,
|
||||||
tables.length,
|
tables?.length,
|
||||||
areas.length,
|
areas?.length,
|
||||||
notes.length,
|
notes?.length,
|
||||||
types.length,
|
types?.length,
|
||||||
relationships.length,
|
relationships?.length,
|
||||||
tasks?.length,
|
tasks?.length,
|
||||||
settings.pan,
|
settings.pan,
|
||||||
settings.zoom,
|
settings.zoom,
|
||||||
@ -640,7 +651,7 @@ export default function Editor() {
|
|||||||
setNotes(diagram.notes);
|
setNotes(diagram.notes);
|
||||||
setSettings((prev) => ({
|
setSettings((prev) => ({
|
||||||
...prev,
|
...prev,
|
||||||
pan: {x: 0, y: 0},
|
pan: { x: 0, y: 0 },
|
||||||
zoom: 1,
|
zoom: 1,
|
||||||
}));
|
}));
|
||||||
setUndoStack([]);
|
setUndoStack([]);
|
||||||
|
Loading…
Reference in New Issue
Block a user