|
@@ -60,7 +60,11 @@ describe("restoreElements", () => {
|
|
|
const rectElement = API.createElement({ type: "rectangle" });
|
|
|
mockSizeHelper.mockImplementation(() => true);
|
|
|
|
|
|
- expect(restore.restoreElements([rectElement], null).length).toBe(0);
|
|
|
+ expect(
|
|
|
+ restore.restoreElements([rectElement], null, {
|
|
|
+ deleteInvisibleElements: true,
|
|
|
+ }),
|
|
|
+ ).toEqual([expect.objectContaining({ isDeleted: true })]);
|
|
|
});
|
|
|
|
|
|
it("should restore text element correctly passing value for each attribute", () => {
|
|
@@ -85,7 +89,7 @@ describe("restoreElements", () => {
|
|
|
});
|
|
|
});
|
|
|
|
|
|
- it("should not delete empty text element when deleteEmptyTextElements is not defined", () => {
|
|
|
+ it("should not delete empty text element when opts.deleteInvisibleElements is not defined", () => {
|
|
|
const textElement = API.createElement({
|
|
|
type: "text",
|
|
|
text: "",
|
|
@@ -115,7 +119,7 @@ describe("restoreElements", () => {
|
|
|
|
|
|
expect(textElement.isDeleted).toBe(false);
|
|
|
const restoredText = restore.restoreElements([textElement], null, {
|
|
|
- deleteEmptyTextElements: true,
|
|
|
+ deleteInvisibleElements: true,
|
|
|
})[0] as ExcalidrawTextElement;
|
|
|
expect(restoredText.isDeleted).toBe(true);
|
|
|
expect(restoredText).toMatchSnapshot({
|
|
@@ -193,13 +197,16 @@ describe("restoreElements", () => {
|
|
|
y: 0,
|
|
|
});
|
|
|
|
|
|
- const restoredElements = restore.restoreElements([arrowElement], null);
|
|
|
+ const restoredElements = restore.restoreElements([arrowElement], null, {
|
|
|
+ deleteInvisibleElements: true,
|
|
|
+ });
|
|
|
|
|
|
const restoredArrow = restoredElements[0] as
|
|
|
| ExcalidrawArrowElement
|
|
|
| undefined;
|
|
|
|
|
|
- expect(restoredArrow).toBeUndefined();
|
|
|
+ expect(restoredArrow).not.toBeUndefined();
|
|
|
+ expect(restoredArrow?.isDeleted).toBe(true);
|
|
|
});
|
|
|
|
|
|
it("should keep 'imperceptibly' small freedraw/line elements", () => {
|
|
@@ -864,6 +871,7 @@ describe("repairing bindings", () => {
|
|
|
let restoredElements = restore.restoreElements(
|
|
|
[container, invisibleBoundElement, boundElement],
|
|
|
null,
|
|
|
+ { deleteInvisibleElements: true },
|
|
|
);
|
|
|
|
|
|
expect(restoredElements).toEqual([
|
|
@@ -871,6 +879,11 @@ describe("repairing bindings", () => {
|
|
|
id: container.id,
|
|
|
boundElements: [obsoleteBinding, invisibleBinding, nonExistentBinding],
|
|
|
}),
|
|
|
+ expect.objectContaining({
|
|
|
+ id: invisibleBoundElement.id,
|
|
|
+ containerId: container.id,
|
|
|
+ isDeleted: true,
|
|
|
+ }),
|
|
|
expect.objectContaining({
|
|
|
id: boundElement.id,
|
|
|
containerId: container.id,
|
|
@@ -880,7 +893,7 @@ describe("repairing bindings", () => {
|
|
|
restoredElements = restore.restoreElements(
|
|
|
[container, invisibleBoundElement, boundElement],
|
|
|
null,
|
|
|
- { repairBindings: true },
|
|
|
+ { repairBindings: true, deleteInvisibleElements: true },
|
|
|
);
|
|
|
|
|
|
expect(restoredElements).toEqual([
|
|
@@ -888,6 +901,11 @@ describe("repairing bindings", () => {
|
|
|
id: container.id,
|
|
|
boundElements: [],
|
|
|
}),
|
|
|
+ expect.objectContaining({
|
|
|
+ id: invisibleBoundElement.id,
|
|
|
+ containerId: container.id,
|
|
|
+ isDeleted: true,
|
|
|
+ }),
|
|
|
expect.objectContaining({
|
|
|
id: boundElement.id,
|
|
|
containerId: container.id,
|