@wildmio/excalidraw-common 0.18.0-custom.1
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/README.md +19 -0
- package/dist/dev/index.js +2695 -0
- package/dist/dev/index.js.map +7 -0
- package/dist/prod/index.js +4 -0
- package/dist/types/common/src/binary-heap.d.ts +12 -0
- package/dist/types/common/src/bounds.d.ts +10 -0
- package/dist/types/common/src/colors.d.ts +62 -0
- package/dist/types/common/src/constants.d.ts +352 -0
- package/dist/types/common/src/editorInterface.d.ts +34 -0
- package/dist/types/common/src/emitter.d.ts +16 -0
- package/dist/types/common/src/font-metadata.d.ts +46 -0
- package/dist/types/common/src/index.d.ts +15 -0
- package/dist/types/common/src/keys.d.ts +189 -0
- package/dist/types/common/src/points.d.ts +9 -0
- package/dist/types/common/src/promise-pool.d.ts +6 -0
- package/dist/types/common/src/queue.d.ts +9 -0
- package/dist/types/common/src/random.d.ts +3 -0
- package/dist/types/common/src/url.d.ts +7 -0
- package/dist/types/common/src/utility-types.d.ts +37 -0
- package/dist/types/common/src/utils.d.ts +279 -0
- package/dist/types/common/src/visualdebug.d.ts +41 -0
- package/dist/types/element/src/Scene.d.ts +80 -0
- package/dist/types/element/src/align.d.ts +8 -0
- package/dist/types/element/src/binding.d.ts +124 -0
- package/dist/types/element/src/bounds.d.ts +81 -0
- package/dist/types/element/src/collision.d.ts +36 -0
- package/dist/types/element/src/comparisons.d.ts +8 -0
- package/dist/types/element/src/containerCache.d.ts +11 -0
- package/dist/types/element/src/cropElement.d.ts +19 -0
- package/dist/types/element/src/delta.d.ts +228 -0
- package/dist/types/element/src/distance.d.ts +3 -0
- package/dist/types/element/src/distribute.d.ts +7 -0
- package/dist/types/element/src/dragElements.d.ts +33 -0
- package/dist/types/element/src/duplicate.d.ts +63 -0
- package/dist/types/element/src/elbowArrow.d.ts +17 -0
- package/dist/types/element/src/elementLink.d.ts +13 -0
- package/dist/types/element/src/embeddable.d.ts +10 -0
- package/dist/types/element/src/flowchart.d.ts +26 -0
- package/dist/types/element/src/fractionalIndex.d.ts +57 -0
- package/dist/types/element/src/frame.d.ts +74 -0
- package/dist/types/element/src/groups.d.ts +34 -0
- package/dist/types/element/src/heading.d.ts +16 -0
- package/dist/types/element/src/image.d.ts +22 -0
- package/dist/types/element/src/index.d.ts +56 -0
- package/dist/types/element/src/linearElementEditor.d.ts +113 -0
- package/dist/types/element/src/mutateElement.d.ts +23 -0
- package/dist/types/element/src/newElement.d.ts +62 -0
- package/dist/types/element/src/positionElementsOnGrid.d.ts +2 -0
- package/dist/types/element/src/renderElement.d.ts +31 -0
- package/dist/types/element/src/resizeElements.d.ts +32 -0
- package/dist/types/element/src/resizeTest.d.ts +16 -0
- package/dist/types/element/src/selection.d.ts +34 -0
- package/dist/types/element/src/shape.d.ts +42 -0
- package/dist/types/element/src/showSelectedShapeActions.d.ts +3 -0
- package/dist/types/element/src/sizeHelpers.d.ts +35 -0
- package/dist/types/element/src/sortElements.d.ts +2 -0
- package/dist/types/element/src/store.d.ts +237 -0
- package/dist/types/element/src/textElement.d.ts +40 -0
- package/dist/types/element/src/textMeasurements.d.ts +39 -0
- package/dist/types/element/src/textWrapping.d.ts +13 -0
- package/dist/types/element/src/transform.d.ts +81 -0
- package/dist/types/element/src/transformHandles.d.ts +36 -0
- package/dist/types/element/src/typeChecks.d.ts +54 -0
- package/dist/types/element/src/types.d.ts +291 -0
- package/dist/types/element/src/utils.d.ts +34 -0
- package/dist/types/element/src/zindex.d.ts +13 -0
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +485 -0
- package/dist/types/excalidraw/actions/actionAlign.d.ts +109 -0
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +360 -0
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +2059 -0
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +399 -0
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +174 -0
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +519 -0
- package/dist/types/excalidraw/actions/actionDistribute.d.ts +34 -0
- package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -0
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +194 -0
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +346 -0
- package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +171 -0
- package/dist/types/excalidraw/actions/actionExport.d.ts +683 -0
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +13 -0
- package/dist/types/excalidraw/actions/actionFlip.d.ts +34 -0
- package/dist/types/excalidraw/actions/actionFrame.d.ts +1150 -0
- package/dist/types/excalidraw/actions/actionGroup.d.ts +350 -0
- package/dist/types/excalidraw/actions/actionHistory.d.ts +6 -0
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +659 -0
- package/dist/types/excalidraw/actions/actionLink.d.ts +175 -0
- package/dist/types/excalidraw/actions/actionMenu.d.ts +163 -0
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +20 -0
- package/dist/types/excalidraw/actions/actionProperties.d.ts +402 -0
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +170 -0
- package/dist/types/excalidraw/actions/actionStyles.d.ts +188 -0
- package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -0
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +177 -0
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +175 -0
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +166 -0
- package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +174 -0
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +175 -0
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +175 -0
- package/dist/types/excalidraw/actions/actionZindex.d.ts +74 -0
- package/dist/types/excalidraw/actions/index.d.ts +28 -0
- package/dist/types/excalidraw/actions/manager.d.ts +21 -0
- package/dist/types/excalidraw/actions/register.d.ts +5 -0
- package/dist/types/excalidraw/actions/shortcuts.d.ts +4 -0
- package/dist/types/excalidraw/actions/types.d.ts +47 -0
- package/dist/types/excalidraw/analytics.d.ts +1 -0
- package/dist/types/excalidraw/animated-trail.d.ts +39 -0
- package/dist/types/excalidraw/animation-frame-handler.d.ts +16 -0
- package/dist/types/excalidraw/appState.d.ts +102 -0
- package/dist/types/excalidraw/charts.d.ts +27 -0
- package/dist/types/excalidraw/clients.d.ts +14 -0
- package/dist/types/excalidraw/clipboard.d.ts +105 -0
- package/dist/types/excalidraw/components/Actions.d.ts +47 -0
- package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -0
- package/dist/types/excalidraw/components/App.d.ts +563 -0
- package/dist/types/excalidraw/components/Avatar.d.ts +11 -0
- package/dist/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -0
- package/dist/types/excalidraw/components/Button.d.ts +17 -0
- package/dist/types/excalidraw/components/ButtonIcon.d.ts +16 -0
- package/dist/types/excalidraw/components/ButtonSeparator.d.ts +1 -0
- package/dist/types/excalidraw/components/Card.d.ts +6 -0
- package/dist/types/excalidraw/components/CheckboxItem.d.ts +8 -0
- package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +10 -0
- package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +23 -0
- package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -0
- package/dist/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -0
- package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +19 -0
- package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -0
- package/dist/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -0
- package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +9 -0
- package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -0
- package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -0
- package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
- package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +19 -0
- package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -0
- package/dist/types/excalidraw/components/CommandPalette/types.d.ts +24 -0
- package/dist/types/excalidraw/components/ConfirmDialog.d.ts +10 -0
- package/dist/types/excalidraw/components/ContextMenu.d.ts +16 -0
- package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
- package/dist/types/excalidraw/components/DarkModeToggle.d.ts +7 -0
- package/dist/types/excalidraw/components/DefaultSidebar.d.ts +27 -0
- package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -0
- package/dist/types/excalidraw/components/Dialog.d.ts +13 -0
- package/dist/types/excalidraw/components/DialogActionButton.d.ts +10 -0
- package/dist/types/excalidraw/components/ElementCanvasButtons.d.ts +7 -0
- package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +12 -0
- package/dist/types/excalidraw/components/Ellipsify.d.ts +3 -0
- package/dist/types/excalidraw/components/ErrorDialog.d.ts +5 -0
- package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -0
- package/dist/types/excalidraw/components/EyeButton.d.ts +8 -0
- package/dist/types/excalidraw/components/EyeDropper.d.ts +27 -0
- package/dist/types/excalidraw/components/FilledButton.d.ts +18 -0
- package/dist/types/excalidraw/components/FixedSideContainer.d.ts +9 -0
- package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -0
- package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +22 -0
- package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -0
- package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +8 -0
- package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -0
- package/dist/types/excalidraw/components/HandButton.d.ts +10 -0
- package/dist/types/excalidraw/components/HelpButton.d.ts +7 -0
- package/dist/types/excalidraw/components/HelpDialog.d.ts +4 -0
- package/dist/types/excalidraw/components/HintViewer.d.ts +11 -0
- package/dist/types/excalidraw/components/IconPicker.d.ts +15 -0
- package/dist/types/excalidraw/components/ImageExportDialog.d.ts +14 -0
- package/dist/types/excalidraw/components/InitializeApp.d.ts +10 -0
- package/dist/types/excalidraw/components/InlineIcon.d.ts +5 -0
- package/dist/types/excalidraw/components/Island.d.ts +10 -0
- package/dist/types/excalidraw/components/JSONExportDialog.d.ts +15 -0
- package/dist/types/excalidraw/components/LaserPointerButton.d.ts +10 -0
- package/dist/types/excalidraw/components/LayerUI.d.ts +32 -0
- package/dist/types/excalidraw/components/LibraryMenu.d.ts +10 -0
- package/dist/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -0
- package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -0
- package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -0
- package/dist/types/excalidraw/components/LibraryMenuItems.d.ts +14 -0
- package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +23 -0
- package/dist/types/excalidraw/components/LibraryUnit.d.ts +14 -0
- package/dist/types/excalidraw/components/LoadingMessage.d.ts +5 -0
- package/dist/types/excalidraw/components/LockButton.d.ts +10 -0
- package/dist/types/excalidraw/components/MagicButton.d.ts +10 -0
- package/dist/types/excalidraw/components/MobileMenu.d.ts +24 -0
- package/dist/types/excalidraw/components/MobileToolBar.d.ts +10 -0
- package/dist/types/excalidraw/components/Modal.d.ts +11 -0
- package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
- package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
- package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
- package/dist/types/excalidraw/components/PasteChartDialog.d.ts +8 -0
- package/dist/types/excalidraw/components/PenModeButton.d.ts +12 -0
- package/dist/types/excalidraw/components/Popover.d.ts +16 -0
- package/dist/types/excalidraw/components/ProjectName.d.ts +10 -0
- package/dist/types/excalidraw/components/PropertiesPopover.d.ts +16 -0
- package/dist/types/excalidraw/components/PublishLibrary.d.ts +16 -0
- package/dist/types/excalidraw/components/QuickSearch.d.ts +9 -0
- package/dist/types/excalidraw/components/RadioGroup.d.ts +13 -0
- package/dist/types/excalidraw/components/RadioSelection.d.ts +20 -0
- package/dist/types/excalidraw/components/Range.d.ts +8 -0
- package/dist/types/excalidraw/components/SVGLayer.d.ts +7 -0
- package/dist/types/excalidraw/components/ScrollableList.d.ts +8 -0
- package/dist/types/excalidraw/components/SearchMenu.d.ts +5 -0
- package/dist/types/excalidraw/components/Section.d.ts +6 -0
- package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +70 -0
- package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -0
- package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -0
- package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
- package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
- package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -0
- package/dist/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -0
- package/dist/types/excalidraw/components/Sidebar/common.d.ts +34 -0
- package/dist/types/excalidraw/components/Spinner.d.ts +8 -0
- package/dist/types/excalidraw/components/Stack.d.ts +15 -0
- package/dist/types/excalidraw/components/Stats/Angle.d.ts +11 -0
- package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -0
- package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +10 -0
- package/dist/types/excalidraw/components/Stats/Dimension.d.ts +11 -0
- package/dist/types/excalidraw/components/Stats/DragInput.d.ts +44 -0
- package/dist/types/excalidraw/components/Stats/FontSize.d.ts +11 -0
- package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -0
- package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -0
- package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -0
- package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -0
- package/dist/types/excalidraw/components/Stats/Position.d.ts +12 -0
- package/dist/types/excalidraw/components/Stats/index.d.ts +35 -0
- package/dist/types/excalidraw/components/Stats/utils.d.ts +19 -0
- package/dist/types/excalidraw/components/Switch.d.ts +9 -0
- package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +6 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +8 -0
- package/dist/types/excalidraw/components/TTDDialog/common.d.ts +32 -0
- package/dist/types/excalidraw/components/TextField.d.ts +22 -0
- package/dist/types/excalidraw/components/Toast.d.ts +9 -0
- package/dist/types/excalidraw/components/ToolButton.d.ts +49 -0
- package/dist/types/excalidraw/components/ToolPopover.d.ts +25 -0
- package/dist/types/excalidraw/components/Tooltip.d.ts +18 -0
- package/dist/types/excalidraw/components/Trans.d.ts +9 -0
- package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
- package/dist/types/excalidraw/components/UserList.d.ts +18 -0
- package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +33 -0
- package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -0
- package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -0
- package/dist/types/excalidraw/components/canvases/index.d.ts +3 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +84 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +16 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +38 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +8 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
- package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +6 -0
- package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
- package/dist/types/excalidraw/components/footer/Footer.d.ts +17 -0
- package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +8 -0
- package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -0
- package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -0
- package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +10 -0
- package/dist/types/excalidraw/components/icons.d.ts +237 -0
- package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +11 -0
- package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -0
- package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +76 -0
- package/dist/types/excalidraw/components/shapes.d.ts +190 -0
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +58 -0
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +84 -0
- package/dist/types/excalidraw/context/tunnels.d.ts +21 -0
- package/dist/types/excalidraw/context/ui-appState.d.ts +4 -0
- package/dist/types/excalidraw/cursor.d.ts +5 -0
- package/dist/types/excalidraw/data/EditorLocalStorage.d.ts +8 -0
- package/dist/types/excalidraw/data/blob.d.ts +57 -0
- package/dist/types/excalidraw/data/encode.d.ts +55 -0
- package/dist/types/excalidraw/data/encryption.d.ts +9 -0
- package/dist/types/excalidraw/data/filesystem.d.ts +21 -0
- package/dist/types/excalidraw/data/image.d.ts +9 -0
- package/dist/types/excalidraw/data/index.d.ts +22 -0
- package/dist/types/excalidraw/data/json.d.ts +18 -0
- package/dist/types/excalidraw/data/library.d.ts +127 -0
- package/dist/types/excalidraw/data/reconcile.d.ts +7 -0
- package/dist/types/excalidraw/data/resave.d.ts +5 -0
- package/dist/types/excalidraw/data/restore.d.ts +35 -0
- package/dist/types/excalidraw/data/types.d.ts +48 -0
- package/dist/types/excalidraw/deburr.d.ts +1 -0
- package/dist/types/excalidraw/editor-jotai.d.ts +56 -0
- package/dist/types/excalidraw/eraser/index.d.ts +12 -0
- package/dist/types/excalidraw/errors.d.ts +29 -0
- package/dist/types/excalidraw/fonts/Cascadia/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/Emoji/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +25 -0
- package/dist/types/excalidraw/fonts/Excalifont/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/Fonts.d.ts +79 -0
- package/dist/types/excalidraw/fonts/Helvetica/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/Liberation/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/Lilita/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/Nunito/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/Virgil/index.d.ts +2 -0
- package/dist/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -0
- package/dist/types/excalidraw/fonts/index.d.ts +1 -0
- package/dist/types/excalidraw/gesture.d.ts +6 -0
- package/dist/types/excalidraw/history.d.ts +48 -0
- package/dist/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -0
- package/dist/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -0
- package/dist/types/excalidraw/hooks/useCreatePortalContainer.d.ts +4 -0
- package/dist/types/excalidraw/hooks/useEmitter.d.ts +2 -0
- package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -0
- package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +21 -0
- package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -0
- package/dist/types/excalidraw/hooks/useStable.d.ts +1 -0
- package/dist/types/excalidraw/hooks/useStableCallback.d.ts +4 -0
- package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
- package/dist/types/excalidraw/hooks/useTransition.d.ts +2 -0
- package/dist/types/excalidraw/i18n.d.ts +24 -0
- package/dist/types/excalidraw/index.d.ts +45 -0
- package/dist/types/excalidraw/laser-trails.d.ts +20 -0
- package/dist/types/excalidraw/lasso/index.d.ts +16 -0
- package/dist/types/excalidraw/lasso/utils.d.ts +13 -0
- package/dist/types/excalidraw/mermaid.d.ts +2 -0
- package/dist/types/excalidraw/polyfill.d.ts +2 -0
- package/dist/types/excalidraw/reactUtils.d.ts +14 -0
- package/dist/types/excalidraw/renderer/animation.d.ts +12 -0
- package/dist/types/excalidraw/renderer/helpers.d.ts +16 -0
- package/dist/types/excalidraw/renderer/interactiveScene.d.ts +14 -0
- package/dist/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -0
- package/dist/types/excalidraw/renderer/renderSnaps.d.ts +2 -0
- package/dist/types/excalidraw/renderer/roundRect.d.ts +11 -0
- package/dist/types/excalidraw/renderer/staticScene.d.ts +14 -0
- package/dist/types/excalidraw/renderer/staticSvgScene.d.ts +5 -0
- package/dist/types/excalidraw/scene/Renderer.d.ts +30 -0
- package/dist/types/excalidraw/scene/export.d.ts +36 -0
- package/dist/types/excalidraw/scene/index.d.ts +4 -0
- package/dist/types/excalidraw/scene/normalize.d.ts +4 -0
- package/dist/types/excalidraw/scene/scroll.d.ts +18 -0
- package/dist/types/excalidraw/scene/scrollbars.d.ts +11 -0
- package/dist/types/excalidraw/scene/types.d.ts +132 -0
- package/dist/types/excalidraw/scene/zoom.d.ts +12 -0
- package/dist/types/excalidraw/shortcut.d.ts +1 -0
- package/dist/types/excalidraw/snapping.d.ts +111 -0
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -0
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -0
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -0
- package/dist/types/excalidraw/subset/subset-main.d.ts +12 -0
- package/dist/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -0
- package/dist/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -0
- package/dist/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -0
- package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -0
- package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -0
- package/dist/types/excalidraw/types.d.ts +744 -0
- package/dist/types/excalidraw/workers.d.ts +36 -0
- package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +24 -0
- package/dist/types/math/src/angle.d.ts +19 -0
- package/dist/types/math/src/constants.d.ts +3 -0
- package/dist/types/math/src/curve.d.ts +74 -0
- package/dist/types/math/src/ellipse.d.ts +44 -0
- package/dist/types/math/src/index.d.ts +13 -0
- package/dist/types/math/src/line.d.ts +17 -0
- package/dist/types/math/src/point.d.ts +122 -0
- package/dist/types/math/src/polygon.d.ts +6 -0
- package/dist/types/math/src/range.d.ts +44 -0
- package/dist/types/math/src/rectangle.d.ts +5 -0
- package/dist/types/math/src/segment.d.ts +40 -0
- package/dist/types/math/src/triangle.d.ts +11 -0
- package/dist/types/math/src/types.d.ts +106 -0
- package/dist/types/math/src/utils.d.ts +7 -0
- package/dist/types/math/src/vector.d.ts +94 -0
- package/dist/types/utils/src/bbox.d.ts +9 -0
- package/dist/types/utils/src/export.d.ts +35 -0
- package/dist/types/utils/src/index.d.ts +4 -0
- package/dist/types/utils/src/shape.d.ts +58 -0
- package/dist/types/utils/src/withinBounds.d.ts +19 -0
- package/package.json +59 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { LibraryItem } from "../types";
|
|
2
|
+
export type SvgCache = Map<LibraryItem["id"], SVGSVGElement>;
|
|
3
|
+
export declare const libraryItemSvgsCache: import("jotai/vanilla/atom").PrimitiveAtom<SvgCache> & {
|
|
4
|
+
init: SvgCache;
|
|
5
|
+
};
|
|
6
|
+
export declare const useLibraryItemSvg: (id: LibraryItem["id"] | null, elements: LibraryItem["elements"] | undefined, svgCache: SvgCache, ref: React.RefObject<HTMLDivElement | null>) => SVGSVGElement | undefined;
|
|
7
|
+
export declare const useLibraryCache: () => {
|
|
8
|
+
clearLibraryCache: () => void;
|
|
9
|
+
deleteItemsFromLibraryCache: (items: LibraryItem["id"][]) => void;
|
|
10
|
+
svgCache: SvgCache;
|
|
11
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare function useOutsideClick<T extends HTMLElement>(ref: React.RefObject<T | null>,
|
|
2
|
+
/** if performance is of concern, memoize the callback */
|
|
3
|
+
callback: (event: Event & {
|
|
4
|
+
target: T;
|
|
5
|
+
}) => void,
|
|
6
|
+
/**
|
|
7
|
+
* Optional callback which is called on every click.
|
|
8
|
+
*
|
|
9
|
+
* Should return `true` if click should be considered as inside the container,
|
|
10
|
+
* and `false` if it falls outside and should call the `callback`.
|
|
11
|
+
*
|
|
12
|
+
* Returning `true` overrides the default behavior and `callback` won't be
|
|
13
|
+
* called.
|
|
14
|
+
*
|
|
15
|
+
* Returning `undefined` will fallback to the default behavior.
|
|
16
|
+
*/
|
|
17
|
+
isInside?: (event: Event & {
|
|
18
|
+
target: T;
|
|
19
|
+
},
|
|
20
|
+
/** the element of the passed ref */
|
|
21
|
+
container: T) => boolean | undefined): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useScrollPosition: <T extends HTMLElement>(elementRef: React.RefObject<T | null>) => number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useStable: <T extends Record<string, any>>(value: T) => T;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type CaretPosition = {
|
|
2
|
+
start: number;
|
|
3
|
+
end: number;
|
|
4
|
+
};
|
|
5
|
+
export declare const saveCaretPosition: () => CaretPosition | null;
|
|
6
|
+
export declare const restoreCaretPosition: (position: CaretPosition | null) => void;
|
|
7
|
+
export declare const withCaretPositionPreservation: (callback: () => void, isCompactMode: boolean, isEditingText: boolean, onPreventClose?: () => void) => void;
|
|
8
|
+
export declare const useTextEditorFocus: () => {
|
|
9
|
+
saveCaretPosition: () => void;
|
|
10
|
+
restoreCaretPosition: () => void;
|
|
11
|
+
clearSavedPosition: () => void;
|
|
12
|
+
hasSavedPosition: boolean;
|
|
13
|
+
};
|
|
14
|
+
export declare const temporarilyDisableTextEditorBlur: (duration?: number) => void;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { NestedKeyOf } from "@excalidraw/common/utility-types";
|
|
2
|
+
import fallbackLangData from "./locales/en.json";
|
|
3
|
+
export interface Language {
|
|
4
|
+
code: string;
|
|
5
|
+
label: string;
|
|
6
|
+
rtl?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export type TranslationKeys = NestedKeyOf<typeof fallbackLangData>;
|
|
9
|
+
export declare const defaultLang: {
|
|
10
|
+
code: string;
|
|
11
|
+
label: string;
|
|
12
|
+
};
|
|
13
|
+
export declare const languages: Language[];
|
|
14
|
+
export declare const setLanguage: (lang: Language) => Promise<void>;
|
|
15
|
+
export declare const getLanguage: () => Language;
|
|
16
|
+
export declare const t: (path: NestedKeyOf<typeof fallbackLangData>, replacement?: {
|
|
17
|
+
[key: string]: string | number;
|
|
18
|
+
} | null, fallback?: string) => string;
|
|
19
|
+
export declare const useI18n: () => {
|
|
20
|
+
t: (path: NestedKeyOf<typeof fallbackLangData>, replacement?: {
|
|
21
|
+
[key: string]: string | number;
|
|
22
|
+
} | null, fallback?: string) => string;
|
|
23
|
+
langCode: string;
|
|
24
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import Footer from "./components/footer/FooterCenter";
|
|
3
|
+
import LiveCollaborationTrigger from "./components/live-collaboration/LiveCollaborationTrigger";
|
|
4
|
+
import MainMenu from "./components/main-menu/MainMenu";
|
|
5
|
+
import WelcomeScreen from "./components/welcome-screen/WelcomeScreen";
|
|
6
|
+
import "./css/app.scss";
|
|
7
|
+
import "./css/styles.scss";
|
|
8
|
+
import "./fonts/fonts.css";
|
|
9
|
+
import type { ExcalidrawProps } from "./types";
|
|
10
|
+
export declare const Excalidraw: React.MemoExoticComponent<(props: ExcalidrawProps) => import("react/jsx-runtime").JSX.Element>;
|
|
11
|
+
export { getSceneVersion, hashElementsVersion, hashString, getNonDeletedElements, } from "@excalidraw/element";
|
|
12
|
+
export { getTextFromElements } from "@excalidraw/element";
|
|
13
|
+
export { isInvisiblySmallElement } from "@excalidraw/element";
|
|
14
|
+
export { defaultLang, useI18n, languages } from "./i18n";
|
|
15
|
+
export { restore, restoreAppState, restoreElement, restoreElements, restoreLibraryItems, } from "./data/restore";
|
|
16
|
+
export { reconcileElements } from "./data/reconcile";
|
|
17
|
+
export { exportToCanvas, exportToBlob, exportToSvg, exportToClipboard, } from "@excalidraw/utils/export";
|
|
18
|
+
export { serializeAsJSON, serializeLibraryAsJSON } from "./data/json";
|
|
19
|
+
export { loadFromBlob, loadSceneOrLibraryFromBlob, loadLibraryFromBlob, } from "./data/blob";
|
|
20
|
+
export { getFreeDrawSvgPath } from "@excalidraw/element";
|
|
21
|
+
export { mergeLibraryItems, getLibraryItemsHash } from "./data/library";
|
|
22
|
+
export { isLinearElement } from "@excalidraw/element";
|
|
23
|
+
export { FONT_FAMILY, THEME, MIME_TYPES, ROUNDNESS, DEFAULT_LASER_COLOR, UserIdleState, normalizeLink, sceneCoordsToViewportCoords, viewportCoordsToSceneCoords, getFormFactor, } from "@excalidraw/common";
|
|
24
|
+
export { mutateElement, newElementWith, bumpVersion, } from "@excalidraw/element";
|
|
25
|
+
export { CaptureUpdateAction } from "@excalidraw/element";
|
|
26
|
+
export { parseLibraryTokensFromUrl, useHandleLibrary } from "./data/library";
|
|
27
|
+
export { Sidebar } from "./components/Sidebar/Sidebar";
|
|
28
|
+
export { Button } from "./components/Button";
|
|
29
|
+
export { Footer };
|
|
30
|
+
export { MainMenu };
|
|
31
|
+
export { Ellipsify } from "./components/Ellipsify";
|
|
32
|
+
export { useEditorInterface, useStylesPanelMode } from "./components/App";
|
|
33
|
+
export { WelcomeScreen };
|
|
34
|
+
export { LiveCollaborationTrigger };
|
|
35
|
+
export { Stats } from "./components/Stats";
|
|
36
|
+
export { DefaultSidebar } from "./components/DefaultSidebar";
|
|
37
|
+
export { TTDDialog } from "./components/TTDDialog/TTDDialog";
|
|
38
|
+
export { TTDDialogTrigger } from "./components/TTDDialog/TTDDialogTrigger";
|
|
39
|
+
export { zoomToFitBounds } from "./actions/actionCanvas";
|
|
40
|
+
export { getCommonBounds, getVisibleSceneBounds, convertToExcalidrawElements, } from "@excalidraw/element";
|
|
41
|
+
export { elementsOverlappingBBox, isElementInsideBBox, elementPartiallyOverlapsWithOrContainsBBox, } from "@excalidraw/utils/withinBounds";
|
|
42
|
+
export { DiagramToCodePlugin } from "./components/DiagramToCodePlugin/DiagramToCodePlugin";
|
|
43
|
+
export { getDataURL } from "./data/blob";
|
|
44
|
+
export { isElementLink } from "@excalidraw/element";
|
|
45
|
+
export { setCustomTextMetricsProvider } from "@excalidraw/element";
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AnimatedTrail } from "./animated-trail";
|
|
2
|
+
import type { Trail } from "./animated-trail";
|
|
3
|
+
import type { AnimationFrameHandler } from "./animation-frame-handler";
|
|
4
|
+
import type App from "./components/App";
|
|
5
|
+
export declare class LaserTrails implements Trail {
|
|
6
|
+
private animationFrameHandler;
|
|
7
|
+
private app;
|
|
8
|
+
localTrail: AnimatedTrail;
|
|
9
|
+
private collabTrails;
|
|
10
|
+
private container?;
|
|
11
|
+
constructor(animationFrameHandler: AnimationFrameHandler, app: App);
|
|
12
|
+
private getTrailOptions;
|
|
13
|
+
startPath(x: number, y: number): void;
|
|
14
|
+
addPointToPath(x: number, y: number): void;
|
|
15
|
+
endPath(): void;
|
|
16
|
+
start(container: SVGSVGElement): void;
|
|
17
|
+
stop(): void;
|
|
18
|
+
onFrame(): void;
|
|
19
|
+
private updateCollabTrails;
|
|
20
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type AnimationFrameHandler } from "../animation-frame-handler";
|
|
2
|
+
import { AnimatedTrail } from "../animated-trail";
|
|
3
|
+
import type App from "../components/App";
|
|
4
|
+
export declare class LassoTrail extends AnimatedTrail {
|
|
5
|
+
private intersectedElements;
|
|
6
|
+
private enclosedElements;
|
|
7
|
+
private elementsSegments;
|
|
8
|
+
private canvasTranslate;
|
|
9
|
+
private keepPreviousSelection;
|
|
10
|
+
constructor(animationFrameHandler: AnimationFrameHandler, app: App);
|
|
11
|
+
startPath(x: number, y: number, keepPreviousSelection?: boolean): void;
|
|
12
|
+
selectElementsFromIds: (ids: string[]) => void;
|
|
13
|
+
addPointToPath: (x: number, y: number, keepPreviousSelection?: boolean) => void;
|
|
14
|
+
private updateSelection;
|
|
15
|
+
endPath(): void;
|
|
16
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ElementsSegmentsMap, GlobalPoint } from "@excalidraw/math/types";
|
|
2
|
+
import type { ElementsMap, ExcalidrawElement } from "@excalidraw/element/types";
|
|
3
|
+
export declare const getLassoSelectedElementIds: (input: {
|
|
4
|
+
lassoPath: GlobalPoint[];
|
|
5
|
+
elements: readonly ExcalidrawElement[];
|
|
6
|
+
elementsMap: ElementsMap;
|
|
7
|
+
elementsSegments: ElementsSegmentsMap;
|
|
8
|
+
intersectedElements: Set<ExcalidrawElement["id"]>;
|
|
9
|
+
enclosedElements: Set<ExcalidrawElement["id"]>;
|
|
10
|
+
simplifyDistance?: number;
|
|
11
|
+
}) => {
|
|
12
|
+
selectedElementIds: string[];
|
|
13
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param func handler taking at most single parameter (event).
|
|
3
|
+
*/
|
|
4
|
+
export declare const withBatchedUpdates: <TFunction extends ((event: any) => void) | (() => void)>(func: Parameters<TFunction>["length"] extends 0 | 1 ? TFunction : never) => TFunction;
|
|
5
|
+
/**
|
|
6
|
+
* barches React state updates and throttles the calls to a single call per
|
|
7
|
+
* animation frame
|
|
8
|
+
*/
|
|
9
|
+
export declare const withBatchedUpdatesThrottled: <TFunction extends ((event: any) => void) | (() => void)>(func: Parameters<TFunction>["length"] extends 0 | 1 ? TFunction : never) => {
|
|
10
|
+
(...args: Parameters<TFunction>): void;
|
|
11
|
+
flush(): void;
|
|
12
|
+
cancel(): void;
|
|
13
|
+
};
|
|
14
|
+
export declare const isRenderThrottlingEnabled: () => boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type Animation<R extends object> = (params: {
|
|
2
|
+
deltaTime: number;
|
|
3
|
+
state?: R;
|
|
4
|
+
}) => R | null | undefined;
|
|
5
|
+
export declare class AnimationController {
|
|
6
|
+
private static isRunning;
|
|
7
|
+
private static animations;
|
|
8
|
+
static start<R extends object>(key: string, animation: Animation<R>): void;
|
|
9
|
+
private static tick;
|
|
10
|
+
static running(key: string): boolean;
|
|
11
|
+
static cancel(key: string): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { StaticCanvasRenderConfig } from "../scene/types";
|
|
2
|
+
import type { AppState, StaticCanvasAppState } from "../types";
|
|
3
|
+
export declare const fillCircle: (context: CanvasRenderingContext2D, cx: number, cy: number, radius: number, stroke: boolean, fill?: boolean) => void;
|
|
4
|
+
export declare const getNormalizedCanvasDimensions: (canvas: HTMLCanvasElement, scale: number) => [number, number];
|
|
5
|
+
export declare const bootstrapCanvas: ({ canvas, scale, normalizedWidth, normalizedHeight, theme, isExporting, viewBackgroundColor, }: {
|
|
6
|
+
canvas: HTMLCanvasElement;
|
|
7
|
+
scale: number;
|
|
8
|
+
normalizedWidth: number;
|
|
9
|
+
normalizedHeight: number;
|
|
10
|
+
theme?: AppState["theme"];
|
|
11
|
+
isExporting?: StaticCanvasRenderConfig["isExporting"];
|
|
12
|
+
viewBackgroundColor?: StaticCanvasAppState["viewBackgroundColor"];
|
|
13
|
+
}) => CanvasRenderingContext2D;
|
|
14
|
+
export declare const strokeRectWithRotation_simple: (context: CanvasRenderingContext2D, x: number, y: number, width: number, height: number, cx: number, cy: number, angle: number, fill?: boolean,
|
|
15
|
+
/** should account for zoom */
|
|
16
|
+
radius?: number) => void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { getScrollBars } from "../scene/scrollbars";
|
|
2
|
+
import type { InteractiveSceneRenderConfig, RenderableElementsMap } from "../scene/types";
|
|
3
|
+
declare const _renderInteractiveScene: ({ app, canvas, elementsMap, visibleElements, selectedElements, allElementsMap, scale, appState, renderConfig, editorInterface, animationState, deltaTime, }: InteractiveSceneRenderConfig) => {
|
|
4
|
+
scrollBars?: ReturnType<typeof getScrollBars>;
|
|
5
|
+
atLeastOneVisibleElement: boolean;
|
|
6
|
+
elementsMap: RenderableElementsMap;
|
|
7
|
+
animationState?: typeof animationState;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Interactive scene is the ui-canvas where we render bounding boxes, selections
|
|
11
|
+
* and other ui stuff.
|
|
12
|
+
*/
|
|
13
|
+
export declare const renderInteractiveScene: <U extends typeof _renderInteractiveScene>(renderConfig: InteractiveSceneRenderConfig) => ReturnType<U>;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { NewElementSceneRenderConfig } from "../scene/types";
|
|
2
|
+
export declare const renderNewElementSceneThrottled: {
|
|
3
|
+
(config: NewElementSceneRenderConfig): void;
|
|
4
|
+
flush(): void;
|
|
5
|
+
cancel(): void;
|
|
6
|
+
};
|
|
7
|
+
export declare const renderNewElementScene: (renderConfig: NewElementSceneRenderConfig, throttle?: boolean) => void;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* https://stackoverflow.com/a/3368118
|
|
3
|
+
* Draws a rounded rectangle using the current state of the canvas.
|
|
4
|
+
* @param {CanvasRenderingContext2D} context
|
|
5
|
+
* @param {Number} x The top left x coordinate
|
|
6
|
+
* @param {Number} y The top left y coordinate
|
|
7
|
+
* @param {Number} width The width of the rectangle
|
|
8
|
+
* @param {Number} height The height of the rectangle
|
|
9
|
+
* @param {Number} radius The corner radius
|
|
10
|
+
*/
|
|
11
|
+
export declare const roundRect: (context: CanvasRenderingContext2D, x: number, y: number, width: number, height: number, radius: number, strokeColor?: string) => void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ExcalidrawFrameLikeElement } from "@excalidraw/element/types";
|
|
2
|
+
import type { StaticCanvasRenderConfig, StaticSceneRenderConfig } from "../scene/types";
|
|
3
|
+
import type { StaticCanvasAppState } from "../types";
|
|
4
|
+
export declare const frameClip: (frame: ExcalidrawFrameLikeElement, context: CanvasRenderingContext2D, renderConfig: StaticCanvasRenderConfig, appState: StaticCanvasAppState) => void;
|
|
5
|
+
/** throttled to animation framerate */
|
|
6
|
+
export declare const renderStaticSceneThrottled: {
|
|
7
|
+
(config: StaticSceneRenderConfig): void;
|
|
8
|
+
flush(): void;
|
|
9
|
+
cancel(): void;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Static scene is the non-ui canvas where we render elements.
|
|
13
|
+
*/
|
|
14
|
+
export declare const renderStaticScene: (renderConfig: StaticSceneRenderConfig, throttle?: boolean) => void;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
+
import type { RenderableElementsMap, SVGRenderConfig } from "../scene/types";
|
|
3
|
+
import type { BinaryFiles } from "../types";
|
|
4
|
+
import type { RoughSVG } from "roughjs/bin/svg";
|
|
5
|
+
export declare const renderSceneToSvg: (elements: readonly NonDeletedExcalidrawElement[], elementsMap: RenderableElementsMap, rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, renderConfig: SVGRenderConfig) => void;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
+
import type { Scene } from "@excalidraw/element";
|
|
3
|
+
import type { AppState } from "../types";
|
|
4
|
+
export declare class Renderer {
|
|
5
|
+
private scene;
|
|
6
|
+
constructor(scene: Scene);
|
|
7
|
+
getRenderableElements: ((opts: {
|
|
8
|
+
zoom: Readonly<{
|
|
9
|
+
value: import("../types").NormalizedZoomValue;
|
|
10
|
+
}>;
|
|
11
|
+
offsetLeft: AppState["offsetLeft"];
|
|
12
|
+
offsetTop: AppState["offsetTop"];
|
|
13
|
+
scrollX: AppState["scrollX"];
|
|
14
|
+
scrollY: AppState["scrollY"];
|
|
15
|
+
height: AppState["height"];
|
|
16
|
+
width: AppState["width"];
|
|
17
|
+
editingTextElement: AppState["editingTextElement"];
|
|
18
|
+
/** note: first render of newElement will always bust the cache
|
|
19
|
+
* (we'd have to prefilter elements outside of this function) */
|
|
20
|
+
newElementId: ExcalidrawElement["id"] | undefined;
|
|
21
|
+
sceneNonce: ReturnType<InstanceType<typeof Scene>["getSceneNonce"]>;
|
|
22
|
+
hideAnnotations: AppState["hideAnnotations"];
|
|
23
|
+
}) => {
|
|
24
|
+
elementsMap: Map<string, NonDeletedExcalidrawElement> & import("@excalidraw/common/utility-types").MakeBrand<"NonDeletedElementsMap"> & import("@excalidraw/common/utility-types").MakeBrand<"RenderableElementsMap">;
|
|
25
|
+
visibleElements: readonly NonDeletedExcalidrawElement[];
|
|
26
|
+
}) & {
|
|
27
|
+
clear: () => void;
|
|
28
|
+
};
|
|
29
|
+
destroy(): void;
|
|
30
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
+
import type { AppState, BinaryFiles } from "../types";
|
|
3
|
+
export declare const exportToCanvas: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState, files: BinaryFiles, { exportBackground, exportPadding, viewBackgroundColor, exportingFrame, }: {
|
|
4
|
+
exportBackground: boolean;
|
|
5
|
+
exportPadding?: number;
|
|
6
|
+
viewBackgroundColor: string;
|
|
7
|
+
exportingFrame?: ExcalidrawFrameLikeElement | null;
|
|
8
|
+
}, createCanvas?: (width: number, height: number) => {
|
|
9
|
+
canvas: HTMLCanvasElement;
|
|
10
|
+
scale: number;
|
|
11
|
+
}, loadFonts?: () => Promise<void>) => Promise<HTMLCanvasElement>;
|
|
12
|
+
export declare const exportToSvg: (elements: readonly NonDeletedExcalidrawElement[], appState: {
|
|
13
|
+
exportBackground: boolean;
|
|
14
|
+
exportPadding?: number;
|
|
15
|
+
exportScale?: number;
|
|
16
|
+
viewBackgroundColor: string;
|
|
17
|
+
exportWithDarkMode?: boolean;
|
|
18
|
+
exportEmbedScene?: boolean;
|
|
19
|
+
frameRendering?: AppState["frameRendering"];
|
|
20
|
+
}, files: BinaryFiles | null, opts?: {
|
|
21
|
+
/**
|
|
22
|
+
* if true, all embeddables passed in will be rendered when possible.
|
|
23
|
+
*/
|
|
24
|
+
renderEmbeddables?: boolean;
|
|
25
|
+
exportingFrame?: ExcalidrawFrameLikeElement | null;
|
|
26
|
+
skipInliningFonts?: true;
|
|
27
|
+
reuseImages?: boolean;
|
|
28
|
+
}) => Promise<SVGSVGElement>;
|
|
29
|
+
export declare const encodeSvgBase64Payload: ({ payload, metadataElement, }: {
|
|
30
|
+
payload: string;
|
|
31
|
+
metadataElement: SVGMetadataElement;
|
|
32
|
+
}) => void;
|
|
33
|
+
export declare const decodeSvgBase64Payload: ({ svg }: {
|
|
34
|
+
svg: string;
|
|
35
|
+
}) => string;
|
|
36
|
+
export declare const getExportSize: (elements: readonly NonDeletedExcalidrawElement[], exportPadding: number, scale: number) => [number, number];
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { isSomeElementSelected, getElementsWithinSelection, getSelectedElements, getTargetElements, } from "@excalidraw/element";
|
|
2
|
+
export { calculateScrollCenter } from "./scroll";
|
|
3
|
+
export { hasBackground, hasStrokeWidth, hasStrokeStyle, canHaveArrowheads, canChangeRoundness, } from "@excalidraw/element";
|
|
4
|
+
export { getNormalizedZoom, getNormalizedGridSize, getNormalizedGridStep, } from "./normalize";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { NormalizedZoomValue } from "../types";
|
|
2
|
+
export declare const getNormalizedZoom: (zoom: number) => NormalizedZoomValue;
|
|
3
|
+
export declare const getNormalizedGridSize: (gridStep: number) => number;
|
|
4
|
+
export declare const getNormalizedGridStep: (gridStep: number) => number;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
+
import type { AppState, Offsets, PointerCoords, Zoom } from "../types";
|
|
3
|
+
export declare const centerScrollOn: ({ scenePoint, viewportDimensions, zoom, offsets, }: {
|
|
4
|
+
scenePoint: PointerCoords;
|
|
5
|
+
viewportDimensions: {
|
|
6
|
+
height: number;
|
|
7
|
+
width: number;
|
|
8
|
+
};
|
|
9
|
+
zoom: Zoom;
|
|
10
|
+
offsets?: Offsets;
|
|
11
|
+
}) => {
|
|
12
|
+
scrollX: number;
|
|
13
|
+
scrollY: number;
|
|
14
|
+
};
|
|
15
|
+
export declare const calculateScrollCenter: (elements: readonly ExcalidrawElement[], appState: AppState) => {
|
|
16
|
+
scrollX: number;
|
|
17
|
+
scrollY: number;
|
|
18
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { InteractiveCanvasAppState } from "../types";
|
|
2
|
+
import type { RenderableElementsMap, ScrollBars } from "./types";
|
|
3
|
+
export declare const SCROLLBAR_MARGIN = 4;
|
|
4
|
+
export declare const SCROLLBAR_WIDTH = 6;
|
|
5
|
+
export declare const SCROLLBAR_COLOR = "rgba(0,0,0,0.3)";
|
|
6
|
+
export declare const getScrollBars: (elements: RenderableElementsMap, viewportWidth: number, viewportHeight: number, appState: InteractiveCanvasAppState) => ScrollBars;
|
|
7
|
+
export declare const isOverScrollBars: (scrollBars: ScrollBars, x: number, y: number) => {
|
|
8
|
+
isOverEither: boolean;
|
|
9
|
+
isOverHorizontal: boolean;
|
|
10
|
+
isOverVertical: boolean;
|
|
11
|
+
};
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import type { UserIdleState, EditorInterface } 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, PendingExcalidrawElements } from "../types";
|
|
5
|
+
import type { RoughCanvas } from "roughjs/bin/canvas";
|
|
6
|
+
import type { Drawable } from "roughjs/bin/core";
|
|
7
|
+
export type RenderableElementsMap = NonDeletedElementsMap & MakeBrand<"RenderableElementsMap">;
|
|
8
|
+
export type StaticCanvasRenderConfig = {
|
|
9
|
+
canvasBackgroundColor: AppState["viewBackgroundColor"];
|
|
10
|
+
imageCache: AppClassProperties["imageCache"];
|
|
11
|
+
renderGrid: boolean;
|
|
12
|
+
/** when exporting the behavior is slightly different (e.g. we can't use
|
|
13
|
+
CSS filters), and we disable render optimizations for best output */
|
|
14
|
+
isExporting: boolean;
|
|
15
|
+
embedsValidationStatus: EmbedsValidationStatus;
|
|
16
|
+
elementsPendingErasure: ElementsPendingErasure;
|
|
17
|
+
pendingFlowchartNodes: PendingExcalidrawElements | null;
|
|
18
|
+
};
|
|
19
|
+
export type SVGRenderConfig = {
|
|
20
|
+
offsetX: number;
|
|
21
|
+
offsetY: number;
|
|
22
|
+
isExporting: boolean;
|
|
23
|
+
exportWithDarkMode: boolean;
|
|
24
|
+
renderEmbeddables: boolean;
|
|
25
|
+
frameRendering: AppState["frameRendering"];
|
|
26
|
+
canvasBackgroundColor: AppState["viewBackgroundColor"];
|
|
27
|
+
embedsValidationStatus: EmbedsValidationStatus;
|
|
28
|
+
/**
|
|
29
|
+
* whether to attempt to reuse images as much as possible through symbols
|
|
30
|
+
* (reduces SVG size, but may be incompoatible with some SVG renderers)
|
|
31
|
+
*
|
|
32
|
+
* @default true
|
|
33
|
+
*/
|
|
34
|
+
reuseImages: boolean;
|
|
35
|
+
};
|
|
36
|
+
export type InteractiveCanvasRenderConfig = {
|
|
37
|
+
remoteSelectedElementIds: Map<ExcalidrawElement["id"], SocketId[]>;
|
|
38
|
+
remotePointerViewportCoords: Map<SocketId, {
|
|
39
|
+
x: number;
|
|
40
|
+
y: number;
|
|
41
|
+
}>;
|
|
42
|
+
remotePointerUserStates: Map<SocketId, UserIdleState>;
|
|
43
|
+
remotePointerUsernames: Map<SocketId, string>;
|
|
44
|
+
remotePointerButton: Map<SocketId, string | undefined>;
|
|
45
|
+
selectionColor: string;
|
|
46
|
+
lastViewportPosition: {
|
|
47
|
+
x: number;
|
|
48
|
+
y: number;
|
|
49
|
+
};
|
|
50
|
+
renderScrollbars?: boolean;
|
|
51
|
+
};
|
|
52
|
+
export type RenderInteractiveSceneCallback = {
|
|
53
|
+
atLeastOneVisibleElement: boolean;
|
|
54
|
+
elementsMap: RenderableElementsMap;
|
|
55
|
+
scrollBars?: ScrollBars;
|
|
56
|
+
};
|
|
57
|
+
export type StaticSceneRenderConfig = {
|
|
58
|
+
canvas: HTMLCanvasElement;
|
|
59
|
+
rc: RoughCanvas;
|
|
60
|
+
elementsMap: RenderableElementsMap;
|
|
61
|
+
allElementsMap: NonDeletedSceneElementsMap;
|
|
62
|
+
visibleElements: readonly NonDeletedExcalidrawElement[];
|
|
63
|
+
scale: number;
|
|
64
|
+
appState: StaticCanvasAppState;
|
|
65
|
+
renderConfig: StaticCanvasRenderConfig;
|
|
66
|
+
};
|
|
67
|
+
export type InteractiveSceneRenderAnimationState = {
|
|
68
|
+
bindingHighlight: {
|
|
69
|
+
runtime: number;
|
|
70
|
+
} | undefined;
|
|
71
|
+
};
|
|
72
|
+
export type InteractiveSceneRenderConfig = {
|
|
73
|
+
app: AppClassProperties;
|
|
74
|
+
canvas: HTMLCanvasElement | null;
|
|
75
|
+
elementsMap: RenderableElementsMap;
|
|
76
|
+
visibleElements: readonly NonDeletedExcalidrawElement[];
|
|
77
|
+
selectedElements: readonly NonDeletedExcalidrawElement[];
|
|
78
|
+
allElementsMap: NonDeletedSceneElementsMap;
|
|
79
|
+
scale: number;
|
|
80
|
+
appState: InteractiveCanvasAppState;
|
|
81
|
+
renderConfig: InteractiveCanvasRenderConfig;
|
|
82
|
+
editorInterface: EditorInterface;
|
|
83
|
+
callback: (data: RenderInteractiveSceneCallback) => void;
|
|
84
|
+
animationState?: InteractiveSceneRenderAnimationState;
|
|
85
|
+
deltaTime: number;
|
|
86
|
+
};
|
|
87
|
+
export type NewElementSceneRenderConfig = {
|
|
88
|
+
canvas: HTMLCanvasElement | null;
|
|
89
|
+
rc: RoughCanvas;
|
|
90
|
+
newElement: ExcalidrawElement | null;
|
|
91
|
+
elementsMap: RenderableElementsMap;
|
|
92
|
+
allElementsMap: NonDeletedSceneElementsMap;
|
|
93
|
+
scale: number;
|
|
94
|
+
appState: AppState;
|
|
95
|
+
renderConfig: StaticCanvasRenderConfig;
|
|
96
|
+
};
|
|
97
|
+
export type SceneScroll = {
|
|
98
|
+
scrollX: number;
|
|
99
|
+
scrollY: number;
|
|
100
|
+
};
|
|
101
|
+
export type ExportType = "png" | "clipboard" | "clipboard-svg" | "backend" | "svg";
|
|
102
|
+
export type ScrollBars = {
|
|
103
|
+
horizontal: {
|
|
104
|
+
x: number;
|
|
105
|
+
y: number;
|
|
106
|
+
width: number;
|
|
107
|
+
height: number;
|
|
108
|
+
deltaMultiplier: number;
|
|
109
|
+
} | null;
|
|
110
|
+
vertical: {
|
|
111
|
+
x: number;
|
|
112
|
+
y: number;
|
|
113
|
+
width: number;
|
|
114
|
+
height: number;
|
|
115
|
+
deltaMultiplier: number;
|
|
116
|
+
} | null;
|
|
117
|
+
};
|
|
118
|
+
export type ElementShape = Drawable | Drawable[] | null;
|
|
119
|
+
export type ElementShapes = {
|
|
120
|
+
rectangle: Drawable;
|
|
121
|
+
ellipse: Drawable;
|
|
122
|
+
diamond: Drawable;
|
|
123
|
+
iframe: Drawable;
|
|
124
|
+
embeddable: Drawable;
|
|
125
|
+
freedraw: Drawable | null;
|
|
126
|
+
arrow: Drawable[];
|
|
127
|
+
line: Drawable[];
|
|
128
|
+
text: null;
|
|
129
|
+
image: null;
|
|
130
|
+
frame: null;
|
|
131
|
+
magicframe: null;
|
|
132
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { AppState, NormalizedZoomValue } from "../types";
|
|
2
|
+
export declare const getStateForZoom: ({ viewportX, viewportY, nextZoom, }: {
|
|
3
|
+
viewportX: number;
|
|
4
|
+
viewportY: number;
|
|
5
|
+
nextZoom: NormalizedZoomValue;
|
|
6
|
+
}, appState: AppState) => {
|
|
7
|
+
scrollX: number;
|
|
8
|
+
scrollY: number;
|
|
9
|
+
zoom: {
|
|
10
|
+
value: NormalizedZoomValue;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getShortcutKey: (shortcut: string) => string;
|