@excalidraw/excalidraw 0.18.0-817d8c5 → 0.18.0-8608d7b
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/CHANGELOG.md +11 -11
- package/dist/dev/chunk-CP5DND7P.js +7 -0
- package/dist/dev/chunk-CP5DND7P.js.map +7 -0
- package/dist/dev/chunk-FB2NA5UG.js +4132 -0
- package/dist/dev/chunk-FB2NA5UG.js.map +7 -0
- package/dist/dev/{chunk-LMHBUWQS.js → chunk-PWQMCSHA.js} +27 -8
- package/dist/dev/chunk-PWQMCSHA.js.map +7 -0
- package/dist/dev/chunk-YMRX7R7U.js +5671 -0
- package/dist/dev/chunk-YMRX7R7U.js.map +7 -0
- package/dist/dev/data/{image-V26YBSDB.js → image-L23D26XS.js} +3 -3
- package/dist/dev/index.css +3945 -3493
- package/dist/dev/index.css.map +3 -3
- package/dist/dev/index.js +33090 -24527
- package/dist/dev/index.js.map +4 -4
- package/dist/dev/locales/{en-OZCJJ2HN.js → en-V3NQTBPG.js} +2 -2
- package/dist/dev/subset-shared.chunk.js +2 -2
- package/dist/dev/subset-worker.chunk.js +2 -2
- package/dist/prod/chunk-A66AFZZU.js +7 -0
- package/dist/prod/chunk-GF46JCB3.js +12 -0
- package/dist/prod/chunk-HT4FKTIQ.js +4 -0
- package/dist/prod/chunk-LS7FJGPW.js +86 -0
- package/dist/prod/data/image-NWF7UX55.js +1 -0
- package/dist/prod/index.css +1 -1
- package/dist/prod/index.js +27 -16
- package/dist/prod/locales/{en-B4ZKOASM.js → en-LQE6K457.js} +1 -1
- package/dist/prod/subset-shared.chunk.js +1 -1
- package/dist/prod/subset-worker.chunk.js +1 -1
- package/dist/types/{excalidraw/binaryheap.d.ts → common/src/binary-heap.d.ts} +1 -1
- package/dist/types/{excalidraw → common/src}/colors.d.ts +1 -0
- package/dist/types/{excalidraw → common/src}/constants.d.ts +52 -12
- package/dist/types/{excalidraw → common/src}/emitter.d.ts +1 -1
- package/dist/types/{excalidraw/fonts/FontMetadata.d.ts → common/src/font-metadata.d.ts} +15 -5
- package/dist/types/common/src/index.d.ts +12 -0
- package/dist/types/{excalidraw → common/src}/points.d.ts +2 -0
- package/dist/types/common/src/promise-pool.d.ts +6 -0
- package/dist/types/{excalidraw → common/src}/utility-types.d.ts +5 -0
- package/dist/types/{excalidraw → common/src}/utils.d.ts +25 -11
- package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +19 -18
- package/dist/types/element/src/align.d.ts +8 -0
- package/dist/types/{excalidraw/element → element/src}/binding.d.ts +30 -19
- package/dist/types/{excalidraw/element → element/src}/bounds.d.ts +20 -7
- package/dist/types/element/src/collision.d.ts +32 -0
- package/dist/types/{excalidraw/scene → element/src}/comparisons.d.ts +1 -1
- package/dist/types/{excalidraw/element → element/src}/cropElement.d.ts +1 -1
- package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +78 -41
- package/dist/types/element/src/distance.d.ts +3 -0
- package/dist/types/{excalidraw → element/src}/distribute.d.ts +3 -2
- package/dist/types/{excalidraw/element → element/src}/dragElements.d.ts +5 -4
- package/dist/types/element/src/duplicate.d.ts +63 -0
- package/dist/types/{excalidraw/element → element/src}/elbowArrow.d.ts +1 -1
- package/dist/types/{excalidraw/element → element/src}/elementLink.d.ts +1 -1
- package/dist/types/element/src/embeddable.d.ts +10 -0
- package/dist/types/{excalidraw/element → element/src}/flowchart.d.ts +4 -3
- package/dist/types/{excalidraw → element/src}/fractionalIndex.d.ts +12 -3
- package/dist/types/{excalidraw → element/src}/frame.d.ts +8 -7
- package/dist/types/{excalidraw → element/src}/groups.d.ts +6 -5
- package/dist/types/{excalidraw/element → element/src}/heading.d.ts +1 -2
- package/dist/types/{excalidraw/element → element/src}/image.d.ts +2 -2
- package/dist/types/element/src/index.d.ts +58 -0
- package/dist/types/{excalidraw/element → element/src}/linearElementEditor.d.ts +24 -37
- package/dist/types/element/src/mutateElement.d.ts +21 -0
- package/dist/types/{excalidraw/element → element/src}/newElement.d.ts +4 -43
- package/dist/types/element/src/positionElementsOnGrid.d.ts +2 -0
- package/dist/types/{excalidraw/renderer → element/src}/renderElement.d.ts +6 -3
- package/dist/types/{excalidraw/element → element/src}/resizeElements.d.ts +7 -6
- package/dist/types/{excalidraw/element → element/src}/resizeTest.d.ts +4 -4
- package/dist/types/{excalidraw/scene → element/src}/selection.d.ts +13 -7
- package/dist/types/element/src/shape.d.ts +42 -0
- package/dist/types/{excalidraw/element → element/src}/showSelectedShapeActions.d.ts +1 -1
- package/dist/types/{excalidraw/element → element/src}/sizeHelpers.d.ts +3 -3
- package/dist/types/element/src/store.d.ts +237 -0
- package/dist/types/{excalidraw/element → element/src}/textElement.d.ts +8 -7
- package/dist/types/{excalidraw/element → element/src}/transformHandles.d.ts +7 -7
- package/dist/types/{excalidraw/element → element/src}/typeChecks.d.ts +21 -3
- package/dist/types/{excalidraw/element → element/src}/types.d.ts +17 -4
- package/dist/types/element/src/utils.d.ts +31 -0
- package/dist/types/{excalidraw → element/src}/zindex.d.ts +5 -4
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +115 -109
- package/dist/types/excalidraw/actions/actionAlign.d.ts +7 -7
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +82 -78
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +705 -502
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +242 -228
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +40 -38
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +120 -113
- package/dist/types/excalidraw/actions/actionDistribute.d.ts +3 -3
- package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +3 -7
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +43 -41
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +94 -92
- package/dist/types/excalidraw/{element/embeddable.d.ts → actions/actionEmbeddable.d.ts} +40 -48
- package/dist/types/excalidraw/actions/actionExport.d.ts +405 -387
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +112 -67
- package/dist/types/excalidraw/actions/actionFlip.d.ts +3 -3
- package/dist/types/excalidraw/actions/actionFrame.d.ts +276 -268
- package/dist/types/excalidraw/actions/actionGroup.d.ts +79 -75
- package/dist/types/excalidraw/actions/actionHistory.d.ts +2 -3
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +568 -42
- package/dist/types/excalidraw/actions/actionLink.d.ts +41 -39
- package/dist/types/excalidraw/actions/actionMenu.d.ts +116 -110
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +77 -73
- package/dist/types/excalidraw/actions/actionProperties.d.ts +571 -524
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +41 -39
- package/dist/types/excalidraw/actions/actionStyles.d.ts +42 -40
- package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +40 -38
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +40 -38
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +39 -209
- package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +39 -38
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +40 -39
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +40 -39
- package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
- package/dist/types/excalidraw/actions/index.d.ts +2 -1
- package/dist/types/excalidraw/actions/manager.d.ts +2 -2
- package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
- package/dist/types/excalidraw/actions/types.d.ts +6 -5
- package/dist/types/excalidraw/animated-trail.d.ts +7 -1
- package/dist/types/excalidraw/appState.d.ts +42 -28
- package/dist/types/excalidraw/charts.d.ts +1 -1
- package/dist/types/excalidraw/clipboard.d.ts +71 -8
- package/dist/types/excalidraw/components/Actions.d.ts +19 -9
- package/dist/types/excalidraw/components/App.d.ts +58 -34
- package/dist/types/excalidraw/components/Avatar.d.ts +1 -1
- package/dist/types/excalidraw/components/ButtonIcon.d.ts +2 -1
- package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
- package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +10 -5
- package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
- package/dist/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +1 -2
- package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +6 -5
- package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +4 -4
- package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -3
- package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
- package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +4 -4
- package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -2
- package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +2 -1
- package/dist/types/excalidraw/components/ConfirmDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/ContextMenu.d.ts +2 -2
- package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
- package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
- package/dist/types/excalidraw/components/DefaultSidebar.d.ts +2 -2
- package/dist/types/excalidraw/components/DialogActionButton.d.ts +1 -1
- package/dist/types/excalidraw/{element → components}/ElementCanvasButtons.d.ts +1 -1
- package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +5 -4
- package/dist/types/excalidraw/components/Ellipsify.d.ts +4 -0
- package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +1 -1
- package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
- package/dist/types/excalidraw/components/FixedSideContainer.d.ts +1 -1
- package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +1 -1
- package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +3 -2
- package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +3 -3
- package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +4 -2
- package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +1 -1
- package/dist/types/excalidraw/components/HintViewer.d.ts +1 -1
- package/dist/types/excalidraw/components/IconPicker.d.ts +1 -1
- package/dist/types/excalidraw/components/ImageExportDialog.d.ts +2 -2
- package/dist/types/excalidraw/components/InitializeApp.d.ts +1 -1
- package/dist/types/excalidraw/components/InlineIcon.d.ts +3 -1
- package/dist/types/excalidraw/components/Island.d.ts +1 -1
- package/dist/types/excalidraw/components/JSONExportDialog.d.ts +2 -2
- package/dist/types/excalidraw/components/LayerUI.d.ts +5 -4
- package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -1
- package/dist/types/excalidraw/components/LibraryMenuItems.d.ts +1 -1
- package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +4 -4
- package/dist/types/excalidraw/components/LibraryUnit.d.ts +2 -2
- package/dist/types/excalidraw/components/LoadingMessage.d.ts +1 -1
- package/dist/types/excalidraw/components/MagicButton.d.ts +1 -1
- package/dist/types/excalidraw/components/MobileMenu.d.ts +5 -7
- package/dist/types/excalidraw/components/MobileToolBar.d.ts +11 -0
- package/dist/types/excalidraw/components/PasteChartDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/PropertiesPopover.d.ts +2 -1
- package/dist/types/excalidraw/components/PublishLibrary.d.ts +1 -1
- package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
- package/dist/types/excalidraw/components/Range.d.ts +3 -3
- package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
- package/dist/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +1 -1
- package/dist/types/excalidraw/components/Sidebar/common.d.ts +1 -1
- package/dist/types/excalidraw/components/Stack.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
- package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/DragInput.d.ts +14 -4
- package/dist/types/excalidraw/components/Stats/FontSize.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +3 -3
- package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/Position.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/index.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/common.d.ts +1 -1
- package/dist/types/excalidraw/components/TextField.d.ts +2 -1
- package/dist/types/excalidraw/components/Toast.d.ts +1 -1
- package/dist/types/excalidraw/components/ToolButton.d.ts +2 -2
- package/dist/types/excalidraw/components/ToolPopover.d.ts +25 -0
- package/dist/types/excalidraw/components/Tooltip.d.ts +1 -1
- package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
- package/dist/types/excalidraw/components/UserList.d.ts +1 -1
- package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +4 -3
- package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +2 -2
- package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +3 -3
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +5 -3
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +2 -1
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +2 -2
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +1 -1
- package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +5 -4
- package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +3 -2
- package/dist/types/excalidraw/components/icons.d.ts +10 -1
- package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +1 -1
- package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +4 -1
- package/dist/types/excalidraw/components/shapes.d.ts +190 -0
- package/dist/types/excalidraw/context/tunnels.d.ts +1 -1
- package/dist/types/excalidraw/data/EditorLocalStorage.d.ts +1 -1
- package/dist/types/excalidraw/data/blob.d.ts +7 -11
- package/dist/types/excalidraw/data/filesystem.d.ts +2 -2
- package/dist/types/excalidraw/data/index.d.ts +2 -2
- package/dist/types/excalidraw/data/json.d.ts +1 -1
- package/dist/types/excalidraw/data/library.d.ts +3 -3
- package/dist/types/excalidraw/data/reconcile.d.ts +3 -2
- package/dist/types/excalidraw/data/resave.d.ts +1 -1
- package/dist/types/excalidraw/data/restore.d.ts +6 -1
- package/dist/types/excalidraw/data/transform.d.ts +4 -4
- package/dist/types/excalidraw/data/types.d.ts +6 -3
- package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
- package/dist/types/excalidraw/eraser/index.d.ts +12 -0
- package/dist/types/excalidraw/errors.d.ts +0 -3
- package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -13
- package/dist/types/excalidraw/history.d.ts +31 -23
- package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
- package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
- package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
- package/dist/types/excalidraw/i18n.d.ts +1 -1
- package/dist/types/excalidraw/index.d.ts +18 -16
- package/dist/types/excalidraw/laser-trails.d.ts +1 -1
- package/dist/types/excalidraw/lasso/index.d.ts +16 -0
- package/dist/types/excalidraw/lasso/utils.d.ts +13 -0
- package/dist/types/excalidraw/renderer/helpers.d.ts +8 -3
- package/dist/types/excalidraw/renderer/staticScene.d.ts +4 -1
- package/dist/types/excalidraw/renderer/staticSvgScene.d.ts +2 -2
- package/dist/types/excalidraw/scene/Renderer.d.ts +3 -4
- package/dist/types/excalidraw/scene/export.d.ts +1 -1
- package/dist/types/excalidraw/scene/index.d.ts +2 -2
- package/dist/types/excalidraw/scene/scroll.d.ts +1 -1
- package/dist/types/excalidraw/scene/scrollbars.d.ts +2 -3
- package/dist/types/excalidraw/scene/types.d.ts +6 -4
- package/dist/types/excalidraw/snapping.d.ts +5 -6
- package/dist/types/excalidraw/types.d.ts +55 -26
- package/dist/types/excalidraw/{element → wysiwyg}/textWysiwyg.d.ts +4 -2
- package/dist/types/math/{angle.d.ts → src/angle.d.ts} +2 -0
- package/dist/types/math/src/constants.d.ts +3 -0
- package/dist/types/math/src/curve.d.ts +74 -0
- package/dist/types/math/{index.d.ts → src/index.d.ts} +1 -0
- package/dist/types/math/{point.d.ts → src/point.d.ts} +3 -3
- package/dist/types/math/{polygon.d.ts → src/polygon.d.ts} +1 -0
- package/dist/types/math/{rectangle.d.ts → src/rectangle.d.ts} +2 -0
- package/dist/types/math/{segment.d.ts → src/segment.d.ts} +2 -1
- package/dist/types/math/{types.d.ts → src/types.d.ts} +1 -0
- package/dist/types/math/{vector.d.ts → src/vector.d.ts} +8 -2
- package/dist/types/utils/{bbox.d.ts → src/bbox.d.ts} +1 -1
- package/dist/types/utils/{export.d.ts → src/export.d.ts} +2 -2
- package/dist/types/utils/{index.d.ts → src/index.d.ts} +1 -1
- package/dist/types/utils/{geometry → src}/shape.d.ts +2 -15
- package/dist/types/utils/{withinBounds.d.ts → src/withinBounds.d.ts} +2 -2
- package/history.ts +148 -109
- package/package.json +26 -11
- package/dist/dev/chunk-3SN6HYVK.js +0 -25695
- package/dist/dev/chunk-3SN6HYVK.js.map +0 -7
- package/dist/dev/chunk-53KHN5WM.js +0 -7
- package/dist/dev/chunk-53KHN5WM.js.map +0 -7
- package/dist/dev/chunk-LMHBUWQS.js.map +0 -7
- package/dist/dev/chunk-OKSO7T74.js +0 -4132
- package/dist/dev/chunk-OKSO7T74.js.map +0 -7
- package/dist/prod/chunk-36CXSE6H.js +0 -34
- package/dist/prod/chunk-6U3AYISY.js +0 -12
- package/dist/prod/chunk-EIO257PC.js +0 -86
- package/dist/prod/chunk-G5N3DNGT.js +0 -7
- package/dist/prod/data/image-N4WCURRR.js +0 -1
- package/dist/types/excalidraw/align.d.ts +0 -7
- package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
- package/dist/types/excalidraw/element/collision.d.ts +0 -26
- package/dist/types/excalidraw/element/distance.d.ts +0 -3
- package/dist/types/excalidraw/element/index.d.ts +0 -26
- package/dist/types/excalidraw/element/mutateElement.d.ts +0 -13
- package/dist/types/excalidraw/element/utils.d.ts +0 -21
- package/dist/types/excalidraw/scene/Shape.d.ts +0 -17
- package/dist/types/excalidraw/scene/ShapeCache.d.ts +0 -25
- package/dist/types/excalidraw/shapes.d.ts +0 -85
- package/dist/types/excalidraw/store.d.ts +0 -129
- package/dist/types/excalidraw/visualdebug.d.ts +0 -41
- package/dist/types/math/curve.d.ts +0 -40
- package/dist/types/utils/collision.d.ts +0 -9
- /package/dist/dev/data/{image-V26YBSDB.js.map → image-L23D26XS.js.map} +0 -0
- /package/dist/dev/locales/{en-OZCJJ2HN.js.map → en-V3NQTBPG.js.map} +0 -0
- /package/dist/types/{excalidraw → common/src}/keys.d.ts +0 -0
- /package/dist/types/{excalidraw → common/src}/queue.d.ts +0 -0
- /package/dist/types/{excalidraw → common/src}/random.d.ts +0 -0
- /package/dist/types/{excalidraw/data → common/src}/url.d.ts +0 -0
- /package/dist/types/{excalidraw/element → element/src}/containerCache.d.ts +0 -0
- /package/dist/types/{excalidraw/element → element/src}/sortElements.d.ts +0 -0
- /package/dist/types/{excalidraw/element → element/src}/textMeasurements.d.ts +0 -0
- /package/dist/types/{excalidraw/element → element/src}/textWrapping.d.ts +0 -0
- /package/dist/types/math/{ellipse.d.ts → src/ellipse.d.ts} +0 -0
- /package/dist/types/math/{line.d.ts → src/line.d.ts} +0 -0
- /package/dist/types/math/{range.d.ts → src/range.d.ts} +0 -0
- /package/dist/types/math/{triangle.d.ts → src/triangle.d.ts} +0 -0
- /package/dist/types/math/{utils.d.ts → src/utils.d.ts} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type {
|
|
1
|
+
import type { ExcalidrawElement, OrderedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
+
import type { CaptureUpdateActionType } from "@excalidraw/element";
|
|
3
3
|
import type { AppClassProperties, AppState, ExcalidrawProps, BinaryFiles, UIAppState } from "../types";
|
|
4
|
-
import type
|
|
4
|
+
import type React from "react";
|
|
5
5
|
export type ActionSource = "ui" | "keyboard" | "contextMenu" | "api" | "commandPalette";
|
|
6
6
|
/** if false, the action should be prevented */
|
|
7
7
|
export type ActionResult = {
|
|
@@ -14,7 +14,7 @@ export type ActionResult = {
|
|
|
14
14
|
type ActionFn = (elements: readonly OrderedExcalidrawElement[], appState: Readonly<AppState>, formData: any, app: AppClassProperties) => ActionResult | Promise<ActionResult>;
|
|
15
15
|
export type UpdaterFn = (res: ActionResult) => void;
|
|
16
16
|
export type ActionFilterFn = (action: Action) => void;
|
|
17
|
-
export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeStrokeShape" | "changeSloppiness" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeOpacity" | "changeFontSize" | "toggleCanvasMenu" | "toggleEditMenu" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "clearCanvas" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "addToLibrary" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "flipHorizontal" | "flipVertical" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "toggleEraserTool" | "toggleHandTool" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "setFrameAsActiveTool" | "setEmbeddableAsActiveTool" | "createContainerFromText" | "wrapTextInContainer" | "commandPalette" | "autoResize" | "elementStats" | "searchMenu" | "copyElementLink" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame";
|
|
17
|
+
export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeStrokeShape" | "changeSloppiness" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeArrowProperties" | "changeOpacity" | "changeFontSize" | "toggleCanvasMenu" | "toggleEditMenu" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "clearCanvas" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "addToLibrary" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "flipHorizontal" | "flipVertical" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "toggleEraserTool" | "toggleHandTool" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "setFrameAsActiveTool" | "setEmbeddableAsActiveTool" | "createContainerFromText" | "wrapTextInContainer" | "commandPalette" | "autoResize" | "elementStats" | "searchMenu" | "copyElementLink" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame" | "toggleLassoTool" | "toggleShapeSwitch" | "togglePolygon";
|
|
18
18
|
export type PanelComponentProps = {
|
|
19
19
|
elements: readonly ExcalidrawElement[];
|
|
20
20
|
appState: AppState;
|
|
@@ -22,6 +22,7 @@ export type PanelComponentProps = {
|
|
|
22
22
|
appProps: ExcalidrawProps;
|
|
23
23
|
data?: Record<string, any>;
|
|
24
24
|
app: AppClassProperties;
|
|
25
|
+
renderAction: (name: ActionName, data?: PanelComponentProps["data"]) => React.JSX.Element | null;
|
|
25
26
|
};
|
|
26
27
|
export interface Action {
|
|
27
28
|
name: ActionName;
|
|
@@ -35,7 +36,7 @@ export interface Action {
|
|
|
35
36
|
predicate?: (elements: readonly ExcalidrawElement[], appState: AppState, appProps: ExcalidrawProps, app: AppClassProperties) => boolean;
|
|
36
37
|
checked?: (appState: Readonly<AppState>) => boolean;
|
|
37
38
|
trackEvent: false | {
|
|
38
|
-
category: "toolbar" | "element" | "canvas" | "export" | "history" | "menu" | "collab" | "hyperlink" | "search_menu";
|
|
39
|
+
category: "toolbar" | "element" | "canvas" | "export" | "history" | "menu" | "collab" | "hyperlink" | "search_menu" | "shape_switch";
|
|
39
40
|
action?: string;
|
|
40
41
|
predicate?: (appState: Readonly<AppState>, elements: readonly ExcalidrawElement[], value: any) => boolean;
|
|
41
42
|
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { LaserPointer } from "@excalidraw/laser-pointer";
|
|
1
2
|
import type { LaserPointerOptions } from "@excalidraw/laser-pointer";
|
|
2
3
|
import type { AnimationFrameHandler } from "./animation-frame-handler";
|
|
3
4
|
import type App from "./components/App";
|
|
@@ -10,15 +11,18 @@ export interface Trail {
|
|
|
10
11
|
}
|
|
11
12
|
export interface AnimatedTrailOptions {
|
|
12
13
|
fill: (trail: AnimatedTrail) => string;
|
|
14
|
+
stroke?: (trail: AnimatedTrail) => string;
|
|
15
|
+
animateTrail?: boolean;
|
|
13
16
|
}
|
|
14
17
|
export declare class AnimatedTrail implements Trail {
|
|
15
18
|
private animationFrameHandler;
|
|
16
|
-
|
|
19
|
+
protected app: App;
|
|
17
20
|
private options;
|
|
18
21
|
private currentTrail?;
|
|
19
22
|
private pastTrails;
|
|
20
23
|
private container?;
|
|
21
24
|
private trailElement;
|
|
25
|
+
private trailAnimation?;
|
|
22
26
|
constructor(animationFrameHandler: AnimationFrameHandler, app: App, options: Partial<LaserPointerOptions> & Partial<AnimatedTrailOptions>);
|
|
23
27
|
get hasCurrentTrail(): boolean;
|
|
24
28
|
hasLastPoint(x: number, y: number): boolean;
|
|
@@ -27,6 +31,8 @@ export declare class AnimatedTrail implements Trail {
|
|
|
27
31
|
startPath(x: number, y: number): void;
|
|
28
32
|
addPointToPath(x: number, y: number): void;
|
|
29
33
|
endPath(): void;
|
|
34
|
+
getCurrentTrail(): LaserPointer | undefined;
|
|
35
|
+
clearTrails(): void;
|
|
30
36
|
private update;
|
|
31
37
|
private onFrame;
|
|
32
38
|
private drawTrail;
|
|
@@ -1,17 +1,33 @@
|
|
|
1
1
|
import type { AppState, NormalizedZoomValue } from "./types";
|
|
2
2
|
export declare const getDefaultAppState: () => Omit<AppState, "offsetTop" | "offsetLeft" | "width" | "height">;
|
|
3
3
|
export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>) => {
|
|
4
|
-
|
|
5
|
-
gridModeEnabled?: boolean | undefined;
|
|
6
|
-
objectsSnapModeEnabled?: boolean | undefined;
|
|
7
|
-
theme?: import("./element/types").Theme | undefined;
|
|
4
|
+
viewBackgroundColor?: string | undefined;
|
|
8
5
|
name?: string | null | undefined;
|
|
9
|
-
|
|
6
|
+
zoom?: Readonly<{
|
|
7
|
+
value: NormalizedZoomValue;
|
|
8
|
+
}> | undefined;
|
|
9
|
+
scrollX?: number | undefined;
|
|
10
|
+
scrollY?: number | undefined;
|
|
11
|
+
editingGroupId?: string | null | undefined;
|
|
12
|
+
selectedElementIds?: Readonly<{
|
|
13
|
+
[id: string]: true;
|
|
14
|
+
}> | undefined;
|
|
15
|
+
theme?: import("@excalidraw/element/types").Theme | undefined;
|
|
16
|
+
selectedGroupIds?: {
|
|
17
|
+
[groupId: string]: boolean;
|
|
18
|
+
} | undefined;
|
|
19
|
+
selectedLinearElement?: import("@excalidraw/element").LinearElementEditor | null | undefined;
|
|
20
|
+
zenModeEnabled?: boolean | undefined;
|
|
10
21
|
showWelcomeScreen?: boolean | undefined;
|
|
11
22
|
activeTool?: ({
|
|
12
23
|
lastActiveTool: import("./types").ActiveTool | null;
|
|
13
24
|
locked: boolean;
|
|
25
|
+
fromSelection: boolean;
|
|
14
26
|
} & import("./types").ActiveTool) | undefined;
|
|
27
|
+
preferredSelectionTool?: {
|
|
28
|
+
type: "selection" | "lasso";
|
|
29
|
+
initialized: boolean;
|
|
30
|
+
} | undefined;
|
|
15
31
|
penMode?: boolean | undefined;
|
|
16
32
|
penDetected?: boolean | undefined;
|
|
17
33
|
exportBackground?: boolean | undefined;
|
|
@@ -20,63 +36,61 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
20
36
|
exportScale?: number | undefined;
|
|
21
37
|
currentItemStrokeColor?: string | undefined;
|
|
22
38
|
currentItemBackgroundColor?: string | undefined;
|
|
23
|
-
currentItemFillStyle?: import("
|
|
39
|
+
currentItemFillStyle?: import("@excalidraw/element/types").FillStyle | undefined;
|
|
24
40
|
currentItemStrokeWidth?: number | undefined;
|
|
25
|
-
currentItemStrokeStyle?: import("
|
|
41
|
+
currentItemStrokeStyle?: import("@excalidraw/element/types").StrokeStyle | undefined;
|
|
26
42
|
currentItemRoughness?: number | undefined;
|
|
27
43
|
currentItemOpacity?: number | undefined;
|
|
28
44
|
currentItemFontFamily?: number | undefined;
|
|
29
45
|
currentItemFontSize?: number | undefined;
|
|
30
46
|
currentItemTextAlign?: string | undefined;
|
|
31
|
-
currentItemStartArrowhead?: import("
|
|
32
|
-
currentItemEndArrowhead?: import("
|
|
33
|
-
currentItemRoundness?: import("
|
|
34
|
-
|
|
35
|
-
scrollX?: number | undefined;
|
|
36
|
-
scrollY?: number | undefined;
|
|
47
|
+
currentItemStartArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
|
|
48
|
+
currentItemEndArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
|
|
49
|
+
currentItemRoundness?: import("@excalidraw/element/types").StrokeRoundness | undefined;
|
|
50
|
+
currentItemArrowType?: "round" | "sharp" | "elbow" | undefined;
|
|
37
51
|
cursorButton?: "up" | "down" | undefined;
|
|
38
52
|
scrolledOutside?: boolean | undefined;
|
|
39
|
-
zoom?: Readonly<{
|
|
40
|
-
value: NormalizedZoomValue;
|
|
41
|
-
}> | undefined;
|
|
42
53
|
openMenu?: "canvas" | "shape" | null | undefined;
|
|
43
54
|
openSidebar?: {
|
|
44
55
|
name: string;
|
|
45
56
|
tab?: string | undefined;
|
|
46
57
|
} | null | undefined;
|
|
47
58
|
defaultSidebarDockedPreference?: boolean | undefined;
|
|
48
|
-
lastPointerDownWith?: import("
|
|
49
|
-
selectedElementIds?: Readonly<{
|
|
50
|
-
[id: string]: true;
|
|
51
|
-
}> | undefined;
|
|
59
|
+
lastPointerDownWith?: import("@excalidraw/element/types").PointerType | undefined;
|
|
52
60
|
previousSelectedElementIds?: {
|
|
53
61
|
[id: string]: true;
|
|
54
62
|
} | undefined;
|
|
55
63
|
shouldCacheIgnoreZoom?: boolean | undefined;
|
|
56
64
|
gridSize?: number | undefined;
|
|
57
65
|
gridStep?: number | undefined;
|
|
58
|
-
|
|
59
|
-
[groupId: string]: boolean;
|
|
60
|
-
} | undefined;
|
|
61
|
-
editingGroupId?: string | null | undefined;
|
|
66
|
+
gridModeEnabled?: boolean | undefined;
|
|
62
67
|
stats?: {
|
|
63
68
|
open: boolean;
|
|
64
69
|
panels: number;
|
|
65
70
|
} | undefined;
|
|
66
|
-
currentChartType?: import("
|
|
67
|
-
|
|
71
|
+
currentChartType?: import("@excalidraw/element/types").ChartType | undefined;
|
|
72
|
+
objectsSnapModeEnabled?: boolean | undefined;
|
|
73
|
+
lockedMultiSelections?: {
|
|
74
|
+
[groupId: string]: true;
|
|
75
|
+
} | undefined;
|
|
68
76
|
};
|
|
69
77
|
export declare const cleanAppStateForExport: (appState: Partial<AppState>) => {
|
|
70
|
-
gridModeEnabled?: boolean | undefined;
|
|
71
78
|
viewBackgroundColor?: string | undefined;
|
|
72
79
|
gridSize?: number | undefined;
|
|
73
80
|
gridStep?: number | undefined;
|
|
81
|
+
gridModeEnabled?: boolean | undefined;
|
|
82
|
+
lockedMultiSelections?: {
|
|
83
|
+
[groupId: string]: true;
|
|
84
|
+
} | undefined;
|
|
74
85
|
};
|
|
75
86
|
export declare const clearAppStateForDatabase: (appState: Partial<AppState>) => {
|
|
76
|
-
gridModeEnabled?: boolean | undefined;
|
|
77
87
|
viewBackgroundColor?: string | undefined;
|
|
78
88
|
gridSize?: number | undefined;
|
|
79
89
|
gridStep?: number | undefined;
|
|
90
|
+
gridModeEnabled?: boolean | undefined;
|
|
91
|
+
lockedMultiSelections?: {
|
|
92
|
+
[groupId: string]: true;
|
|
93
|
+
} | undefined;
|
|
80
94
|
};
|
|
81
95
|
export declare const isEraserActive: ({ activeTool, }: {
|
|
82
96
|
activeTool: AppState["activeTool"];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NonDeletedExcalidrawElement } from "
|
|
1
|
+
import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
2
|
export type ChartElements = readonly NonDeletedExcalidrawElement[];
|
|
3
3
|
export interface Spreadsheet {
|
|
4
4
|
title: string | null;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type {
|
|
1
|
+
import { ALLOWED_PASTE_MIME_TYPES } from "@excalidraw/common";
|
|
2
|
+
import type { ValueOf } from "@excalidraw/common/utility-types";
|
|
3
|
+
import type { IMAGE_MIME_TYPES, STRING_MIME_TYPES } from "@excalidraw/common";
|
|
4
|
+
import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
5
|
+
import type { FileSystemHandle } from "./data/filesystem";
|
|
3
6
|
import type { Spreadsheet } from "./charts";
|
|
4
|
-
import {
|
|
7
|
+
import type { BinaryFiles } from "./types";
|
|
5
8
|
export type PastedMixedContent = {
|
|
6
9
|
type: "text" | "imageUrl";
|
|
7
10
|
value: string;
|
|
@@ -21,6 +24,8 @@ export declare const probablySupportsClipboardWriteText: boolean;
|
|
|
21
24
|
export declare const probablySupportsClipboardBlob: boolean;
|
|
22
25
|
export declare const createPasteEvent: ({ types, files, }: {
|
|
23
26
|
types?: {
|
|
27
|
+
"text/plain"?: string | File | undefined;
|
|
28
|
+
"text/html"?: string | File | undefined;
|
|
24
29
|
"image/svg+xml"?: string | File | undefined;
|
|
25
30
|
"image/png"?: string | File | undefined;
|
|
26
31
|
"image/jpeg"?: string | File | undefined;
|
|
@@ -30,8 +35,6 @@ export declare const createPasteEvent: ({ types, files, }: {
|
|
|
30
35
|
"image/x-icon"?: string | File | undefined;
|
|
31
36
|
"image/avif"?: string | File | undefined;
|
|
32
37
|
"image/jfif"?: string | File | undefined;
|
|
33
|
-
"text/plain"?: string | File | undefined;
|
|
34
|
-
"text/html"?: string | File | undefined;
|
|
35
38
|
} | undefined;
|
|
36
39
|
files?: File[] | undefined;
|
|
37
40
|
}) => ClipboardEvent;
|
|
@@ -45,6 +48,8 @@ export declare const copyToClipboard: (elements: readonly NonDeletedExcalidrawEl
|
|
|
45
48
|
* Will prompt user for permission if not granted.
|
|
46
49
|
*/
|
|
47
50
|
export declare const readSystemClipboard: () => Promise<{
|
|
51
|
+
"text/plain"?: string | File | undefined;
|
|
52
|
+
"text/html"?: string | File | undefined;
|
|
48
53
|
"image/svg+xml"?: string | File | undefined;
|
|
49
54
|
"image/png"?: string | File | undefined;
|
|
50
55
|
"image/jpeg"?: string | File | undefined;
|
|
@@ -54,13 +59,71 @@ export declare const readSystemClipboard: () => Promise<{
|
|
|
54
59
|
"image/x-icon"?: string | File | undefined;
|
|
55
60
|
"image/avif"?: string | File | undefined;
|
|
56
61
|
"image/jfif"?: string | File | undefined;
|
|
57
|
-
"text/plain"?: string | File | undefined;
|
|
58
|
-
"text/html"?: string | File | undefined;
|
|
59
62
|
}>;
|
|
63
|
+
type AllowedParsedDataTransferItem = {
|
|
64
|
+
type: ValueOf<typeof IMAGE_MIME_TYPES>;
|
|
65
|
+
kind: "file";
|
|
66
|
+
file: File;
|
|
67
|
+
fileHandle: FileSystemHandle | null;
|
|
68
|
+
} | {
|
|
69
|
+
type: ValueOf<typeof STRING_MIME_TYPES>;
|
|
70
|
+
kind: "string";
|
|
71
|
+
value: string;
|
|
72
|
+
};
|
|
73
|
+
type ParsedDataTransferItem = {
|
|
74
|
+
type: string;
|
|
75
|
+
kind: "file";
|
|
76
|
+
file: File;
|
|
77
|
+
fileHandle: FileSystemHandle | null;
|
|
78
|
+
} | {
|
|
79
|
+
type: string;
|
|
80
|
+
kind: "string";
|
|
81
|
+
value: string;
|
|
82
|
+
};
|
|
83
|
+
type ParsedDataTransferItemType<T extends AllowedParsedDataTransferItem["type"]> = AllowedParsedDataTransferItem & {
|
|
84
|
+
type: T;
|
|
85
|
+
};
|
|
86
|
+
export type ParsedDataTransferFile = Extract<AllowedParsedDataTransferItem, {
|
|
87
|
+
kind: "file";
|
|
88
|
+
}>;
|
|
89
|
+
type ParsedDataTranferList = ParsedDataTransferItem[] & {
|
|
90
|
+
/**
|
|
91
|
+
* Only allows filtering by known `string` data types, since `file`
|
|
92
|
+
* types can have multiple items of the same type (e.g. multiple image files)
|
|
93
|
+
* unlike `string` data transfer items.
|
|
94
|
+
*/
|
|
95
|
+
findByType: typeof findDataTransferItemType;
|
|
96
|
+
/**
|
|
97
|
+
* Only allows filtering by known `string` data types, since `file`
|
|
98
|
+
* types can have multiple items of the same type (e.g. multiple image files)
|
|
99
|
+
* unlike `string` data transfer items.
|
|
100
|
+
*/
|
|
101
|
+
getData: typeof getDataTransferItemData;
|
|
102
|
+
getFiles: typeof getDataTransferFiles;
|
|
103
|
+
};
|
|
104
|
+
declare const findDataTransferItemType: <T extends ValueOf<{
|
|
105
|
+
readonly text: "text/plain";
|
|
106
|
+
readonly html: "text/html";
|
|
107
|
+
readonly json: "application/json";
|
|
108
|
+
readonly excalidraw: "application/vnd.excalidraw+json";
|
|
109
|
+
readonly excalidrawlib: "application/vnd.excalidrawlib+json";
|
|
110
|
+
readonly excalidrawlibIds: "application/vnd.excalidrawlib.ids+json";
|
|
111
|
+
}>>(this: ParsedDataTranferList, type: T) => ParsedDataTransferItemType<T> | null;
|
|
112
|
+
declare const getDataTransferItemData: <T extends ValueOf<{
|
|
113
|
+
readonly text: "text/plain";
|
|
114
|
+
readonly html: "text/html";
|
|
115
|
+
readonly json: "application/json";
|
|
116
|
+
readonly excalidraw: "application/vnd.excalidraw+json";
|
|
117
|
+
readonly excalidrawlib: "application/vnd.excalidrawlib+json";
|
|
118
|
+
readonly excalidrawlibIds: "application/vnd.excalidrawlib.ids+json";
|
|
119
|
+
}>>(this: ParsedDataTranferList, type: T) => ParsedDataTransferItemType<ValueOf<typeof STRING_MIME_TYPES>>["value"] | null;
|
|
120
|
+
declare const getDataTransferFiles: (this: ParsedDataTranferList) => ParsedDataTransferFile[];
|
|
121
|
+
export declare const parseDataTransferEvent: (event: ClipboardEvent | DragEvent | React.DragEvent<HTMLDivElement>) => Promise<ParsedDataTranferList>;
|
|
60
122
|
/**
|
|
61
123
|
* Attempts to parse clipboard event.
|
|
62
124
|
*/
|
|
63
|
-
export declare const parseClipboard: (
|
|
125
|
+
export declare const parseClipboard: (dataList: ParsedDataTranferList, isPlainPaste?: boolean) => Promise<ClipboardData>;
|
|
64
126
|
export declare const copyBlobToClipboardAsPng: (blob: Blob | Promise<Blob>) => Promise<void>;
|
|
65
127
|
export declare const copyTextToSystemClipboard: (text: string | null, clipboardEvent?: ClipboardEvent | null) => Promise<void>;
|
|
128
|
+
export declare const isClipboardEvent: (event: React.SyntheticEvent | Event) => event is ClipboardEvent;
|
|
66
129
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedSceneElementsMap } from "../element/types";
|
|
3
|
-
import type { AppClassProperties, AppProps, UIAppState, Zoom } from "../types";
|
|
1
|
+
import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedSceneElementsMap } from "@excalidraw/element/types";
|
|
4
2
|
import "./Actions.scss";
|
|
3
|
+
import type { AppClassProperties, AppProps, UIAppState, Zoom, AppState } from "../types";
|
|
4
|
+
import type { ActionManager } from "../actions/manager";
|
|
5
5
|
export declare const canChangeStrokeColor: (appState: UIAppState, targetElements: ExcalidrawElement[]) => boolean;
|
|
6
6
|
export declare const canChangeBackgroundColor: (appState: UIAppState, targetElements: ExcalidrawElement[]) => boolean;
|
|
7
7
|
export declare const SelectedShapeActions: ({ appState, elementsMap, renderAction, app, }: {
|
|
@@ -10,9 +10,23 @@ export declare const SelectedShapeActions: ({ appState, elementsMap, renderActio
|
|
|
10
10
|
renderAction: ActionManager["renderAction"];
|
|
11
11
|
app: AppClassProperties;
|
|
12
12
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
-
export declare const
|
|
14
|
-
|
|
13
|
+
export declare const CompactShapeActions: ({ appState, elementsMap, renderAction, app, setAppState, }: {
|
|
14
|
+
appState: UIAppState;
|
|
15
|
+
elementsMap: NonDeletedElementsMap | NonDeletedSceneElementsMap;
|
|
16
|
+
renderAction: ActionManager["renderAction"];
|
|
17
|
+
app: AppClassProperties;
|
|
18
|
+
setAppState: React.Component<any, AppState>["setState"];
|
|
19
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare const MobileShapeActions: ({ appState, elementsMap, renderAction, app, setAppState, }: {
|
|
15
21
|
appState: UIAppState;
|
|
22
|
+
elementsMap: NonDeletedElementsMap | NonDeletedSceneElementsMap;
|
|
23
|
+
renderAction: ActionManager["renderAction"];
|
|
24
|
+
app: AppClassProperties;
|
|
25
|
+
setAppState: React.Component<any, AppState>["setState"];
|
|
26
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
export declare const ShapesSwitcher: ({ activeTool, setAppState, app, UIOptions, }: {
|
|
28
|
+
activeTool: UIAppState["activeTool"];
|
|
29
|
+
setAppState: React.Component<any, AppState>["setState"];
|
|
16
30
|
app: AppClassProperties;
|
|
17
31
|
UIOptions: AppProps["UIOptions"];
|
|
18
32
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -28,7 +42,3 @@ export declare const ExitZenModeAction: ({ actionManager, showExitZenModeBtn, }:
|
|
|
28
42
|
actionManager: ActionManager;
|
|
29
43
|
showExitZenModeBtn: boolean;
|
|
30
44
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
31
|
-
export declare const FinalizeAction: ({ renderAction, className, }: {
|
|
32
|
-
renderAction: ActionManager["renderAction"];
|
|
33
|
-
className?: string | undefined;
|
|
34
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type
|
|
2
|
+
import { type EXPORT_IMAGE_TYPES, Emitter } from "@excalidraw/common";
|
|
3
|
+
import { LinearElementEditor, FlowChartCreator, Scene, Store, type ElementUpdate, StoreDelta, type ApplyToOptions } from "@excalidraw/element";
|
|
4
|
+
import type { ExcalidrawElement, NonDeleted, NonDeletedExcalidrawElement, ExcalidrawFrameLikeElement, ExcalidrawIframeElement, ExcalidrawEmbeddableElement, Ordered, SceneElementsMap } from "@excalidraw/element/types";
|
|
5
|
+
import type { Mutable } from "@excalidraw/common/utility-types";
|
|
3
6
|
import { ActionManager } from "../actions/manager";
|
|
4
|
-
import
|
|
5
|
-
import { type EXPORT_IMAGE_TYPES } from "../constants";
|
|
6
|
-
import type { ExportedElements } from "../data";
|
|
7
|
-
import { LinearElementEditor } from "../element/linearElementEditor";
|
|
8
|
-
import type { ExcalidrawElement, NonDeleted, InitializedExcalidrawImageElement, ExcalidrawImageElement, NonDeletedExcalidrawElement, ExcalidrawFrameLikeElement, ExcalidrawIframeElement, ExcalidrawEmbeddableElement, Ordered } from "../element/types";
|
|
7
|
+
import { AnimationFrameHandler } from "../animation-frame-handler";
|
|
9
8
|
import { History } from "../history";
|
|
10
|
-
import Scene from "../scene/Scene";
|
|
11
|
-
import type { AppClassProperties, AppProps, AppState, ExcalidrawImperativeAPI, BinaryFiles, LibraryItems, SceneData, Device, FrameNameBoundsCache, SidebarName, SidebarTabName, ToolType, OnUserFollowedPayload, GenerateDiagramToCode, NullableGridSize, Offsets } from "../types";
|
|
12
|
-
import type { FileSystemHandle } from "../data/filesystem";
|
|
13
9
|
import { Fonts } from "../fonts";
|
|
10
|
+
import { type WritableAtom } from "../editor-jotai";
|
|
14
11
|
import { Renderer } from "../scene/Renderer";
|
|
15
|
-
import { Emitter } from "../emitter";
|
|
16
|
-
import { Store } from "../store";
|
|
17
|
-
import { AnimationFrameHandler } from "../animation-frame-handler";
|
|
18
|
-
import { AnimatedTrail } from "../animated-trail";
|
|
19
12
|
import { LaserTrails } from "../laser-trails";
|
|
20
|
-
import {
|
|
13
|
+
import { LassoTrail } from "../lasso";
|
|
14
|
+
import { EraserTrail } from "../eraser";
|
|
15
|
+
import type { ExportedElements } from "../data";
|
|
16
|
+
import type { FileSystemHandle } from "../data/filesystem";
|
|
17
|
+
import type { AppClassProperties, AppProps, AppState, ExcalidrawImperativeAPI, BinaryFiles, LibraryItems, SceneData, Device, FrameNameBoundsCache, SidebarName, SidebarTabName, ToolType, OnUserFollowedPayload, GenerateDiagramToCode, NullableGridSize, Offsets } from "../types";
|
|
18
|
+
import type { RoughCanvas } from "roughjs/bin/canvas";
|
|
19
|
+
import type { ActionResult } from "../actions/types";
|
|
21
20
|
export declare const ExcalidrawContainerContext: React.Context<{
|
|
22
21
|
container: HTMLDivElement | null;
|
|
23
22
|
id: string | null;
|
|
@@ -79,6 +78,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
79
78
|
/** embeds that have been inserted to DOM (as a perf optim, we don't want to
|
|
80
79
|
* insert to DOM before user initially scrolls to them) */
|
|
81
80
|
private initializedEmbeds;
|
|
81
|
+
private handleToastClose;
|
|
82
82
|
private elementsPendingErasure;
|
|
83
83
|
flowChartCreator: FlowChartCreator;
|
|
84
84
|
private flowChartNavigator;
|
|
@@ -96,11 +96,13 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
96
96
|
};
|
|
97
97
|
animationFrameHandler: AnimationFrameHandler;
|
|
98
98
|
laserTrails: LaserTrails;
|
|
99
|
-
eraserTrail:
|
|
99
|
+
eraserTrail: EraserTrail;
|
|
100
|
+
lassoTrail: LassoTrail;
|
|
100
101
|
onChangeEmitter: Emitter<[elements: readonly ExcalidrawElement[], appState: AppState, files: BinaryFiles]>;
|
|
101
102
|
onPointerDownEmitter: Emitter<[activeTool: {
|
|
102
103
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
103
104
|
locked: boolean;
|
|
105
|
+
fromSelection: boolean;
|
|
104
106
|
} & import("../types").ActiveTool, pointerDownState: Readonly<{
|
|
105
107
|
origin: Readonly<{
|
|
106
108
|
x: number;
|
|
@@ -121,7 +123,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
121
123
|
};
|
|
122
124
|
originalElements: Map<string, NonDeleted<ExcalidrawElement>>;
|
|
123
125
|
resize: {
|
|
124
|
-
handleType: import("
|
|
126
|
+
handleType: import("@excalidraw/element").MaybeTransformHandleType;
|
|
125
127
|
isResizing: boolean;
|
|
126
128
|
offset: {
|
|
127
129
|
x: number;
|
|
@@ -134,7 +136,10 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
134
136
|
};
|
|
135
137
|
};
|
|
136
138
|
hit: {
|
|
137
|
-
element: NonDeleted<ExcalidrawElement> | null;
|
|
139
|
+
element: NonDeleted<ExcalidrawElement> | null; /**
|
|
140
|
+
* Returns gridSize taking into account `gridModeEnabled`.
|
|
141
|
+
* If disabled, returns null.
|
|
142
|
+
*/
|
|
138
143
|
allHitElements: NonDeleted<ExcalidrawElement>[];
|
|
139
144
|
wasAddedToSelection: boolean;
|
|
140
145
|
hasBeenDuplicated: boolean;
|
|
@@ -147,6 +152,11 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
147
152
|
x: number;
|
|
148
153
|
y: number;
|
|
149
154
|
} | null;
|
|
155
|
+
origin: {
|
|
156
|
+
x: number;
|
|
157
|
+
y: number;
|
|
158
|
+
};
|
|
159
|
+
blockDragging: boolean;
|
|
150
160
|
};
|
|
151
161
|
eventListeners: {
|
|
152
162
|
onMove: {
|
|
@@ -165,6 +175,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
165
175
|
onPointerUpEmitter: Emitter<[activeTool: {
|
|
166
176
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
167
177
|
locked: boolean;
|
|
178
|
+
fromSelection: boolean;
|
|
168
179
|
} & import("../types").ActiveTool, pointerDownState: Readonly<{
|
|
169
180
|
origin: Readonly<{
|
|
170
181
|
x: number;
|
|
@@ -185,7 +196,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
185
196
|
};
|
|
186
197
|
originalElements: Map<string, NonDeleted<ExcalidrawElement>>;
|
|
187
198
|
resize: {
|
|
188
|
-
handleType: import("
|
|
199
|
+
handleType: import("@excalidraw/element").MaybeTransformHandleType;
|
|
189
200
|
isResizing: boolean;
|
|
190
201
|
offset: {
|
|
191
202
|
x: number;
|
|
@@ -198,7 +209,10 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
198
209
|
};
|
|
199
210
|
};
|
|
200
211
|
hit: {
|
|
201
|
-
element: NonDeleted<ExcalidrawElement> | null;
|
|
212
|
+
element: NonDeleted<ExcalidrawElement> | null; /**
|
|
213
|
+
* Returns gridSize taking into account `gridModeEnabled`.
|
|
214
|
+
* If disabled, returns null.
|
|
215
|
+
*/
|
|
202
216
|
allHitElements: NonDeleted<ExcalidrawElement>[];
|
|
203
217
|
wasAddedToSelection: boolean;
|
|
204
218
|
hasBeenDuplicated: boolean;
|
|
@@ -211,6 +225,11 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
211
225
|
x: number;
|
|
212
226
|
y: number;
|
|
213
227
|
} | null;
|
|
228
|
+
origin: {
|
|
229
|
+
x: number;
|
|
230
|
+
y: number;
|
|
231
|
+
};
|
|
232
|
+
blockDragging: boolean;
|
|
214
233
|
};
|
|
215
234
|
eventListeners: {
|
|
216
235
|
onMove: {
|
|
@@ -233,6 +252,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
233
252
|
missingPointerEventCleanupEmitter: Emitter<[event: PointerEvent | null]>;
|
|
234
253
|
onRemoveEventListenersEmitter: Emitter<[]>;
|
|
235
254
|
constructor(props: AppProps);
|
|
255
|
+
updateEditorAtom: <Value, Args extends unknown[], Result>(atom: WritableAtom<Value, Args, Result>, ...args: Args) => Result;
|
|
236
256
|
private onWindowMessage;
|
|
237
257
|
private cacheEmbeddableRef;
|
|
238
258
|
/**
|
|
@@ -253,7 +273,8 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
253
273
|
private toggleOverscrollBehavior;
|
|
254
274
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
255
275
|
focusContainer: AppClassProperties["focusContainer"];
|
|
256
|
-
getSceneElementsIncludingDeleted: () => readonly import("
|
|
276
|
+
getSceneElementsIncludingDeleted: () => readonly import("@excalidraw/element/types").OrderedExcalidrawElement[];
|
|
277
|
+
getSceneElementsMapIncludingDeleted: () => Map<string, Ordered<ExcalidrawElement>> & import("@excalidraw/common/utility-types").MakeBrand<"SceneElementsMap">;
|
|
257
278
|
getSceneElements: () => readonly Ordered<NonDeletedExcalidrawElement>[];
|
|
258
279
|
onInsertElements: (elements: readonly ExcalidrawElement[]) => void;
|
|
259
280
|
onExportImage: (type: keyof typeof EXPORT_IMAGE_TYPES, elements: ExportedElements, opts: {
|
|
@@ -285,6 +306,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
285
306
|
private resetScene;
|
|
286
307
|
private initializeScene;
|
|
287
308
|
private isMobileBreakpoint;
|
|
309
|
+
private isTabletBreakpoint;
|
|
288
310
|
private refreshViewportBreakpoints;
|
|
289
311
|
private refreshEditorBreakpoints;
|
|
290
312
|
private clearImageShapeCache;
|
|
@@ -303,6 +325,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
303
325
|
private static resetTapTwice;
|
|
304
326
|
private onTouchStart;
|
|
305
327
|
private onTouchEnd;
|
|
328
|
+
private insertClipboardContent;
|
|
306
329
|
pasteFromClipboard: (event: ClipboardEvent) => Promise<void>;
|
|
307
330
|
addElementsFromPasteOrLibrary: (opts: {
|
|
308
331
|
elements: readonly ExcalidrawElement[];
|
|
@@ -384,6 +407,8 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
384
407
|
*/
|
|
385
408
|
captureUpdate?: SceneData["captureUpdate"];
|
|
386
409
|
}) => void;
|
|
410
|
+
applyDeltas: (deltas: StoreDelta[], options?: ApplyToOptions) => [SceneElementsMap, AppState, boolean];
|
|
411
|
+
mutateElement: <TElement extends Mutable<ExcalidrawElement>>(element: TElement, updates: ElementUpdate<TElement>, informMutation?: boolean) => TElement;
|
|
387
412
|
private triggerRender;
|
|
388
413
|
/**
|
|
389
414
|
* @returns whether the menu was toggled on or off
|
|
@@ -398,17 +423,15 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
398
423
|
private onKeyDown;
|
|
399
424
|
private onKeyUp;
|
|
400
425
|
private isToolSupported;
|
|
401
|
-
setActiveTool: (tool: (
|
|
402
|
-
type:
|
|
426
|
+
setActiveTool: (tool: ({
|
|
427
|
+
type: ToolType;
|
|
403
428
|
} | {
|
|
404
|
-
type: Extract<ToolType, "image">;
|
|
405
|
-
insertOnCanvasDirectly?: boolean;
|
|
406
|
-
}) | {
|
|
407
429
|
type: "custom";
|
|
408
430
|
customType: string;
|
|
409
431
|
}) & {
|
|
410
432
|
locked?: boolean;
|
|
411
|
-
|
|
433
|
+
fromSelection?: boolean;
|
|
434
|
+
}, keepSelection?: boolean) => void;
|
|
412
435
|
setOpenDialog: (dialogType: AppState["openDialog"]) => void;
|
|
413
436
|
private setCursor;
|
|
414
437
|
private resetCursor;
|
|
@@ -428,7 +451,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
428
451
|
private getTextElementAtPosition;
|
|
429
452
|
private getElementAtPosition;
|
|
430
453
|
private getElementsAtPosition;
|
|
431
|
-
|
|
454
|
+
getElementHitThreshold(element: ExcalidrawElement): number;
|
|
432
455
|
private hitElement;
|
|
433
456
|
private getTextBindableContainerAtPosition;
|
|
434
457
|
private startTextEditing;
|
|
@@ -476,7 +499,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
476
499
|
sceneY: number;
|
|
477
500
|
link: string;
|
|
478
501
|
}) => NonDeleted<ExcalidrawEmbeddableElement> | undefined;
|
|
479
|
-
private
|
|
502
|
+
private newImagePlaceholder;
|
|
480
503
|
private handleLinearElementOnPointerDown;
|
|
481
504
|
private getCurrentItemRoundness;
|
|
482
505
|
private createGenericElementOnPointerDown;
|
|
@@ -492,12 +515,13 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
492
515
|
private eraseElements;
|
|
493
516
|
private initializeImage;
|
|
494
517
|
/**
|
|
495
|
-
*
|
|
518
|
+
* use during async image initialization,
|
|
519
|
+
* when the placeholder image could have been modified in the meantime,
|
|
520
|
+
* and when you don't want to loose those modifications
|
|
496
521
|
*/
|
|
497
|
-
|
|
498
|
-
private
|
|
499
|
-
private
|
|
500
|
-
initializeImageDimensions: (imageElement: ExcalidrawImageElement, forceNaturalSize?: boolean) => void;
|
|
522
|
+
private getLatestInitializedImageElement;
|
|
523
|
+
private onImageToolbarButtonClick;
|
|
524
|
+
private getImageNaturalDimensions;
|
|
501
525
|
/** updates image cache, refreshing updated elements and/or setting status
|
|
502
526
|
to error for images that fail during <img> element creation */
|
|
503
527
|
private updateImageCache;
|
|
@@ -508,9 +532,9 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
508
532
|
private scheduleImageRefresh;
|
|
509
533
|
private updateBindingEnabledOnPointerMove;
|
|
510
534
|
private maybeSuggestBindingAtCursor;
|
|
511
|
-
private maybeSuggestBindingsForLinearElementAtCoords;
|
|
512
535
|
private clearSelection;
|
|
513
536
|
private handleInteractiveCanvasRef;
|
|
537
|
+
private insertImages;
|
|
514
538
|
private handleAppOnDrop;
|
|
515
539
|
loadFileToCanvas: (file: File, fileHandle: FileSystemHandle | null) => Promise<void>;
|
|
516
540
|
private handleCanvasContextMenu;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { JSX } from "react";
|
|
2
1
|
import "./ButtonIcon.scss";
|
|
2
|
+
import type { JSX } from "react";
|
|
3
3
|
interface ButtonIconProps {
|
|
4
4
|
icon: JSX.Element;
|
|
5
5
|
title: string;
|
|
@@ -10,6 +10,7 @@ interface ButtonIconProps {
|
|
|
10
10
|
/** include standalone style (could interfere with parent styles) */
|
|
11
11
|
standalone?: boolean;
|
|
12
12
|
onClick: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
|
|
13
|
+
style?: React.CSSProperties;
|
|
13
14
|
}
|
|
14
15
|
export declare const ButtonIcon: import("react").ForwardRefExoticComponent<ButtonIconProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
15
16
|
export {};
|
|
@@ -4,6 +4,7 @@ interface ColorInputProps {
|
|
|
4
4
|
onChange: (color: string) => void;
|
|
5
5
|
label: string;
|
|
6
6
|
colorPickerType: ColorPickerType;
|
|
7
|
+
placeholder?: string;
|
|
7
8
|
}
|
|
8
|
-
export declare const ColorInput: ({ color, onChange, label, colorPickerType, }: ColorInputProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare const ColorInput: ({ color, onChange, label, colorPickerType, placeholder, }: ColorInputProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
10
|
export {};
|