@excalidraw/element 0.18.0-91c7748 → 0.18.0-a52cd20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dev/index.js +15101 -8988
- package/dist/dev/index.js.map +4 -4
- package/dist/prod/index.js +20 -19
- package/dist/types/common/debug.d.ts +21 -0
- package/dist/types/common/src/appEventBus.d.ts +27 -0
- package/dist/types/common/src/bounds.d.ts +10 -0
- package/dist/types/common/src/colors.d.ts +81 -39
- package/dist/types/common/src/constants.d.ts +89 -34
- package/dist/types/common/src/editorInterface.d.ts +34 -0
- package/dist/types/common/src/font-metadata.d.ts +1 -3
- package/dist/types/common/src/index.d.ts +5 -0
- package/dist/types/common/src/keys.d.ts +5 -1
- package/dist/types/common/src/points.d.ts +1 -1
- package/dist/types/common/src/random.d.ts +7 -0
- package/dist/types/common/src/utility-types.d.ts +0 -1
- package/dist/types/common/src/utils.d.ts +52 -78
- package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
- package/dist/types/element/src/Scene.d.ts +12 -8
- package/dist/types/element/src/align.d.ts +2 -2
- package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
- package/dist/types/element/src/arrowheads.d.ts +3 -0
- package/dist/types/element/src/arrows/focus.d.ts +30 -0
- package/dist/types/element/src/arrows/helpers.d.ts +5 -0
- package/dist/types/element/src/binding.d.ts +85 -51
- package/dist/types/element/src/bounds.d.ts +25 -18
- package/dist/types/element/src/bucketFill.d.ts +110 -0
- package/dist/types/element/src/collision.d.ts +11 -3
- package/dist/types/element/src/comparisons.d.ts +10 -7
- package/dist/types/element/src/convertToShape.d.ts +23 -0
- package/dist/types/element/src/delta.d.ts +23 -1
- package/dist/types/element/src/distribute.d.ts +3 -2
- package/dist/types/element/src/dragElements.d.ts +30 -3
- package/dist/types/element/src/duplicate.d.ts +67 -6
- package/dist/types/element/src/elbowArrow.d.ts +2 -0
- package/dist/types/element/src/embeddable.d.ts +2 -2
- package/dist/types/element/src/flowchart.d.ts +11 -7
- package/dist/types/element/src/fractionalIndex.d.ts +4 -4
- package/dist/types/element/src/frame.d.ts +16 -11
- package/dist/types/element/src/groups.d.ts +9 -9
- package/dist/types/element/src/heading.d.ts +2 -1
- package/dist/types/element/src/image.d.ts +1 -11
- package/dist/types/element/src/index.d.ts +9 -4
- package/dist/types/element/src/linearElementEditor.d.ts +48 -30
- package/dist/types/element/src/mutateElement.d.ts +6 -2
- package/dist/types/element/src/newElement.d.ts +59 -9
- package/dist/types/element/src/renderElement.d.ts +21 -13
- package/dist/types/element/src/resizeElements.d.ts +12 -12
- package/dist/types/element/src/resizeTest.d.ts +6 -5
- package/dist/types/element/src/selection.d.ts +14 -14
- package/dist/types/element/src/shape.d.ts +36 -9
- package/dist/types/element/src/sizeHelpers.d.ts +6 -0
- package/dist/types/element/src/sortElements.d.ts +10 -0
- package/dist/types/element/src/stickyNote.d.ts +183 -0
- package/dist/types/element/src/textElement.d.ts +21 -10
- package/dist/types/element/src/textMeasurements.d.ts +1 -3
- package/dist/types/element/src/textWrapping.d.ts +26 -0
- package/dist/types/{excalidraw/data → element/src}/transform.d.ts +27 -8
- package/dist/types/element/src/transformHandles.d.ts +8 -27
- package/dist/types/element/src/typeChecks.d.ts +30 -31
- package/dist/types/element/src/types.d.ts +55 -20
- package/dist/types/element/src/utils.d.ts +22 -6
- package/dist/types/element/src/visualdebug.d.ts +58 -0
- package/dist/types/element/src/zindex.d.ts +7 -1
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +215 -189
- package/dist/types/excalidraw/actions/actionAlign.d.ts +12 -13
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +150 -133
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +543 -1576
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +152 -880
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +73 -65
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +237 -214
- package/dist/types/excalidraw/actions/actionDeselect.d.ts +182 -0
- package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -6
- package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -3
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +65 -63
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +149 -132
- package/dist/types/excalidraw/actions/actionExport.d.ts +228 -1423
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +11 -396
- package/dist/types/excalidraw/actions/actionFlip.d.ts +2 -3
- package/dist/types/excalidraw/actions/actionFrame.d.ts +373 -521
- package/dist/types/excalidraw/actions/actionGroup.d.ts +160 -151
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +236 -214
- package/dist/types/excalidraw/actions/actionLink.d.ts +72 -64
- package/dist/types/excalidraw/actions/actionMenu.d.ts +64 -430
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +18 -361
- package/dist/types/excalidraw/actions/actionProperties.d.ts +241 -2560
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +80 -76
- package/dist/types/excalidraw/actions/actionStyles.d.ts +74 -65
- package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
- package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleArrowBinding.d.ts} +88 -79
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +77 -70
- package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +195 -0
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +74 -66
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +65 -64
- package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +2 -2
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +74 -66
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +75 -67
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +75 -67
- package/dist/types/excalidraw/actions/actionZindex.d.ts +2 -3
- package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
- package/dist/types/excalidraw/actions/index.d.ts +5 -3
- package/dist/types/excalidraw/actions/manager.d.ts +1 -0
- package/dist/types/excalidraw/actions/register.d.ts +2 -2
- package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
- package/dist/types/excalidraw/actions/types.d.ts +11 -7
- package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
- package/dist/types/excalidraw/appState.d.ts +50 -20
- package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
- package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
- package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
- package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
- package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
- package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
- package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
- package/dist/types/excalidraw/charts/index.d.ts +7 -0
- package/dist/types/excalidraw/clipboard.d.ts +13 -38
- package/dist/types/excalidraw/components/Actions.d.ts +26 -11
- package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/App.arrowText.d.ts +70 -0
- package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
- package/dist/types/excalidraw/components/App.cursor.d.ts +38 -0
- package/dist/types/excalidraw/components/App.d.ts +646 -132
- package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
- package/dist/types/excalidraw/components/App.duplicate.d.ts +51 -0
- package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
- package/dist/types/excalidraw/components/App.pan.d.ts +62 -0
- package/dist/types/excalidraw/components/App.textTool.d.ts +140 -0
- package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
- package/dist/types/excalidraw/components/App.viewport.d.ts +113 -0
- package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
- package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
- package/dist/types/excalidraw/components/Card.d.ts +1 -3
- package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -4
- package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -5
- package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
- package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +7 -1
- package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -2
- package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +5 -2
- package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
- package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -2
- package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
- package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -2
- package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -0
- package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
- package/dist/types/excalidraw/components/CommandPalette/types.d.ts +2 -4
- package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +4 -4
- package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
- package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
- package/dist/types/excalidraw/components/DefaultSidebar.d.ts +9 -13
- package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/Ellipsify.d.ts +1 -2
- package/dist/types/excalidraw/components/ErrorDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -2
- package/dist/types/excalidraw/components/FileDropOverlay.d.ts +2 -0
- package/dist/types/excalidraw/components/FilledButton.d.ts +2 -1
- package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +4 -1
- package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +6 -1
- package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +2 -1
- package/dist/types/excalidraw/components/FontPicker/fontTopPicksDnD.d.ts +12 -0
- package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +0 -1
- package/dist/types/excalidraw/components/HelpDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/HintViewer.d.ts +4 -3
- package/dist/types/excalidraw/components/IconButton.d.ts +48 -0
- package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
- package/dist/types/excalidraw/components/InlineIcon.d.ts +3 -1
- package/dist/types/excalidraw/components/Island.d.ts +7 -0
- package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
- package/dist/types/excalidraw/components/LayerUI.d.ts +6 -2
- package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
- package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
- package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -2
- package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +7 -3
- package/dist/types/excalidraw/components/LibraryUnit.d.ts +9 -5
- package/dist/types/excalidraw/components/LoadingMessage.d.ts +0 -1
- package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
- package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
- package/dist/types/excalidraw/components/MobileMenu.d.ts +5 -7
- package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
- package/dist/types/excalidraw/components/Modal.d.ts +0 -1
- package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +1 -1
- package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
- package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
- package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
- package/dist/types/excalidraw/components/Popover.d.ts +2 -3
- package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -1
- package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
- package/dist/types/excalidraw/components/RadioGroup.d.ts +0 -1
- package/dist/types/excalidraw/components/RadioSelection.d.ts +4 -4
- package/dist/types/excalidraw/components/Range.d.ts +10 -4
- package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
- package/dist/types/excalidraw/components/ScrollableList.d.ts +0 -1
- package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
- package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +16 -22
- package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +1 -1
- package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -2
- package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -2
- package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +1 -2
- package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +1 -2
- package/dist/types/excalidraw/components/Spinner.d.ts +4 -4
- package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +0 -1
- package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +0 -1
- package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -3
- package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
- package/dist/types/excalidraw/components/Stats/index.d.ts +7 -8
- package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
- package/dist/types/excalidraw/components/TTDDialog/Chat/ChatHistoryMenu.d.ts +15 -0
- package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +23 -0
- package/dist/types/excalidraw/components/TTDDialog/Chat/ChatMessage.d.ts +14 -0
- package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +27 -0
- package/dist/types/excalidraw/components/TTDDialog/Chat/index.d.ts +3 -0
- package/dist/types/excalidraw/components/TTDDialog/Chat/useChatAgent.d.ts +8 -0
- package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
- package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +3 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +13 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +12 -29
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +5 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +13 -9
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDPreviewPanel.d.ts +9 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
- package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +9 -0
- package/dist/types/excalidraw/components/TTDDialog/common.d.ts +16 -16
- package/dist/types/excalidraw/components/TTDDialog/hooks/useChatManagement.d.ts +13 -0
- package/dist/types/excalidraw/components/TTDDialog/hooks/useMermaidRenderer.d.ts +14 -0
- package/dist/types/excalidraw/components/TTDDialog/hooks/useTextGeneration.d.ts +7 -0
- package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
- package/dist/types/excalidraw/components/TTDDialog/types.d.ts +95 -0
- package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +22 -0
- package/dist/types/excalidraw/components/TTDDialog/utils/chat.d.ts +10 -0
- package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
- package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
- package/dist/types/excalidraw/components/TTDDialog/utils/mermaidValidation.d.ts +1 -0
- package/dist/types/excalidraw/components/TextField.d.ts +1 -0
- package/dist/types/excalidraw/components/Toast.d.ts +11 -7
- package/dist/types/excalidraw/components/ToolPopover.d.ts +22 -0
- package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
- package/dist/types/excalidraw/components/Tools.d.ts +151 -0
- package/dist/types/excalidraw/components/Tooltip.d.ts +15 -1
- package/dist/types/excalidraw/components/TopPicksDnD/TopPicksContextMenu.d.ts +14 -0
- package/dist/types/excalidraw/components/TopPicksDnD/TopPicksTip.d.ts +11 -0
- package/dist/types/excalidraw/components/TopPicksDnD/topPicksDnD.d.ts +58 -0
- package/dist/types/excalidraw/components/Trans.d.ts +2 -2
- package/dist/types/excalidraw/components/UserList.d.ts +3 -2
- package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
- package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +10 -4
- package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +3 -0
- package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +47 -35
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +7 -5
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +3 -3
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +13 -22
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +5 -4
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -2
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +2 -2
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +6 -6
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +3 -4
- package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +2 -2
- package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
- package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
- package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +1 -1
- package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +3 -3
- package/dist/types/excalidraw/components/icons.d.ts +51 -23
- package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +26 -3
- package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +39 -35
- package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
- package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
- package/dist/types/excalidraw/data/blob.d.ts +373 -8
- package/dist/types/excalidraw/data/encode.d.ts +4 -4
- package/dist/types/excalidraw/data/encryption.d.ts +5 -5
- package/dist/types/excalidraw/data/filesystem.d.ts +5 -7
- package/dist/types/excalidraw/data/index.d.ts +8 -9
- package/dist/types/excalidraw/data/json.d.ts +192 -3
- package/dist/types/excalidraw/data/library.d.ts +25 -10
- package/dist/types/excalidraw/data/resave.d.ts +7 -2
- package/dist/types/excalidraw/data/restore.d.ts +25 -10
- package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
- package/dist/types/excalidraw/editor-jotai.d.ts +11 -11
- package/dist/types/excalidraw/eraser/index.d.ts +2 -3
- package/dist/types/excalidraw/errors.d.ts +14 -0
- package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
- package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
- package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +2 -2
- package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +4 -3
- package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -2
- package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +5 -5
- package/dist/types/excalidraw/i18n.d.ts +2 -2
- package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
- package/dist/types/excalidraw/lasso/index.d.ts +2 -3
- package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
- package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
- package/dist/types/excalidraw/renderer/animation.d.ts +16 -0
- package/dist/types/excalidraw/renderer/helpers.d.ts +31 -8
- package/dist/types/excalidraw/renderer/interactiveScene.d.ts +7 -15
- package/dist/types/excalidraw/scene/Renderer.d.ts +491 -19
- package/dist/types/excalidraw/scene/export.d.ts +4 -4
- package/dist/types/excalidraw/scene/index.d.ts +2 -2
- package/dist/types/excalidraw/scene/types.d.ts +28 -8
- package/dist/types/excalidraw/shortcut.d.ts +1 -0
- package/dist/types/excalidraw/snapping.d.ts +12 -12
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +1 -1
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +1 -1
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +1 -1
- package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +2 -2
- package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +1 -1
- package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
- package/dist/types/excalidraw/types.d.ts +644 -60
- package/dist/types/excalidraw/viewport.d.ts +302 -0
- package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +14 -5
- package/dist/types/fractional-indexing/src/index.d.ts +29 -0
- package/dist/types/laser-pointer/src/index.d.ts +2 -0
- package/dist/types/laser-pointer/src/math.d.ts +16 -0
- package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
- package/dist/types/laser-pointer/src/state.d.ts +36 -0
- package/dist/types/math/src/constants.d.ts +0 -1
- package/dist/types/math/src/curve.d.ts +23 -13
- package/dist/types/math/src/index.d.ts +1 -0
- package/dist/types/math/src/pca.d.ts +79 -0
- package/dist/types/math/src/point.d.ts +8 -2
- package/dist/types/math/src/polygon.d.ts +26 -2
- package/dist/types/math/src/range.d.ts +1 -3
- package/dist/types/math/src/segment.d.ts +9 -3
- package/dist/types/math/src/types.d.ts +25 -1
- package/dist/types/utils/src/export.d.ts +9 -8
- package/dist/types/utils/src/index.d.ts +1 -2
- package/dist/types/utils/src/shape.d.ts +8 -8
- package/package.json +10 -3
- package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
- package/dist/types/excalidraw/charts.d.ts +0 -27
- package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +0 -4
- package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -16
- package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
- package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
- package/dist/types/excalidraw/components/InitializeApp.d.ts +0 -10
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +0 -9
- package/dist/types/excalidraw/components/ToolButton.d.ts +0 -49
- package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +0 -8
- package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +0 -10
- package/dist/types/excalidraw/components/shapes.d.ts +0 -190
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +0 -58
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +0 -19
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +0 -85
- package/dist/types/excalidraw/cursor.d.ts +0 -5
- package/dist/types/excalidraw/data/reconcile.d.ts +0 -7
- package/dist/types/excalidraw/index.d.ts +0 -47
- package/dist/types/excalidraw/polyfill.d.ts +0 -2
- package/dist/types/excalidraw/scene/scroll.d.ts +0 -23
- package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
- package/dist/types/utils/src/bbox.d.ts +0 -9
- package/dist/types/utils/src/withinBounds.d.ts +0 -19
|
@@ -11,30 +11,30 @@ export type ActionResult = {
|
|
|
11
11
|
captureUpdate: CaptureUpdateActionType;
|
|
12
12
|
replaceFiles?: boolean;
|
|
13
13
|
} | false;
|
|
14
|
-
type ActionFn = (elements: readonly OrderedExcalidrawElement[], appState: Readonly<AppState>, formData:
|
|
14
|
+
type ActionFn<TData = any> = (elements: readonly OrderedExcalidrawElement[], appState: Readonly<AppState>, formData: TData | undefined, app: AppClassProperties) => ActionResult | Promise<ActionResult>;
|
|
15
15
|
export type UpdaterFn = (res: ActionResult) => void;
|
|
16
16
|
export type ActionFilterFn = (action: Action) => void;
|
|
17
|
-
export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "
|
|
17
|
+
export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "zenMode" | "objectsSnapMode" | "arrowBinding" | "midpointSnapping" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeBucketFillBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeSloppiness" | "changeFreedrawMode" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeArrowProperties" | "changeOpacity" | "changeFontSize" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "clearCanvas" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "addToLibrary" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "flipHorizontal" | "flipVertical" | "deselect" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "createContainerFromText" | "wrapTextInContainer" | "commandPalette" | "autoResize" | "elementStats" | "searchMenu" | "copyElementLink" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame" | "toggleShapeSwitch" | "togglePolygon";
|
|
18
18
|
export type PanelComponentProps = {
|
|
19
19
|
elements: readonly ExcalidrawElement[];
|
|
20
|
-
appState:
|
|
20
|
+
appState: UIAppState;
|
|
21
21
|
updateData: <T = any>(formData?: T) => void;
|
|
22
22
|
appProps: ExcalidrawProps;
|
|
23
23
|
data?: Record<string, any>;
|
|
24
24
|
app: AppClassProperties;
|
|
25
25
|
renderAction: (name: ActionName, data?: PanelComponentProps["data"]) => React.JSX.Element | null;
|
|
26
26
|
};
|
|
27
|
-
export interface Action {
|
|
27
|
+
export interface Action<TData = any> {
|
|
28
28
|
name: ActionName;
|
|
29
|
-
label: string | ((elements: readonly ExcalidrawElement[], appState: Readonly<
|
|
29
|
+
label: string | ((elements: readonly ExcalidrawElement[], appState: Readonly<UIAppState>, app: AppClassProperties) => string);
|
|
30
30
|
keywords?: string[];
|
|
31
31
|
icon?: React.ReactNode | ((appState: UIAppState, elements: readonly ExcalidrawElement[]) => React.ReactNode);
|
|
32
32
|
PanelComponent?: React.FC<PanelComponentProps>;
|
|
33
|
-
perform: ActionFn
|
|
33
|
+
perform: ActionFn<TData>;
|
|
34
34
|
keyPriority?: number;
|
|
35
35
|
keyTest?: (event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: AppClassProperties) => boolean;
|
|
36
36
|
predicate?: (elements: readonly ExcalidrawElement[], appState: AppState, appProps: ExcalidrawProps, app: AppClassProperties) => boolean;
|
|
37
|
-
checked?: (appState: Readonly<
|
|
37
|
+
checked?: (appState: Readonly<UIAppState>) => boolean;
|
|
38
38
|
trackEvent: false | {
|
|
39
39
|
category: "toolbar" | "element" | "canvas" | "export" | "history" | "menu" | "collab" | "hyperlink" | "search_menu" | "shape_switch";
|
|
40
40
|
action?: string;
|
|
@@ -43,5 +43,9 @@ export interface Action {
|
|
|
43
43
|
/** if set to `true`, allow action to be performed in viewMode.
|
|
44
44
|
* Defaults to `false` */
|
|
45
45
|
viewMode?: boolean;
|
|
46
|
+
/** if set to `true`, the action counts as canvas navigation and remains
|
|
47
|
+
* available in the non-interactive editor when
|
|
48
|
+
* `interaction: { enabled: { navigation: true } }`. Defaults to `false` */
|
|
49
|
+
navigation?: boolean;
|
|
46
50
|
}
|
|
47
51
|
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { LaserPointer } from "@excalidraw/laser-pointer";
|
|
2
2
|
import type { LaserPointerOptions } from "@excalidraw/laser-pointer";
|
|
3
|
-
import type { AnimationFrameHandler } from "./animation-frame-handler";
|
|
4
3
|
import type App from "./components/App";
|
|
5
4
|
export interface Trail {
|
|
6
5
|
start(container: SVGSVGElement): void;
|
|
@@ -15,7 +14,6 @@ export interface AnimatedTrailOptions {
|
|
|
15
14
|
animateTrail?: boolean;
|
|
16
15
|
}
|
|
17
16
|
export declare class AnimatedTrail implements Trail {
|
|
18
|
-
private animationFrameHandler;
|
|
19
17
|
protected app: App;
|
|
20
18
|
private options;
|
|
21
19
|
private currentTrail?;
|
|
@@ -23,9 +21,12 @@ export declare class AnimatedTrail implements Trail {
|
|
|
23
21
|
private container?;
|
|
24
22
|
private trailElement;
|
|
25
23
|
private trailAnimation?;
|
|
26
|
-
|
|
24
|
+
private key;
|
|
25
|
+
private static counter;
|
|
26
|
+
constructor(app: App, options: Partial<LaserPointerOptions> & Partial<AnimatedTrailOptions>);
|
|
27
27
|
get hasCurrentTrail(): boolean;
|
|
28
28
|
hasLastPoint(x: number, y: number): boolean;
|
|
29
|
+
private cleanup;
|
|
29
30
|
start(container?: SVGSVGElement): void;
|
|
30
31
|
stop(): void;
|
|
31
32
|
startPath(x: number, y: number): void;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { AppState, NormalizedZoomValue } from "./types";
|
|
1
|
+
import type { AppState, InputDevice, 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
4
|
viewBackgroundColor?: string | undefined;
|
|
5
|
+
theme?: import("@excalidraw/element/types").Theme | undefined;
|
|
5
6
|
name?: string | null | undefined;
|
|
6
7
|
zoom?: Readonly<{
|
|
7
8
|
value: NormalizedZoomValue;
|
|
@@ -12,30 +13,47 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
12
13
|
selectedElementIds?: Readonly<{
|
|
13
14
|
[id: string]: true;
|
|
14
15
|
}> | undefined;
|
|
15
|
-
|
|
16
|
+
activeTool?: ({
|
|
17
|
+
lastActiveTool: import("./types").ActiveTool | null;
|
|
18
|
+
locked: boolean;
|
|
19
|
+
fromSelection: boolean;
|
|
20
|
+
} & import("./types").ActiveTool) | undefined;
|
|
16
21
|
selectedGroupIds?: {
|
|
17
22
|
[groupId: string]: boolean;
|
|
18
23
|
} | undefined;
|
|
19
24
|
selectedLinearElement?: import("@excalidraw/element").LinearElementEditor | null | undefined;
|
|
25
|
+
isBindingEnabled?: boolean | undefined;
|
|
26
|
+
isMidpointSnappingEnabled?: boolean | undefined;
|
|
27
|
+
gridModeEnabled?: boolean | undefined;
|
|
20
28
|
zenModeEnabled?: boolean | undefined;
|
|
29
|
+
shouldCacheIgnoreZoom?: boolean | undefined;
|
|
30
|
+
exportScale?: number | undefined;
|
|
31
|
+
currentItemArrowType?: "round" | "sharp" | "elbow" | undefined;
|
|
32
|
+
gridSize?: number | undefined;
|
|
33
|
+
bindMode?: import("@excalidraw/element/types").BindMode | undefined;
|
|
21
34
|
showWelcomeScreen?: boolean | undefined;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
35
|
+
boxSelectionMode?: import("./types").BoxSelectionMode | undefined;
|
|
36
|
+
bindingPreference?: "enabled" | "disabled" | undefined;
|
|
37
|
+
showHints?: boolean | undefined;
|
|
38
|
+
inputDevice?: InputDevice | undefined;
|
|
39
|
+
preferredSelectionTool?: {
|
|
40
|
+
type: "selection" | "lasso";
|
|
41
|
+
initialized: boolean;
|
|
42
|
+
} | undefined;
|
|
27
43
|
penMode?: boolean | undefined;
|
|
28
44
|
penDetected?: boolean | undefined;
|
|
29
45
|
exportBackground?: boolean | undefined;
|
|
30
46
|
exportEmbedScene?: boolean | undefined;
|
|
31
47
|
exportWithDarkMode?: boolean | undefined;
|
|
32
|
-
exportScale?: number | undefined;
|
|
33
48
|
currentItemStrokeColor?: string | undefined;
|
|
49
|
+
currentItemStickynoteStrokeColor?: string | undefined;
|
|
50
|
+
currentItemStickynoteBackgroundColor?: string | undefined;
|
|
34
51
|
currentItemBackgroundColor?: string | undefined;
|
|
35
52
|
currentItemFillStyle?: import("@excalidraw/element/types").FillStyle | undefined;
|
|
36
|
-
|
|
53
|
+
currentItemStrokeWidthKey?: import("@excalidraw/common").StrokeWidthKey | undefined;
|
|
37
54
|
currentItemStrokeStyle?: import("@excalidraw/element/types").StrokeStyle | undefined;
|
|
38
55
|
currentItemRoughness?: number | undefined;
|
|
56
|
+
currentItemStrokeVariability?: import("@excalidraw/element/types").StrokeVariability | undefined;
|
|
39
57
|
currentItemOpacity?: number | undefined;
|
|
40
58
|
currentItemFontFamily?: number | undefined;
|
|
41
59
|
currentItemFontSize?: number | undefined;
|
|
@@ -43,48 +61,50 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
43
61
|
currentItemStartArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
|
|
44
62
|
currentItemEndArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
|
|
45
63
|
currentItemRoundness?: import("@excalidraw/element/types").StrokeRoundness | undefined;
|
|
46
|
-
currentItemArrowType?: "round" | "sharp" | "elbow" | undefined;
|
|
47
64
|
cursorButton?: "up" | "down" | undefined;
|
|
48
65
|
scrolledOutside?: boolean | undefined;
|
|
49
|
-
openMenu?: "canvas" |
|
|
66
|
+
openMenu?: "canvas" | null | undefined;
|
|
50
67
|
openSidebar?: {
|
|
51
|
-
name:
|
|
52
|
-
tab?:
|
|
68
|
+
name: import("./types").SidebarName;
|
|
69
|
+
tab?: import("./types").SidebarTabName;
|
|
53
70
|
} | null | undefined;
|
|
54
71
|
defaultSidebarDockedPreference?: boolean | undefined;
|
|
55
72
|
lastPointerDownWith?: import("@excalidraw/element/types").PointerType | undefined;
|
|
56
73
|
previousSelectedElementIds?: {
|
|
57
74
|
[id: string]: true;
|
|
58
75
|
} | undefined;
|
|
59
|
-
shouldCacheIgnoreZoom?: boolean | undefined;
|
|
60
|
-
gridSize?: number | undefined;
|
|
61
76
|
gridStep?: number | undefined;
|
|
62
|
-
gridModeEnabled?: boolean | undefined;
|
|
63
77
|
stats?: {
|
|
64
78
|
open: boolean;
|
|
65
79
|
panels: number;
|
|
66
80
|
} | undefined;
|
|
67
|
-
currentChartType?: import("@excalidraw/element/types").ChartType | undefined;
|
|
68
81
|
objectsSnapModeEnabled?: boolean | undefined;
|
|
69
82
|
lockedMultiSelections?: {
|
|
70
83
|
[groupId: string]: true;
|
|
71
84
|
} | undefined;
|
|
72
|
-
|
|
85
|
+
colorTopPicks?: {
|
|
86
|
+
elementStroke: readonly string[] | null;
|
|
87
|
+
elementBackground: readonly string[] | null;
|
|
88
|
+
bucketFill: readonly string[] | null;
|
|
89
|
+
stickyNoteStroke: readonly string[] | null;
|
|
90
|
+
stickyNoteBackground: readonly string[] | null;
|
|
91
|
+
} | undefined;
|
|
92
|
+
fontTopPicks?: readonly number[] | null | undefined;
|
|
73
93
|
};
|
|
74
94
|
export declare const cleanAppStateForExport: (appState: Partial<AppState>) => {
|
|
75
95
|
viewBackgroundColor?: string | undefined;
|
|
96
|
+
gridModeEnabled?: boolean | undefined;
|
|
76
97
|
gridSize?: number | undefined;
|
|
77
98
|
gridStep?: number | undefined;
|
|
78
|
-
gridModeEnabled?: boolean | undefined;
|
|
79
99
|
lockedMultiSelections?: {
|
|
80
100
|
[groupId: string]: true;
|
|
81
101
|
} | undefined;
|
|
82
102
|
};
|
|
83
103
|
export declare const clearAppStateForDatabase: (appState: Partial<AppState>) => {
|
|
84
104
|
viewBackgroundColor?: string | undefined;
|
|
105
|
+
gridModeEnabled?: boolean | undefined;
|
|
85
106
|
gridSize?: number | undefined;
|
|
86
107
|
gridStep?: number | undefined;
|
|
87
|
-
gridModeEnabled?: boolean | undefined;
|
|
88
108
|
lockedMultiSelections?: {
|
|
89
109
|
[groupId: string]: true;
|
|
90
110
|
} | undefined;
|
|
@@ -95,3 +115,13 @@ export declare const isEraserActive: ({ activeTool, }: {
|
|
|
95
115
|
export declare const isHandToolActive: ({ activeTool, }: {
|
|
96
116
|
activeTool: AppState["activeTool"];
|
|
97
117
|
}) => boolean;
|
|
118
|
+
/**
|
|
119
|
+
* The device the wheel mappings follow for the given preference.
|
|
120
|
+
*
|
|
121
|
+
* `auto` is meant to detect the device from the wheel events themselves
|
|
122
|
+
* (line vs. pixel delta modes, whole vs. fractional deltas, one vs. two axes
|
|
123
|
+
* moving, event cadence and momentum tails). That is not implemented yet, so
|
|
124
|
+
* it resolves to `trackpad` — the mapping the editor has always had, and the
|
|
125
|
+
* default to keep until detection exists.
|
|
126
|
+
*/
|
|
127
|
+
export declare const resolveInputDevice: (inputDevice: InputDevice) => Exclude<InputDevice, "auto">;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Radians } from "@excalidraw/math";
|
|
2
|
+
export declare const CARTESIAN_BASE_SLOT_WIDTH = 44;
|
|
3
|
+
export declare const CARTESIAN_BAR_SLOT_EXTRA_PER_SERIES = 22;
|
|
4
|
+
export declare const CARTESIAN_BAR_SLOT_EXTRA_MAX = 66;
|
|
5
|
+
export declare const CARTESIAN_LINE_SLOT_WIDTH = 48;
|
|
6
|
+
export declare const CARTESIAN_GAP = 14;
|
|
7
|
+
export declare const CARTESIAN_BAR_HEIGHT = 304;
|
|
8
|
+
export declare const CARTESIAN_LINE_HEIGHT = 320;
|
|
9
|
+
export declare const CARTESIAN_LABEL_ROTATION: Radians;
|
|
10
|
+
export declare const CARTESIAN_LABEL_MIN_WIDTH = 28;
|
|
11
|
+
export declare const CARTESIAN_LABEL_SLOT_PADDING = 4;
|
|
12
|
+
export declare const CARTESIAN_LABEL_AXIS_CLEARANCE = 2;
|
|
13
|
+
export declare const CARTESIAN_LABEL_MAX_WIDTH_BUFFER = 10;
|
|
14
|
+
export declare const CARTESIAN_LABEL_ROTATED_WIDTH_BUFFER = 10;
|
|
15
|
+
export declare const CARTESIAN_LABEL_OVERFLOW_PREFERENCE_BUFFER = 8;
|
|
16
|
+
export declare const BAR_GAP = 12;
|
|
17
|
+
export declare const BAR_HEIGHT = 256;
|
|
18
|
+
export declare const GRID_OPACITY = 10;
|
|
19
|
+
export declare const RADAR_GRID_LEVELS = 4;
|
|
20
|
+
export declare const RADAR_LABEL_OFFSET: number;
|
|
21
|
+
export declare const RADAR_PADDING: number;
|
|
22
|
+
export declare const RADAR_SINGLE_SERIES_LOG_SCALE_THRESHOLD = 100;
|
|
23
|
+
export declare const RADAR_AXIS_LABEL_MAX_WIDTH = 140;
|
|
24
|
+
export declare const RADAR_AXIS_LABEL_ALIGNMENT_THRESHOLD = 0.35;
|
|
25
|
+
export declare const RADAR_AXIS_LABEL_CLEARANCE: number;
|
|
26
|
+
export declare const RADAR_LEGEND_SWATCH_SIZE = 20;
|
|
27
|
+
export declare const RADAR_LEGEND_ITEM_GAP: number;
|
|
28
|
+
export declare const RADAR_LEGEND_TEXT_GAP = 12;
|
|
29
|
+
export declare const commonProps: {
|
|
30
|
+
readonly fillStyle: "hachure";
|
|
31
|
+
readonly fontFamily: number;
|
|
32
|
+
readonly fontSize: 20;
|
|
33
|
+
readonly opacity: 100;
|
|
34
|
+
readonly roughness: 1;
|
|
35
|
+
readonly strokeColor: "#1e1e1e";
|
|
36
|
+
readonly roundness: null;
|
|
37
|
+
readonly strokeStyle: "solid";
|
|
38
|
+
readonly strokeWidth: 1;
|
|
39
|
+
readonly verticalAlign: string;
|
|
40
|
+
readonly locked: false;
|
|
41
|
+
};
|
|
42
|
+
export type CartesianChartType = "bar" | "line";
|
|
43
|
+
export type CartesianChartLayout = {
|
|
44
|
+
slotWidth: number;
|
|
45
|
+
gap: number;
|
|
46
|
+
chartHeight: number;
|
|
47
|
+
xLabelMaxWidth: number;
|
|
48
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { getFontString } from "@excalidraw/common";
|
|
2
|
+
import type { ChartType } from "@excalidraw/element/types";
|
|
3
|
+
import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
4
|
+
import { type CartesianChartLayout, type CartesianChartType } from "./charts.constants";
|
|
5
|
+
import type { ChartElements, Spreadsheet, SpreadsheetSeries } from "./charts.types";
|
|
6
|
+
export declare const isSpreadsheetValidForChartType: (spreadsheet: Spreadsheet | null, chartType: ChartType) => boolean;
|
|
7
|
+
export declare const getCartesianChartLayout: (chartType: CartesianChartType, seriesCount: number) => CartesianChartLayout;
|
|
8
|
+
export declare const getChartDimensions: (spreadsheet: Spreadsheet, layout: CartesianChartLayout) => {
|
|
9
|
+
chartWidth: number;
|
|
10
|
+
chartHeight: number;
|
|
11
|
+
};
|
|
12
|
+
export declare const getRadarDimensions: () => {
|
|
13
|
+
chartWidth: number;
|
|
14
|
+
chartHeight: number;
|
|
15
|
+
};
|
|
16
|
+
export declare const getSeriesColors: (seriesCount: number, colorOffset: number) => readonly string[];
|
|
17
|
+
export declare const getColorOffset: (colorSeed?: number) => number;
|
|
18
|
+
export declare const getBackgroundColor: (colorOffset: number) => "#fff5f5" | "#ffc9c9" | "#ff8787" | "#fa5252" | "#e03131" | "#fff0f6" | "#fcc2d7" | "#f783ac" | "#e64980" | "#c2255c" | "#f8f0fc" | "#eebefa" | "#da77f2" | "#be4bdb" | "#9c36b5" | "#f3f0ff" | "#d0bfff" | "#9775fa" | "#7950f2" | "#6741d9" | "#e7f5ff" | "#a5d8ff" | "#4dabf7" | "#228be6" | "#1971c2" | "#e3fafc" | "#99e9f2" | "#3bc9db" | "#15aabf" | "#0c8599" | "#e6fcf5" | "#96f2d7" | "#38d9a9" | "#12b886" | "#099268" | "#ebfbee" | "#b2f2bb" | "#69db7c" | "#40c057" | "#2f9e44" | "#fff9db" | "#ffec99" | "#ffd43b" | "#fab005" | "#f08c00" | "#fff4e6" | "#ffd8a8" | "#ffa94d" | "#fd7e14" | "#e8590c";
|
|
19
|
+
export declare const getRadarValueScale: (series: SpreadsheetSeries[], _labelsLength: number) => {
|
|
20
|
+
renderSteps: boolean;
|
|
21
|
+
normalize: (value: number, _axisIndex: number) => number;
|
|
22
|
+
};
|
|
23
|
+
export declare const getRadarDisplayText: (text: string, fontString: ReturnType<typeof getFontString>, maxWidth: number) => string;
|
|
24
|
+
export declare const createRadarAxisLabels: (labels: readonly string[], angles: readonly number[], centerX: number, centerY: number, radius: number, backgroundColor: string) => {
|
|
25
|
+
axisLabels: ChartElements;
|
|
26
|
+
axisLabelTopY: number;
|
|
27
|
+
axisLabelBottomY: number;
|
|
28
|
+
};
|
|
29
|
+
export declare const createSeriesLegend: (series: SpreadsheetSeries[], seriesColors: readonly string[], centerX: number, minLegendTopY: number, fallbackLegendY: number, backgroundColor: string) => ChartElements;
|
|
30
|
+
export declare const getRotatedTextElementBottom: (element: NonDeletedExcalidrawElement) => number;
|
|
31
|
+
export declare const chartXLabels: (spreadsheet: Spreadsheet, x: number, y: number, backgroundColor: string, layout: CartesianChartLayout) => ChartElements;
|
|
32
|
+
export declare const chartBaseElements: (spreadsheet: Spreadsheet, x: number, y: number, backgroundColor: string, layout: CartesianChartLayout, maxValue?: number, debug?: boolean) => ChartElements;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type ParseSpreadsheetResult } from "./charts.types";
|
|
2
|
+
/**
|
|
3
|
+
* @private exported for testing
|
|
4
|
+
*/
|
|
5
|
+
export declare const tryParseNumber: (s: string) => number | null;
|
|
6
|
+
/**
|
|
7
|
+
* @private exported for testing
|
|
8
|
+
*/
|
|
9
|
+
export declare const tryParseCells: (cells: string[][]) => ParseSpreadsheetResult;
|
|
10
|
+
export declare const tryParseSpreadsheet: (text: string) => ParseSpreadsheetResult;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
+
export type ChartElements = readonly NonDeletedExcalidrawElement[];
|
|
3
|
+
export interface Spreadsheet {
|
|
4
|
+
title: string | null;
|
|
5
|
+
labels: string[] | null;
|
|
6
|
+
series: SpreadsheetSeries[];
|
|
7
|
+
}
|
|
8
|
+
export interface SpreadsheetSeries {
|
|
9
|
+
title: string | null;
|
|
10
|
+
values: number[];
|
|
11
|
+
}
|
|
12
|
+
export type ParseSpreadsheetResult = {
|
|
13
|
+
ok: false;
|
|
14
|
+
reason: string;
|
|
15
|
+
} | {
|
|
16
|
+
ok: true;
|
|
17
|
+
data: Spreadsheet;
|
|
18
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ChartType } from "@excalidraw/element/types";
|
|
2
|
+
import { tryParseCells, tryParseNumber, tryParseSpreadsheet } from "./charts.parse";
|
|
3
|
+
import type { ChartElements, Spreadsheet } from "./charts.types";
|
|
4
|
+
export { type ParseSpreadsheetResult, type Spreadsheet, type SpreadsheetSeries, type ChartElements, } from "./charts.types";
|
|
5
|
+
export { isSpreadsheetValidForChartType } from "./charts.helpers";
|
|
6
|
+
export { tryParseCells, tryParseNumber, tryParseSpreadsheet };
|
|
7
|
+
export declare const renderSpreadsheet: (chartType: ChartType, spreadsheet: Spreadsheet, x: number, y: number, colorSeed?: number) => ChartElements | null;
|
|
@@ -2,15 +2,12 @@ import { ALLOWED_PASTE_MIME_TYPES } from "@excalidraw/common";
|
|
|
2
2
|
import type { ValueOf } from "@excalidraw/common/utility-types";
|
|
3
3
|
import type { IMAGE_MIME_TYPES, STRING_MIME_TYPES } from "@excalidraw/common";
|
|
4
4
|
import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
5
|
-
import type { FileSystemHandle } from "./data/filesystem";
|
|
6
|
-
import type { Spreadsheet } from "./charts";
|
|
7
5
|
import type { BinaryFiles } from "./types";
|
|
8
6
|
export type PastedMixedContent = {
|
|
9
7
|
type: "text" | "imageUrl";
|
|
10
8
|
value: string;
|
|
11
9
|
}[];
|
|
12
10
|
export interface ClipboardData {
|
|
13
|
-
spreadsheet?: Spreadsheet;
|
|
14
11
|
elements?: readonly ExcalidrawElement[];
|
|
15
12
|
files?: BinaryFiles;
|
|
16
13
|
text?: string;
|
|
@@ -23,26 +20,16 @@ export declare const probablySupportsClipboardReadText: boolean;
|
|
|
23
20
|
export declare const probablySupportsClipboardWriteText: boolean;
|
|
24
21
|
export declare const probablySupportsClipboardBlob: boolean;
|
|
25
22
|
export declare const createPasteEvent: ({ types, files, }: {
|
|
26
|
-
types?: {
|
|
27
|
-
|
|
28
|
-
"text/html"?: string | File | undefined;
|
|
29
|
-
"image/svg+xml"?: string | File | undefined;
|
|
30
|
-
"image/png"?: string | File | undefined;
|
|
31
|
-
"image/jpeg"?: string | File | undefined;
|
|
32
|
-
"image/gif"?: string | File | undefined;
|
|
33
|
-
"image/webp"?: string | File | undefined;
|
|
34
|
-
"image/bmp"?: string | File | undefined;
|
|
35
|
-
"image/x-icon"?: string | File | undefined;
|
|
36
|
-
"image/avif"?: string | File | undefined;
|
|
37
|
-
"image/jfif"?: string | File | undefined;
|
|
38
|
-
} | undefined;
|
|
39
|
-
files?: File[] | undefined;
|
|
23
|
+
types?: { [key in AllowedPasteMimeTypes]?: string | File; };
|
|
24
|
+
files?: File[];
|
|
40
25
|
}) => ClipboardEvent;
|
|
41
26
|
export declare const serializeAsClipboardJSON: ({ elements, files, }: {
|
|
42
27
|
elements: readonly NonDeletedExcalidrawElement[];
|
|
43
28
|
files: BinaryFiles | null;
|
|
44
29
|
}) => string;
|
|
45
|
-
export declare const copyToClipboard: (elements: readonly NonDeletedExcalidrawElement[], files: BinaryFiles | null,
|
|
30
|
+
export declare const copyToClipboard: (elements: readonly NonDeletedExcalidrawElement[], files: BinaryFiles | null,
|
|
31
|
+
/** supply if available to make the operation more certain to succeed */
|
|
32
|
+
clipboardEvent?: ClipboardEvent | null) => Promise<void>;
|
|
46
33
|
/**
|
|
47
34
|
* Reads OS clipboard programmatically. May not work on all browsers.
|
|
48
35
|
* Will prompt user for permission if not granted.
|
|
@@ -64,7 +51,7 @@ type AllowedParsedDataTransferItem = {
|
|
|
64
51
|
type: ValueOf<typeof IMAGE_MIME_TYPES>;
|
|
65
52
|
kind: "file";
|
|
66
53
|
file: File;
|
|
67
|
-
fileHandle:
|
|
54
|
+
fileHandle: FileSystemFileHandle | null;
|
|
68
55
|
} | {
|
|
69
56
|
type: ValueOf<typeof STRING_MIME_TYPES>;
|
|
70
57
|
kind: "string";
|
|
@@ -74,7 +61,7 @@ type ParsedDataTransferItem = {
|
|
|
74
61
|
type: string;
|
|
75
62
|
kind: "file";
|
|
76
63
|
file: File;
|
|
77
|
-
fileHandle:
|
|
64
|
+
fileHandle: FileSystemFileHandle | null;
|
|
78
65
|
} | {
|
|
79
66
|
type: string;
|
|
80
67
|
kind: "string";
|
|
@@ -86,7 +73,7 @@ type ParsedDataTransferItemType<T extends AllowedParsedDataTransferItem["type"]>
|
|
|
86
73
|
export type ParsedDataTransferFile = Extract<AllowedParsedDataTransferItem, {
|
|
87
74
|
kind: "file";
|
|
88
75
|
}>;
|
|
89
|
-
type ParsedDataTranferList = ParsedDataTransferItem[] & {
|
|
76
|
+
export type ParsedDataTranferList = ParsedDataTransferItem[] & {
|
|
90
77
|
/**
|
|
91
78
|
* Only allows filtering by known `string` data types, since `file`
|
|
92
79
|
* types can have multiple items of the same type (e.g. multiple image files)
|
|
@@ -101,29 +88,17 @@ type ParsedDataTranferList = ParsedDataTransferItem[] & {
|
|
|
101
88
|
getData: typeof getDataTransferItemData;
|
|
102
89
|
getFiles: typeof getDataTransferFiles;
|
|
103
90
|
};
|
|
104
|
-
declare const findDataTransferItemType: <T extends ValueOf<
|
|
105
|
-
|
|
106
|
-
readonly html: "text/html";
|
|
107
|
-
readonly json: "application/json";
|
|
108
|
-
readonly excalidraw: "application/vnd.excalidraw+json";
|
|
109
|
-
readonly excalidrawlib: "application/vnd.excalidrawlib+json";
|
|
110
|
-
readonly excalidrawlibIds: "application/vnd.excalidrawlib.ids+json";
|
|
111
|
-
}>>(this: ParsedDataTranferList, type: T) => ParsedDataTransferItemType<T> | null;
|
|
112
|
-
declare const getDataTransferItemData: <T extends ValueOf<{
|
|
113
|
-
readonly text: "text/plain";
|
|
114
|
-
readonly html: "text/html";
|
|
115
|
-
readonly json: "application/json";
|
|
116
|
-
readonly excalidraw: "application/vnd.excalidraw+json";
|
|
117
|
-
readonly excalidrawlib: "application/vnd.excalidrawlib+json";
|
|
118
|
-
readonly excalidrawlibIds: "application/vnd.excalidrawlib.ids+json";
|
|
119
|
-
}>>(this: ParsedDataTranferList, type: T) => ParsedDataTransferItemType<ValueOf<typeof STRING_MIME_TYPES>>["value"] | null;
|
|
91
|
+
declare const findDataTransferItemType: <T extends ValueOf<typeof STRING_MIME_TYPES>>(this: ParsedDataTranferList, type: T) => ParsedDataTransferItemType<T> | null;
|
|
92
|
+
declare const getDataTransferItemData: <T extends ValueOf<typeof STRING_MIME_TYPES>>(this: ParsedDataTranferList, type: T) => ParsedDataTransferItemType<ValueOf<typeof STRING_MIME_TYPES>>["value"] | null;
|
|
120
93
|
declare const getDataTransferFiles: (this: ParsedDataTranferList) => ParsedDataTransferFile[];
|
|
94
|
+
/** @returns list of MIME types, synchronously */
|
|
95
|
+
export declare const parseDataTransferEventMimeTypes: (event: ClipboardEvent | DragEvent | React.DragEvent<HTMLDivElement>) => Set<string>;
|
|
121
96
|
export declare const parseDataTransferEvent: (event: ClipboardEvent | DragEvent | React.DragEvent<HTMLDivElement>) => Promise<ParsedDataTranferList>;
|
|
122
97
|
/**
|
|
123
98
|
* Attempts to parse clipboard event.
|
|
124
99
|
*/
|
|
125
100
|
export declare const parseClipboard: (dataList: ParsedDataTranferList, isPlainPaste?: boolean) => Promise<ClipboardData>;
|
|
126
101
|
export declare const copyBlobToClipboardAsPng: (blob: Blob | Promise<Blob>) => Promise<void>;
|
|
127
|
-
export declare const copyTextToSystemClipboard: (text: string | null, clipboardEvent?: ClipboardEvent | null) => Promise<void>;
|
|
102
|
+
export declare const copyTextToSystemClipboard: <MimeType extends ValueOf<typeof STRING_MIME_TYPES>>(text: string | { [K in MimeType]: string; } | null, clipboardEvent?: ClipboardEvent | null) => Promise<void>;
|
|
128
103
|
export declare const isClipboardEvent: (event: React.SyntheticEvent | Event) => event is ClipboardEvent;
|
|
129
104
|
export {};
|
|
@@ -1,15 +1,22 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { NonDeletedElementsMap, NonDeletedSceneElementsMap } from "@excalidraw/element/types";
|
|
2
2
|
import "./Actions.scss";
|
|
3
|
-
import type { AppClassProperties,
|
|
3
|
+
import type { AppClassProperties, UIAppState, AppState } from "../types";
|
|
4
4
|
import type { ActionManager } from "../actions/manager";
|
|
5
|
-
export
|
|
6
|
-
|
|
5
|
+
export { canChangeStrokeColor, canChangeBackgroundColor, } from "./shapeActionPredicates";
|
|
6
|
+
/**
|
|
7
|
+
* Full styles panel: the wide, always-expanded layout used on desktop when the
|
|
8
|
+
* UI is in "full" mode.
|
|
9
|
+
*/
|
|
7
10
|
export declare const SelectedShapeActions: ({ appState, elementsMap, renderAction, app, }: {
|
|
8
11
|
appState: UIAppState;
|
|
9
12
|
elementsMap: NonDeletedElementsMap | NonDeletedSceneElementsMap;
|
|
10
13
|
renderAction: ActionManager["renderAction"];
|
|
11
14
|
app: AppClassProperties;
|
|
12
15
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
/**
|
|
17
|
+
* Compact styles panel — the collapsed, popover-driven layout used on tablets
|
|
18
|
+
* and on desktop when the UI is in "compact" mode.
|
|
19
|
+
*/
|
|
13
20
|
export declare const CompactShapeActions: ({ appState, elementsMap, renderAction, app, setAppState, }: {
|
|
14
21
|
appState: UIAppState;
|
|
15
22
|
elementsMap: NonDeletedElementsMap | NonDeletedSceneElementsMap;
|
|
@@ -17,21 +24,29 @@ export declare const CompactShapeActions: ({ appState, elementsMap, renderAction
|
|
|
17
24
|
app: AppClassProperties;
|
|
18
25
|
setAppState: React.Component<any, AppState>["setState"];
|
|
19
26
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
-
|
|
21
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Mobile styles panel — the horizontal action bar used on phones, with an
|
|
29
|
+
* overflow measurement that promotes duplicate/delete out of the popover when
|
|
30
|
+
* there is room.
|
|
31
|
+
*/
|
|
32
|
+
export declare const MobileShapeActions: ({ appState, elementsMap, renderAction, app, setAppState, }: {
|
|
22
33
|
appState: UIAppState;
|
|
34
|
+
elementsMap: NonDeletedElementsMap | NonDeletedSceneElementsMap;
|
|
35
|
+
renderAction: ActionManager["renderAction"];
|
|
23
36
|
app: AppClassProperties;
|
|
24
|
-
|
|
37
|
+
setAppState: React.Component<any, AppState>["setState"];
|
|
25
38
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
26
|
-
export declare const ZoomActions: ({ renderAction,
|
|
39
|
+
export declare const ZoomActions: ({ renderAction, }: {
|
|
27
40
|
renderAction: ActionManager["renderAction"];
|
|
28
|
-
zoom: Zoom;
|
|
29
41
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
30
42
|
export declare const UndoRedoActions: ({ renderAction, className, }: {
|
|
31
43
|
renderAction: ActionManager["renderAction"];
|
|
32
|
-
className?: string
|
|
44
|
+
className?: string;
|
|
33
45
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
34
|
-
export declare const
|
|
46
|
+
export declare const ExitZenModeButton: ({ actionManager, showExitZenModeBtn, }: {
|
|
35
47
|
actionManager: ActionManager;
|
|
36
48
|
showExitZenModeBtn: boolean;
|
|
37
49
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
50
|
+
export declare const ExitViewModeButton: ({ actionManager, }: {
|
|
51
|
+
actionManager: ActionManager;
|
|
52
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const activeConfirmDialogAtom: import("jotai
|
|
1
|
+
export declare const activeConfirmDialogAtom: import("jotai").PrimitiveAtom<"clearCanvas" | null> & {
|
|
2
2
|
init: "clearCanvas" | null;
|
|
3
3
|
};
|
|
4
4
|
export declare const ActiveConfirmDialog: () => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { LinearElementEditor } from "@excalidraw/element";
|
|
2
|
+
import type { ArrowEndpoint } from "@excalidraw/element";
|
|
3
|
+
import type { ExcalidrawElement, ExcalidrawTextElement, FixedPoint, NonDeleted, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
4
|
+
import type App from "./App";
|
|
5
|
+
import type { PointerDownState } from "../types";
|
|
6
|
+
/**
|
|
7
|
+
* Text ↔ arrow interactions.
|
|
8
|
+
*
|
|
9
|
+
* With the text tool: the free endpoint a click would bind a new text to
|
|
10
|
+
* (`AppTextTool` resolves and shows it), the binding itself, and the
|
|
11
|
+
* endpoint-bound flavor of drag-sizing a new text.
|
|
12
|
+
*
|
|
13
|
+
* With the selection tool: dragging an arrow's existing label along the arrow
|
|
14
|
+
* — the grab affordance and the drag itself.
|
|
15
|
+
*
|
|
16
|
+
* The scene-level logic lives in `@excalidraw/element`'s
|
|
17
|
+
* `arrowEndpointText.ts` and `linearElementEditor.ts`.
|
|
18
|
+
*/
|
|
19
|
+
export declare class AppArrowText {
|
|
20
|
+
private app;
|
|
21
|
+
constructor(app: App);
|
|
22
|
+
/**
|
|
23
|
+
* A free arrow endpoint a new text could be bound to. Binding an endpoint is
|
|
24
|
+
* an arrow binding, so it follows the binding toggle (ctrl/cmd) like every
|
|
25
|
+
* other one — holding it makes the text tool drop plain text instead.
|
|
26
|
+
*/
|
|
27
|
+
getBindableEndpointAtPosition(x: number, y: number): ArrowEndpoint | null;
|
|
28
|
+
/**
|
|
29
|
+
* How a text should be created to read as a label for this endpoint — the
|
|
30
|
+
* side midpoint to bind, the alignment that pins it, and the scene position
|
|
31
|
+
* it must sit at. `targetStrokeWidth` is the caller's to provide so it can
|
|
32
|
+
* guarantee it matches the stroke width the text is then created with — the
|
|
33
|
+
* binding gap derives from it (see `getTextBindingForArrowEndpoint`).
|
|
34
|
+
*/
|
|
35
|
+
getTextBinding({ arrow, startOrEnd }: ArrowEndpoint, targetStrokeWidth: number): {
|
|
36
|
+
fixedPoint: FixedPoint;
|
|
37
|
+
textAlign: import("@excalidraw/element/types").TextAlign;
|
|
38
|
+
verticalAlign: import("@excalidraw/element/types").VerticalAlign;
|
|
39
|
+
anchor: import("@excalidraw/math").GlobalPoint;
|
|
40
|
+
} | null;
|
|
41
|
+
/**
|
|
42
|
+
* Binds the arrow endpoint to the created text, at the side midpoint the
|
|
43
|
+
* placement resolved (`getTextBinding`'s `fixedPoint`).
|
|
44
|
+
*/
|
|
45
|
+
bindText({ arrow, startOrEnd }: ArrowEndpoint, text: NonDeleted<ExcalidrawTextElement>, fixedPoint: FixedPoint): void;
|
|
46
|
+
/**
|
|
47
|
+
* A text bound to an arrow endpoint can't be positioned by the drag — the
|
|
48
|
+
* binding already placed it — so only its width is dragged out. Returns
|
|
49
|
+
* whether it owned the drag.
|
|
50
|
+
*/
|
|
51
|
+
maybeDragNewText(newElement: ExcalidrawElement, pointerCoords: {
|
|
52
|
+
x: number;
|
|
53
|
+
y: number;
|
|
54
|
+
}): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Whether the arrow's label is what a grab at this position would pick up:
|
|
57
|
+
* the pointer is over the label, and no element stacked above the arrow
|
|
58
|
+
* owns the hit instead.
|
|
59
|
+
*/
|
|
60
|
+
isBoundTextGrabbable(element: NonDeletedExcalidrawElement, x: number, y: number): boolean;
|
|
61
|
+
/**
|
|
62
|
+
* The pointer-move half of dragging a label along its arrow. Owns the move
|
|
63
|
+
* whenever the gesture started on the label (`pointerDownState.hit.arrowLabel`),
|
|
64
|
+
* dragging only once past the threshold. Returns whether it owned it.
|
|
65
|
+
*/
|
|
66
|
+
maybeDragLabel(linearElementEditor: LinearElementEditor, pointerDownState: PointerDownState, pointerCoords: {
|
|
67
|
+
x: number;
|
|
68
|
+
y: number;
|
|
69
|
+
}): boolean;
|
|
70
|
+
}
|