// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id691": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id691": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id687", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 18, "width": 100, "x": -100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id688", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 9, "width": 100, "x": 100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id702", "fixedPoint": [ "0.50000", 1, ], "focus": 0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": "102.45605", "id": "id691", "index": "a2", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "102.80179", "102.45605", ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 37, "width": "102.80179", "x": "-0.42182", "y": 0, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id691", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 50, "id": "id702", "index": "a3", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 14, "width": 50, "x": 100, "y": 100, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] number of elements 1`] = `4`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] number of renders 1`] = `21`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id688": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "id691", "type": "arrow", }, ], }, }, "id691": { "deleted": { "endBinding": { "elementId": "id702", "fixedPoint": [ "0.50000", 1, ], "focus": 0, "gap": 1, }, "height": "70.45017", "points": [ [ 0, 0, ], [ "100.70774", "70.45017", ], ], "startBinding": { "elementId": "id687", "focus": "0.02970", "gap": 1, }, }, "inserted": { "endBinding": { "elementId": "id688", "focus": "-0.02000", "gap": 1, }, "height": "0.09250", "points": [ [ 0, 0, ], [ "98.58579", "0.09250", ], ], "startBinding": { "elementId": "id687", "focus": "0.02000", "gap": 1, }, }, }, "id702": { "deleted": { "boundElements": [ { "id": "id691", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id709", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id687": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "id691", "type": "arrow", }, ], }, }, "id691": { "deleted": { "height": "102.45584", "points": [ [ 0, 0, ], [ "102.79971", "102.45584", ], ], "startBinding": null, "y": 0, }, "inserted": { "height": "70.33521", "points": [ [ 0, 0, ], [ "100.78887", "70.33521", ], ], "startBinding": { "elementId": "id687", "focus": "0.02970", "gap": 1, }, "y": "35.20327", }, }, }, }, "id": "id710", }, ] `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and the arrow got bound to a different element in the meantime > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id687": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id688": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id690", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id691": true, }, "selectedLinearElementId": "id691", }, "inserted": { "selectedElementIds": {}, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id691": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a2", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id693", }, ] `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id668": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id668": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id664", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 19, "width": 100, "x": 150, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id665", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 9, "width": 100, "x": 150, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "id": "id668", "index": "a2", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 33, "width": 100, "x": "149.29289", "y": 0, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] number of renders 1`] = `23`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id665": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "id668", "type": "arrow", }, ], }, }, "id668": { "deleted": { "endBinding": null, "points": [ [ 0, 0, ], [ 100, 0, ], ], }, "inserted": { "endBinding": { "elementId": "id665", "focus": -0, "gap": 1, }, "points": [ [ 0, 0, ], [ 0, 0, ], ], }, }, }, }, "id": "id685", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id664": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "id668", "type": "arrow", }, ], }, }, "id668": { "deleted": { "points": [ [ 0, 0, ], [ 100, 0, ], ], "startBinding": null, }, "inserted": { "points": [ [ 0, 0, ], [ 100, 0, ], ], "startBinding": { "elementId": "id664", "focus": 0, "gap": 1, }, }, }, }, }, "id": "id686", }, ] `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind bindings when both are updated through the history and there are no conflicting updates in the meantime > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id664": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id665": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id667", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id668": true, }, "selectedLinearElementId": "id668", }, "inserted": { "selectedElementIds": {}, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id668": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a2", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id670", }, ] `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": null, "endBinding": { "elementId": "id712", "fixedPoint": [ "0.50000", 1, ], "focus": 0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": "1.30038", "id": "id715", "index": "Zz", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", "1.30038", ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id711", "fixedPoint": [ 1, "0.50000", ], "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 11, "width": "98.58579", "x": "0.70711", "y": 0, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id715", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id711", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": -100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id715", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id712", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added arrow when it's bindable elements are added through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id711": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id712": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id715": { "deleted": { "endBinding": { "elementId": "id712", "fixedPoint": [ "0.50000", 1, ], "focus": 0, "gap": 1, }, "startBinding": { "elementId": "id711", "fixedPoint": [ 1, "0.50000", ], "focus": 0, "gap": 1, }, }, "inserted": { "endBinding": null, "startBinding": null, }, }, }, }, "id": "id719", }, ] `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": null, "endBinding": { "elementId": "id721", "fixedPoint": [ 1, "0.50000", ], "focus": 0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": "1.30038", "id": "id725", "index": "a0", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", "1.30038", ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id720", "fixedPoint": [ "0.50000", 1, ], "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 11, "width": "98.58579", "x": "0.70711", "y": 0, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id725", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id720", "index": "a0V", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 12, "width": 100, "x": -100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id725", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id721", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 11, "width": 100, "x": 100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should rebind remotely added bindable elements when it's arrow is added through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id725": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": null, "endBinding": { "elementId": "id721", "fixedPoint": [ 1, "0.50000", ], "focus": 0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": "11.27227", "index": "a0", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", "11.27227", ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id720", "fixedPoint": [ "0.50000", 1, ], "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": "98.58579", "x": "0.70711", "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id720": { "deleted": { "boundElements": [ { "id": "id725", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id721": { "deleted": { "boundElements": [ { "id": "id725", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id731", }, ] `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should unbind remotely deleted bindable elements from arrow when the arrow is added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should unbind remotely deleted bindable elements from arrow when the arrow is added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id732", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": -100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should unbind remotely deleted bindable elements from arrow when the arrow is added through the history > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id733", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should unbind remotely deleted bindable elements from arrow when the arrow is added through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should unbind remotely deleted bindable elements from arrow when the arrow is added through the history > [end of test] number of renders 1`] = `4`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should unbind remotely deleted bindable elements from arrow when the arrow is added through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should unbind remotely deleted bindable elements from arrow when the arrow is added through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id732": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id733": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id735", }, ] `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id740": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id740", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id736", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": -100, "y": -50, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id740", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id737", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": 500, "y": -500, } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id737", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": "374.05754", "id": "id740", "index": "a2", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "502.78936", "-374.05754", ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id736", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 10, "width": "502.78936", "x": "-0.83465", "y": "-36.58211", } `; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in arrows and their bindable elements > should update bound element points when rectangle was remotely moved and arrow is added back through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id736": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id737": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id739", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id740": true, }, "selectedLinearElementId": "id740", }, "inserted": { "selectedElementIds": {}, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id740": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id737", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a2", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id736", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id736": { "deleted": { "boundElements": [ { "id": "id740", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id737": { "deleted": { "boundElements": [ { "id": "id740", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id744", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id618", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id613", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "id": "id614", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 6, "verticalAlign": "top", "width": 100, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] element 2 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id613", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id618", "index": "a2", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "updated": 1, "version": 11, "verticalAlign": "top", "width": 30, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id613": { "deleted": { "isDeleted": false, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 10, "y": 10, }, }, "id614": { "deleted": { "containerId": null, }, "inserted": { "containerId": null, }, }, }, }, "id": "id622", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the container is added through the history > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id628", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id623", "index": "Zz", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 11, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id623", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "id": "id624", "index": "a0", "isDeleted": true, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 9, "verticalAlign": "top", "width": 100, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] element 2 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id623", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id628", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "updated": 1, "version": 11, "verticalAlign": "top", "width": 30, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": { "id624": { "deleted": { "containerId": "id623", "isDeleted": true, }, "inserted": { "containerId": null, "isDeleted": false, }, }, }, "removed": {}, "updated": { "id623": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "id624", "type": "text", }, ], }, }, }, }, "id": "id632", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should preserve latest remotely added binding and unbind previous one when the text is added through history > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id582", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id577", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 10, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id577", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id582", "index": "a0V", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "updated": 1, "version": 7, "verticalAlign": "top", "width": 30, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] element 2 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id578", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 9, "verticalAlign": "top", "width": 80, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id577": { "deleted": { "boundElements": [ { "id": "id582", "type": "text", }, ], }, "inserted": { "boundElements": [ { "id": "id578", "type": "text", }, ], }, }, "id578": { "deleted": { "containerId": null, }, "inserted": { "containerId": "id577", }, }, "id582": { "deleted": { "containerId": "id577", }, "inserted": { "containerId": null, }, }, }, }, "id": "id586", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the container got bound to a different text in the meantime > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id587", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id588", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 60, "id": "id592", "index": "a0V", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 50, "x": 100, "y": 100, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] element 2 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id592", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 50, "id": "id588", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 13, "verticalAlign": "top", "width": 40, "x": 105, "y": 105, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id587": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "id588", "type": "text", }, ], }, }, "id588": { "deleted": { "containerId": "id592", }, "inserted": { "containerId": "id587", }, }, "id592": { "deleted": { "boundElements": [ { "id": "id588", "type": "text", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id596", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and the text got bound to a different container in the meantime > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and there no conflicting updates in the meantime > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and there no conflicting updates in the meantime > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id568", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 9, "width": 100, "x": 35, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and there no conflicting updates in the meantime > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id569", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 10, "verticalAlign": "top", "width": 80, "x": 40, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and there no conflicting updates in the meantime > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and there no conflicting updates in the meantime > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and there no conflicting updates in the meantime > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id568": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "id569", "type": "text", }, ], }, }, "id569": { "deleted": { "containerId": null, }, "inserted": { "containerId": "id568", }, }, }, }, "id": "id576", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind bindings when both are updated through the history and there no conflicting updates in the meantime > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added bound text when it's container is added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added bound text when it's container is added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id598", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id597", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added bound text when it's container is added through the history > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id597", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id598", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 12, "verticalAlign": "top", "width": 80, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added bound text when it's container is added through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added bound text when it's container is added through the history > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added bound text when it's container is added through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added bound text when it's container is added through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id597": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 10, "y": 10, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id598": { "deleted": { "containerId": "id597", }, "inserted": { "containerId": null, }, }, }, }, "id": "id604", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added container when it's bound text is added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added container when it's bound text is added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id606", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id605", "index": "Zz", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 11, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added container when it's bound text is added through the history > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id605", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id606", "index": "a0", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 8, "verticalAlign": "top", "width": 80, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added container when it's bound text is added through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added container when it's bound text is added through the history > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added container when it's bound text is added through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should rebind remotely added container when it's bound text is added through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id606": { "deleted": { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id605", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "index": "a0", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "verticalAlign": "top", "width": 80, "x": 15, "y": 15, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id605": { "deleted": { "boundElements": [ { "id": "id606", "type": "text", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id612", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw bound text to match container dimensions when the bound text is updated through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw bound text to match container dimensions when the bound text is updated through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id658", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id657", "index": "Zz", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 3, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw bound text to match container dimensions when the bound text is updated through the history > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id657", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id658", "index": "a0", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 7, "verticalAlign": "top", "width": 80, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw bound text to match container dimensions when the bound text is updated through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw bound text to match container dimensions when the bound text is updated through the history > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw bound text to match container dimensions when the bound text is updated through the history > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id658": { "deleted": { "angle": 0, "x": 15, "y": 15, }, "inserted": { "angle": 0, "x": 15, "y": 15, }, }, }, }, "id": "id663", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw bound text to match container dimensions when the bound text is updated through the history > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw remotely added bound text when it's container is updated through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw remotely added bound text when it's container is updated through the history > [end of test] element 0 1`] = ` { "angle": 90, "backgroundColor": "transparent", "boundElements": [ { "id": "id650", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id649", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": 200, "y": 200, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw remotely added bound text when it's container is updated through the history > [end of test] element 1 1`] = ` { "angle": 90, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id649", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id650", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 6, "verticalAlign": "top", "width": 80, "x": 205, "y": 205, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw remotely added bound text when it's container is updated through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw remotely added bound text when it's container is updated through the history > [end of test] number of renders 1`] = `10`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw remotely added bound text when it's container is updated through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should redraw remotely added bound text when it's container is updated through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id649": { "deleted": { "angle": 90, "x": 200, "y": 200, }, "inserted": { "angle": 0, "x": 10, "y": 10, }, }, }, }, "id": "id656", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted bound text from container when the container is added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted bound text from container when the container is added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id633", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted bound text from container when the container is added through the history > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id633", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "id": "id634", "index": "a1", "isDeleted": true, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 3, "verticalAlign": "top", "width": 100, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted bound text from container when the container is added through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted bound text from container when the container is added through the history > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted bound text from container when the container is added through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted bound text from container when the container is added through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id633": { "deleted": { "boundElements": [], "isDeleted": false, }, "inserted": { "boundElements": [ { "id": "id634", "type": "text", }, ], "isDeleted": true, }, }, }, "updated": {}, }, "id": "id640", }, ] `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted container from bound text when the text is added through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted container from bound text when the text is added through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id642", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id641", "index": "Zz", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 3, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted container from bound text when the text is added through the history > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "id": "id642", "index": "a0", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "que pasa", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "que pasa", "textAlign": "left", "type": "text", "updated": 1, "version": 8, "verticalAlign": "top", "width": 100, "x": 15, "y": 15, } `; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted container from bound text when the text is added through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted container from bound text when the text is added through the history > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted container from bound text when the text is added through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in bound text elements and their containers > should unbind remotely deleted container from bound text when the text is added through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id642": { "deleted": { "containerId": null, "isDeleted": false, }, "inserted": { "containerId": "id641", "isDeleted": true, }, }, }, "updated": {}, }, "id": "id648", }, ] `; exports[`history > multiplayer undo/redo > conflicts in frames and their children > should not rebind frame child with frame when frame was remotely deleted and frame child is added back through the history > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > conflicts in frames and their children > should not rebind frame child with frame when frame was remotely deleted and frame child is added back through the history > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id746", "index": "Zz", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 10, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > conflicts in frames and their children > should not rebind frame child with frame when frame was remotely deleted and frame child is added back through the history > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 500, "id": "id745", "index": "a0", "isDeleted": true, "link": null, "locked": false, "name": null, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "frame", "updated": 1, "version": 3, "width": 500, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > conflicts in frames and their children > should not rebind frame child with frame when frame was remotely deleted and frame child is added back through the history > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > conflicts in frames and their children > should not rebind frame child with frame when frame was remotely deleted and frame child is added back through the history > [end of test] number of renders 1`] = `13`; exports[`history > multiplayer undo/redo > conflicts in frames and their children > should not rebind frame child with frame when frame was remotely deleted and frame child is added back through the history > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > conflicts in frames and their children > should not rebind frame child with frame when frame was remotely deleted and frame child is added back through the history > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id746": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "Zz", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 10, "y": 10, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id755", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id746": { "deleted": { "frameId": "id745", }, "inserted": { "frameId": null, }, }, }, }, "id": "id756", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when editing group contains only remotely deleted elements > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id469": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when editing group contains only remotely deleted elements > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id468", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when editing group contains only remotely deleted elements > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id469", "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 100, "y": 100, } `; exports[`history > multiplayer undo/redo > should iterate through the history when editing group contains only remotely deleted elements > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > should iterate through the history when editing group contains only remotely deleted elements > [end of test] number of renders 1`] = `13`; exports[`history > multiplayer undo/redo > should iterate through the history when editing group contains only remotely deleted elements > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should iterate through the history when editing group contains only remotely deleted elements > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id468": true, "id469": true, }, "selectedGroupIds": { "A": true, }, }, "inserted": { "selectedElementIds": {}, "selectedGroupIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id468": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "index": "a0", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, "id469": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": 100, }, "inserted": { "isDeleted": true, }, }, }, }, "id": "id481", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "editingGroupId": "A", "selectedElementIds": {}, "selectedGroupIds": {}, }, "inserted": { "editingGroupId": null, "selectedElementIds": { "id468": true, }, "selectedGroupIds": { "A": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id482", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "editingGroupId": null, "selectedElementIds": {}, }, "inserted": { "editingGroupId": "A", "selectedElementIds": { "id469": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id485", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "#ffc9c9", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": "elementBackground", "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id418": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id410", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 3, "width": 10, "x": 10, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "#ffc9c9", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id413", "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 10, "x": 20, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "#ffc9c9", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id418", "index": "a2", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 10, "x": 50, "y": 50, } `; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] number of renders 1`] = `17`; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should iterate through the history when element changes relate only to remotely deleted elements > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id410": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id410": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id412", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id413": true, }, }, "inserted": { "selectedElementIds": { "id410": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id413": { "deleted": { "angle": 0, "backgroundColor": "#ffc9c9", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 20, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, }, "id": "id428", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id413": { "deleted": { "backgroundColor": "#ffc9c9", }, "inserted": { "backgroundColor": "transparent", }, }, }, }, "id": "id429", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id418": true, }, }, "inserted": { "selectedElementIds": { "id413": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id418": { "deleted": { "angle": 0, "backgroundColor": "#ffc9c9", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a2", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 50, "y": 50, }, "inserted": { "isDeleted": true, }, }, }, }, "id": "id430", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id418": { "deleted": { "x": 50, "y": 50, }, "inserted": { "x": 30, "y": 30, }, }, }, }, "id": "id431", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id433": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id433": true, "id434": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id432", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id433", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 20, "y": 20, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id434", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 30, "y": 30, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] number of renders 1`] = `15`; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should iterate through the history when selected elements relate only to remotely deleted elements > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id432": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id432": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 10, "y": 10, }, "inserted": { "isDeleted": true, }, }, "id433": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 20, "y": 20, }, "inserted": { "isDeleted": true, }, }, "id434": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 30, "y": 30, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id437", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id433": true, }, }, "inserted": { "selectedElementIds": { "id432": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id450", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id434": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id451", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id452": true, "id453": true, "id454": true, "id455": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": { "A": true, "B": true, }, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id452", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id453", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "B", ], "height": 100, "id": "id454", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "B", ], "height": 100, "id": "id455", "index": "a3", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] number of elements 1`] = `4`; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] number of renders 1`] = `15`; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should iterate through the history when selected groups contain only remotely deleted elements > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id452": true, "id453": true, }, "selectedGroupIds": { "A": true, }, }, "inserted": { "selectedElementIds": {}, "selectedGroupIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id466", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id454": true, "id455": true, }, "selectedGroupIds": { "B": true, }, }, "inserted": { "selectedElementIds": {}, "selectedGroupIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id467", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when selected or editing linear element was remotely deleted > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id486": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected or editing linear element was remotely deleted > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id486", "index": "a0", "isDeleted": true, "lastCommittedPoint": [ 10, 10, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 10, 10, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 7, "width": 10, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when selected or editing linear element was remotely deleted > [end of test] number of elements 1`] = `1`; exports[`history > multiplayer undo/redo > should iterate through the history when selected or editing linear element was remotely deleted > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > should iterate through the history when selected or editing linear element was remotely deleted > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should iterate through the history when selected or editing linear element was remotely deleted > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id486": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id486": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "lastCommittedPoint": [ 10, 10, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 10, 10, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 10, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id488", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedLinearElementId": "id486", }, "inserted": { "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id498", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "editingLinearElementId": "id486", }, "inserted": { "editingLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id499", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "editingLinearElementId": null, }, "inserted": { "editingLinearElementId": "id486", }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id500", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when when element change relates to remotely deleted element > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "#ffc9c9", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": "elementBackground", "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when when element change relates to remotely deleted element > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "#ffec99", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id401", "index": "a0", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 10, "x": 10, "y": 0, } `; exports[`history > multiplayer undo/redo > should iterate through the history when when element change relates to remotely deleted element > [end of test] number of elements 1`] = `1`; exports[`history > multiplayer undo/redo > should iterate through the history when when element change relates to remotely deleted element > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > should iterate through the history when when element change relates to remotely deleted element > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should iterate through the history when when element change relates to remotely deleted element > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id401": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id401": { "deleted": { "angle": 0, "backgroundColor": "#ffec99", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, }, "id": "id408", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id401": { "deleted": { "backgroundColor": "#ffec99", }, "inserted": { "backgroundColor": "transparent", }, }, }, }, "id": "id409", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id514", "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": 20, "y": 20, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id515", "index": "a3V", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 30, "y": 30, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id513", "index": "a4", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id514": { "deleted": { "index": "a1", }, "inserted": { "index": "a3", }, }, }, }, "id": "id523", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id514": true, }, }, }, }, "elements": { "added": { "id513": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a4", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 10, "y": 10, }, }, "id514": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a3", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 20, "y": 20, }, }, "id515": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a3V", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 30, "y": 30, }, }, }, "removed": {}, "updated": {}, }, "id": "id524", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced all indices > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id501", "index": "Zx", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id503", "index": "Zy", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 30, "y": 30, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id502", "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 20, "y": 20, } `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id502": { "deleted": { "index": "a1", }, "inserted": { "index": "Zz", }, }, }, }, "id": "id511", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id502": true, }, }, }, }, "elements": { "added": { "id501": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "Zx", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 10, "y": 10, }, }, "id502": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "Zz", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 20, "y": 20, }, }, "id503": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "Zy", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 30, "y": 30, }, }, }, "removed": {}, "updated": {}, }, "id": "id512", }, ] `; exports[`history > multiplayer undo/redo > should iterate through the history when z-index changes do not produce visible change and we synced changed indices > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id542": true, "id545": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id542": true, "id545": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id542", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 9, "width": 10, "x": 90, "y": 90, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id545", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 9, "width": 10, "x": 110, "y": 110, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id555", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#a5d8ff", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] number of renders 1`] = `25`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress dragging > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id542": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id542": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 10, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id563", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id545": true, }, }, "inserted": { "selectedElementIds": { "id542": true, }, }, }, }, "elements": { "added": {}, "removed": { "id545": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 30, "y": 30, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id564", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id542": true, }, }, "inserted": { "selectedElementIds": { "id545": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id565", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id545": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id566", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id542": { "deleted": { "x": 90, "y": 90, }, "inserted": { "x": 10, "y": 10, }, }, "id545": { "deleted": { "x": 110, "y": 110, }, "inserted": { "x": 30, "y": 30, }, }, }, }, "id": "id567", }, ] `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress freedraw > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "freedraw", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress freedraw > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "drawingConfigs": { "pressureSensitivity": 1, "simplify": "0.25000", "streamline": "0.35000", }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 50, "id": "id525", "index": "a0", "isDeleted": false, "lastCommittedPoint": [ 50, 50, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 20, 20, ], [ 50, 50, ], [ 50, 50, ], ], "pressures": [], "roughness": 1, "roundness": null, "simulatePressure": true, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "freedraw", "updated": 1, "version": 7, "width": 50, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress freedraw > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id526", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#a5d8ff", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress freedraw > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress freedraw > [end of test] number of renders 1`] = `8`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress freedraw > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress freedraw > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id525": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "drawingConfigs": { "pressureSensitivity": 1, "simplify": "0.25000", "streamline": "0.35000", }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 50, "index": "a0", "isDeleted": false, "lastCommittedPoint": [ 50, 50, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 20, 20, ], [ 50, 50, ], [ 50, 50, ], ], "pressures": [], "roughness": 1, "roundness": null, "simulatePressure": true, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "freedraw", "width": 50, "x": 10, "y": 10, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id530", }, ] `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress resizing > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id531": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress resizing > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 90, "id": "id531", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 9, "width": 90, "x": 10, "y": 10, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress resizing > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id535", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#a5d8ff", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress resizing > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress resizing > [end of test] number of renders 1`] = `13`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress resizing > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should not let remote changes to interfere with in progress resizing > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id531": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id531": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 10, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id540", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id531": { "deleted": { "height": 90, "width": 90, }, "inserted": { "height": 10, "width": 10, }, }, }, }, "id": "id541", }, ] `; exports[`history > multiplayer undo/redo > should not override remote changes on different elements > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "#ffc9c9", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": "elementBackground", "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id333": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should not override remote changes on different elements > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id333", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 10, "x": 10, "y": 0, } `; exports[`history > multiplayer undo/redo > should not override remote changes on different elements > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "#ffc9c9", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id338", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#a5d8ff", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should not override remote changes on different elements > [end of test] number of elements 1`] = `2`; exports[`history > multiplayer undo/redo > should not override remote changes on different elements > [end of test] number of renders 1`] = `10`; exports[`history > multiplayer undo/redo > should not override remote changes on different elements > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id333": { "deleted": { "backgroundColor": "transparent", }, "inserted": { "backgroundColor": "#ffc9c9", }, }, }, }, "id": "id341", }, ] `; exports[`history > multiplayer undo/redo > should not override remote changes on different elements > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id333": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id333": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id335", }, ] `; exports[`history > multiplayer undo/redo > should not override remote changes on different properties > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "#ffc9c9", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": "elementBackground", "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id342": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should not override remote changes on different properties > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "#ffc9c9", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id342", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#ffec99", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 10, "x": 10, "y": 0, } `; exports[`history > multiplayer undo/redo > should not override remote changes on different properties > [end of test] number of elements 1`] = `1`; exports[`history > multiplayer undo/redo > should not override remote changes on different properties > [end of test] number of renders 1`] = `9`; exports[`history > multiplayer undo/redo > should not override remote changes on different properties > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should not override remote changes on different properties > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id342": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id342": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id344", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id342": { "deleted": { "backgroundColor": "#ffc9c9", }, "inserted": { "backgroundColor": "transparent", }, }, }, }, "id": "id348", }, ] `; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", "B", ], "height": 100, "id": "id371", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 6, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", "B", ], "height": 100, "id": "id372", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 6, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "B", ], "height": 100, "id": "id375", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "B", ], "height": 100, "id": "id376", "index": "a3", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] number of elements 1`] = `4`; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] number of renders 1`] = `8`; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should override remotely added groups on undo, but restore them on redo > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id371": { "deleted": { "groupIds": [ "A", "B", ], }, "inserted": { "groupIds": [], }, }, "id372": { "deleted": { "groupIds": [ "A", "B", ], }, "inserted": { "groupIds": [], }, }, }, }, "id": "id378", }, ] `; exports[`history > multiplayer undo/redo > should override remotely added points on undo, but restore them on redo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id379": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should override remotely added points on undo, but restore them on redo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 30, "id": "id379", "index": "a0", "isDeleted": false, "lastCommittedPoint": [ 30, 30, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 5, 5, ], [ 10, 10, ], [ 15, 15, ], [ 20, 20, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 13, "width": 30, "x": 0, "y": 0, } `; exports[`history > multiplayer undo/redo > should override remotely added points on undo, but restore them on redo > [end of test] number of elements 1`] = `1`; exports[`history > multiplayer undo/redo > should override remotely added points on undo, but restore them on redo > [end of test] number of renders 1`] = `14`; exports[`history > multiplayer undo/redo > should override remotely added points on undo, but restore them on redo > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should override remotely added points on undo, but restore them on redo > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id379": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id379": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "lastCommittedPoint": [ 10, 10, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 10, 10, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 10, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id389", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id379": { "deleted": { "height": 30, "lastCommittedPoint": [ 30, 30, ], "points": [ [ 0, 0, ], [ 5, 5, ], [ 10, 10, ], [ 15, 15, ], [ 20, 20, ], ], "width": 30, }, "inserted": { "height": 10, "lastCommittedPoint": [ 10, 10, ], "points": [ [ 0, 0, ], [ 10, 10, ], ], "width": 10, }, }, }, }, "id": "id390", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedLinearElementId": "id379", }, "inserted": { "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id391", }, ] `; exports[`history > multiplayer undo/redo > should redistribute deltas when element gets removed locally but is restored remotely > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should redistribute deltas when element gets removed locally but is restored remotely > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "#ffec99", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id392", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 10, "x": 10, "y": 0, } `; exports[`history > multiplayer undo/redo > should redistribute deltas when element gets removed locally but is restored remotely > [end of test] number of elements 1`] = `1`; exports[`history > multiplayer undo/redo > should redistribute deltas when element gets removed locally but is restored remotely > [end of test] number of renders 1`] = `11`; exports[`history > multiplayer undo/redo > should redistribute deltas when element gets removed locally but is restored remotely > [end of test] redo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should redistribute deltas when element gets removed locally but is restored remotely > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id392": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id392": { "deleted": { "angle": 0, "backgroundColor": "#ffec99", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id399", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id392": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id392": { "deleted": { "isDeleted": false, }, "inserted": { "isDeleted": false, }, }, }, }, "id": "id400", }, ] `; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 126, "id": "KPrBI4g_v9qUB1XxYLgSz", "index": "a0", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 157, "x": 600, "y": 0, } `; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 129, "id": "u2JGnnmoJ0VATV4vCNJE5", "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "diamond", "updated": 1, "version": 4, "width": 124, "x": 1152, "y": 516, } `; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": true, "endArrowhead": null, "endBinding": { "elementId": "u2JGnnmoJ0VATV4vCNJE5", "fixedPoint": [ "0.49919", "-0.03875", ], "focus": "-0.00161", "gap": "3.53708", }, "endIsSpecial": false, "fillStyle": "solid", "fixedSegments": [], "frameId": null, "groupIds": [], "height": "236.10000", "id": "6Rm4g567UQM4WjLwej2Vc", "index": "a2", "isDeleted": true, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "178.90000", 0, ], [ "178.90000", "236.10000", ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "KPrBI4g_v9qUB1XxYLgSz", "fixedPoint": [ "1.03185", "0.49921", ], "focus": "-0.00159", "gap": 5, }, "startIsSpecial": false, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 3, "width": "178.90000", "x": 1035, "y": "274.90000", } `; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] number of elements 1`] = `3`; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] number of renders 1`] = `8`; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": { "6Rm4g567UQM4WjLwej2Vc": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": true, "endArrowhead": null, "endBinding": { "elementId": "u2JGnnmoJ0VATV4vCNJE5", "fixedPoint": [ "0.49919", "-0.03875", ], "focus": "-0.00161", "gap": "3.53708", }, "endIsSpecial": false, "fillStyle": "solid", "fixedSegments": [], "frameId": null, "groupIds": [], "height": "236.10000", "index": "a2", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "178.90000", 0, ], [ "178.90000", "236.10000", ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "KPrBI4g_v9qUB1XxYLgSz", "fixedPoint": [ "1.03185", "0.49921", ], "focus": "-0.00159", "gap": 5, }, "startIsSpecial": false, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": "178.90000", "x": 1035, "y": "274.90000", }, }, }, "removed": {}, "updated": { "KPrBI4g_v9qUB1XxYLgSz": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "6Rm4g567UQM4WjLwej2Vc", "type": "arrow", }, ], }, }, "u2JGnnmoJ0VATV4vCNJE5": { "deleted": { "boundElements": [], }, "inserted": { "boundElements": [ { "id": "6Rm4g567UQM4WjLwej2Vc", "type": "arrow", }, ], }, }, }, }, "id": "id369", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": { "KPrBI4g_v9qUB1XxYLgSz": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 126, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 157, "x": 600, "y": 0, }, }, "u2JGnnmoJ0VATV4vCNJE5": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 129, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "diamond", "width": 124, "x": 1152, "y": 516, }, }, }, "removed": {}, "updated": {}, }, "id": "id370", }, ] `; exports[`history > multiplayer undo/redo > should redraw arrows on undo > [end of test] undo stack 1`] = `[]`; exports[`history > multiplayer undo/redo > should update history entries after remote changes on the same properties > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "#a5d8ff", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": "elementBackground", "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id349": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > multiplayer undo/redo > should update history entries after remote changes on the same properties > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id349", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 13, "width": 10, "x": 10, "y": 0, } `; exports[`history > multiplayer undo/redo > should update history entries after remote changes on the same properties > [end of test] number of elements 1`] = `1`; exports[`history > multiplayer undo/redo > should update history entries after remote changes on the same properties > [end of test] number of renders 1`] = `15`; exports[`history > multiplayer undo/redo > should update history entries after remote changes on the same properties > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id349": { "deleted": { "backgroundColor": "#d0bfff", }, "inserted": { "backgroundColor": "#ffec99", }, }, }, }, "id": "id360", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id349": { "deleted": { "backgroundColor": "transparent", }, "inserted": { "backgroundColor": "#d0bfff", }, }, }, }, "id": "id361", }, ] `; exports[`history > multiplayer undo/redo > should update history entries after remote changes on the same properties > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id349": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id349": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id351", }, ] `; exports[`history > singleplayer undo/redo > remounting undo/redo buttons should initialize undo/redo state correctly > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": false, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > remounting undo/redo buttons should initialize undo/redo state correctly > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "A", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > remounting undo/redo buttons should initialize undo/redo state correctly > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id329", "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 10, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > remounting undo/redo buttons should initialize undo/redo state correctly > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > remounting undo/redo buttons should initialize undo/redo state correctly > [end of test] number of renders 1`] = `11`; exports[`history > singleplayer undo/redo > remounting undo/redo buttons should initialize undo/redo state correctly > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id329": true, }, }, }, }, "elements": { "added": { "id329": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 0, "y": 0, }, }, }, "removed": {}, "updated": {}, }, "id": "id332", }, ] `; exports[`history > singleplayer undo/redo > remounting undo/redo buttons should initialize undo/redo state correctly > [end of test] undo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should clear the redo stack on elements change > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id50": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should clear the redo stack on elements change > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id46", "index": "a0", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 10, "x": 10, "y": 0, } `; exports[`history > singleplayer undo/redo > should clear the redo stack on elements change > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id50", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 3, "width": 10, "x": 20, "y": 0, } `; exports[`history > singleplayer undo/redo > should clear the redo stack on elements change > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > should clear the redo stack on elements change > [end of test] number of renders 1`] = `8`; exports[`history > singleplayer undo/redo > should clear the redo stack on elements change > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should clear the redo stack on elements change > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id50": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id50": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 20, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id52", }, ] `; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "freedraw", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#e03131", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": "elementStroke", "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id148", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 3, "width": 10, "x": -10, "y": -10, } `; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "drawingConfigs": { "pressureSensitivity": 1, "simplify": "0.25000", "streamline": "0.35000", }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id153", "index": "a1", "isDeleted": true, "lastCommittedPoint": [ 50, 10, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 50, 10, ], [ 50, 10, ], ], "pressures": [], "roughness": 1, "roundness": null, "simulatePressure": true, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "freedraw", "updated": 1, "version": 5, "width": 50, "x": 40, "y": -20, } `; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "drawingConfigs": { "pressureSensitivity": 1, "simplify": "0.25000", "streamline": "0.35000", }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id157", "index": "a2", "isDeleted": false, "lastCommittedPoint": [ 50, 10, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 50, 10, ], [ 50, 10, ], ], "pressures": [], "roughness": 1, "roundness": null, "simulatePressure": true, "strokeColor": "#e03131", "strokeStyle": "solid", "strokeWidth": 2, "type": "freedraw", "updated": 1, "version": 4, "width": 50, "x": 130, "y": -30, } `; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] number of elements 1`] = `3`; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] number of renders 1`] = `12`; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should create entry when selecting freedraw > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id148": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id148": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": -10, "y": -10, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id150", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id148": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id152", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id157": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "drawingConfigs": { "pressureSensitivity": 1, "simplify": "0.25000", "streamline": "0.35000", }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a2", "isDeleted": false, "lastCommittedPoint": [ 50, 10, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 50, 10, ], [ 50, 10, ], ], "pressures": [], "roughness": 1, "roundness": null, "simulatePressure": true, "strokeColor": "#e03131", "strokeStyle": "solid", "strokeWidth": 2, "type": "freedraw", "width": 50, "x": 130, "y": -30, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id159", }, ] `; exports[`history > singleplayer undo/redo > should create new history entry on scene import via drag&drop > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": -50, "scrollY": -50, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": false, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#000", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should create new history entry on scene import via drag&drop > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "A", "index": "a0", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should create new history entry on scene import via drag&drop > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "B", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should create new history entry on scene import via drag&drop > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > should create new history entry on scene import via drag&drop > [end of test] number of renders 1`] = `6`; exports[`history > singleplayer undo/redo > should create new history entry on scene import via drag&drop > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should create new history entry on scene import via drag&drop > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "viewBackgroundColor": "#000", }, "inserted": { "viewBackgroundColor": "#FFF", }, }, }, "elements": { "added": { "A": { "deleted": { "isDeleted": true, }, "inserted": { "isDeleted": false, }, }, }, "removed": { "B": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id80", }, ] `; exports[`history > singleplayer undo/redo > should disable undo/redo buttons when stacks empty > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id323": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": false, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should disable undo/redo buttons when stacks empty > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "A", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should disable undo/redo buttons when stacks empty > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id323", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 10, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should disable undo/redo buttons when stacks empty > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > should disable undo/redo buttons when stacks empty > [end of test] number of renders 1`] = `7`; exports[`history > singleplayer undo/redo > should disable undo/redo buttons when stacks empty > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should disable undo/redo buttons when stacks empty > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id323": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id323": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id327", }, ] `; exports[`history > singleplayer undo/redo > should end up with no history entry after initializing scene > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id70": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": false, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": true, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should end up with no history entry after initializing scene > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "A", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should end up with no history entry after initializing scene > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id70", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 10, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should end up with no history entry after initializing scene > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > should end up with no history entry after initializing scene > [end of test] number of renders 1`] = `9`; exports[`history > singleplayer undo/redo > should end up with no history entry after initializing scene > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should end up with no history entry after initializing scene > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id70": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id70": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id74", }, ] `; exports[`history > singleplayer undo/redo > should iterate through the history when selection changes do not produce visible change > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id53": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should iterate through the history when selection changes do not produce visible change > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id53", "index": "a0", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 10, "x": 10, "y": 0, } `; exports[`history > singleplayer undo/redo > should iterate through the history when selection changes do not produce visible change > [end of test] number of elements 1`] = `1`; exports[`history > singleplayer undo/redo > should iterate through the history when selection changes do not produce visible change > [end of test] number of renders 1`] = `13`; exports[`history > singleplayer undo/redo > should iterate through the history when selection changes do not produce visible change > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id53": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id66", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id53": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id67", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id53": true, }, }, }, }, "elements": { "added": { "id53": { "deleted": { "isDeleted": true, }, "inserted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, }, }, "removed": {}, "updated": {}, }, "id": "id68", }, ] `; exports[`history > singleplayer undo/redo > should iterate through the history when selection changes do not produce visible change > [end of test] undo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should not clear the redo stack on standalone appstate change > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id18": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should not clear the redo stack on standalone appstate change > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id15", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 3, "width": 10, "x": 10, "y": 0, } `; exports[`history > singleplayer undo/redo > should not clear the redo stack on standalone appstate change > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id18", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 10, "x": 20, "y": 0, } `; exports[`history > singleplayer undo/redo > should not clear the redo stack on standalone appstate change > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > should not clear the redo stack on standalone appstate change > [end of test] number of renders 1`] = `12`; exports[`history > singleplayer undo/redo > should not clear the redo stack on standalone appstate change > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should not clear the redo stack on standalone appstate change > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id15": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id15": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id17", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id15": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id24", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id15": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id27", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id18": true, }, }, "inserted": { "selectedElementIds": { "id15": true, }, }, }, }, "elements": { "added": {}, "removed": { "id18": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 20, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id28", }, ] `; exports[`history > singleplayer undo/redo > should not collapse when applying corrupted history entry > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should not collapse when applying corrupted history entry > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id0", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should not collapse when applying corrupted history entry > [end of test] number of elements 1`] = `1`; exports[`history > singleplayer undo/redo > should not collapse when applying corrupted history entry > [end of test] number of renders 1`] = `4`; exports[`history > singleplayer undo/redo > should not collapse when applying corrupted history entry > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should not collapse when applying corrupted history entry > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id3", }, ] `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no appstate changes > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id4": true, "id5": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": { "A": true, }, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no appstate changes > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id4", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no appstate changes > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id5", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no appstate changes > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no appstate changes > [end of test] number of renders 1`] = `7`; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no appstate changes > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no appstate changes > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id4": true, "id5": true, }, "selectedGroupIds": { "A": true, }, }, "inserted": { "selectedElementIds": {}, "selectedGroupIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id4": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, "id5": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id8", }, ] `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no elements changes > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no elements changes > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id10", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no elements changes > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id11", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no elements changes > [end of test] number of elements 1`] = `2`; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no elements changes > [end of test] number of renders 1`] = `5`; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no elements changes > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should not end up with history entry when there are no elements changes > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id10": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, "id11": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id13", }, ] `; exports[`history > singleplayer undo/redo > should not override appstate changes when redo stack is not cleared > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "#a5d8ff", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": "elementBackground", "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id29": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id29": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should not override appstate changes when redo stack is not cleared > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id29", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 11, "width": 10, "x": 10, "y": 0, } `; exports[`history > singleplayer undo/redo > should not override appstate changes when redo stack is not cleared > [end of test] number of elements 1`] = `1`; exports[`history > singleplayer undo/redo > should not override appstate changes when redo stack is not cleared > [end of test] number of renders 1`] = `15`; exports[`history > singleplayer undo/redo > should not override appstate changes when redo stack is not cleared > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id29": { "deleted": { "backgroundColor": "#ffc9c9", }, "inserted": { "backgroundColor": "#a5d8ff", }, }, }, }, "id": "id43", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id29": { "deleted": { "backgroundColor": "transparent", }, "inserted": { "backgroundColor": "#ffc9c9", }, }, }, }, "id": "id44", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id29": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id45", }, ] `; exports[`history > singleplayer undo/redo > should not override appstate changes when redo stack is not cleared > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id29": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id29": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id31", }, ] `; exports[`history > singleplayer undo/redo > should support appstate name or viewBackgroundColor change > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": { "x": 0, "y": 0, }, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#000", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support appstate name or viewBackgroundColor change > [end of test] number of elements 1`] = `0`; exports[`history > singleplayer undo/redo > should support appstate name or viewBackgroundColor change > [end of test] number of renders 1`] = `8`; exports[`history > singleplayer undo/redo > should support appstate name or viewBackgroundColor change > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should support appstate name or viewBackgroundColor change > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "name": "New name", }, "inserted": { "name": "Old name", }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id88", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "viewBackgroundColor": "#000", }, "inserted": { "viewBackgroundColor": "#FFF", }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id89", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id230": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id243": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id231", "type": "text", }, { "id": "id243", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id230", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": -100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id230", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id231", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "center", "type": "text", "updated": 1, "version": 6, "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id243", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id232", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id232", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "id": "id243", "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id230", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 10, "width": "98.58579", "x": "0.70711", "y": 0, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] number of elements 1`] = `4`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] number of renders 1`] = `12`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id243": true, }, "selectedLinearElementId": "id243", }, "inserted": { "selectedElementIds": {}, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id243": { "deleted": { "isDeleted": false, "points": [ [ 0, 0, ], [ 100, 0, ], ], }, "inserted": { "isDeleted": true, "points": [ [ 0, 0, ], [ 100, 0, ], ], }, }, }, "updated": { "id230": { "deleted": { "boundElements": [ { "id": "id243", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id232": { "deleted": { "boundElements": [ { "id": "id243", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id248", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on deletion and rebind on undo > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id230": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id231": { "deleted": { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, "inserted": { "isDeleted": true, }, }, "id232": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id234", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id230": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id237", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id231": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id240", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id231": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id230": { "deleted": { "boundElements": [ { "id": "id231", "type": "text", }, ], }, "inserted": { "boundElements": [], }, }, "id231": { "deleted": { "containerId": "id230", "height": 25, "textAlign": "center", "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", }, "inserted": { "containerId": null, "height": 100, "textAlign": "left", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, }, }, }, "id": "id242", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id243": true, }, "selectedLinearElementId": "id243", }, "inserted": { "selectedElementIds": { "id230": true, }, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id243": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id232", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id230", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id230": { "deleted": { "boundElements": [ { "id": "id243", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id232": { "deleted": { "boundElements": [ { "id": "id243", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id245", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id212": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id225": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id213", "type": "text", }, { "id": "id225", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id212", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": -100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id212", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id213", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "center", "type": "text", "updated": 1, "version": 8, "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id225", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id214", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id214", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "id": "id225", "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id212", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 10, "width": "98.58579", "x": "0.70711", "y": 0, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] number of elements 1`] = `4`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] number of renders 1`] = `12`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind arrow from non deleted bindable elements on undo and rebind on redo > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id212": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id213": { "deleted": { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, "inserted": { "isDeleted": true, }, }, "id214": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id216", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id212": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id219", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id213": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id222", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id213": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id212": { "deleted": { "boundElements": [ { "id": "id213", "type": "text", }, ], }, "inserted": { "boundElements": [], }, }, "id213": { "deleted": { "containerId": "id212", "height": 25, "textAlign": "center", "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", }, "inserted": { "containerId": null, "height": 100, "textAlign": "left", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, }, }, }, "id": "id224", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id225": true, }, "selectedLinearElementId": "id225", }, "inserted": { "selectedElementIds": { "id212": true, }, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id225": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id214", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id212", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id212": { "deleted": { "boundElements": [ { "id": "id225", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id214": { "deleted": { "boundElements": [ { "id": "id225", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id229", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id249": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id262": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id250", "type": "text", }, { "id": "id262", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id249", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 12, "width": 100, "x": -100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id249", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id250", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "center", "type": "text", "updated": 1, "version": 12, "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id262", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id251", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 9, "width": 100, "x": 100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id251", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "id": "id262", "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id249", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 10, "width": "98.58579", "x": "0.70711", "y": 0, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] number of elements 1`] = `4`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] number of renders 1`] = `20`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind everything from non deleted elements when iterating through the whole undo stack and vice versa rebind everything on redo > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id249": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id250": { "deleted": { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, "inserted": { "isDeleted": true, }, }, "id251": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id270", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id249": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id271", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id250": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id272", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id250": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id249": { "deleted": { "boundElements": [ { "id": "id250", "type": "text", }, ], }, "inserted": { "boundElements": [], }, }, "id250": { "deleted": { "containerId": "id249", "height": 25, "textAlign": "center", "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", }, "inserted": { "containerId": null, "height": 100, "textAlign": "left", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, }, }, }, "id": "id273", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id262": true, }, "selectedLinearElementId": "id262", }, "inserted": { "selectedElementIds": { "id249": true, }, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id262": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id251", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id249", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id249": { "deleted": { "boundElements": [ { "id": "id262", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id251": { "deleted": { "boundElements": [ { "id": "id262", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id274", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": {}, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id275": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id288", "type": "arrow", }, { "id": "id276", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id275", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": -100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id275", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id276", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "center", "type": "text", "updated": 1, "version": 8, "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id288", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id277", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 100, "x": 100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id277", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "id": "id288", "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id275", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 10, "width": "98.58579", "x": "0.70711", "y": 0, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] number of elements 1`] = `4`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] number of renders 1`] = `14`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id275": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id275": { "deleted": { "isDeleted": false, }, "inserted": { "isDeleted": true, }, }, "id276": { "deleted": { "isDeleted": false, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id288": { "deleted": { "points": [ [ 0, 0, ], [ 100, 0, ], ], "startBinding": { "elementId": "id275", "focus": 0, "gap": 1, }, }, "inserted": { "points": [ [ 0, 0, ], [ 100, 0, ], ], "startBinding": null, }, }, }, }, "id": "id296", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangle from arrow on deletion and rebind on undo > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id275": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id276": { "deleted": { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, "inserted": { "isDeleted": true, }, }, "id277": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id279", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id275": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id282", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id276": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id285", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id276": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id275": { "deleted": { "boundElements": [ { "id": "id276", "type": "text", }, ], }, "inserted": { "boundElements": [], }, }, "id276": { "deleted": { "containerId": "id275", "height": 25, "textAlign": "center", "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", }, "inserted": { "containerId": null, "height": 100, "textAlign": "left", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, }, }, }, "id": "id287", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id288": true, }, "selectedLinearElementId": "id288", }, "inserted": { "selectedElementIds": { "id275": true, }, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id288": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id277", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id275", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id275": { "deleted": { "boundElements": [ { "id": "id288", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id277": { "deleted": { "boundElements": [ { "id": "id288", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id290", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id275": true, }, "selectedLinearElementId": null, }, "inserted": { "selectedElementIds": { "id288": true, }, "selectedLinearElementId": "id288", }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id293", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id297": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id297": true, "id299": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id310", "type": "arrow", }, { "id": "id298", "type": "text", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id297", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 100, "x": -100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] element 1 1`] = ` { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": "id297", "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 25, "id": "id298", "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "center", "type": "text", "updated": 1, "version": 8, "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": [ { "id": "id310", "type": "arrow", }, ], "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "id": "id299", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 100, "x": 100, "y": -50, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id299", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "id": "id310", "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ "98.58579", 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id297", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 11, "width": "98.58579", "x": "0.70711", "y": 0, } `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] number of elements 1`] = `4`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] number of renders 1`] = `15`; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] redo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id297": true, "id299": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id297": { "deleted": { "isDeleted": false, }, "inserted": { "isDeleted": true, }, }, "id298": { "deleted": { "isDeleted": false, }, "inserted": { "isDeleted": true, }, }, "id299": { "deleted": { "isDeleted": false, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id310": { "deleted": { "endBinding": { "elementId": "id299", "focus": -0, "gap": 1, }, "points": [ [ 0, 0, ], [ 100, 0, ], ], "startBinding": { "elementId": "id297", "focus": 0, "gap": 1, }, }, "inserted": { "endBinding": null, "points": [ [ 0, 0, ], [ 100, 0, ], ], "startBinding": null, }, }, }, }, "id": "id321", }, ] `; exports[`history > singleplayer undo/redo > should support bidirectional bindings > should unbind rectangles from arrow on deletion and rebind on undo > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": { "id297": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": -100, "y": -50, }, "inserted": { "isDeleted": true, }, }, "id298": { "deleted": { "angle": 0, "autoResize": true, "backgroundColor": "transparent", "boundElements": null, "containerId": null, "customData": undefined, "fillStyle": "solid", "fontFamily": 5, "fontSize": 20, "frameId": null, "groupIds": [], "height": 100, "index": "a1", "isDeleted": false, "lineHeight": "1.25000", "link": null, "locked": false, "opacity": 100, "originalText": "ola", "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "text": "ola", "textAlign": "left", "type": "text", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, "inserted": { "isDeleted": true, }, }, "id299": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 100, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": -50, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id301", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id297": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id304", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id298": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id307", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id298": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id297": { "deleted": { "boundElements": [ { "id": "id298", "type": "text", }, ], }, "inserted": { "boundElements": [], }, }, "id298": { "deleted": { "containerId": "id297", "height": 25, "textAlign": "center", "verticalAlign": "middle", "width": 30, "x": -65, "y": "-12.50000", }, "inserted": { "containerId": null, "height": 100, "textAlign": "left", "verticalAlign": "top", "width": 100, "x": -200, "y": -200, }, }, }, }, "id": "id309", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id310": true, }, "selectedLinearElementId": "id310", }, "inserted": { "selectedElementIds": { "id297": true, }, "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": { "id310": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": { "elementId": "id299", "focus": -0, "gap": 1, }, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 0, "index": "a3", "isDeleted": false, "lastCommittedPoint": null, "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 100, 0, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": { "elementId": "id297", "focus": 0, "gap": 1, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": { "id297": { "deleted": { "boundElements": [ { "id": "id310", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, "id299": { "deleted": { "boundElements": [ { "id": "id310", "type": "arrow", }, ], }, "inserted": { "boundElements": [], }, }, }, }, "id": "id312", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id297": true, }, "selectedLinearElementId": null, }, "inserted": { "selectedElementIds": { "id310": true, }, "selectedLinearElementId": "id310", }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id315", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id299": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id318", }, ] `; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id189": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id189": true, "id195": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id192", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 3, "width": 10, "x": 20, "y": 20, } `; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id189", "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 10, "x": 10, "y": 0, } `; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id195", "index": "a3", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 10, "width": 10, "x": 40, "y": 40, } `; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] number of elements 1`] = `3`; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] number of renders 1`] = `20`; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should support changes in elements' order > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id189": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id189": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id191", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id192": true, }, }, "inserted": { "selectedElementIds": { "id189": true, }, }, }, }, "elements": { "added": {}, "removed": { "id192": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 20, "y": 20, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id194", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id195": true, }, }, "inserted": { "selectedElementIds": { "id192": true, }, }, }, }, "elements": { "added": {}, "removed": { "id195": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 40, "y": 40, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id197", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id195": { "deleted": { "index": "a0V", }, "inserted": { "index": "a2", }, }, }, }, "id": "id201", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id189": true, }, }, "inserted": { "selectedElementIds": { "id195": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id204", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id195": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id207", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id189": { "deleted": { "index": "a2", }, "inserted": { "index": "Zz", }, }, "id195": { "deleted": { "index": "a3", }, "inserted": { "index": "a0", }, }, }, }, "id": "id211", }, ] `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id161": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id184": true, "id186": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": { "id185": true, }, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id160", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "id": "id161", "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 2, "width": 100, "x": 100, "y": 100, } `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "id185", ], "height": 100, "id": "id184", "index": "a1G", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 10, "y": 10, } `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] element 3 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "id185", ], "height": 100, "id": "id186", "index": "a1V", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 4, "width": 100, "x": 110, "y": 110, } `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] element 4 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "id177", ], "height": 100, "id": "id176", "index": "a2", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 10, "y": 10, } `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] element 5 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "id177", ], "height": 100, "id": "id178", "index": "a3", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 7, "width": 100, "x": 110, "y": 110, } `; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] number of elements 1`] = `6`; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] number of renders 1`] = `18`; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should support duplication of groups, appstate group selection and editing group > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id160": true, "id161": true, }, "selectedGroupIds": { "A": true, }, }, "inserted": { "selectedElementIds": {}, "selectedGroupIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id160": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, "id161": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "A", ], "height": 100, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 100, "y": 100, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id164", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id184": true, "id186": true, }, "selectedGroupIds": { "id185": true, }, }, "inserted": { "selectedElementIds": { "id160": true, "id161": true, }, "selectedGroupIds": { "A": true, }, }, }, }, "elements": { "added": {}, "removed": { "id184": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "id185", ], "height": 100, "index": "a1G", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 10, "y": 10, }, "inserted": { "isDeleted": true, }, }, "id186": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [ "id185", ], "height": 100, "index": "a1V", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 100, "x": 110, "y": 110, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id188", }, ] `; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id93": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": {}, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id90", "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 5, "width": 10, "x": 10, "y": 0, } `; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] element 1 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id93", "index": "a1", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 10, "x": 20, "y": 20, } `; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] element 2 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "id": "id96", "index": "a2", "isDeleted": true, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "updated": 1, "version": 8, "width": 10, "x": 40, "y": 40, } `; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] number of elements 1`] = `3`; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] number of renders 1`] = `29`; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should support element creation, deletion and appstate element selection change > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id90": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id90": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 10, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id113", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id93": true, }, }, "inserted": { "selectedElementIds": { "id90": true, }, }, }, }, "elements": { "added": {}, "removed": { "id93": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a1", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 20, "y": 20, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id114", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id96": true, }, }, "inserted": { "selectedElementIds": { "id93": true, }, }, }, }, "elements": { "added": {}, "removed": { "id96": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a2", "isDeleted": false, "link": null, "locked": false, "opacity": 100, "roughness": 1, "roundness": { "type": 3, }, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "rectangle", "width": 10, "x": 40, "y": 40, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id115", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id93": true, }, }, "inserted": { "selectedElementIds": { "id96": true, }, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id116", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id96": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id117", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": {}, }, "inserted": { "selectedElementIds": { "id93": true, "id96": true, }, }, }, }, "elements": { "added": { "id93": { "deleted": { "isDeleted": true, }, "inserted": { "isDeleted": false, }, }, "id96": { "deleted": { "isDeleted": true, }, "inserted": { "isDeleted": false, }, }, }, "removed": {}, "updated": {}, }, "id": "id118", }, ] `; exports[`history > singleplayer undo/redo > should support linear element creation and points manipulation through the editor > [end of test] appState 1`] = ` { "activeEmbeddable": null, "activeLockedId": null, "activeTool": { "customType": null, "fromSelection": false, "lastActiveTool": null, "locked": false, "type": "selection", }, "collaborators": Map {}, "contextMenu": null, "croppingElementId": null, "currentChartType": "bar", "currentHoveredFontFamily": null, "currentItemArrowType": "round", "currentItemBackgroundColor": "transparent", "currentItemEndArrowhead": "arrow", "currentItemFillStyle": "solid", "currentItemFontFamily": 5, "currentItemFontSize": 20, "currentItemOpacity": 100, "currentItemPressureSensitivity": 1, "currentItemRoughness": 1, "currentItemRoundness": "round", "currentItemStartArrowhead": null, "currentItemStrokeColor": "#1e1e1e", "currentItemStrokeStyle": "solid", "currentItemStrokeWidth": 2, "currentItemTextAlign": "left", "cursorButton": "up", "defaultSidebarDockedPreference": false, "editingFrame": null, "editingGroupId": null, "editingLinearElement": null, "editingTextElement": null, "elementsToHighlight": null, "errorMessage": null, "exportBackground": true, "exportEmbedScene": false, "exportScale": 1, "exportWithDarkMode": false, "fileHandle": null, "followedBy": Set {}, "frameRendering": { "clip": true, "enabled": true, "name": true, "outline": true, }, "frameToHighlight": null, "gridModeEnabled": false, "gridSize": 20, "gridStep": 5, "height": 0, "hoveredElementIds": {}, "isBindingEnabled": true, "isCropping": false, "isLoading": false, "isResizing": false, "isRotating": false, "lastPointerDownWith": "mouse", "lockedMultiSelections": {}, "multiElement": null, "newElement": null, "objectsSnapModeEnabled": false, "offsetLeft": 0, "offsetTop": 0, "openDialog": null, "openMenu": null, "openPopup": null, "openSidebar": null, "originSnapOffset": null, "pasteDialog": { "data": null, "shown": false, }, "penDetected": false, "penMode": false, "pendingImageElementId": null, "previousSelectedElementIds": { "id119": true, }, "resizingElement": null, "scrollX": 0, "scrollY": 0, "searchMatches": null, "selectedElementIds": { "id119": true, }, "selectedElementsAreBeingDragged": false, "selectedGroupIds": {}, "selectionElement": null, "shouldCacheIgnoreZoom": false, "showHyperlinkPopup": false, "showWelcomeScreen": true, "snapLines": [], "startBoundElement": null, "stats": { "open": false, "panels": 3, }, "suggestedBindings": [], "theme": "light", "toast": null, "userToFollow": null, "viewBackgroundColor": "#ffffff", "viewModeEnabled": false, "width": 0, "zenModeEnabled": false, "zoom": { "value": 1, }, } `; exports[`history > singleplayer undo/redo > should support linear element creation and points manipulation through the editor > [end of test] element 0 1`] = ` { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 20, "id": "id119", "index": "a0", "isDeleted": false, "lastCommittedPoint": [ 20, 0, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 10, 10, ], [ 20, 20, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "updated": 1, "version": 15, "width": 20, "x": 0, "y": 0, } `; exports[`history > singleplayer undo/redo > should support linear element creation and points manipulation through the editor > [end of test] number of elements 1`] = `1`; exports[`history > singleplayer undo/redo > should support linear element creation and points manipulation through the editor > [end of test] number of renders 1`] = `20`; exports[`history > singleplayer undo/redo > should support linear element creation and points manipulation through the editor > [end of test] redo stack 1`] = `[]`; exports[`history > singleplayer undo/redo > should support linear element creation and points manipulation through the editor > [end of test] undo stack 1`] = ` [ { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedElementIds": { "id119": true, }, }, "inserted": { "selectedElementIds": {}, }, }, }, "elements": { "added": {}, "removed": { "id119": { "deleted": { "angle": 0, "backgroundColor": "transparent", "boundElements": null, "customData": undefined, "elbowed": false, "endArrowhead": "arrow", "endBinding": null, "fillStyle": "solid", "frameId": null, "groupIds": [], "height": 10, "index": "a0", "isDeleted": false, "lastCommittedPoint": [ 10, 10, ], "link": null, "locked": false, "opacity": 100, "points": [ [ 0, 0, ], [ 10, 10, ], ], "roughness": 1, "roundness": { "type": 2, }, "startArrowhead": null, "startBinding": null, "strokeColor": "#1e1e1e", "strokeStyle": "solid", "strokeWidth": 2, "type": "arrow", "width": 10, "x": 0, "y": 0, }, "inserted": { "isDeleted": true, }, }, }, "updated": {}, }, "id": "id142", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id119": { "deleted": { "lastCommittedPoint": [ 20, 0, ], "points": [ [ 0, 0, ], [ 10, 10, ], [ 20, 0, ], ], "width": 20, }, "inserted": { "lastCommittedPoint": [ 10, 10, ], "points": [ [ 0, 0, ], [ 10, 10, ], ], "width": 10, }, }, }, }, "id": "id143", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "selectedLinearElementId": "id119", }, "inserted": { "selectedLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id144", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "editingLinearElementId": "id119", }, "inserted": { "editingLinearElementId": null, }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id145", }, { "appState": AppStateDelta { "delta": Delta { "deleted": {}, "inserted": {}, }, }, "elements": { "added": {}, "removed": {}, "updated": { "id119": { "deleted": { "height": 20, "points": [ [ 0, 0, ], [ 10, 10, ], [ 20, 20, ], ], }, "inserted": { "height": 10, "points": [ [ 0, 0, ], [ 10, 10, ], [ 20, 0, ], ], }, }, }, }, "id": "id146", }, { "appState": AppStateDelta { "delta": Delta { "deleted": { "editingLinearElementId": null, }, "inserted": { "editingLinearElementId": "id119", }, }, }, "elements": { "added": {}, "removed": {}, "updated": {}, }, "id": "id147", }, ] `;