@tldraw/editor 3.14.0-canary.a2263c31d532 → 3.14.0-canary.a44859ffd3c7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-cjs/index.d.ts +52 -61
- package/dist-cjs/index.js +8 -10
- package/dist-cjs/index.js.map +2 -2
- package/dist-cjs/lib/config/TLSessionStateSnapshot.js +1 -12
- package/dist-cjs/lib/config/TLSessionStateSnapshot.js.map +3 -3
- package/dist-cjs/lib/editor/Editor.js +59 -76
- package/dist-cjs/lib/editor/Editor.js.map +2 -2
- package/dist-cjs/lib/editor/bindings/BindingUtil.js.map +2 -2
- package/dist-cjs/lib/editor/derivations/bindingsIndex.js +22 -22
- package/dist-cjs/lib/editor/derivations/bindingsIndex.js.map +2 -2
- package/dist-cjs/lib/editor/derivations/parentsToChildren.js +16 -16
- package/dist-cjs/lib/editor/derivations/parentsToChildren.js.map +2 -2
- package/dist-cjs/lib/editor/managers/{ClickManager.js → ClickManager/ClickManager.js} +1 -1
- package/dist-cjs/lib/editor/managers/ClickManager/ClickManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/{EdgeScrollManager.js → EdgeScrollManager/EdgeScrollManager.js} +2 -2
- package/dist-cjs/lib/editor/managers/EdgeScrollManager/EdgeScrollManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/FocusManager/FocusManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/{FontManager.js → FontManager/FontManager.js} +4 -1
- package/dist-cjs/lib/editor/managers/FontManager/FontManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/{HistoryManager.js → HistoryManager/HistoryManager.js} +64 -6
- package/dist-cjs/lib/editor/managers/HistoryManager/HistoryManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/{ScribbleManager.js → ScribbleManager/ScribbleManager.js} +1 -1
- package/dist-cjs/lib/editor/managers/ScribbleManager/ScribbleManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/{TextManager.js → TextManager/TextManager.js} +72 -42
- package/dist-cjs/lib/editor/managers/TextManager/TextManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/{TickManager.js → TickManager/TickManager.js} +1 -1
- package/dist-cjs/lib/editor/managers/TickManager/TickManager.js.map +7 -0
- package/dist-cjs/lib/editor/managers/{UserPreferencesManager.js → UserPreferencesManager/UserPreferencesManager.js} +1 -1
- package/dist-cjs/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.js.map +7 -0
- package/dist-cjs/lib/editor/shapes/ShapeUtil.js.map +1 -1
- package/dist-cjs/lib/editor/shapes/group/GroupShapeUtil.js +1 -1
- package/dist-cjs/lib/editor/shapes/group/GroupShapeUtil.js.map +1 -1
- package/dist-cjs/lib/editor/types/external-content.js.map +1 -1
- package/dist-cjs/lib/exports/getSvgJsx.js.map +1 -1
- package/dist-cjs/lib/hooks/useCanvasEvents.js +1 -2
- package/dist-cjs/lib/hooks/useCanvasEvents.js.map +2 -2
- package/dist-cjs/lib/primitives/Box.js +33 -39
- package/dist-cjs/lib/primitives/Box.js.map +2 -2
- package/dist-cjs/lib/utils/areShapesContentEqual.js +1 -1
- package/dist-cjs/lib/utils/areShapesContentEqual.js.map +2 -2
- package/dist-cjs/lib/utils/reorderShapes.js +11 -10
- package/dist-cjs/lib/utils/reorderShapes.js.map +2 -2
- package/dist-cjs/lib/utils/richText.js +7 -2
- package/dist-cjs/lib/utils/richText.js.map +2 -2
- package/dist-cjs/version.js +3 -3
- package/dist-cjs/version.js.map +1 -1
- package/dist-esm/index.d.mts +52 -61
- package/dist-esm/index.mjs +12 -10
- package/dist-esm/index.mjs.map +2 -2
- package/dist-esm/lib/config/TLSessionStateSnapshot.mjs +1 -1
- package/dist-esm/lib/config/TLSessionStateSnapshot.mjs.map +2 -2
- package/dist-esm/lib/editor/Editor.mjs +59 -76
- package/dist-esm/lib/editor/Editor.mjs.map +2 -2
- package/dist-esm/lib/editor/bindings/BindingUtil.mjs.map +2 -2
- package/dist-esm/lib/editor/derivations/bindingsIndex.mjs +22 -22
- package/dist-esm/lib/editor/derivations/bindingsIndex.mjs.map +2 -2
- package/dist-esm/lib/editor/derivations/parentsToChildren.mjs +16 -16
- package/dist-esm/lib/editor/derivations/parentsToChildren.mjs.map +2 -2
- package/dist-esm/lib/editor/managers/{ClickManager.mjs → ClickManager/ClickManager.mjs} +1 -1
- package/dist-esm/lib/editor/managers/ClickManager/ClickManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/{EdgeScrollManager.mjs → EdgeScrollManager/EdgeScrollManager.mjs} +2 -2
- package/dist-esm/lib/editor/managers/EdgeScrollManager/EdgeScrollManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/FocusManager/FocusManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/{FontManager.mjs → FontManager/FontManager.mjs} +4 -1
- package/dist-esm/lib/editor/managers/FontManager/FontManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/{HistoryManager.mjs → HistoryManager/HistoryManager.mjs} +60 -2
- package/dist-esm/lib/editor/managers/HistoryManager/HistoryManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/{ScribbleManager.mjs → ScribbleManager/ScribbleManager.mjs} +1 -1
- package/dist-esm/lib/editor/managers/ScribbleManager/ScribbleManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/{TextManager.mjs → TextManager/TextManager.mjs} +72 -42
- package/dist-esm/lib/editor/managers/TextManager/TextManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/{TickManager.mjs → TickManager/TickManager.mjs} +1 -1
- package/dist-esm/lib/editor/managers/TickManager/TickManager.mjs.map +7 -0
- package/dist-esm/lib/editor/managers/{UserPreferencesManager.mjs → UserPreferencesManager/UserPreferencesManager.mjs} +1 -1
- package/dist-esm/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.mjs.map +7 -0
- package/dist-esm/lib/editor/shapes/ShapeUtil.mjs.map +1 -1
- package/dist-esm/lib/editor/shapes/group/GroupShapeUtil.mjs +1 -1
- package/dist-esm/lib/editor/shapes/group/GroupShapeUtil.mjs.map +1 -1
- package/dist-esm/lib/exports/getSvgJsx.mjs.map +1 -1
- package/dist-esm/lib/hooks/useCanvasEvents.mjs +1 -2
- package/dist-esm/lib/hooks/useCanvasEvents.mjs.map +2 -2
- package/dist-esm/lib/primitives/Box.mjs +33 -39
- package/dist-esm/lib/primitives/Box.mjs.map +2 -2
- package/dist-esm/lib/utils/areShapesContentEqual.mjs +1 -1
- package/dist-esm/lib/utils/areShapesContentEqual.mjs.map +2 -2
- package/dist-esm/lib/utils/reorderShapes.mjs +11 -10
- package/dist-esm/lib/utils/reorderShapes.mjs.map +2 -2
- package/dist-esm/lib/utils/richText.mjs +8 -3
- package/dist-esm/lib/utils/richText.mjs.map +2 -2
- package/dist-esm/version.mjs +3 -3
- package/dist-esm/version.mjs.map +1 -1
- package/editor.css +433 -482
- package/package.json +8 -9
- package/src/index.ts +14 -8
- package/src/lib/config/TLSessionStateSnapshot.ts +1 -1
- package/src/lib/editor/Editor.test.ts +252 -3
- package/src/lib/editor/Editor.ts +64 -75
- package/src/lib/editor/bindings/BindingUtil.ts +6 -0
- package/src/lib/editor/derivations/bindingsIndex.ts +27 -26
- package/src/lib/editor/derivations/parentsToChildren.ts +28 -25
- package/src/lib/editor/managers/ClickManager/ClickManager.test.ts +442 -0
- package/src/lib/editor/managers/{ClickManager.ts → ClickManager/ClickManager.ts} +3 -3
- package/src/lib/editor/managers/EdgeScrollManager/EdgeScrollManager.test.ts +374 -0
- package/src/lib/editor/managers/{EdgeScrollManager.ts → EdgeScrollManager/EdgeScrollManager.ts} +3 -3
- package/src/lib/editor/managers/FocusManager/FocusManager.test.ts +455 -0
- package/src/lib/editor/managers/{FocusManager.ts → FocusManager/FocusManager.ts} +1 -1
- package/src/lib/editor/managers/FontManager/FontManager.test.ts +263 -0
- package/src/lib/editor/managers/{FontManager.ts → FontManager/FontManager.ts} +5 -2
- package/src/lib/editor/managers/{HistoryManager.test.ts → HistoryManager/HistoryManager.test.ts} +388 -1
- package/src/lib/editor/managers/{HistoryManager.ts → HistoryManager/HistoryManager.ts} +73 -2
- package/src/lib/editor/managers/ScribbleManager/ScribbleManager.test.ts +624 -0
- package/src/lib/editor/managers/{ScribbleManager.ts → ScribbleManager/ScribbleManager.ts} +2 -2
- package/src/lib/editor/managers/SnapManager/SnapManager.test.ts +485 -0
- package/src/lib/editor/managers/TextManager/TextManager.test.ts +407 -0
- package/src/lib/editor/managers/{TextManager.ts → TextManager/TextManager.ts} +117 -87
- package/src/lib/editor/managers/TickManager/TickManager.test.ts +314 -0
- package/src/lib/editor/managers/{TickManager.ts → TickManager/TickManager.ts} +2 -2
- package/src/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.test.ts +591 -0
- package/src/lib/editor/managers/{UserPreferencesManager.ts → UserPreferencesManager/UserPreferencesManager.ts} +2 -2
- package/src/lib/editor/shapes/ShapeUtil.ts +1 -1
- package/src/lib/editor/shapes/group/GroupShapeUtil.tsx +1 -1
- package/src/lib/editor/types/external-content.ts +1 -1
- package/src/lib/exports/getSvgJsx.tsx +1 -1
- package/src/lib/hooks/useCanvasEvents.ts +0 -1
- package/src/lib/primitives/Box.test.ts +588 -7
- package/src/lib/primitives/Box.ts +33 -41
- package/src/lib/utils/areShapesContentEqual.ts +1 -2
- package/src/lib/utils/reorderShapes.ts +10 -13
- package/src/lib/utils/richText.ts +10 -4
- package/src/version.ts +3 -3
- package/dist-cjs/lib/editor/managers/ClickManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/EdgeScrollManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/FocusManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/FontManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/HistoryManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/ScribbleManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/Stack.js +0 -82
- package/dist-cjs/lib/editor/managers/Stack.js.map +0 -7
- package/dist-cjs/lib/editor/managers/TextManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/TickManager.js.map +0 -7
- package/dist-cjs/lib/editor/managers/UserPreferencesManager.js.map +0 -7
- package/dist-esm/lib/editor/managers/ClickManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/EdgeScrollManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/FocusManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/FontManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/HistoryManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/ScribbleManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/Stack.mjs +0 -62
- package/dist-esm/lib/editor/managers/Stack.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/TextManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/TickManager.mjs.map +0 -7
- package/dist-esm/lib/editor/managers/UserPreferencesManager.mjs.map +0 -7
- package/src/lib/editor/managers/ScribbleManager.test.ts +0 -32
- package/src/lib/editor/managers/Stack.ts +0 -71
- /package/dist-cjs/lib/editor/managers/{FocusManager.js → FocusManager/FocusManager.js} +0 -0
- /package/dist-esm/lib/editor/managers/{FocusManager.mjs → FocusManager/FocusManager.mjs} +0 -0
|
@@ -112,19 +112,19 @@ var import_bindingsIndex = require("./derivations/bindingsIndex");
|
|
|
112
112
|
var import_notVisibleShapes = require("./derivations/notVisibleShapes");
|
|
113
113
|
var import_parentsToChildren = require("./derivations/parentsToChildren");
|
|
114
114
|
var import_shapeIdsInCurrentPage = require("./derivations/shapeIdsInCurrentPage");
|
|
115
|
-
var import_ClickManager = require("./managers/ClickManager");
|
|
116
|
-
var import_EdgeScrollManager = require("./managers/EdgeScrollManager");
|
|
117
|
-
var import_FocusManager = require("./managers/FocusManager");
|
|
118
|
-
var import_FontManager = require("./managers/FontManager");
|
|
119
|
-
var import_HistoryManager = require("./managers/HistoryManager");
|
|
120
|
-
var import_ScribbleManager = require("./managers/ScribbleManager");
|
|
115
|
+
var import_ClickManager = require("./managers/ClickManager/ClickManager");
|
|
116
|
+
var import_EdgeScrollManager = require("./managers/EdgeScrollManager/EdgeScrollManager");
|
|
117
|
+
var import_FocusManager = require("./managers/FocusManager/FocusManager");
|
|
118
|
+
var import_FontManager = require("./managers/FontManager/FontManager");
|
|
119
|
+
var import_HistoryManager = require("./managers/HistoryManager/HistoryManager");
|
|
120
|
+
var import_ScribbleManager = require("./managers/ScribbleManager/ScribbleManager");
|
|
121
121
|
var import_SnapManager = require("./managers/SnapManager/SnapManager");
|
|
122
|
-
var import_TextManager = require("./managers/TextManager");
|
|
123
|
-
var import_TickManager = require("./managers/TickManager");
|
|
124
|
-
var import_UserPreferencesManager = require("./managers/UserPreferencesManager");
|
|
122
|
+
var import_TextManager = require("./managers/TextManager/TextManager");
|
|
123
|
+
var import_TickManager = require("./managers/TickManager/TickManager");
|
|
124
|
+
var import_UserPreferencesManager = require("./managers/UserPreferencesManager/UserPreferencesManager");
|
|
125
125
|
var import_RootState = require("./tools/RootState");
|
|
126
|
-
var __setMetaKeyTimeout_dec, __setCtrlKeyTimeout_dec, __setAltKeyTimeout_dec, __setShiftKeyTimeout_dec, _getIsReadonly_dec, _getIsFocused_dec, _getSharedOpacity_dec, _getSharedStyles_dec, __getSelectionSharedStyles_dec, __getBindingsIndexCache_dec, _getCurrentPageRenderingShapesSorted_dec, _getCurrentPageShapesSorted_dec, _getCurrentPageShapes_dec, _getCurrentPageBounds_dec, _getCulledShapes_dec,
|
|
127
|
-
class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_dec = [import_state.computed], _getCanUndo_dec = [import_state.computed], _getCanRedo_dec = [import_state.computed], _getPath_dec = [import_state.computed], _getCurrentTool_dec = [import_state.computed], _getCurrentToolId_dec = [import_state.computed], _getDocumentSettings_dec = [import_state.computed], _getInstanceState_dec = [import_state.computed], _getOpenMenus_dec = [import_state.computed], _getIsMenuOpen_dec = [import_state.computed], _getPageStates_dec = [import_state.computed], __getPageStatesQuery_dec = [import_state.computed], _getCurrentPageState_dec = [import_state.computed], __getCurrentPageStateId_dec = [import_state.computed], _getSelectedShapeIds_dec = [import_state.computed], _getSelectedShapes_dec = [import_state.computed], _getCurrentPageShapesInReadingOrder_dec = [import_state.computed], _getOnlySelectedShapeId_dec = [import_state.computed], _getOnlySelectedShape_dec = [import_state.computed], _getSelectionPageBounds_dec = [import_state.computed], _getSelectionRotation_dec = [import_state.computed], _getSelectionRotatedPageBounds_dec = [import_state.computed], _getSelectionRotatedScreenBounds_dec = [import_state.computed], _getFocusedGroupId_dec = [import_state.computed], _getFocusedGroup_dec = [import_state.computed], _getEditingShapeId_dec = [import_state.computed], _getEditingShape_dec = [import_state.computed], _getRichTextEditor_dec = [import_state.computed], _getHoveredShapeId_dec = [import_state.computed], _getHoveredShape_dec = [import_state.computed], _getHintingShapeIds_dec = [import_state.computed], _getHintingShape_dec = [import_state.computed], _getErasingShapeIds_dec = [import_state.computed], _getErasingShapes_dec = [import_state.computed], __unsafe_getCameraId_dec = [import_state.computed], _getCamera_dec = [import_state.computed], _getViewportPageBoundsForFollowing_dec = [import_state.computed], _getCameraForFollowing_dec = [import_state.computed], _getZoomLevel_dec = [import_state.computed], _getViewportScreenBounds_dec = [import_state.computed], _getViewportScreenCenter_dec = [import_state.computed], _getViewportPageBounds_dec = [import_state.computed], __getCollaboratorsQuery_dec = [import_state.computed], _getCollaborators_dec = [import_state.computed], _getCollaboratorsOnCurrentPage_dec = [import_state.computed], _getRenderingShapes_dec = [import_state.computed], __getAllPagesQuery_dec = [import_state.computed], _getPages_dec = [import_state.computed], _getCurrentPageId_dec = [import_state.computed], _getCurrentPageShapeIdsSorted_dec = [import_state.computed], __getAllAssetsQuery_dec = [import_state.computed], __getShapeHandlesCache_dec = [import_state.computed], __getShapePageTransformCache_dec = [import_state.computed], __getShapePageBoundsCache_dec = [import_state.computed], __getShapeClipPathCache_dec = [import_state.computed], __getShapeMaskCache_dec = [import_state.computed], __getShapeMaskedPageBoundsCache_dec = [import_state.computed],
|
|
126
|
+
var __setMetaKeyTimeout_dec, __setCtrlKeyTimeout_dec, __setAltKeyTimeout_dec, __setShiftKeyTimeout_dec, _getIsReadonly_dec, _getIsFocused_dec, _getSharedOpacity_dec, _getSharedStyles_dec, __getSelectionSharedStyles_dec, __getBindingsIndexCache_dec, _getCurrentPageRenderingShapesSorted_dec, _getCurrentPageShapesSorted_dec, _getCurrentPageShapes_dec, _getCurrentPageBounds_dec, _getCulledShapes_dec, _getNotVisibleShapes_dec, __getShapeMaskedPageBoundsCache_dec, __getShapeMaskCache_dec, __getShapeClipPathCache_dec, __getShapePageBoundsCache_dec, __getShapePageTransformCache_dec, __getShapeHandlesCache_dec, __getAllAssetsQuery_dec, _getCurrentPageShapeIdsSorted_dec, _getCurrentPageId_dec, _getPages_dec, __getAllPagesQuery_dec, _getRenderingShapes_dec, _getCollaboratorsOnCurrentPage_dec, _getCollaborators_dec, __getCollaboratorsQuery_dec, _getViewportPageBounds_dec, _getViewportScreenCenter_dec, _getViewportScreenBounds_dec, _getZoomLevel_dec, _getCameraForFollowing_dec, _getViewportPageBoundsForFollowing_dec, _getCamera_dec, __unsafe_getCameraId_dec, _getErasingShapes_dec, _getErasingShapeIds_dec, _getHintingShape_dec, _getHintingShapeIds_dec, _getHoveredShape_dec, _getHoveredShapeId_dec, _getRichTextEditor_dec, _getEditingShape_dec, _getEditingShapeId_dec, _getFocusedGroup_dec, _getFocusedGroupId_dec, _getSelectionRotatedScreenBounds_dec, _getSelectionRotatedPageBounds_dec, _getSelectionRotation_dec, _getSelectionScreenBounds_dec, _getSelectionPageBounds_dec, _getOnlySelectedShape_dec, _getOnlySelectedShapeId_dec, _getCurrentPageShapesInReadingOrder_dec, _getSelectedShapes_dec, _getSelectedShapeIds_dec, __getCurrentPageStateId_dec, _getCurrentPageState_dec, __getPageStatesQuery_dec, _getPageStates_dec, _getIsMenuOpen_dec, _getOpenMenus_dec, _getInstanceState_dec, _getDocumentSettings_dec, _getCurrentToolId_dec, _getCurrentTool_dec, _getPath_dec, _getCanRedo_dec, _getCanUndo_dec, _getIsShapeHiddenCache_dec, _a, _init;
|
|
127
|
+
class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_dec = [import_state.computed], _getCanUndo_dec = [import_state.computed], _getCanRedo_dec = [import_state.computed], _getPath_dec = [import_state.computed], _getCurrentTool_dec = [import_state.computed], _getCurrentToolId_dec = [import_state.computed], _getDocumentSettings_dec = [import_state.computed], _getInstanceState_dec = [import_state.computed], _getOpenMenus_dec = [import_state.computed], _getIsMenuOpen_dec = [import_state.computed], _getPageStates_dec = [import_state.computed], __getPageStatesQuery_dec = [import_state.computed], _getCurrentPageState_dec = [import_state.computed], __getCurrentPageStateId_dec = [import_state.computed], _getSelectedShapeIds_dec = [import_state.computed], _getSelectedShapes_dec = [import_state.computed], _getCurrentPageShapesInReadingOrder_dec = [import_state.computed], _getOnlySelectedShapeId_dec = [import_state.computed], _getOnlySelectedShape_dec = [import_state.computed], _getSelectionPageBounds_dec = [import_state.computed], _getSelectionScreenBounds_dec = [import_state.computed], _getSelectionRotation_dec = [import_state.computed], _getSelectionRotatedPageBounds_dec = [import_state.computed], _getSelectionRotatedScreenBounds_dec = [import_state.computed], _getFocusedGroupId_dec = [import_state.computed], _getFocusedGroup_dec = [import_state.computed], _getEditingShapeId_dec = [import_state.computed], _getEditingShape_dec = [import_state.computed], _getRichTextEditor_dec = [import_state.computed], _getHoveredShapeId_dec = [import_state.computed], _getHoveredShape_dec = [import_state.computed], _getHintingShapeIds_dec = [import_state.computed], _getHintingShape_dec = [import_state.computed], _getErasingShapeIds_dec = [import_state.computed], _getErasingShapes_dec = [import_state.computed], __unsafe_getCameraId_dec = [import_state.computed], _getCamera_dec = [import_state.computed], _getViewportPageBoundsForFollowing_dec = [import_state.computed], _getCameraForFollowing_dec = [import_state.computed], _getZoomLevel_dec = [import_state.computed], _getViewportScreenBounds_dec = [import_state.computed], _getViewportScreenCenter_dec = [import_state.computed], _getViewportPageBounds_dec = [import_state.computed], __getCollaboratorsQuery_dec = [import_state.computed], _getCollaborators_dec = [import_state.computed], _getCollaboratorsOnCurrentPage_dec = [import_state.computed], _getRenderingShapes_dec = [import_state.computed], __getAllPagesQuery_dec = [import_state.computed], _getPages_dec = [import_state.computed], _getCurrentPageId_dec = [import_state.computed], _getCurrentPageShapeIdsSorted_dec = [import_state.computed], __getAllAssetsQuery_dec = [import_state.computed], __getShapeHandlesCache_dec = [import_state.computed], __getShapePageTransformCache_dec = [import_state.computed], __getShapePageBoundsCache_dec = [import_state.computed], __getShapeClipPathCache_dec = [import_state.computed], __getShapeMaskCache_dec = [import_state.computed], __getShapeMaskedPageBoundsCache_dec = [import_state.computed], _getNotVisibleShapes_dec = [import_state.computed], _getCulledShapes_dec = [import_state.computed], _getCurrentPageBounds_dec = [import_state.computed], _getCurrentPageShapes_dec = [import_state.computed], _getCurrentPageShapesSorted_dec = [import_state.computed], _getCurrentPageRenderingShapesSorted_dec = [import_state.computed], __getBindingsIndexCache_dec = [import_state.computed], __getSelectionSharedStyles_dec = [import_state.computed], _getSharedStyles_dec = [(0, import_state.computed)({ isEqual: (a, b) => a.equals(b) })], _getSharedOpacity_dec = [import_state.computed], _getIsFocused_dec = [import_state.computed], _getIsReadonly_dec = [import_state.computed], __setShiftKeyTimeout_dec = [import_utils.bind], __setAltKeyTimeout_dec = [import_utils.bind], __setCtrlKeyTimeout_dec = [import_utils.bind], __setMetaKeyTimeout_dec = [import_utils.bind], _a) {
|
|
128
128
|
constructor({
|
|
129
129
|
store,
|
|
130
130
|
user,
|
|
@@ -302,7 +302,7 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
302
302
|
__publicField(this, "_currentPageShapeIds");
|
|
303
303
|
/* --------------------- Shapes --------------------- */
|
|
304
304
|
__publicField(this, "_shapeGeometryCaches", {});
|
|
305
|
-
__publicField(this, "
|
|
305
|
+
__publicField(this, "_notVisibleShapes", (0, import_notVisibleShapes.notVisibleShapes)(this));
|
|
306
306
|
// Parents and children
|
|
307
307
|
/**
|
|
308
308
|
* A cache of parents to children.
|
|
@@ -439,6 +439,7 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
439
439
|
this.disposables.add(() => this.user.dispose());
|
|
440
440
|
this.getContainer = getContainer;
|
|
441
441
|
this.textMeasure = new import_TextManager.TextManager(this);
|
|
442
|
+
this.disposables.add(() => this.textMeasure.dispose());
|
|
442
443
|
this.fonts = new import_FontManager.FontManager(this, fontAssetUrls);
|
|
443
444
|
this._tickManager = new import_TickManager.TickManager(this);
|
|
444
445
|
class NewRoot extends import_RootState.RootState {
|
|
@@ -559,20 +560,21 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
559
560
|
shape: {
|
|
560
561
|
afterChange: (shapeBefore, shapeAfter) => {
|
|
561
562
|
for (const binding of this.getBindingsInvolvingShape(shapeAfter)) {
|
|
562
|
-
if ((0, import_areShapesContentEqual.areShapesContentEqual)(shapeBefore, shapeAfter)) continue;
|
|
563
563
|
invalidBindingTypes.add(binding.type);
|
|
564
564
|
if (binding.fromId === shapeAfter.id) {
|
|
565
565
|
this.getBindingUtil(binding).onAfterChangeFromShape?.({
|
|
566
566
|
binding,
|
|
567
567
|
shapeBefore,
|
|
568
|
-
shapeAfter
|
|
568
|
+
shapeAfter,
|
|
569
|
+
reason: "self"
|
|
569
570
|
});
|
|
570
571
|
}
|
|
571
572
|
if (binding.toId === shapeAfter.id) {
|
|
572
573
|
this.getBindingUtil(binding).onAfterChangeToShape?.({
|
|
573
574
|
binding,
|
|
574
575
|
shapeBefore,
|
|
575
|
-
shapeAfter
|
|
576
|
+
shapeAfter,
|
|
577
|
+
reason: "self"
|
|
576
578
|
});
|
|
577
579
|
}
|
|
578
580
|
}
|
|
@@ -586,14 +588,16 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
586
588
|
this.getBindingUtil(binding).onAfterChangeFromShape?.({
|
|
587
589
|
binding,
|
|
588
590
|
shapeBefore: descendantShape,
|
|
589
|
-
shapeAfter: descendantShape
|
|
591
|
+
shapeAfter: descendantShape,
|
|
592
|
+
reason: "ancestry"
|
|
590
593
|
});
|
|
591
594
|
}
|
|
592
595
|
if (binding.toId === descendantShape.id) {
|
|
593
596
|
this.getBindingUtil(binding).onAfterChangeToShape?.({
|
|
594
597
|
binding,
|
|
595
598
|
shapeBefore: descendantShape,
|
|
596
|
-
shapeAfter: descendantShape
|
|
599
|
+
shapeAfter: descendantShape,
|
|
600
|
+
reason: "ancestry"
|
|
597
601
|
});
|
|
598
602
|
}
|
|
599
603
|
}
|
|
@@ -1637,6 +1641,13 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
1637
1641
|
getSelectionPageBounds() {
|
|
1638
1642
|
return this.getShapesPageBounds(this.getSelectedShapeIds());
|
|
1639
1643
|
}
|
|
1644
|
+
getSelectionScreenBounds() {
|
|
1645
|
+
const bounds = this.getSelectionPageBounds();
|
|
1646
|
+
if (!bounds) return void 0;
|
|
1647
|
+
const { x, y } = this.pageToScreen(bounds.point);
|
|
1648
|
+
const zoom = this.getZoomLevel();
|
|
1649
|
+
return new import_Box.Box(x, y, bounds.width * zoom, bounds.height * zoom);
|
|
1650
|
+
}
|
|
1640
1651
|
/**
|
|
1641
1652
|
* @internal
|
|
1642
1653
|
*/
|
|
@@ -2820,10 +2831,7 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
2820
2831
|
}
|
|
2821
2832
|
getViewportScreenCenter() {
|
|
2822
2833
|
const viewportScreenBounds = this.getViewportScreenBounds();
|
|
2823
|
-
return new import_Vec.Vec(
|
|
2824
|
-
viewportScreenBounds.midX - viewportScreenBounds.minX,
|
|
2825
|
-
viewportScreenBounds.midY - viewportScreenBounds.minY
|
|
2826
|
-
);
|
|
2834
|
+
return new import_Vec.Vec(viewportScreenBounds.w / 2, viewportScreenBounds.h / 2);
|
|
2827
2835
|
}
|
|
2828
2836
|
getViewportPageBounds() {
|
|
2829
2837
|
const { w, h } = this.getViewportScreenBounds();
|
|
@@ -3498,41 +3506,6 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
3498
3506
|
typeof shape === "string" ? shape : shape.id
|
|
3499
3507
|
);
|
|
3500
3508
|
}
|
|
3501
|
-
/**
|
|
3502
|
-
* Get the geometry of a shape in page-space.
|
|
3503
|
-
*
|
|
3504
|
-
* @example
|
|
3505
|
-
* ```ts
|
|
3506
|
-
* editor.getShapePageGeometry(myShape)
|
|
3507
|
-
* editor.getShapePageGeometry(myShapeId)
|
|
3508
|
-
* editor.getShapePageGeometry(myShapeId, { context: "arrow" })
|
|
3509
|
-
* ```
|
|
3510
|
-
*
|
|
3511
|
-
* @param shape - The shape (or shape id) to get the geometry for.
|
|
3512
|
-
* @param opts - Additional options about the request for geometry. Passed to {@link ShapeUtil.getGeometry}.
|
|
3513
|
-
*
|
|
3514
|
-
* @public
|
|
3515
|
-
*/
|
|
3516
|
-
getShapePageGeometry(shape, opts) {
|
|
3517
|
-
const context = opts?.context ?? "none";
|
|
3518
|
-
if (!this._shapePageGeometryCaches[context]) {
|
|
3519
|
-
this._shapePageGeometryCaches[context] = this.store.createComputedCache(
|
|
3520
|
-
"bounds",
|
|
3521
|
-
(shape2) => {
|
|
3522
|
-
const geometry = this.getShapeGeometry(shape2.id, opts);
|
|
3523
|
-
const pageTransform = this.getShapePageTransform(shape2.id);
|
|
3524
|
-
return geometry.transform(pageTransform);
|
|
3525
|
-
},
|
|
3526
|
-
{
|
|
3527
|
-
// we only depend directly on the shape id, and changing geometry/transform will update us anyway
|
|
3528
|
-
areRecordsEqual: () => true
|
|
3529
|
-
}
|
|
3530
|
-
);
|
|
3531
|
-
}
|
|
3532
|
-
return this._shapePageGeometryCaches[context].get(
|
|
3533
|
-
typeof shape === "string" ? shape : shape.id
|
|
3534
|
-
);
|
|
3535
|
-
}
|
|
3536
3509
|
_getShapeHandlesCache() {
|
|
3537
3510
|
return this.store.createComputedCache(
|
|
3538
3511
|
"handles",
|
|
@@ -3626,7 +3599,10 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
3626
3599
|
}
|
|
3627
3600
|
_getShapePageBoundsCache() {
|
|
3628
3601
|
return this.store.createComputedCache("pageBoundsCache", (shape) => {
|
|
3629
|
-
|
|
3602
|
+
const pageTransform = this.getShapePageTransform(shape);
|
|
3603
|
+
if (!pageTransform) return void 0;
|
|
3604
|
+
const geometry = this.getShapeGeometry(shape);
|
|
3605
|
+
return import_Box.Box.FromPoints(pageTransform.applyToPoints(geometry.vertices));
|
|
3630
3606
|
});
|
|
3631
3607
|
}
|
|
3632
3608
|
/**
|
|
@@ -3683,12 +3659,11 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
3683
3659
|
(shape2) => this.isShapeOfType(shape2, "frame")
|
|
3684
3660
|
);
|
|
3685
3661
|
if (frameAncestors.length === 0) return void 0;
|
|
3686
|
-
const pageMask = frameAncestors.map(
|
|
3687
|
-
(s)
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
).reduce((acc, b) => {
|
|
3662
|
+
const pageMask = frameAncestors.map((s) => {
|
|
3663
|
+
const geometry = this.getShapeGeometry(s.id);
|
|
3664
|
+
const pageTransform = this.getShapePageTransform(s.id);
|
|
3665
|
+
return pageTransform.applyToPoints(geometry.vertices);
|
|
3666
|
+
}).reduce((acc, b) => {
|
|
3692
3667
|
if (!(b && acc)) return void 0;
|
|
3693
3668
|
const intersection = (0, import_intersect.intersectPolygonPolygon)(acc, b);
|
|
3694
3669
|
if (intersection) {
|
|
@@ -3852,17 +3827,24 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
3852
3827
|
}
|
|
3853
3828
|
return void 0;
|
|
3854
3829
|
}
|
|
3855
|
-
|
|
3856
|
-
|
|
3857
|
-
|
|
3858
|
-
|
|
3859
|
-
|
|
3830
|
+
/**
|
|
3831
|
+
* Check whether a shape or its parent is locked.
|
|
3832
|
+
*
|
|
3833
|
+
* @param shape - The shape (or shape id) to check.
|
|
3834
|
+
*
|
|
3835
|
+
* @public
|
|
3836
|
+
*/
|
|
3837
|
+
isShapeOrAncestorLocked(shape) {
|
|
3838
|
+
const _shape = shape && this.getShape(shape);
|
|
3839
|
+
if (_shape === void 0) return false;
|
|
3840
|
+
if (_shape.isLocked) return true;
|
|
3841
|
+
return this.isShapeOrAncestorLocked(this.getShapeParent(_shape));
|
|
3860
3842
|
}
|
|
3861
|
-
|
|
3862
|
-
return
|
|
3843
|
+
getNotVisibleShapes() {
|
|
3844
|
+
return this._notVisibleShapes.get();
|
|
3863
3845
|
}
|
|
3864
3846
|
getCulledShapes() {
|
|
3865
|
-
const notVisibleShapes2 = this.
|
|
3847
|
+
const notVisibleShapes2 = this.getNotVisibleShapes();
|
|
3866
3848
|
const selectedShapeIds = this.getSelectedShapeIds();
|
|
3867
3849
|
const editingId = this.getEditingShapeId();
|
|
3868
3850
|
const culledShapes = new Set(notVisibleShapes2);
|
|
@@ -4007,18 +3989,18 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
|
|
|
4007
3989
|
* @example
|
|
4008
3990
|
* ```ts
|
|
4009
3991
|
* editor.getShapesAtPoint({ x: 100, y: 100 })
|
|
4010
|
-
* editor.getShapesAtPoint({ x: 100, y: 100 }, { hitInside: true,
|
|
3992
|
+
* editor.getShapesAtPoint({ x: 100, y: 100 }, { hitInside: true, margin: 8 })
|
|
4011
3993
|
* ```
|
|
4012
3994
|
*
|
|
4013
3995
|
* @param point - The page point to test.
|
|
4014
3996
|
* @param opts - The options for the hit point testing.
|
|
4015
3997
|
*
|
|
3998
|
+
* @returns An array of shapes at the given point, sorted in reverse order of their absolute z-index (top-most shape first).
|
|
3999
|
+
*
|
|
4016
4000
|
* @public
|
|
4017
4001
|
*/
|
|
4018
4002
|
getShapesAtPoint(point, opts = {}) {
|
|
4019
|
-
return this.
|
|
4020
|
-
(shape) => !this.isShapeHidden(shape) && this.isPointInShape(shape, point, opts)
|
|
4021
|
-
);
|
|
4003
|
+
return this.getCurrentPageShapesSorted().filter((shape) => !this.isShapeHidden(shape) && this.isPointInShape(shape, point, opts)).reverse();
|
|
4022
4004
|
}
|
|
4023
4005
|
/**
|
|
4024
4006
|
* Test whether a point (in the current page space) will will a shape. This method takes into account masks,
|
|
@@ -7770,6 +7752,7 @@ __decorateElement(_init, 1, "getCurrentPageShapesInReadingOrder", _getCurrentPag
|
|
|
7770
7752
|
__decorateElement(_init, 1, "getOnlySelectedShapeId", _getOnlySelectedShapeId_dec, Editor);
|
|
7771
7753
|
__decorateElement(_init, 1, "getOnlySelectedShape", _getOnlySelectedShape_dec, Editor);
|
|
7772
7754
|
__decorateElement(_init, 1, "getSelectionPageBounds", _getSelectionPageBounds_dec, Editor);
|
|
7755
|
+
__decorateElement(_init, 1, "getSelectionScreenBounds", _getSelectionScreenBounds_dec, Editor);
|
|
7773
7756
|
__decorateElement(_init, 1, "getSelectionRotation", _getSelectionRotation_dec, Editor);
|
|
7774
7757
|
__decorateElement(_init, 1, "getSelectionRotatedPageBounds", _getSelectionRotatedPageBounds_dec, Editor);
|
|
7775
7758
|
__decorateElement(_init, 1, "getSelectionRotatedScreenBounds", _getSelectionRotatedScreenBounds_dec, Editor);
|
|
@@ -7807,7 +7790,7 @@ __decorateElement(_init, 1, "_getShapePageBoundsCache", __getShapePageBoundsCach
|
|
|
7807
7790
|
__decorateElement(_init, 1, "_getShapeClipPathCache", __getShapeClipPathCache_dec, Editor);
|
|
7808
7791
|
__decorateElement(_init, 1, "_getShapeMaskCache", __getShapeMaskCache_dec, Editor);
|
|
7809
7792
|
__decorateElement(_init, 1, "_getShapeMaskedPageBoundsCache", __getShapeMaskedPageBoundsCache_dec, Editor);
|
|
7810
|
-
__decorateElement(_init, 1, "
|
|
7793
|
+
__decorateElement(_init, 1, "getNotVisibleShapes", _getNotVisibleShapes_dec, Editor);
|
|
7811
7794
|
__decorateElement(_init, 1, "getCulledShapes", _getCulledShapes_dec, Editor);
|
|
7812
7795
|
__decorateElement(_init, 1, "getCurrentPageBounds", _getCurrentPageBounds_dec, Editor);
|
|
7813
7796
|
__decorateElement(_init, 1, "getCurrentPageShapes", _getCurrentPageShapes_dec, Editor);
|