@excalidraw/excalidraw 0.18.0-817d8c5 → 0.18.0-880dbb25e
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-CRKRRBMD.js +5677 -0
- package/dist/dev/chunk-CRKRRBMD.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-QF5FRM6O.js} +16 -5
- package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
- package/dist/dev/data/{image-V26YBSDB.js → image-IWGLHPIX.js} +3 -3
- package/dist/dev/index.css +3021 -2942
- package/dist/dev/index.css.map +3 -3
- package/dist/dev/index.js +30933 -24345
- package/dist/dev/index.js.map +4 -4
- package/dist/dev/locales/{en-OZCJJ2HN.js → en-SMAPCEOQ.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-HHV2PJKY.js +4 -0
- package/dist/prod/chunk-I4UNSFV6.js +12 -0
- package/dist/prod/chunk-LS7FJGPW.js +86 -0
- package/dist/prod/data/image-4SM4COIL.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-TYY6KWIJ.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 +29 -8
- 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 +22 -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 +19 -6
- 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} +80 -42
- 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 +57 -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/{excalidraw/renderer → element/src}/renderElement.d.ts +3 -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 +236 -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 +97 -106
- package/dist/types/excalidraw/actions/actionAlign.d.ts +7 -7
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +70 -76
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +627 -490
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +206 -222
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +34 -37
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +102 -110
- 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 +37 -40
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +82 -90
- package/dist/types/excalidraw/{element/embeddable.d.ts → actions/actionEmbeddable.d.ts} +34 -47
- package/dist/types/excalidraw/actions/actionExport.d.ts +351 -378
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +100 -65
- package/dist/types/excalidraw/actions/actionFlip.d.ts +3 -3
- package/dist/types/excalidraw/actions/actionFrame.d.ts +252 -264
- package/dist/types/excalidraw/actions/actionGroup.d.ts +67 -73
- package/dist/types/excalidraw/actions/actionHistory.d.ts +2 -3
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +561 -40
- package/dist/types/excalidraw/actions/actionLink.d.ts +35 -38
- package/dist/types/excalidraw/actions/actionMenu.d.ts +98 -107
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +65 -71
- package/dist/types/excalidraw/actions/actionProperties.d.ts +469 -506
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +35 -38
- package/dist/types/excalidraw/actions/actionStyles.d.ts +36 -39
- package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +34 -37
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +34 -37
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +33 -208
- package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +33 -37
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +34 -38
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +34 -38
- package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
- package/dist/types/excalidraw/actions/index.d.ts +1 -0
- 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 +38 -28
- package/dist/types/excalidraw/charts.d.ts +1 -1
- package/dist/types/excalidraw/clipboard.d.ts +7 -7
- package/dist/types/excalidraw/components/Actions.d.ts +3 -7
- package/dist/types/excalidraw/components/App.d.ts +46 -29
- 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 +9 -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 +4 -5
- package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +3 -4
- package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +3 -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 +1 -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/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 +1 -1
- package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +3 -3
- package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +1 -1
- 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/Island.d.ts +1 -1
- package/dist/types/excalidraw/components/JSONExportDialog.d.ts +2 -2
- package/dist/types/excalidraw/components/LayerUI.d.ts +3 -3
- 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 +3 -3
- 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 +3 -3
- package/dist/types/excalidraw/components/PasteChartDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -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 -1
- package/dist/types/excalidraw/components/TTDDialog/common.d.ts +1 -1
- package/dist/types/excalidraw/components/TextField.d.ts +1 -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/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 +1 -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 +5 -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 +62 -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 +4 -4
- 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 +3 -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/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 +45 -25
- 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} +1 -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 +25 -10
- 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-IWGLHPIX.js.map} +0 -0
- /package/dist/dev/locales/{en-OZCJJ2HN.js.map → en-SMAPCEOQ.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,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,16 +1,28 @@
|
|
|
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;
|
|
15
27
|
penMode?: boolean | undefined;
|
|
16
28
|
penDetected?: boolean | undefined;
|
|
@@ -20,63 +32,61 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
20
32
|
exportScale?: number | undefined;
|
|
21
33
|
currentItemStrokeColor?: string | undefined;
|
|
22
34
|
currentItemBackgroundColor?: string | undefined;
|
|
23
|
-
currentItemFillStyle?: import("
|
|
35
|
+
currentItemFillStyle?: import("@excalidraw/element/types").FillStyle | undefined;
|
|
24
36
|
currentItemStrokeWidth?: number | undefined;
|
|
25
|
-
currentItemStrokeStyle?: import("
|
|
37
|
+
currentItemStrokeStyle?: import("@excalidraw/element/types").StrokeStyle | undefined;
|
|
26
38
|
currentItemRoughness?: number | undefined;
|
|
27
39
|
currentItemOpacity?: number | undefined;
|
|
28
40
|
currentItemFontFamily?: number | undefined;
|
|
29
41
|
currentItemFontSize?: number | undefined;
|
|
30
42
|
currentItemTextAlign?: string | undefined;
|
|
31
|
-
currentItemStartArrowhead?: import("
|
|
32
|
-
currentItemEndArrowhead?: import("
|
|
33
|
-
currentItemRoundness?: import("
|
|
34
|
-
|
|
35
|
-
scrollX?: number | undefined;
|
|
36
|
-
scrollY?: number | undefined;
|
|
43
|
+
currentItemStartArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
|
|
44
|
+
currentItemEndArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
|
|
45
|
+
currentItemRoundness?: import("@excalidraw/element/types").StrokeRoundness | undefined;
|
|
46
|
+
currentItemArrowType?: "round" | "sharp" | "elbow" | undefined;
|
|
37
47
|
cursorButton?: "up" | "down" | undefined;
|
|
38
48
|
scrolledOutside?: boolean | undefined;
|
|
39
|
-
zoom?: Readonly<{
|
|
40
|
-
value: NormalizedZoomValue;
|
|
41
|
-
}> | undefined;
|
|
42
49
|
openMenu?: "canvas" | "shape" | null | undefined;
|
|
43
50
|
openSidebar?: {
|
|
44
51
|
name: string;
|
|
45
52
|
tab?: string | undefined;
|
|
46
53
|
} | null | undefined;
|
|
47
54
|
defaultSidebarDockedPreference?: boolean | undefined;
|
|
48
|
-
lastPointerDownWith?: import("
|
|
49
|
-
selectedElementIds?: Readonly<{
|
|
50
|
-
[id: string]: true;
|
|
51
|
-
}> | undefined;
|
|
55
|
+
lastPointerDownWith?: import("@excalidraw/element/types").PointerType | undefined;
|
|
52
56
|
previousSelectedElementIds?: {
|
|
53
57
|
[id: string]: true;
|
|
54
58
|
} | undefined;
|
|
55
59
|
shouldCacheIgnoreZoom?: boolean | undefined;
|
|
56
60
|
gridSize?: number | undefined;
|
|
57
61
|
gridStep?: number | undefined;
|
|
58
|
-
|
|
59
|
-
[groupId: string]: boolean;
|
|
60
|
-
} | undefined;
|
|
61
|
-
editingGroupId?: string | null | undefined;
|
|
62
|
+
gridModeEnabled?: boolean | undefined;
|
|
62
63
|
stats?: {
|
|
63
64
|
open: boolean;
|
|
64
65
|
panels: number;
|
|
65
66
|
} | undefined;
|
|
66
|
-
currentChartType?: import("
|
|
67
|
-
|
|
67
|
+
currentChartType?: import("@excalidraw/element/types").ChartType | undefined;
|
|
68
|
+
objectsSnapModeEnabled?: boolean | undefined;
|
|
69
|
+
lockedMultiSelections?: {
|
|
70
|
+
[groupId: string]: true;
|
|
71
|
+
} | undefined;
|
|
68
72
|
};
|
|
69
73
|
export declare const cleanAppStateForExport: (appState: Partial<AppState>) => {
|
|
70
|
-
gridModeEnabled?: boolean | undefined;
|
|
71
74
|
viewBackgroundColor?: string | undefined;
|
|
72
75
|
gridSize?: number | undefined;
|
|
73
76
|
gridStep?: number | undefined;
|
|
77
|
+
gridModeEnabled?: boolean | undefined;
|
|
78
|
+
lockedMultiSelections?: {
|
|
79
|
+
[groupId: string]: true;
|
|
80
|
+
} | undefined;
|
|
74
81
|
};
|
|
75
82
|
export declare const clearAppStateForDatabase: (appState: Partial<AppState>) => {
|
|
76
|
-
gridModeEnabled?: boolean | undefined;
|
|
77
83
|
viewBackgroundColor?: string | undefined;
|
|
78
84
|
gridSize?: number | undefined;
|
|
79
85
|
gridStep?: number | undefined;
|
|
86
|
+
gridModeEnabled?: boolean | undefined;
|
|
87
|
+
lockedMultiSelections?: {
|
|
88
|
+
[groupId: string]: true;
|
|
89
|
+
} | undefined;
|
|
80
90
|
};
|
|
81
91
|
export declare const isEraserActive: ({ activeTool, }: {
|
|
82
92
|
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,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type {
|
|
1
|
+
import { ALLOWED_PASTE_MIME_TYPES } from "@excalidraw/common";
|
|
2
|
+
import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
3
3
|
import type { Spreadsheet } from "./charts";
|
|
4
|
-
import {
|
|
4
|
+
import type { BinaryFiles } from "./types";
|
|
5
5
|
export type PastedMixedContent = {
|
|
6
6
|
type: "text" | "imageUrl";
|
|
7
7
|
value: string;
|
|
@@ -21,6 +21,8 @@ export declare const probablySupportsClipboardWriteText: boolean;
|
|
|
21
21
|
export declare const probablySupportsClipboardBlob: boolean;
|
|
22
22
|
export declare const createPasteEvent: ({ types, files, }: {
|
|
23
23
|
types?: {
|
|
24
|
+
"text/plain"?: string | File | undefined;
|
|
25
|
+
"text/html"?: string | File | undefined;
|
|
24
26
|
"image/svg+xml"?: string | File | undefined;
|
|
25
27
|
"image/png"?: string | File | undefined;
|
|
26
28
|
"image/jpeg"?: string | File | undefined;
|
|
@@ -30,8 +32,6 @@ export declare const createPasteEvent: ({ types, files, }: {
|
|
|
30
32
|
"image/x-icon"?: string | File | undefined;
|
|
31
33
|
"image/avif"?: string | File | undefined;
|
|
32
34
|
"image/jfif"?: string | File | undefined;
|
|
33
|
-
"text/plain"?: string | File | undefined;
|
|
34
|
-
"text/html"?: string | File | undefined;
|
|
35
35
|
} | undefined;
|
|
36
36
|
files?: File[] | undefined;
|
|
37
37
|
}) => ClipboardEvent;
|
|
@@ -45,6 +45,8 @@ export declare const copyToClipboard: (elements: readonly NonDeletedExcalidrawEl
|
|
|
45
45
|
* Will prompt user for permission if not granted.
|
|
46
46
|
*/
|
|
47
47
|
export declare const readSystemClipboard: () => Promise<{
|
|
48
|
+
"text/plain"?: string | File | undefined;
|
|
49
|
+
"text/html"?: string | File | undefined;
|
|
48
50
|
"image/svg+xml"?: string | File | undefined;
|
|
49
51
|
"image/png"?: string | File | undefined;
|
|
50
52
|
"image/jpeg"?: string | File | undefined;
|
|
@@ -54,8 +56,6 @@ export declare const readSystemClipboard: () => Promise<{
|
|
|
54
56
|
"image/x-icon"?: string | File | undefined;
|
|
55
57
|
"image/avif"?: string | File | undefined;
|
|
56
58
|
"image/jfif"?: string | File | undefined;
|
|
57
|
-
"text/plain"?: string | File | undefined;
|
|
58
|
-
"text/html"?: string | File | undefined;
|
|
59
59
|
}>;
|
|
60
60
|
/**
|
|
61
61
|
* Attempts to parse clipboard event.
|
|
@@ -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 } 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, }: {
|
|
@@ -28,7 +28,3 @@ export declare const ExitZenModeAction: ({ actionManager, showExitZenModeBtn, }:
|
|
|
28
28
|
actionManager: ActionManager;
|
|
29
29
|
showExitZenModeBtn: boolean;
|
|
30
30
|
}) => 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, OrderedExcalidrawElement, 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;
|
|
@@ -147,6 +149,10 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
147
149
|
x: number;
|
|
148
150
|
y: number;
|
|
149
151
|
} | null;
|
|
152
|
+
origin: {
|
|
153
|
+
x: number;
|
|
154
|
+
y: number;
|
|
155
|
+
};
|
|
150
156
|
};
|
|
151
157
|
eventListeners: {
|
|
152
158
|
onMove: {
|
|
@@ -165,6 +171,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
165
171
|
onPointerUpEmitter: Emitter<[activeTool: {
|
|
166
172
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
167
173
|
locked: boolean;
|
|
174
|
+
fromSelection: boolean;
|
|
168
175
|
} & import("../types").ActiveTool, pointerDownState: Readonly<{
|
|
169
176
|
origin: Readonly<{
|
|
170
177
|
x: number;
|
|
@@ -185,7 +192,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
185
192
|
};
|
|
186
193
|
originalElements: Map<string, NonDeleted<ExcalidrawElement>>;
|
|
187
194
|
resize: {
|
|
188
|
-
handleType: import("
|
|
195
|
+
handleType: import("@excalidraw/element").MaybeTransformHandleType;
|
|
189
196
|
isResizing: boolean;
|
|
190
197
|
offset: {
|
|
191
198
|
x: number;
|
|
@@ -211,6 +218,10 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
211
218
|
x: number;
|
|
212
219
|
y: number;
|
|
213
220
|
} | null;
|
|
221
|
+
origin: {
|
|
222
|
+
x: number;
|
|
223
|
+
y: number;
|
|
224
|
+
};
|
|
214
225
|
};
|
|
215
226
|
eventListeners: {
|
|
216
227
|
onMove: {
|
|
@@ -233,6 +244,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
233
244
|
missingPointerEventCleanupEmitter: Emitter<[event: PointerEvent | null]>;
|
|
234
245
|
onRemoveEventListenersEmitter: Emitter<[]>;
|
|
235
246
|
constructor(props: AppProps);
|
|
247
|
+
updateEditorAtom: <Value, Args extends unknown[], Result>(atom: WritableAtom<Value, Args, Result>, ...args: Args) => Result;
|
|
236
248
|
private onWindowMessage;
|
|
237
249
|
private cacheEmbeddableRef;
|
|
238
250
|
/**
|
|
@@ -253,7 +265,8 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
253
265
|
private toggleOverscrollBehavior;
|
|
254
266
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
255
267
|
focusContainer: AppClassProperties["focusContainer"];
|
|
256
|
-
getSceneElementsIncludingDeleted: () => readonly
|
|
268
|
+
getSceneElementsIncludingDeleted: () => readonly OrderedExcalidrawElement[];
|
|
269
|
+
getSceneElementsMapIncludingDeleted: () => Map<string, Ordered<ExcalidrawElement>> & import("@excalidraw/common/utility-types").MakeBrand<"SceneElementsMap">;
|
|
257
270
|
getSceneElements: () => readonly Ordered<NonDeletedExcalidrawElement>[];
|
|
258
271
|
onInsertElements: (elements: readonly ExcalidrawElement[]) => void;
|
|
259
272
|
onExportImage: (type: keyof typeof EXPORT_IMAGE_TYPES, elements: ExportedElements, opts: {
|
|
@@ -384,6 +397,8 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
384
397
|
*/
|
|
385
398
|
captureUpdate?: SceneData["captureUpdate"];
|
|
386
399
|
}) => void;
|
|
400
|
+
applyDeltas: (deltas: StoreDelta[], options?: ApplyToOptions) => [SceneElementsMap, AppState, boolean];
|
|
401
|
+
mutateElement: <TElement extends Mutable<ExcalidrawElement>>(element: TElement, updates: ElementUpdate<TElement>, informMutation?: boolean) => TElement;
|
|
387
402
|
private triggerRender;
|
|
388
403
|
/**
|
|
389
404
|
* @returns whether the menu was toggled on or off
|
|
@@ -398,17 +413,15 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
398
413
|
private onKeyDown;
|
|
399
414
|
private onKeyUp;
|
|
400
415
|
private isToolSupported;
|
|
401
|
-
setActiveTool: (tool: (
|
|
402
|
-
type:
|
|
416
|
+
setActiveTool: (tool: ({
|
|
417
|
+
type: ToolType;
|
|
403
418
|
} | {
|
|
404
|
-
type: Extract<ToolType, "image">;
|
|
405
|
-
insertOnCanvasDirectly?: boolean;
|
|
406
|
-
}) | {
|
|
407
419
|
type: "custom";
|
|
408
420
|
customType: string;
|
|
409
421
|
}) & {
|
|
410
422
|
locked?: boolean;
|
|
411
|
-
|
|
423
|
+
fromSelection?: boolean;
|
|
424
|
+
}, keepSelection?: boolean) => void;
|
|
412
425
|
setOpenDialog: (dialogType: AppState["openDialog"]) => void;
|
|
413
426
|
private setCursor;
|
|
414
427
|
private resetCursor;
|
|
@@ -428,7 +441,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
428
441
|
private getTextElementAtPosition;
|
|
429
442
|
private getElementAtPosition;
|
|
430
443
|
private getElementsAtPosition;
|
|
431
|
-
|
|
444
|
+
getElementHitThreshold(element: ExcalidrawElement): number;
|
|
432
445
|
private hitElement;
|
|
433
446
|
private getTextBindableContainerAtPosition;
|
|
434
447
|
private startTextEditing;
|
|
@@ -491,13 +504,18 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
491
504
|
private restoreReadyToEraseElements;
|
|
492
505
|
private eraseElements;
|
|
493
506
|
private initializeImage;
|
|
507
|
+
/**
|
|
508
|
+
* use during async image initialization,
|
|
509
|
+
* when the placeholder image could have been modified in the meantime,
|
|
510
|
+
* and when you don't want to loose those modifications
|
|
511
|
+
*/
|
|
512
|
+
private getLatestInitializedImageElement;
|
|
494
513
|
/**
|
|
495
514
|
* inserts image into elements array and rerenders
|
|
496
515
|
*/
|
|
497
|
-
insertImageElement
|
|
498
|
-
private setImagePreviewCursor;
|
|
516
|
+
private insertImageElement;
|
|
499
517
|
private onImageAction;
|
|
500
|
-
|
|
518
|
+
private getImageNaturalDimensions;
|
|
501
519
|
/** updates image cache, refreshing updated elements and/or setting status
|
|
502
520
|
to error for images that fail during <img> element creation */
|
|
503
521
|
private updateImageCache;
|
|
@@ -508,7 +526,6 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
508
526
|
private scheduleImageRefresh;
|
|
509
527
|
private updateBindingEnabledOnPointerMove;
|
|
510
528
|
private maybeSuggestBindingAtCursor;
|
|
511
|
-
private maybeSuggestBindingsForLinearElementAtCoords;
|
|
512
529
|
private clearSelection;
|
|
513
530
|
private handleInteractiveCanvasRef;
|
|
514
531
|
private handleAppOnDrop;
|
|
@@ -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 {};
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
3
|
-
import type { ColorPickerType } from "./colorPickerUtils";
|
|
4
|
-
import type { ColorTuple, ColorPaletteCustom } from "../../colors";
|
|
1
|
+
import type { ColorTuple, ColorPaletteCustom } from "@excalidraw/common";
|
|
2
|
+
import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
5
3
|
import "./ColorPicker.scss";
|
|
4
|
+
import type { ColorPickerType } from "./colorPickerUtils";
|
|
5
|
+
import type { AppState } from "../../types";
|
|
6
6
|
export declare const getColor: (color: string) => string | null;
|
|
7
7
|
interface ColorPickerProps {
|
|
8
8
|
type: ColorPickerType;
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* null indicates no color should be displayed as active
|
|
11
|
+
* (e.g. when multiple shapes selected with different colors)
|
|
12
|
+
*/
|
|
13
|
+
color: string | null;
|
|
10
14
|
onChange: (color: string) => void;
|
|
11
15
|
label: string;
|
|
12
16
|
elements: readonly ExcalidrawElement[];
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
interface HotkeyLabelProps {
|
|
2
2
|
color: string;
|
|
3
3
|
keyLabel: string | number;
|
|
4
|
-
isCustomColor?: boolean;
|
|
5
4
|
isShade?: boolean;
|
|
6
5
|
}
|
|
7
|
-
declare const HotkeyLabel: ({ color, keyLabel,
|
|
6
|
+
declare const HotkeyLabel: ({ color, keyLabel, isShade, }: HotkeyLabelProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
7
|
export default HotkeyLabel;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type { ExcalidrawElement } from "
|
|
2
|
+
import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
3
|
+
import type { ColorPaletteCustom } from "@excalidraw/common";
|
|
3
4
|
import type { ColorPickerType } from "./colorPickerUtils";
|
|
4
|
-
import type { ColorPaletteCustom } from "../../colors";
|
|
5
5
|
interface PickerProps {
|
|
6
|
-
color: string;
|
|
6
|
+
color: string | null;
|
|
7
7
|
onChange: (color: string) => void;
|
|
8
|
-
label: string;
|
|
9
8
|
type: ColorPickerType;
|
|
10
9
|
elements: readonly ExcalidrawElement[];
|
|
11
10
|
palette: ColorPaletteCustom;
|
|
@@ -14,5 +13,5 @@ interface PickerProps {
|
|
|
14
13
|
onEyeDropperToggle: (force?: boolean) => void;
|
|
15
14
|
onEscape: (event: React.KeyboardEvent | KeyboardEvent) => void;
|
|
16
15
|
}
|
|
17
|
-
export declare const Picker:
|
|
16
|
+
export declare const Picker: React.ForwardRefExoticComponent<PickerProps & React.RefAttributes<unknown>>;
|
|
18
17
|
export {};
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import type { ColorPaletteCustom } from "
|
|
1
|
+
import type { ColorPaletteCustom } from "@excalidraw/common";
|
|
2
2
|
interface PickerColorListProps {
|
|
3
3
|
palette: ColorPaletteCustom;
|
|
4
|
-
color: string;
|
|
4
|
+
color: string | null;
|
|
5
5
|
onChange: (color: string) => void;
|
|
6
|
-
label: string;
|
|
7
6
|
activeShade: number;
|
|
8
7
|
}
|
|
9
|
-
declare const PickerColorList: ({ palette, color, onChange,
|
|
8
|
+
declare const PickerColorList: ({ palette, color, onChange, activeShade, }: PickerColorListProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
9
|
export default PickerColorList;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { ColorPaletteCustom } from "
|
|
1
|
+
import type { ColorPaletteCustom } from "@excalidraw/common";
|
|
2
2
|
interface ShadeListProps {
|
|
3
|
-
|
|
3
|
+
color: string | null;
|
|
4
4
|
onChange: (color: string) => void;
|
|
5
5
|
palette: ColorPaletteCustom;
|
|
6
6
|
}
|
|
7
|
-
export declare const ShadeList: ({
|
|
7
|
+
export declare const ShadeList: ({ color, onChange, palette }: ShadeListProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
8
|
export {};
|
|
@@ -2,7 +2,7 @@ import type { ColorPickerType } from "./colorPickerUtils";
|
|
|
2
2
|
interface TopPicksProps {
|
|
3
3
|
onChange: (color: string) => void;
|
|
4
4
|
type: ColorPickerType;
|
|
5
|
-
activeColor: string;
|
|
5
|
+
activeColor: string | null;
|
|
6
6
|
topPicks?: readonly string[];
|
|
7
7
|
}
|
|
8
8
|
export declare const TopPicks: ({ onChange, type, activeColor, topPicks, }: TopPicksProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { ExcalidrawElement } from "
|
|
2
|
-
import type { ColorPickerColor, ColorPaletteCustom } from "
|
|
1
|
+
import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
+
import type { ColorPickerColor, ColorPaletteCustom } from "@excalidraw/common";
|
|
3
3
|
export declare const getColorNameAndShadeFromColor: ({ palette, color, }: {
|
|
4
4
|
palette: ColorPaletteCustom;
|
|
5
|
-
color: string;
|
|
5
|
+
color: string | null;
|
|
6
6
|
}) => {
|
|
7
7
|
colorName: ColorPickerColor;
|
|
8
8
|
shade: number | null;
|
|
@@ -17,5 +17,5 @@ export type ActiveColorPickerSectionAtomType = "custom" | "baseColors" | "shades
|
|
|
17
17
|
export declare const activeColorPickerSectionAtom: import("jotai/vanilla/atom").PrimitiveAtom<ActiveColorPickerSectionAtomType> & {
|
|
18
18
|
init: ActiveColorPickerSectionAtomType;
|
|
19
19
|
};
|
|
20
|
-
export declare const
|
|
20
|
+
export declare const isColorDark: (color: string, threshold?: number) => boolean;
|
|
21
21
|
export type ColorPickerType = "canvasBackground" | "elementBackground" | "elementStroke";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import type { ColorPaletteCustom } from "
|
|
2
|
+
import type { ColorPaletteCustom } from "@excalidraw/common";
|
|
3
3
|
import type { ActiveColorPickerSectionAtomType } from "./colorPickerUtils";
|
|
4
4
|
interface ColorPickerKeyNavHandlerProps {
|
|
5
5
|
event: React.KeyboardEvent;
|
|
6
6
|
activeColorPickerSection: ActiveColorPickerSectionAtomType;
|
|
7
7
|
palette: ColorPaletteCustom;
|
|
8
|
-
color: string;
|
|
8
|
+
color: string | null;
|
|
9
9
|
onChange: (color: string) => void;
|
|
10
10
|
customColors: string[];
|
|
11
11
|
setActiveColorPickerSection: (update: React.SetStateAction<ActiveColorPickerSectionAtomType>) => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { CommandPaletteItem } from "./types";
|
|
2
1
|
import * as defaultItems from "./defaultCommandPaletteItems";
|
|
3
2
|
import "./CommandPalette.scss";
|
|
3
|
+
import type { CommandPaletteItem } from "./types";
|
|
4
4
|
export declare const DEFAULT_CATEGORIES: {
|
|
5
5
|
app: string;
|
|
6
6
|
export: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import React from "react";
|
|
1
2
|
import "./ContextMenu.scss";
|
|
2
|
-
import type { Action } from "../actions/types";
|
|
3
3
|
import type { ActionManager } from "../actions/manager";
|
|
4
|
-
import
|
|
4
|
+
import type { Action } from "../actions/types";
|
|
5
5
|
export type ContextMenuItem = typeof CONTEXT_MENU_SEPARATOR | Action;
|
|
6
6
|
export type ContextMenuItems = (ContextMenuItem | false | null | undefined)[];
|
|
7
7
|
type ContextMenuProps = {
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ConvertibleTypes, ExcalidrawElement, ExcalidrawTextContainer, ExcalidrawTextElementWithContainer } from "@excalidraw/element/types";
|
|
2
|
+
import type { Scene } from "@excalidraw/element";
|
|
3
|
+
import "./ConvertElementTypePopup.scss";
|
|
4
|
+
import type App from "./App";
|
|
5
|
+
export declare const convertElementTypePopupAtom: import("jotai/vanilla/atom").PrimitiveAtom<{
|
|
6
|
+
type: "panel";
|
|
7
|
+
} | null> & {
|
|
8
|
+
init: {
|
|
9
|
+
type: "panel";
|
|
10
|
+
} | null;
|
|
11
|
+
};
|
|
12
|
+
declare const ConvertElementTypePopup: ({ app }: {
|
|
13
|
+
app: App;
|
|
14
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export declare const adjustBoundTextSize: (container: ExcalidrawTextContainer, boundText: ExcalidrawTextElementWithContainer, scene: Scene) => void;
|
|
16
|
+
type ConversionType = "generic" | "linear" | null;
|
|
17
|
+
export declare const convertElementTypes: (app: App, { conversionType, nextType, direction, }: {
|
|
18
|
+
conversionType: ConversionType;
|
|
19
|
+
nextType?: ConvertibleTypes | undefined;
|
|
20
|
+
direction?: "left" | "right" | undefined;
|
|
21
|
+
}) => boolean;
|
|
22
|
+
export declare const getConversionTypeFromElements: (elements: ExcalidrawElement[]) => ConversionType;
|
|
23
|
+
export default ConvertElementTypePopup;
|