Show import failed error
This commit is contained in:
parent
28ec12b80a
commit
bc35a61397
@ -147,44 +147,51 @@ export default function Modal({
|
|||||||
ast = parser.astify(importSource.src, {
|
ast = parser.astify(importSource.src, {
|
||||||
database: database === DB.GENERIC ? importDb : database,
|
database: database === DB.GENERIC ? importDb : database,
|
||||||
});
|
});
|
||||||
} catch (err) {
|
} catch (error) {
|
||||||
let message = err.message;
|
const message = error.location
|
||||||
if (err.location) {
|
? `${error.name} [Ln ${error.location.start.line}, Col ${error.location.start.column}]: ${error.message}`
|
||||||
message = err.name + " [Ln " + err.location.start.line + ", Col " + err.location.start.column + "]: " + err.message;
|
: error.message;
|
||||||
}
|
|
||||||
|
|
||||||
setError({
|
|
||||||
type: STATUS.ERROR,
|
|
||||||
message
|
|
||||||
});
|
|
||||||
|
|
||||||
|
setError({ type: STATUS.ERROR, message });
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const d = importSQL(
|
try {
|
||||||
ast,
|
const diagramData = importSQL(
|
||||||
database === DB.GENERIC ? importDb : database,
|
ast,
|
||||||
database,
|
database === DB.GENERIC ? importDb : database,
|
||||||
);
|
database,
|
||||||
if (importSource.overwrite) {
|
|
||||||
setTables(d.tables);
|
|
||||||
setRelationships(d.relationships);
|
|
||||||
setTransform((prev) => ({ ...prev, pan: { x: 0, y: 0 } }));
|
|
||||||
setNotes([]);
|
|
||||||
setAreas([]);
|
|
||||||
if (databases[database].hasTypes) setTypes(d.types ?? []);
|
|
||||||
if (databases[database].hasEnums) setEnums(d.enums ?? []);
|
|
||||||
setUndoStack([]);
|
|
||||||
setRedoStack([]);
|
|
||||||
} else {
|
|
||||||
setTables((prev) =>
|
|
||||||
[...prev, ...d.tables].map((t, i) => ({ ...t, id: i })),
|
|
||||||
);
|
|
||||||
setRelationships((prev) =>
|
|
||||||
[...prev, ...d.relationships].map((r, i) => ({ ...r, id: i })),
|
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if (importSource.overwrite) {
|
||||||
|
setTables(diagramData.tables);
|
||||||
|
setRelationships(diagramData.relationships);
|
||||||
|
setTransform((prev) => ({ ...prev, pan: { x: 0, y: 0 } }));
|
||||||
|
setNotes([]);
|
||||||
|
setAreas([]);
|
||||||
|
if (databases[database].hasTypes) setTypes(diagramData.types ?? []);
|
||||||
|
if (databases[database].hasEnums) setEnums(diagramData.enums ?? []);
|
||||||
|
setUndoStack([]);
|
||||||
|
setRedoStack([]);
|
||||||
|
} else {
|
||||||
|
setTables((prev) =>
|
||||||
|
[...prev, ...diagramData.tables].map((t, i) => ({ ...t, id: i })),
|
||||||
|
);
|
||||||
|
setRelationships((prev) =>
|
||||||
|
[...prev, ...diagramData.relationships].map((r, i) => ({
|
||||||
|
...r,
|
||||||
|
id: i,
|
||||||
|
})),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
setModal(MODAL.NONE);
|
||||||
|
} catch (error) {
|
||||||
|
setError({
|
||||||
|
type: STATUS.ERROR,
|
||||||
|
message: `Please check for syntax errors or let us know about the error.`,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
setModal(MODAL.NONE);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const createNewDiagram = (id) => {
|
const createNewDiagram = (id) => {
|
||||||
|
Loading…
Reference in New Issue
Block a user