@excalidraw/excalidraw 0.18.0-817d8c5 → 0.18.0-864353b
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-LMHBUWQS.js → chunk-7YMZV3TY.js} +15 -4
- package/dist/dev/chunk-7YMZV3TY.js.map +7 -0
- package/dist/dev/chunk-BBNNHA7I.js +7 -0
- package/dist/dev/chunk-BBNNHA7I.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-3SN6HYVK.js → chunk-LL55DS44.js} +19504 -21522
- package/dist/dev/chunk-LL55DS44.js.map +7 -0
- package/dist/dev/data/{image-V26YBSDB.js → image-OFYK7EOY.js} +3 -3
- package/dist/dev/index.css +3098 -3023
- package/dist/dev/index.css.map +3 -3
- package/dist/dev/index.js +27238 -22881
- package/dist/dev/index.js.map +4 -4
- package/dist/dev/locales/{en-OZCJJ2HN.js → en-KIY5SGI3.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-F44EGBV2.js +33 -0
- package/dist/prod/chunk-LS7FJGPW.js +86 -0
- package/dist/prod/{chunk-6U3AYISY.js → chunk-OUULIERA.js} +4 -4
- package/dist/prod/chunk-UH6Q3EIV.js +7 -0
- package/dist/prod/data/image-CUOH64HE.js +1 -0
- package/dist/prod/index.css +1 -1
- package/dist/prod/index.js +20 -16
- package/dist/prod/locales/{en-B4ZKOASM.js → en-GCLCIHXH.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 +18 -7
- 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 +24 -11
- package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +14 -17
- package/dist/types/{excalidraw/scene → element/src}/Shape.d.ts +2 -2
- package/dist/types/{excalidraw/scene → element/src}/ShapeCache.d.ts +4 -4
- package/dist/types/element/src/align.d.ts +7 -0
- package/dist/types/{excalidraw/element → element/src}/binding.d.ts +24 -16
- package/dist/types/{excalidraw/element → element/src}/bounds.d.ts +9 -4
- package/dist/types/{excalidraw/element → element/src}/collision.d.ts +3 -3
- package/dist/types/{excalidraw/scene → element/src}/comparisons.d.ts +1 -1
- package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +41 -36
- package/dist/types/{excalidraw → element/src}/distribute.d.ts +1 -1
- 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 +5 -2
- package/dist/types/{excalidraw → element/src}/frame.d.ts +8 -7
- package/dist/types/{excalidraw → element/src}/groups.d.ts +5 -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 +59 -0
- package/dist/types/{excalidraw/element → element/src}/linearElementEditor.d.ts +22 -33
- package/dist/types/{excalidraw/element → element/src}/mutateElement.d.ts +11 -3
- 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 +6 -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/shapes.d.ts +27 -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 +227 -0
- package/dist/types/{excalidraw/element → element/src}/textElement.d.ts +8 -7
- package/dist/types/{excalidraw/element → element/src}/transformHandles.d.ts +3 -3
- package/dist/types/{excalidraw/element → element/src}/typeChecks.d.ts +17 -3
- package/dist/types/{excalidraw/element → element/src}/types.d.ts +16 -3
- package/dist/types/{excalidraw → element/src}/zindex.d.ts +5 -4
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +91 -94
- package/dist/types/excalidraw/actions/actionAlign.d.ts +15 -15
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +66 -68
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +576 -413
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +195 -200
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +32 -33
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +93 -95
- package/dist/types/excalidraw/actions/actionDistribute.d.ts +7 -7
- package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +5 -9
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +36 -37
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +78 -82
- package/dist/types/excalidraw/{element/embeddable.d.ts → actions/actionEmbeddable.d.ts} +32 -43
- package/dist/types/excalidraw/actions/actionExport.d.ts +295 -304
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +95 -57
- package/dist/types/excalidraw/actions/actionFlip.d.ts +7 -7
- package/dist/types/excalidraw/actions/actionFrame.d.ts +203 -207
- package/dist/types/excalidraw/actions/actionGroup.d.ts +65 -67
- package/dist/types/excalidraw/actions/actionHistory.d.ts +2 -3
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +526 -34
- package/dist/types/excalidraw/actions/actionLink.d.ts +36 -37
- package/dist/types/excalidraw/actions/actionMenu.d.ts +95 -98
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +61 -63
- package/dist/types/excalidraw/actions/actionProperties.d.ts +428 -435
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +33 -34
- package/dist/types/excalidraw/actions/actionStyles.d.ts +38 -39
- package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +34 -35
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +34 -35
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +34 -207
- package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +33 -35
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +34 -36
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +34 -36
- package/dist/types/excalidraw/actions/actionZindex.d.ts +16 -16
- 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 +33 -23
- 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 -3
- package/dist/types/excalidraw/components/App.d.ts +38 -20
- 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/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 +3 -3
- 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 +3 -3
- 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 +2 -2
- package/dist/types/excalidraw/data/resave.d.ts +1 -1
- package/dist/types/excalidraw/data/restore.d.ts +1 -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 +14 -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 +15 -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 +16 -15
- 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 +12 -0
- package/dist/types/excalidraw/renderer/helpers.d.ts +8 -3
- package/dist/types/excalidraw/renderer/staticSvgScene.d.ts +2 -2
- package/dist/types/excalidraw/scene/Renderer.d.ts +3 -3
- 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 +39 -18
- package/dist/types/excalidraw/visualdebug.d.ts +2 -2
- 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/{curve.d.ts → src/curve.d.ts} +2 -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/{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} +4 -0
- package/dist/types/utils/{bbox.d.ts → src/bbox.d.ts} +1 -1
- package/dist/types/utils/{collision.d.ts → src/collision.d.ts} +2 -3
- 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 +70 -94
- package/package.json +16 -4
- 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-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/index.d.ts +0 -26
- package/dist/types/excalidraw/shapes.d.ts +0 -85
- package/dist/types/excalidraw/store.d.ts +0 -129
- package/dist/dev/data/{image-V26YBSDB.js.map → image-OFYK7EOY.js.map} +0 -0
- package/dist/dev/locales/{en-OZCJJ2HN.js.map → en-KIY5SGI3.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}/cropElement.d.ts +0 -0
- package/dist/types/{excalidraw/element → element/src}/distance.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/{excalidraw/element → element/src}/utils.d.ts +1 -1
- /package/dist/types/math/{ellipse.d.ts → src/ellipse.d.ts} +0 -0
- /package/dist/types/math/{index.d.ts → src/index.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/{rectangle.d.ts → src/rectangle.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,4 +1,4 @@
|
|
|
1
|
-
import type { ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "
|
|
1
|
+
import type { ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
2
|
import type { AppState, BinaryFiles } from "../types";
|
|
3
3
|
export declare const exportToCanvas: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState, files: BinaryFiles, { exportBackground, exportPadding, viewBackgroundColor, exportingFrame, }: {
|
|
4
4
|
exportBackground: boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { isSomeElementSelected, getElementsWithinSelection,
|
|
1
|
+
export { isSomeElementSelected, getElementsWithinSelection, getSelectedElements, getTargetElements, } from "@excalidraw/element";
|
|
2
2
|
export { calculateScrollCenter } from "./scroll";
|
|
3
|
-
export { hasBackground, hasStrokeWidth, hasStrokeStyle, canHaveArrowheads, canChangeRoundness, } from "
|
|
3
|
+
export { hasBackground, hasStrokeWidth, hasStrokeStyle, canHaveArrowheads, canChangeRoundness, } from "@excalidraw/element";
|
|
4
4
|
export { getNormalizedZoom, getNormalizedGridSize, getNormalizedGridStep, } from "./normalize";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
1
2
|
import type { AppState, Offsets, PointerCoords, Zoom } from "../types";
|
|
2
|
-
import type { ExcalidrawElement } from "../element/types";
|
|
3
3
|
export declare const centerScrollOn: ({ scenePoint, viewportDimensions, zoom, offsets, }: {
|
|
4
4
|
scenePoint: PointerCoords;
|
|
5
5
|
viewportDimensions: {
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import type { InteractiveCanvasAppState } from "../types";
|
|
2
|
-
import type { ScrollBars } from "./types";
|
|
3
|
-
import type { ExcalidrawElement } from "../element/types";
|
|
2
|
+
import type { RenderableElementsMap, ScrollBars } from "./types";
|
|
4
3
|
export declare const SCROLLBAR_MARGIN = 4;
|
|
5
4
|
export declare const SCROLLBAR_WIDTH = 6;
|
|
6
5
|
export declare const SCROLLBAR_COLOR = "rgba(0,0,0,0.3)";
|
|
7
|
-
export declare const getScrollBars: (elements:
|
|
6
|
+
export declare const getScrollBars: (elements: RenderableElementsMap, viewportWidth: number, viewportHeight: number, appState: InteractiveCanvasAppState) => ScrollBars;
|
|
8
7
|
export declare const isOverScrollBars: (scrollBars: ScrollBars, x: number, y: number) => {
|
|
9
8
|
isOverEither: boolean;
|
|
10
9
|
isOverHorizontal: boolean;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
import type { UserIdleState } from "@excalidraw/common";
|
|
2
|
+
import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "@excalidraw/element/types";
|
|
3
|
+
import type { MakeBrand } from "@excalidraw/common/utility-types";
|
|
4
|
+
import type { AppClassProperties, AppState, EmbedsValidationStatus, ElementsPendingErasure, InteractiveCanvasAppState, StaticCanvasAppState, SocketId, Device, PendingExcalidrawElements } from "../types";
|
|
1
5
|
import type { RoughCanvas } from "roughjs/bin/canvas";
|
|
2
6
|
import type { Drawable } from "roughjs/bin/core";
|
|
3
|
-
import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "../element/types";
|
|
4
|
-
import type { AppClassProperties, AppState, EmbedsValidationStatus, ElementsPendingErasure, InteractiveCanvasAppState, StaticCanvasAppState, SocketId, Device, PendingExcalidrawElements } from "../types";
|
|
5
|
-
import type { MakeBrand } from "../utility-types";
|
|
6
|
-
import type { UserIdleState } from "../constants";
|
|
7
7
|
export type RenderableElementsMap = NonDeletedElementsMap & MakeBrand<"RenderableElementsMap">;
|
|
8
8
|
export type StaticCanvasRenderConfig = {
|
|
9
9
|
canvasBackgroundColor: AppState["viewBackgroundColor"];
|
|
@@ -93,12 +93,14 @@ export type ScrollBars = {
|
|
|
93
93
|
y: number;
|
|
94
94
|
width: number;
|
|
95
95
|
height: number;
|
|
96
|
+
deltaMultiplier: number;
|
|
96
97
|
} | null;
|
|
97
98
|
vertical: {
|
|
98
99
|
x: number;
|
|
99
100
|
y: number;
|
|
100
101
|
width: number;
|
|
101
102
|
height: number;
|
|
103
|
+
deltaMultiplier: number;
|
|
102
104
|
} | null;
|
|
103
105
|
};
|
|
104
106
|
export type ElementShape = Drawable | Drawable[] | null;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { InclusiveRange } from "@excalidraw/math";
|
|
2
1
|
import { type GlobalPoint } from "@excalidraw/math";
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
5
|
-
import type {
|
|
6
|
-
import type {
|
|
2
|
+
import type { InclusiveRange } from "@excalidraw/math";
|
|
3
|
+
import type { Bounds } from "@excalidraw/element";
|
|
4
|
+
import type { MaybeTransformHandleType } from "@excalidraw/element";
|
|
5
|
+
import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
6
|
+
import type { AppClassProperties, AppState, KeyboardModifiersObject } from "./types";
|
|
7
7
|
export declare const getSnapDistance: (zoomValue: number) => number;
|
|
8
8
|
type Vector2D = {
|
|
9
9
|
x: number;
|
|
@@ -108,5 +108,4 @@ export declare const getSnapLinesAtPointer: (elements: readonly ExcalidrawElemen
|
|
|
108
108
|
snapLines: PointerSnapLine[];
|
|
109
109
|
};
|
|
110
110
|
export declare const isActiveToolNonLinearSnappable: (activeToolType: AppState["activeTool"]["type"]) => boolean;
|
|
111
|
-
export declare const getGridPoint: (x: number, y: number, gridSize: NullableGridSize) => [number, number];
|
|
112
111
|
export {};
|
|
@@ -1,25 +1,23 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type
|
|
3
|
-
import type {
|
|
1
|
+
import type { IMAGE_MIME_TYPES, UserIdleState, throttleRAF, MIME_TYPES } from "@excalidraw/common";
|
|
2
|
+
import type { SuggestedBinding } from "@excalidraw/element";
|
|
3
|
+
import type { LinearElementEditor } from "@excalidraw/element";
|
|
4
|
+
import type { MaybeTransformHandleType } from "@excalidraw/element";
|
|
5
|
+
import type { PointerType, ExcalidrawLinearElement, NonDeletedExcalidrawElement, NonDeleted, TextAlign, ExcalidrawElement, GroupId, ExcalidrawBindableElement, Arrowhead, ChartType, FontFamilyValues, FileId, ExcalidrawImageElement, Theme, StrokeRoundness, ExcalidrawEmbeddableElement, ExcalidrawMagicFrameElement, ExcalidrawFrameLikeElement, ExcalidrawElementType, ExcalidrawIframeLikeElement, OrderedExcalidrawElement, ExcalidrawNonSelectionElement } from "@excalidraw/element/types";
|
|
6
|
+
import type { Merge, MaybePromise, ValueOf, MakeBrand } from "@excalidraw/common/utility-types";
|
|
7
|
+
import type { CaptureUpdateActionType, DurableIncrement, EphemeralIncrement } from "@excalidraw/element";
|
|
4
8
|
import type { Action } from "./actions/types";
|
|
5
|
-
import type { LinearElementEditor } from "./element/linearElementEditor";
|
|
6
|
-
import type { SuggestedBinding } from "./element/binding";
|
|
7
|
-
import type { ImportedDataState } from "./data/types";
|
|
8
|
-
import type App from "./components/App";
|
|
9
|
-
import type { throttleRAF } from "./utils";
|
|
10
9
|
import type { Spreadsheet } from "./charts";
|
|
11
|
-
import type { Language } from "./i18n";
|
|
12
10
|
import type { ClipboardData } from "./clipboard";
|
|
13
|
-
import type
|
|
14
|
-
import type { MaybeTransformHandleType } from "./element/transformHandles";
|
|
11
|
+
import type App from "./components/App";
|
|
15
12
|
import type Library from "./data/library";
|
|
16
13
|
import type { FileSystemHandle } from "./data/filesystem";
|
|
17
|
-
import type { IMAGE_MIME_TYPES, MIME_TYPES } from "./constants";
|
|
18
14
|
import type { ContextMenuItems } from "./components/ContextMenu";
|
|
19
15
|
import type { SnapLine } from "./snapping";
|
|
20
|
-
import type {
|
|
21
|
-
import type {
|
|
22
|
-
import type {
|
|
16
|
+
import type { ImportedDataState } from "./data/types";
|
|
17
|
+
import type { Language } from "./i18n";
|
|
18
|
+
import type { isOverScrollBars } from "./scene/scrollbars";
|
|
19
|
+
import type React from "react";
|
|
20
|
+
import type { JSX } from "react";
|
|
23
21
|
export type SocketId = string & {
|
|
24
22
|
_brand: "SocketId";
|
|
25
23
|
};
|
|
@@ -86,7 +84,7 @@ export type BinaryFileData = {
|
|
|
86
84
|
};
|
|
87
85
|
export type BinaryFileMetadata = Omit<BinaryFileData, "dataURL">;
|
|
88
86
|
export type BinaryFiles = Record<ExcalidrawElement["id"], BinaryFileData>;
|
|
89
|
-
export type ToolType = "selection" | "rectangle" | "diamond" | "ellipse" | "arrow" | "line" | "freedraw" | "text" | "image" | "eraser" | "hand" | "frame" | "magicframe" | "embeddable" | "laser";
|
|
87
|
+
export type ToolType = "selection" | "lasso" | "rectangle" | "diamond" | "ellipse" | "arrow" | "line" | "freedraw" | "text" | "image" | "eraser" | "hand" | "frame" | "magicframe" | "embeddable" | "laser";
|
|
90
88
|
export type ElementOrToolType = ExcalidrawElementType | ToolType | "custom";
|
|
91
89
|
export type ActiveTool = {
|
|
92
90
|
type: ToolType;
|
|
@@ -148,6 +146,7 @@ export type InteractiveCanvasAppState = Readonly<_CommonCanvasAppState & {
|
|
|
148
146
|
isCropping: AppState["isCropping"];
|
|
149
147
|
croppingElementId: AppState["croppingElementId"];
|
|
150
148
|
searchMatches: AppState["searchMatches"];
|
|
149
|
+
activeLockedId: AppState["activeLockedId"];
|
|
151
150
|
}>;
|
|
152
151
|
export type ObservedAppState = ObservedStandaloneAppState & ObservedElementsAppState;
|
|
153
152
|
export type ObservedStandaloneAppState = {
|
|
@@ -161,6 +160,8 @@ export type ObservedElementsAppState = {
|
|
|
161
160
|
editingLinearElementId: LinearElementEditor["elementId"] | null;
|
|
162
161
|
selectedLinearElementId: LinearElementEditor["elementId"] | null;
|
|
163
162
|
croppingElementId: AppState["croppingElementId"];
|
|
163
|
+
lockedMultiSelections: AppState["lockedMultiSelections"];
|
|
164
|
+
activeLockedId: AppState["activeLockedId"];
|
|
164
165
|
};
|
|
165
166
|
export interface AppState {
|
|
166
167
|
contextMenu: {
|
|
@@ -219,6 +220,7 @@ export interface AppState {
|
|
|
219
220
|
*/
|
|
220
221
|
lastActiveTool: ActiveTool | null;
|
|
221
222
|
locked: boolean;
|
|
223
|
+
fromSelection: boolean;
|
|
222
224
|
} & ActiveTool;
|
|
223
225
|
penMode: boolean;
|
|
224
226
|
penDetected: boolean;
|
|
@@ -342,9 +344,18 @@ export interface AppState {
|
|
|
342
344
|
/** image cropping */
|
|
343
345
|
isCropping: boolean;
|
|
344
346
|
croppingElementId: ExcalidrawElement["id"] | null;
|
|
345
|
-
|
|
347
|
+
/** null if no search matches found / search closed */
|
|
348
|
+
searchMatches: Readonly<{
|
|
349
|
+
focusedId: ExcalidrawElement["id"] | null;
|
|
350
|
+
matches: readonly SearchMatch[];
|
|
351
|
+
}> | null;
|
|
352
|
+
/** the locked element/group that's active and shows unlock popup */
|
|
353
|
+
activeLockedId: string | null;
|
|
354
|
+
lockedMultiSelections: {
|
|
355
|
+
[groupId: string]: true;
|
|
356
|
+
};
|
|
346
357
|
}
|
|
347
|
-
type SearchMatch = {
|
|
358
|
+
export type SearchMatch = {
|
|
348
359
|
id: string;
|
|
349
360
|
focus: boolean;
|
|
350
361
|
matchedLines: {
|
|
@@ -352,6 +363,7 @@ type SearchMatch = {
|
|
|
352
363
|
offsetY: number;
|
|
353
364
|
width: number;
|
|
354
365
|
height: number;
|
|
366
|
+
showOnCanvas: boolean;
|
|
355
367
|
}[];
|
|
356
368
|
};
|
|
357
369
|
export type UIAppState = Omit<AppState, "suggestedBindings" | "startBoundElement" | "cursorButton" | "scrollX" | "scrollY">;
|
|
@@ -404,6 +416,7 @@ export type OnUserFollowedPayload = {
|
|
|
404
416
|
};
|
|
405
417
|
export interface ExcalidrawProps {
|
|
406
418
|
onChange?: (elements: readonly OrderedExcalidrawElement[], appState: AppState, files: BinaryFiles) => void;
|
|
419
|
+
onIncrement?: (event: DurableIncrement | EphemeralIncrement) => void;
|
|
407
420
|
initialData?: (() => MaybePromise<ExcalidrawInitialDataState | null>) | MaybePromise<ExcalidrawInitialDataState | null>;
|
|
408
421
|
excalidrawAPI?: (api: ExcalidrawImperativeAPI) => void;
|
|
409
422
|
isCollaborating?: boolean;
|
|
@@ -460,6 +473,7 @@ export interface ExcalidrawProps {
|
|
|
460
473
|
renderEmbeddable?: (element: NonDeleted<ExcalidrawEmbeddableElement>, appState: AppState) => JSX.Element | null;
|
|
461
474
|
aiEnabled?: boolean;
|
|
462
475
|
showDeprecatedFonts?: boolean;
|
|
476
|
+
renderScrollbars?: boolean;
|
|
463
477
|
}
|
|
464
478
|
export type SceneData = {
|
|
465
479
|
elements?: ImportedDataState["elements"];
|
|
@@ -545,6 +559,7 @@ export type AppClassProperties = {
|
|
|
545
559
|
visibleElements: App["visibleElements"];
|
|
546
560
|
excalidrawContainerValue: App["excalidrawContainerValue"];
|
|
547
561
|
onPointerUpEmitter: App["onPointerUpEmitter"];
|
|
562
|
+
updateEditorAtom: App["updateEditorAtom"];
|
|
548
563
|
};
|
|
549
564
|
export type PointerDownState = Readonly<{
|
|
550
565
|
origin: Readonly<{
|
|
@@ -588,6 +603,10 @@ export type PointerDownState = Readonly<{
|
|
|
588
603
|
x: number;
|
|
589
604
|
y: number;
|
|
590
605
|
} | null;
|
|
606
|
+
origin: {
|
|
607
|
+
x: number;
|
|
608
|
+
y: number;
|
|
609
|
+
};
|
|
591
610
|
};
|
|
592
611
|
eventListeners: {
|
|
593
612
|
onMove: null | ReturnType<typeof throttleRAF>;
|
|
@@ -602,6 +621,7 @@ export type PointerDownState = Readonly<{
|
|
|
602
621
|
export type UnsubscribeCallback = () => void;
|
|
603
622
|
export interface ExcalidrawImperativeAPI {
|
|
604
623
|
updateScene: InstanceType<typeof App>["updateScene"];
|
|
624
|
+
mutateElement: InstanceType<typeof App>["mutateElement"];
|
|
605
625
|
updateLibrary: InstanceType<typeof Library>["updateLibrary"];
|
|
606
626
|
resetScene: InstanceType<typeof App>["resetScene"];
|
|
607
627
|
getSceneElementsIncludingDeleted: InstanceType<typeof App>["getSceneElementsIncludingDeleted"];
|
|
@@ -629,6 +649,7 @@ export interface ExcalidrawImperativeAPI {
|
|
|
629
649
|
*/
|
|
630
650
|
updateFrameRendering: InstanceType<typeof App>["updateFrameRendering"];
|
|
631
651
|
onChange: (callback: (elements: readonly ExcalidrawElement[], appState: AppState, files: BinaryFiles) => void) => UnsubscribeCallback;
|
|
652
|
+
onIncrement: (callback: (event: DurableIncrement | EphemeralIncrement) => void) => UnsubscribeCallback;
|
|
632
653
|
onPointerDown: (callback: (activeTool: AppState["activeTool"], pointerDownState: PointerDownState, event: React.PointerEvent<HTMLElement>) => void) => UnsubscribeCallback;
|
|
633
654
|
onPointerUp: (callback: (activeTool: AppState["activeTool"], pointerDownState: PointerDownState, event: PointerEvent) => void) => UnsubscribeCallback;
|
|
634
655
|
onScrollChange: (callback: (scrollX: number, scrollY: number, zoom: Zoom) => void) => UnsubscribeCallback;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Curve } from "@excalidraw/math";
|
|
2
1
|
import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
|
|
2
|
+
import type { Curve } from "@excalidraw/math";
|
|
3
3
|
import type { LineSegment } from "@excalidraw/utils";
|
|
4
|
-
import type { Bounds } from "
|
|
4
|
+
import type { Bounds } from "@excalidraw/element";
|
|
5
5
|
declare global {
|
|
6
6
|
interface Window {
|
|
7
7
|
visualDebug?: {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type { ExcalidrawElement, ExcalidrawTextElement } from "
|
|
1
|
+
import type { ExcalidrawElement, ExcalidrawTextElement } from "@excalidraw/element/types";
|
|
2
2
|
import type App from "../components/App";
|
|
3
|
+
type SubmitHandler = () => void;
|
|
3
4
|
export declare const textWysiwyg: ({ id, onChange, onSubmit, getViewportCoords, element, canvas, excalidrawContainer, app, autoSelect, }: {
|
|
4
5
|
id: ExcalidrawElement["id"];
|
|
5
6
|
/**
|
|
@@ -19,4 +20,5 @@ export declare const textWysiwyg: ({ id, onChange, onSubmit, getViewportCoords,
|
|
|
19
20
|
excalidrawContainer: HTMLDivElement | null;
|
|
20
21
|
app: App;
|
|
21
22
|
autoSelect?: boolean | undefined;
|
|
22
|
-
}) =>
|
|
23
|
+
}) => SubmitHandler;
|
|
24
|
+
export {};
|
|
@@ -15,3 +15,5 @@ export declare function radiansToDegrees(degrees: Radians): Degrees;
|
|
|
15
15
|
* @returns TRUE if the provided angle is a right angle
|
|
16
16
|
*/
|
|
17
17
|
export declare function isRightAngleRads(rads: Radians): boolean;
|
|
18
|
+
export declare function radiansBetweenAngles(a: Radians, min: Radians, max: Radians): boolean;
|
|
19
|
+
export declare function radiansDifference(a: Radians, b: Radians): Radians;
|
|
@@ -8,6 +8,7 @@ import type { Curve, GlobalPoint, LineSegment, LocalPoint } from "./types";
|
|
|
8
8
|
* @returns
|
|
9
9
|
*/
|
|
10
10
|
export declare function curve<Point extends GlobalPoint | LocalPoint>(a: Point, b: Point, c: Point, d: Point): Curve<Point>;
|
|
11
|
+
export declare const bezierEquation: <Point extends GlobalPoint | LocalPoint>(c: Curve<Point>, t: number) => Point;
|
|
11
12
|
/**
|
|
12
13
|
* Computes the intersection between a cubic spline and a line segment.
|
|
13
14
|
*/
|
|
@@ -38,3 +39,4 @@ export declare function curvePointDistance<Point extends GlobalPoint | LocalPoin
|
|
|
38
39
|
* Determines if the parameter is a Curve
|
|
39
40
|
*/
|
|
40
41
|
export declare function isCurve<P extends GlobalPoint | LocalPoint>(v: unknown): v is Curve<P>;
|
|
42
|
+
export declare function curveTangent<Point extends GlobalPoint | LocalPoint>([p0, p1, p2, p3]: Curve<Point>, t: number): import("./types").Vector;
|
|
@@ -43,9 +43,9 @@ export declare function isPoint(p: unknown): p is LocalPoint | GlobalPoint;
|
|
|
43
43
|
* @param b Point The second point to compare
|
|
44
44
|
* @returns TRUE if the points are sufficiently close to each other
|
|
45
45
|
*/
|
|
46
|
-
export declare function pointsEqual<Point extends GlobalPoint | LocalPoint>(a: Point, b: Point): boolean;
|
|
46
|
+
export declare function pointsEqual<Point extends GlobalPoint | LocalPoint>(a: Point, b: Point, tolerance?: number): boolean;
|
|
47
47
|
/**
|
|
48
|
-
*
|
|
48
|
+
* Rotate a point by [angle] radians.
|
|
49
49
|
*
|
|
50
50
|
* @param point The point to rotate
|
|
51
51
|
* @param center The point to rotate around, the center point
|
|
@@ -54,7 +54,7 @@ export declare function pointsEqual<Point extends GlobalPoint | LocalPoint>(a: P
|
|
|
54
54
|
*/
|
|
55
55
|
export declare function pointRotateRads<Point extends GlobalPoint | LocalPoint>([x, y]: Point, [cx, cy]: Point, angle: Radians): Point;
|
|
56
56
|
/**
|
|
57
|
-
*
|
|
57
|
+
* Rotate a point by [angle] degree.
|
|
58
58
|
*
|
|
59
59
|
* @param point The point to rotate
|
|
60
60
|
* @param center The point to rotate around, the center point
|
|
@@ -2,4 +2,5 @@ import type { GlobalPoint, LocalPoint, Polygon } from "./types";
|
|
|
2
2
|
export declare function polygon<Point extends GlobalPoint | LocalPoint>(...points: Point[]): Polygon<Point>;
|
|
3
3
|
export declare function polygonFromPoints<Point extends GlobalPoint | LocalPoint>(points: Point[]): Polygon<Point>;
|
|
4
4
|
export declare const polygonIncludesPoint: <Point extends GlobalPoint | LocalPoint>(point: Point, polygon: Polygon<Point>) => boolean;
|
|
5
|
+
export declare const polygonIncludesPointNonZero: <Point extends [number, number]>(point: Point, polygon: Point[]) => boolean;
|
|
5
6
|
export declare const pointOnPolygon: <Point extends GlobalPoint | LocalPoint>(p: Point, poly: Polygon<Point>, threshold?: number) => boolean;
|
|
@@ -36,4 +36,4 @@ export declare const distanceToLineSegment: <Point extends GlobalPoint | LocalPo
|
|
|
36
36
|
* @param s
|
|
37
37
|
* @returns
|
|
38
38
|
*/
|
|
39
|
-
export declare function lineSegmentIntersectionPoints<Point extends GlobalPoint | LocalPoint>(l: LineSegment<Point>, s: LineSegment<Point
|
|
39
|
+
export declare function lineSegmentIntersectionPoints<Point extends GlobalPoint | LocalPoint>(l: LineSegment<Point>, s: LineSegment<Point>, threshold?: number): Point | null;
|
|
@@ -86,3 +86,7 @@ export declare function vectorMagnitude(v: Vector): number;
|
|
|
86
86
|
* @returns The new normalized vector
|
|
87
87
|
*/
|
|
88
88
|
export declare const vectorNormalize: (v: Vector) => Vector;
|
|
89
|
+
/**
|
|
90
|
+
* Calculate the right-hand normal of the vector.
|
|
91
|
+
*/
|
|
92
|
+
export declare const vectorNormal: (v: Vector) => Vector;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
|
|
2
|
-
import type { Bounds } from "@excalidraw/
|
|
2
|
+
import type { Bounds } from "@excalidraw/element";
|
|
3
3
|
export type LineSegment<P extends LocalPoint | GlobalPoint> = [P, P];
|
|
4
4
|
export declare function getBBox<P extends LocalPoint | GlobalPoint>(line: LineSegment<P>): Bounds;
|
|
5
5
|
export declare function doBBoxesIntersect(a: Bounds, b: Bounds): boolean;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import type { Polyline } from "./geometry/shape";
|
|
2
|
-
import { type GeometricShape } from "./geometry/shape";
|
|
3
|
-
import type { Curve } from "@excalidraw/math";
|
|
4
1
|
import { type GlobalPoint, type LocalPoint, type Polygon } from "@excalidraw/math";
|
|
2
|
+
import type { Curve } from "@excalidraw/math";
|
|
3
|
+
import type { Polyline, GeometricShape } from "./shape";
|
|
5
4
|
export declare const isPointOnShape: <Point extends GlobalPoint | LocalPoint>(point: Point, shape: GeometricShape<Point>, tolerance?: number) => boolean;
|
|
6
5
|
export declare const isPointInShape: <Point extends GlobalPoint | LocalPoint>(point: Point, shape: GeometricShape<Point>) => boolean;
|
|
7
6
|
export declare const isPointInBounds: <Point extends GlobalPoint | LocalPoint>(point: Point, bounds: Polygon<Point>) => boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { MIME_TYPES } from "@excalidraw/common";
|
|
2
|
+
import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeleted } from "@excalidraw/element/types";
|
|
1
3
|
import type { AppState, BinaryFiles } from "@excalidraw/excalidraw/types";
|
|
2
|
-
import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeleted } from "@excalidraw/excalidraw/element/types";
|
|
3
|
-
import { MIME_TYPES } from "@excalidraw/excalidraw/constants";
|
|
4
4
|
export { MIME_TYPES };
|
|
5
5
|
type ExportOpts = {
|
|
6
6
|
elements: readonly NonDeleted<ExcalidrawElement>[];
|
|
@@ -1,19 +1,6 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* this file defines pure geometric shapes
|
|
3
|
-
*
|
|
4
|
-
* for instance, a cubic bezier curve is specified by its four control points and
|
|
5
|
-
* an ellipse is defined by its center, angle, semi major axis and semi minor axis
|
|
6
|
-
* (but in semi-width and semi-height so it's more relevant to Excalidraw)
|
|
7
|
-
*
|
|
8
|
-
* the idea with pure shapes is so that we can provide collision and other geoemtric methods not depending on
|
|
9
|
-
* the specifics of roughjs or elements in Excalidraw; instead, we can focus on the pure shapes themselves
|
|
10
|
-
*
|
|
11
|
-
* also included in this file are methods for converting an Excalidraw element or a Drawable from roughjs
|
|
12
|
-
* to pure shapes
|
|
13
|
-
*/
|
|
14
|
-
import type { Curve, LineSegment, Polygon, Radians } from "@excalidraw/math";
|
|
15
1
|
import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
|
|
16
|
-
import type { ElementsMap, ExcalidrawBindableElement, ExcalidrawDiamondElement, ExcalidrawElement, ExcalidrawEllipseElement, ExcalidrawEmbeddableElement, ExcalidrawFrameLikeElement, ExcalidrawFreeDrawElement, ExcalidrawIframeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawRectangleElement, ExcalidrawSelectionElement, ExcalidrawTextElement } from "@excalidraw/
|
|
2
|
+
import type { ElementsMap, ExcalidrawBindableElement, ExcalidrawDiamondElement, ExcalidrawElement, ExcalidrawEllipseElement, ExcalidrawEmbeddableElement, ExcalidrawFrameLikeElement, ExcalidrawFreeDrawElement, ExcalidrawIframeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawRectangleElement, ExcalidrawSelectionElement, ExcalidrawTextElement } from "@excalidraw/element/types";
|
|
3
|
+
import type { Curve, LineSegment, Polygon, Radians } from "@excalidraw/math";
|
|
17
4
|
import type { Drawable, Op } from "roughjs/bin/core";
|
|
18
5
|
export type Polyline<Point extends GlobalPoint | LocalPoint> = LineSegment<Point>[];
|
|
19
6
|
export type Polycurve<Point extends GlobalPoint | LocalPoint> = Curve<Point>[];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { Bounds } from "@excalidraw/element";
|
|
2
|
+
import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
3
3
|
type Element = NonDeletedExcalidrawElement;
|
|
4
4
|
type Elements = readonly NonDeletedExcalidrawElement[];
|
|
5
5
|
export declare const isElementInsideBBox: (element: Element, bbox: Bounds, eitherDirection?: boolean) => boolean;
|