@excalidraw/element 0.18.0-9ba0f5d → 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 +13141 -8453
- 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/colors.d.ts +24 -2
- package/dist/types/common/src/constants.d.ts +70 -7
- package/dist/types/common/src/index.d.ts +3 -0
- package/dist/types/common/src/keys.d.ts +4 -0
- 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/utils.d.ts +10 -50
- package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
- package/dist/types/element/src/Scene.d.ts +9 -5
- 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 +37 -17
- package/dist/types/element/src/bounds.d.ts +23 -8
- package/dist/types/element/src/bucketFill.d.ts +110 -0
- package/dist/types/element/src/collision.d.ts +7 -3
- package/dist/types/element/src/comparisons.d.ts +8 -5
- 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 +27 -0
- package/dist/types/element/src/duplicate.d.ts +64 -3
- 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 +2 -2
- package/dist/types/element/src/frame.d.ts +11 -10
- package/dist/types/element/src/groups.d.ts +9 -9
- package/dist/types/element/src/index.d.ts +8 -1
- package/dist/types/element/src/linearElementEditor.d.ts +32 -10
- package/dist/types/element/src/mutateElement.d.ts +3 -1
- package/dist/types/element/src/newElement.d.ts +53 -3
- package/dist/types/element/src/renderElement.d.ts +21 -7
- package/dist/types/element/src/resizeElements.d.ts +2 -2
- package/dist/types/element/src/selection.d.ts +11 -7
- package/dist/types/element/src/shape.d.ts +28 -2
- 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/textWrapping.d.ts +26 -0
- package/dist/types/element/src/transform.d.ts +26 -7
- package/dist/types/element/src/typeChecks.d.ts +29 -27
- package/dist/types/element/src/types.d.ts +48 -9
- package/dist/types/element/src/utils.d.ts +19 -6
- package/dist/types/element/src/visualdebug.d.ts +1 -2
- package/dist/types/element/src/zindex.d.ts +2 -2
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +125 -53
- package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +85 -37
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +356 -1019
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +84 -36
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +42 -18
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +130 -55
- package/dist/types/excalidraw/actions/actionDeselect.d.ts +182 -0
- package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -3
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +38 -18
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +85 -37
- package/dist/types/excalidraw/actions/actionExport.d.ts +133 -359
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +1 -0
- package/dist/types/excalidraw/actions/actionFrame.d.ts +187 -236
- package/dist/types/excalidraw/actions/actionGroup.d.ts +100 -52
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +99 -21
- package/dist/types/excalidraw/actions/actionLink.d.ts +43 -19
- package/dist/types/excalidraw/actions/actionMenu.d.ts +38 -18
- package/dist/types/excalidraw/actions/actionProperties.d.ts +120 -56
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +46 -22
- package/dist/types/excalidraw/actions/actionStyles.d.ts +43 -18
- package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
- package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleArrowBinding.d.ts} +57 -32
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +46 -23
- package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +195 -0
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +43 -19
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +42 -23
- package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +1 -1
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +43 -19
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +44 -20
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +43 -19
- package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
- package/dist/types/excalidraw/actions/index.d.ts +4 -2
- package/dist/types/excalidraw/actions/manager.d.ts +1 -0
- package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
- package/dist/types/excalidraw/actions/types.d.ts +8 -4
- package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
- package/dist/types/excalidraw/appState.d.ts +39 -13
- 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 +6 -7
- package/dist/types/excalidraw/components/Actions.d.ts +17 -12
- 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 +604 -89
- 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/ColorPicker/ColorPicker.d.ts +9 -3
- package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
- package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +5 -1
- package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -2
- package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
- package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
- package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
- package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
- package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
- package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
- package/dist/types/excalidraw/components/CommandPalette/types.d.ts +1 -1
- package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
- package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
- package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
- package/dist/types/excalidraw/components/FileDropOverlay.d.ts +2 -0
- 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/fontTopPicksDnD.d.ts +12 -0
- 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/Island.d.ts +7 -0
- package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
- package/dist/types/excalidraw/components/LayerUI.d.ts +5 -2
- package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
- package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +6 -2
- package/dist/types/excalidraw/components/LibraryUnit.d.ts +7 -2
- 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 +4 -4
- package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
- 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 +1 -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/Range.d.ts +10 -4
- package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
- package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
- package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
- package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
- 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/utils.d.ts +1 -1
- package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +2 -6
- package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +2 -1
- package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
- package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
- package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +11 -7
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +4 -1
- package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
- package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +2 -1
- package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
- package/dist/types/excalidraw/components/TTDDialog/types.d.ts +4 -0
- package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
- 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/Toast.d.ts +8 -4
- package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
- 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/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 +4 -1
- 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 +30 -16
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +3 -2
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +11 -12
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +2 -1
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
- 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/common.d.ts +1 -1
- 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/hyperlink/helpers.d.ts +2 -2
- package/dist/types/excalidraw/components/icons.d.ts +30 -10
- package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +26 -3
- package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +23 -14
- 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 +107 -60
- package/dist/types/excalidraw/data/filesystem.d.ts +3 -5
- package/dist/types/excalidraw/data/index.d.ts +6 -7
- package/dist/types/excalidraw/data/json.d.ts +62 -30
- package/dist/types/excalidraw/data/library.d.ts +1 -1
- package/dist/types/excalidraw/data/resave.d.ts +7 -2
- package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
- package/dist/types/excalidraw/eraser/index.d.ts +2 -3
- 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 +1 -1
- package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +5 -5
- 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 +5 -1
- package/dist/types/excalidraw/renderer/helpers.d.ts +25 -0
- package/dist/types/excalidraw/renderer/interactiveScene.d.ts +2 -4
- package/dist/types/excalidraw/scene/Renderer.d.ts +489 -20
- package/dist/types/excalidraw/scene/export.d.ts +3 -3
- package/dist/types/excalidraw/scene/index.d.ts +2 -2
- package/dist/types/excalidraw/scene/types.d.ts +7 -4
- package/dist/types/excalidraw/snapping.d.ts +7 -7
- package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
- package/dist/types/excalidraw/types.d.ts +619 -42
- package/dist/types/excalidraw/viewport.d.ts +302 -0
- package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +12 -3
- 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 +25 -1
- package/dist/types/math/src/segment.d.ts +6 -0
- package/dist/types/math/src/types.d.ts +25 -1
- package/dist/types/utils/src/export.d.ts +4 -3
- package/dist/types/utils/src/index.d.ts +1 -2
- package/dist/types/utils/src/shape.d.ts +2 -2
- package/package.json +4 -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 -15
- 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/MobileToolBar.d.ts +0 -10
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +0 -8
- package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +0 -24
- 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 -11
- 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 -84
- 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 -46
- package/dist/types/excalidraw/polyfill.d.ts +0 -2
- package/dist/types/excalidraw/scene/scroll.d.ts +0 -18
- 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
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
2
|
import type { Scene } from "@excalidraw/element";
|
|
3
3
|
import type { AppState } from "../../types";
|
|
4
4
|
interface MultiAngleProps {
|
|
5
|
-
elements: readonly
|
|
5
|
+
elements: readonly NonDeletedExcalidrawElement[];
|
|
6
6
|
scene: Scene;
|
|
7
7
|
appState: AppState;
|
|
8
8
|
property: "angle";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "@excalidraw/element/types";
|
|
2
2
|
import type { Scene } from "@excalidraw/element";
|
|
3
3
|
import type { AtomicUnit } from "./utils";
|
|
4
4
|
import type { AppState } from "../../types";
|
|
5
5
|
interface MultiDimensionProps {
|
|
6
6
|
property: "width" | "height";
|
|
7
|
-
elements: readonly
|
|
7
|
+
elements: readonly NonDeletedExcalidrawElement[];
|
|
8
8
|
elementsMap: NonDeletedSceneElementsMap;
|
|
9
9
|
atomicUnits: AtomicUnit[];
|
|
10
10
|
scene: Scene;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { ElementsMap,
|
|
1
|
+
import type { ElementsMap, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
2
|
import type { Scene } from "@excalidraw/element";
|
|
3
3
|
import type { AtomicUnit } from "./utils";
|
|
4
4
|
import type { AppState } from "../../types";
|
|
5
5
|
interface MultiPositionProps {
|
|
6
6
|
property: "x" | "y";
|
|
7
|
-
elements: readonly
|
|
7
|
+
elements: readonly NonDeletedExcalidrawElement[];
|
|
8
8
|
elementsMap: ElementsMap;
|
|
9
9
|
atomicUnits: AtomicUnit[];
|
|
10
10
|
scene: Scene;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { ElementsMap,
|
|
1
|
+
import type { ElementsMap, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
2
|
import type { Scene } from "@excalidraw/element";
|
|
3
3
|
import type { AppState } from "../../types";
|
|
4
4
|
interface PositionProps {
|
|
5
5
|
property: "x" | "y";
|
|
6
|
-
element:
|
|
6
|
+
element: NonDeletedExcalidrawElement;
|
|
7
7
|
elementsMap: ElementsMap;
|
|
8
8
|
scene: Scene;
|
|
9
9
|
appState: AppState;
|
|
10
10
|
}
|
|
11
|
-
declare const Position: ({ property, element,
|
|
11
|
+
declare const Position: ({ property, element, scene, appState }: PositionProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
12
|
export default Position;
|
|
@@ -15,5 +15,5 @@ export declare const newOrigin: (x1: number, y1: number, w1: number, h1: number,
|
|
|
15
15
|
x: number;
|
|
16
16
|
y: number;
|
|
17
17
|
};
|
|
18
|
-
export declare const moveElement: (newTopLeftX: number, newTopLeftY: number, originalElement:
|
|
18
|
+
export declare const moveElement: (newTopLeftX: number, newTopLeftY: number, originalElement: NonDeletedExcalidrawElement, scene: Scene, appState: AppState, originalElementsMap: ElementsMap, shouldInformMutation?: boolean) => void;
|
|
19
19
|
export declare const getAtomicUnits: (targetElements: readonly ExcalidrawElement[], appState: AppState) => AtomicUnit[];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { TChat, TTTDDialog } from "../types";
|
|
2
|
-
export declare const ChatInterface: ({ chatId, messages, currentPrompt, onPromptChange, onGenerate, isGenerating, rateLimits,
|
|
2
|
+
export declare const ChatInterface: ({ chatId, messages, currentPrompt, onPromptChange, onGenerate, isGenerating, rateLimits, onAbort, onMermaidTabClick, onAiRepairClick, onDeleteMessage, onInsertMessage, onRetry, renderWelcomeScreen, renderWarning, }: {
|
|
3
3
|
chatId: string;
|
|
4
4
|
messages: TChat.ChatMessage[];
|
|
5
5
|
currentPrompt: string;
|
|
@@ -12,16 +12,12 @@ export declare const ChatInterface: ({ chatId, messages, currentPrompt, onPrompt
|
|
|
12
12
|
} | null;
|
|
13
13
|
onViewAsMermaid?: () => void;
|
|
14
14
|
generatedResponse?: string | null;
|
|
15
|
-
placeholder: {
|
|
16
|
-
title: string;
|
|
17
|
-
description: string;
|
|
18
|
-
hint: string;
|
|
19
|
-
};
|
|
20
15
|
onAbort?: () => void;
|
|
21
16
|
onMermaidTabClick?: (message: TChat.ChatMessage) => void;
|
|
22
17
|
onAiRepairClick?: (message: TChat.ChatMessage) => void;
|
|
23
18
|
onDeleteMessage?: (messageId: string) => void;
|
|
24
19
|
onInsertMessage?: (message: TChat.ChatMessage) => void;
|
|
25
20
|
onRetry?: (message: TChat.ChatMessage) => void;
|
|
21
|
+
renderWelcomeScreen?: TTTDDialog.renderWelcomeScreen;
|
|
26
22
|
renderWarning?: TTTDDialog.renderWarning;
|
|
27
23
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { SavedChat, TChat, TTTDDialog } from "../types";
|
|
2
|
-
export declare const TTDChatPanel: ({ chatId, messages, currentPrompt, onPromptChange, onGenerate, isGenerating, generatedResponse, isMenuOpen, onMenuToggle, onMenuClose, onNewChat, onRestoreChat, onDeleteChat, savedChats, activeSessionId, onAbort, onMermaidTabClick, onAiRepairClick, onDeleteMessage, onInsertMessage, onRetry, onViewAsMermaid, renderWarning, }: {
|
|
2
|
+
export declare const TTDChatPanel: ({ chatId, messages, currentPrompt, onPromptChange, onGenerate, isGenerating, generatedResponse, isMenuOpen, onMenuToggle, onMenuClose, onNewChat, onRestoreChat, onDeleteChat, savedChats, activeSessionId, onAbort, onMermaidTabClick, onAiRepairClick, onDeleteMessage, onInsertMessage, onRetry, onViewAsMermaid, renderWelcomeScreen, renderWarning, }: {
|
|
3
3
|
chatId: string;
|
|
4
4
|
messages: TChat.ChatMessage[];
|
|
5
5
|
currentPrompt: string;
|
|
@@ -22,5 +22,6 @@ export declare const TTDChatPanel: ({ chatId, messages, currentPrompt, onPromptC
|
|
|
22
22
|
onInsertMessage: (message: TChat.ChatMessage) => void;
|
|
23
23
|
onRetry?: (message: TChat.ChatMessage) => void;
|
|
24
24
|
onViewAsMermaid: () => void;
|
|
25
|
+
renderWelcomeScreen?: TTTDDialog.renderWelcomeScreen;
|
|
25
26
|
renderWarning?: TTTDDialog.renderWarning;
|
|
26
27
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Theme } from "@excalidraw/element/types";
|
|
2
|
+
export interface CodeMirrorEditorProps {
|
|
3
|
+
value: string;
|
|
4
|
+
onChange: (value: string) => void;
|
|
5
|
+
onKeyboardSubmit?: () => void;
|
|
6
|
+
placeholder?: string;
|
|
7
|
+
theme: Theme;
|
|
8
|
+
errorLine?: number | null;
|
|
9
|
+
}
|
|
10
|
+
declare const CodeMirrorEditor: ({ value, onChange, onKeyboardSubmit, placeholder, theme, errorLine, }: CodeMirrorEditorProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export default CodeMirrorEditor;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { RateLimits, TChat } from "./types";
|
|
2
|
-
export declare const rateLimitsAtom: import("jotai
|
|
2
|
+
export declare const rateLimitsAtom: import("jotai").PrimitiveAtom<RateLimits | null> & {
|
|
3
3
|
init: RateLimits | null;
|
|
4
4
|
};
|
|
5
|
-
export declare const showPreviewAtom: import("jotai
|
|
5
|
+
export declare const showPreviewAtom: import("jotai").PrimitiveAtom<boolean> & {
|
|
6
6
|
init: boolean;
|
|
7
7
|
};
|
|
8
|
-
export declare const errorAtom: import("jotai
|
|
8
|
+
export declare const errorAtom: import("jotai").PrimitiveAtom<Error | null> & {
|
|
9
9
|
init: Error | null;
|
|
10
10
|
};
|
|
11
|
-
export declare const chatHistoryAtom: import("jotai
|
|
11
|
+
export declare const chatHistoryAtom: import("jotai").PrimitiveAtom<TChat.ChatHistory> & {
|
|
12
12
|
init: TChat.ChatHistory;
|
|
13
13
|
};
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import "./TTDDialog.scss";
|
|
2
2
|
import type { TTDPersistenceAdapter, TTTDDialog } from "./types";
|
|
3
|
-
export declare const TTDDialog:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
3
|
+
export declare const TTDDialog: {
|
|
4
|
+
(props: {
|
|
5
|
+
onTextSubmit: TTTDDialog.onTextSubmit;
|
|
6
|
+
renderWelcomeScreen?: TTTDDialog.renderWelcomeScreen;
|
|
7
|
+
renderWarning?: TTTDDialog.renderWarning;
|
|
8
|
+
persistenceAdapter: TTDPersistenceAdapter;
|
|
9
|
+
} | {
|
|
10
|
+
__fallback: true;
|
|
11
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
12
|
+
WelcomeMessage: () => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { ChangeEventHandler } from "react";
|
|
2
1
|
interface TTDDialogInputProps {
|
|
3
2
|
input: string;
|
|
4
3
|
placeholder: string;
|
|
5
|
-
onChange:
|
|
4
|
+
onChange: (value: string) => void;
|
|
6
5
|
onKeyboardSubmit?: () => void;
|
|
6
|
+
errorLine?: number | null;
|
|
7
7
|
}
|
|
8
|
-
export declare const TTDDialogInput: ({ input, placeholder, onChange, onKeyboardSubmit, }: TTDDialogInputProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare const TTDDialogInput: ({ input, placeholder, onChange, onKeyboardSubmit, errorLine, }: TTDDialogInputProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
9
9
|
export {};
|
|
@@ -3,6 +3,9 @@ interface TTDDialogOutputProps {
|
|
|
3
3
|
canvasRef: React.RefObject<HTMLDivElement | null>;
|
|
4
4
|
loaded: boolean;
|
|
5
5
|
hideErrorDetails?: boolean;
|
|
6
|
+
sourceText?: string;
|
|
7
|
+
autoFixAvailable?: boolean;
|
|
8
|
+
onApplyAutoFix?: () => void;
|
|
6
9
|
}
|
|
7
|
-
export declare const TTDDialogOutput: ({ error, canvasRef, loaded, hideErrorDetails, }: TTDDialogOutputProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export declare const TTDDialogOutput: ({ error, canvasRef, loaded, hideErrorDetails, sourceText, autoFixAvailable, onApplyAutoFix, }: TTDDialogOutputProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
11
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const TTDWelcomeMessage: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { MermaidToExcalidrawLibProps, TTDPersistenceAdapter, TTTDDialog } from "./types";
|
|
2
|
-
export declare const TextToDiagram: ({ mermaidToExcalidrawLib, onTextSubmit, renderWarning, persistenceAdapter, }: {
|
|
2
|
+
export declare const TextToDiagram: ({ mermaidToExcalidrawLib, onTextSubmit, renderWelcomeScreen, renderWarning, persistenceAdapter, }: {
|
|
3
3
|
mermaidToExcalidrawLib: MermaidToExcalidrawLibProps;
|
|
4
4
|
onTextSubmit(props: TTTDDialog.OnTextSubmitProps): Promise<TTTDDialog.OnTextSubmitRetValue>;
|
|
5
|
+
renderWelcomeScreen?: TTTDDialog.renderWelcomeScreen;
|
|
5
6
|
renderWarning?: TTTDDialog.renderWarning;
|
|
6
7
|
persistenceAdapter: TTDPersistenceAdapter;
|
|
7
8
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -88,4 +88,8 @@ export declare namespace TTTDDialog {
|
|
|
88
88
|
* return undefined to use default rendering
|
|
89
89
|
*/
|
|
90
90
|
type renderWarning = (chatMessage: TChat.ChatMessage) => React.ReactNode | undefined;
|
|
91
|
+
type renderWelcomeScreen = (props: {
|
|
92
|
+
/** null if not rate limit data currently available */
|
|
93
|
+
rateLimits: RateLimits | null;
|
|
94
|
+
}) => React.ReactNode | undefined;
|
|
91
95
|
}
|
|
@@ -9,13 +9,13 @@ interface UseTTDChatStorageReturn {
|
|
|
9
9
|
restoreChat: (chat: SavedChat) => SavedChat;
|
|
10
10
|
createNewChatId: () => Promise<string>;
|
|
11
11
|
}
|
|
12
|
-
export declare const savedChatsAtom: import("jotai
|
|
12
|
+
export declare const savedChatsAtom: import("jotai").PrimitiveAtom<SavedChats> & {
|
|
13
13
|
init: SavedChats;
|
|
14
14
|
};
|
|
15
|
-
export declare const isLoadingChatsAtom: import("jotai
|
|
15
|
+
export declare const isLoadingChatsAtom: import("jotai").PrimitiveAtom<boolean> & {
|
|
16
16
|
init: boolean;
|
|
17
17
|
};
|
|
18
|
-
export declare const chatsLoadedAtom: import("jotai
|
|
18
|
+
export declare const chatsLoadedAtom: import("jotai").PrimitiveAtom<boolean> & {
|
|
19
19
|
init: boolean;
|
|
20
20
|
};
|
|
21
21
|
export declare const useTTDChatStorage: ({ persistenceAdapter, }: UseTTDChatStorageProps) => UseTTDChatStorageReturn;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getMermaidAutoFixCandidates: (sourceText: string, errorMessage: string) => string[];
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const isMermaidParseSyntaxError: (message: string) => boolean;
|
|
2
|
+
export declare const isMermaidAutoFixableError: (message: string) => boolean;
|
|
3
|
+
export declare const isMermaidCaretLine: (line: string) => boolean;
|
|
4
|
+
export declare const getMermaidInactiveParticipant: (message: string) => string | null;
|
|
5
|
+
export declare const getMermaidErrorLineNumber: (message: string, sourceText?: string) => number | null;
|
|
6
|
+
export declare const getMermaidSyntaxErrorGuidance: (message: string, sourceText?: string) => {
|
|
7
|
+
summary: string;
|
|
8
|
+
likelyCauses: string[];
|
|
9
|
+
} | null;
|
|
10
|
+
export declare const formatMermaidParseErrorMessage: (message: string) => string;
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import "./Toast.scss";
|
|
2
|
-
import type { CSSProperties } from "react";
|
|
3
|
-
export declare const Toast: ({ message, onClose, closable, duration, style, }: {
|
|
4
|
-
message:
|
|
2
|
+
import type { CSSProperties, ReactNode } from "react";
|
|
3
|
+
export declare const Toast: (({ message, onClose, closable, duration, style, }: {
|
|
4
|
+
message: ReactNode;
|
|
5
5
|
onClose: () => void;
|
|
6
6
|
closable?: boolean;
|
|
7
7
|
duration?: number;
|
|
8
8
|
style?: CSSProperties;
|
|
9
|
-
}) => import("react/jsx-runtime").JSX.Element
|
|
9
|
+
}) => import("react/jsx-runtime").JSX.Element) & {
|
|
10
|
+
ProgressBar: ({ progress }: {
|
|
11
|
+
progress: number;
|
|
12
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
};
|
|
@@ -4,7 +4,8 @@ import type { AppClassProperties } from "../types";
|
|
|
4
4
|
type ToolOption = {
|
|
5
5
|
type: string;
|
|
6
6
|
icon: React.ReactNode;
|
|
7
|
-
title
|
|
7
|
+
title: string;
|
|
8
|
+
fillable?: boolean;
|
|
8
9
|
};
|
|
9
10
|
type ToolPopoverProps = {
|
|
10
11
|
app: AppClassProperties;
|
|
@@ -13,13 +14,9 @@ type ToolPopoverProps = {
|
|
|
13
14
|
type: string;
|
|
14
15
|
};
|
|
15
16
|
defaultOption: string;
|
|
16
|
-
className?: string;
|
|
17
|
-
namePrefix: string;
|
|
18
|
-
title: string;
|
|
19
17
|
"data-testid": string;
|
|
20
18
|
onToolChange: (type: string) => void;
|
|
21
19
|
displayedOption: ToolOption;
|
|
22
|
-
fillable?: boolean;
|
|
23
20
|
};
|
|
24
|
-
export declare const ToolPopover: ({ app, options, activeTool, defaultOption,
|
|
21
|
+
export declare const ToolPopover: ({ app, options, activeTool, defaultOption, "data-testid": dataTestId, onToolChange, displayedOption, }: ToolPopoverProps) => import("react/jsx-runtime").JSX.Element;
|
|
25
22
|
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AppClassProperties, AppProps, AppState, UIAppState } from "../types";
|
|
2
|
+
/** the main (desktop/tablet) toolbar island */
|
|
3
|
+
export declare const Toolbar: ({ app, appState, setAppState, UIOptions, onPenModeToggle, onLockToggle, heading, }: {
|
|
4
|
+
app: AppClassProperties;
|
|
5
|
+
appState: UIAppState;
|
|
6
|
+
setAppState: React.Component<any, AppState>["setState"];
|
|
7
|
+
UIOptions: AppProps["UIOptions"];
|
|
8
|
+
onPenModeToggle: AppClassProperties["togglePenMode"];
|
|
9
|
+
onLockToggle: () => void;
|
|
10
|
+
heading: React.ReactNode;
|
|
11
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import type { AppClassProperties, AppState, ToolType, UIAppState } from "../types";
|
|
2
|
+
export type ToolConfig = {
|
|
3
|
+
icon: React.ReactNode;
|
|
4
|
+
/** letter shortcut(s) — the first one is shown in tooltips and badges */
|
|
5
|
+
letterKey?: string | readonly string[];
|
|
6
|
+
/** whether `letterKey` requires Shift to be held (e.g. Shift+X) */
|
|
7
|
+
shiftKey?: boolean;
|
|
8
|
+
numericKey?: string;
|
|
9
|
+
/** whether the tool's shapes can be filled — fills the icon when active */
|
|
10
|
+
fillable?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* re-activating the tool switches back to the previously active tool
|
|
13
|
+
* (via the keyboard shortcut or ESC — see `setActiveTool`'s `toggle`
|
|
14
|
+
* option)
|
|
15
|
+
*/
|
|
16
|
+
toggle?: boolean;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Tool data — the single source of truth for tool buttons, keyboard
|
|
20
|
+
* shortcuts (`findShapeByKey`), and the command palette. Toolbar placement
|
|
21
|
+
* is not defined here: toolbars compose the `*ToolButton` components below
|
|
22
|
+
* manually, so entries without a toolbar slot (e.g. laser) are data-only.
|
|
23
|
+
*/
|
|
24
|
+
export declare const TOOLS: {
|
|
25
|
+
hand: ToolConfig;
|
|
26
|
+
selection: ToolConfig;
|
|
27
|
+
rectangle: ToolConfig;
|
|
28
|
+
diamond: ToolConfig;
|
|
29
|
+
ellipse: ToolConfig;
|
|
30
|
+
arrow: ToolConfig;
|
|
31
|
+
line: ToolConfig;
|
|
32
|
+
freedraw: ToolConfig;
|
|
33
|
+
text: ToolConfig;
|
|
34
|
+
stickynote: ToolConfig;
|
|
35
|
+
image: ToolConfig;
|
|
36
|
+
eraser: ToolConfig;
|
|
37
|
+
frame: ToolConfig;
|
|
38
|
+
autoshape: ToolConfig;
|
|
39
|
+
embeddable: ToolConfig;
|
|
40
|
+
laser: ToolConfig;
|
|
41
|
+
bucketfill: ToolConfig;
|
|
42
|
+
lasso: ToolConfig;
|
|
43
|
+
};
|
|
44
|
+
export type ToolbarToolType = keyof typeof TOOLS;
|
|
45
|
+
/**
|
|
46
|
+
* tools that, when activated while already active, switch back to the
|
|
47
|
+
* previously active tool (see `setActiveTool`'s `toggle` option)
|
|
48
|
+
*/
|
|
49
|
+
export declare const TOGGLE_TOOLS: readonly (ToolType | "custom")[];
|
|
50
|
+
export declare const getToolLetter: (type: ToolbarToolType) => string | undefined;
|
|
51
|
+
/** human-readable shortcut hint, e.g. "R or 2", used in tooltips & aria */
|
|
52
|
+
export declare const getToolShortcut: (type: ToolbarToolType) => string;
|
|
53
|
+
export declare const findShapeByKey: (key: string, app: AppClassProperties, shiftKey?: boolean) => "line" | "arrow" | "text" | "selection" | "rectangle" | "stickynote" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "lasso" | "eraser" | "hand" | "laser" | "autoshape" | "bucketfill" | null;
|
|
54
|
+
/**
|
|
55
|
+
* Whether a toolbar entry activating the given tool renders disabled — true
|
|
56
|
+
* when the active tool is host-controlled (`props.activeTool`) and the entry
|
|
57
|
+
* doesn't activate the forced tool (`setActiveTool` refuses it).
|
|
58
|
+
*/
|
|
59
|
+
export declare const isToolButtonDisabled: (app: AppClassProperties, type: string) => boolean;
|
|
60
|
+
export type ToolButtonComponentProps = {
|
|
61
|
+
app: AppClassProperties;
|
|
62
|
+
activeTool: UIAppState["activeTool"];
|
|
63
|
+
/** hide the keybinding badge rendered in the button's corner */
|
|
64
|
+
hideKeyBinding?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* hide all shortcut affordances (tooltip hint, aria-keyshortcuts, and the
|
|
67
|
+
* keybinding badge) — used on mobile where there's no keyboard
|
|
68
|
+
*/
|
|
69
|
+
hideShortcut?: boolean;
|
|
70
|
+
};
|
|
71
|
+
export declare const HandToolButton: {
|
|
72
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
73
|
+
displayName: string;
|
|
74
|
+
};
|
|
75
|
+
export declare const RectangleToolButton: {
|
|
76
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
77
|
+
displayName: string;
|
|
78
|
+
};
|
|
79
|
+
export declare const DiamondToolButton: {
|
|
80
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
81
|
+
displayName: string;
|
|
82
|
+
};
|
|
83
|
+
export declare const EllipseToolButton: {
|
|
84
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
85
|
+
displayName: string;
|
|
86
|
+
};
|
|
87
|
+
export declare const ArrowToolButton: {
|
|
88
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
89
|
+
displayName: string;
|
|
90
|
+
};
|
|
91
|
+
export declare const LineToolButton: {
|
|
92
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
93
|
+
displayName: string;
|
|
94
|
+
};
|
|
95
|
+
export declare const FreedrawToolButton: {
|
|
96
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
97
|
+
displayName: string;
|
|
98
|
+
};
|
|
99
|
+
export declare const TextToolButton: {
|
|
100
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
101
|
+
displayName: string;
|
|
102
|
+
};
|
|
103
|
+
export declare const StickyNoteToolButton: {
|
|
104
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
105
|
+
displayName: string;
|
|
106
|
+
};
|
|
107
|
+
export declare const ImageToolButton: {
|
|
108
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
109
|
+
displayName: string;
|
|
110
|
+
};
|
|
111
|
+
export declare const EraserToolButton: {
|
|
112
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
113
|
+
displayName: string;
|
|
114
|
+
};
|
|
115
|
+
export declare const FrameToolButton: {
|
|
116
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
117
|
+
displayName: string;
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* The selection tool button — pointer-clicking it while the selection tool
|
|
121
|
+
* is active switches to lasso.
|
|
122
|
+
*/
|
|
123
|
+
export declare const SelectionToolButton: {
|
|
124
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
125
|
+
displayName: string;
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* Rendered in place of the selection button when lasso is the preferred
|
|
129
|
+
* selection tool; the selection shortcut activates it then.
|
|
130
|
+
*/
|
|
131
|
+
export declare const LassoToolButton: {
|
|
132
|
+
({ app, activeTool, hideKeyBinding, hideShortcut, }: ToolButtonComponentProps): import("react/jsx-runtime").JSX.Element;
|
|
133
|
+
displayName: string;
|
|
134
|
+
};
|
|
135
|
+
/**
|
|
136
|
+
* The selection ⇄ lasso popover used in compact (tablet) and mobile
|
|
137
|
+
* toolbars; picking an option also makes it the preferred selection tool.
|
|
138
|
+
*/
|
|
139
|
+
export declare const SelectionToolPopover: ({ app, activeTool, setAppState, }: {
|
|
140
|
+
app: AppClassProperties;
|
|
141
|
+
activeTool: UIAppState["activeTool"];
|
|
142
|
+
setAppState: React.Component<any, AppState>["setState"];
|
|
143
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
144
|
+
/**
|
|
145
|
+
* The freedraw ⇄ draw-shape popover used in compact (tablet) and mobile
|
|
146
|
+
* toolbars. The trigger remembers and displays the most recently used option.
|
|
147
|
+
*/
|
|
148
|
+
export declare const FreedrawToolPopover: ({ app, activeTool, }: {
|
|
149
|
+
app: AppClassProperties;
|
|
150
|
+
activeTool: UIAppState["activeTool"];
|
|
151
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -7,12 +7,26 @@ export declare const updateTooltipPosition: (tooltip: HTMLDivElement, item: {
|
|
|
7
7
|
width: number;
|
|
8
8
|
height: number;
|
|
9
9
|
}, position?: "bottom" | "top") => void;
|
|
10
|
+
export declare const hideTooltip: () => void;
|
|
11
|
+
/**
|
|
12
|
+
* Shows the tooltip for `item`. For elements that can't be wrapped
|
|
13
|
+
* in <Tooltip>. Pair with `hideTooltip()`.
|
|
14
|
+
*/
|
|
15
|
+
export declare const showTooltip: (item: HTMLElement, label: string, { long, delay, position, }?: {
|
|
16
|
+
long?: boolean;
|
|
17
|
+
/** show after a short delay (unless a tooltip was visible just now) */
|
|
18
|
+
delay?: boolean;
|
|
19
|
+
position?: "bottom" | "top";
|
|
20
|
+
}) => void;
|
|
10
21
|
type TooltipProps = {
|
|
11
22
|
children: React.ReactNode;
|
|
12
23
|
label: string;
|
|
13
24
|
long?: boolean;
|
|
14
25
|
style?: React.CSSProperties;
|
|
26
|
+
className?: string;
|
|
15
27
|
disabled?: boolean;
|
|
28
|
+
/** show after a short delay (unless a tooltip was visible just now) */
|
|
29
|
+
delay?: boolean;
|
|
16
30
|
};
|
|
17
|
-
export declare const Tooltip: ({ children, label, long, style, disabled, }: TooltipProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
31
|
+
export declare const Tooltip: ({ children, label, long, style, className, disabled, delay, }: TooltipProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
18
32
|
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ReactElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* right-click context menu of a customizable top-picks strip, resetting it
|
|
4
|
+
* to its default picks. Renders the strip as-is when not customizable.
|
|
5
|
+
*/
|
|
6
|
+
export declare const TopPicksContextMenu: ({ children, onReset, isCustomized, resetLabel, }: {
|
|
7
|
+
/** the strip (must accept a ref — used as the menu trigger) */
|
|
8
|
+
children: ReactElement;
|
|
9
|
+
/** present when the strip is user-customizable */
|
|
10
|
+
onReset?: () => void;
|
|
11
|
+
/** whether custom picks are currently applied (enables the reset item) */
|
|
12
|
+
isCustomized: boolean;
|
|
13
|
+
resetLabel: string;
|
|
14
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* "drag to pin" hint shown in a picker popup whose top picks are
|
|
3
|
+
* customizable — with a reset link while the picks are customized
|
|
4
|
+
*/
|
|
5
|
+
export declare const TopPicksTip: ({ className, tip, onReset, resetTitle, }: {
|
|
6
|
+
className?: string;
|
|
7
|
+
tip: string;
|
|
8
|
+
/** present only while the top picks are customized */
|
|
9
|
+
onReset?: () => void;
|
|
10
|
+
resetTitle: string;
|
|
11
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import "./TopPicksDnD.scss";
|
|
2
|
+
type DragOrigin = {
|
|
3
|
+
kind: "source";
|
|
4
|
+
} | {
|
|
5
|
+
kind: "pick";
|
|
6
|
+
index: number;
|
|
7
|
+
};
|
|
8
|
+
export type TopPicksDragState<T> = {
|
|
9
|
+
value: T;
|
|
10
|
+
origin: DragOrigin;
|
|
11
|
+
/** hovered strip slot — the slot to replace (source drags) or the final
|
|
12
|
+
* position (pick reorders). null while the pointer is outside the strip */
|
|
13
|
+
overIndex: number | null;
|
|
14
|
+
/** index of an already-pinned identical value that blocks the drop */
|
|
15
|
+
duplicateIndex: number | null;
|
|
16
|
+
/** signed distance between strip slot centers (for reorder preview) */
|
|
17
|
+
slotSpan: number;
|
|
18
|
+
} | null;
|
|
19
|
+
export type TopPicksGhost = {
|
|
20
|
+
/** the ghost's visual. Rendered into `document.body` — outside the
|
|
21
|
+
* editor's CSS scope, so theme-dependent styling must be resolved from the
|
|
22
|
+
* rendered DOM (computed styles) rather than CSS variables */
|
|
23
|
+
content: HTMLElement;
|
|
24
|
+
/** where the ghost spawns (its size) and flies back to on cancel */
|
|
25
|
+
rect: DOMRect;
|
|
26
|
+
};
|
|
27
|
+
/** called on pointerdown (the source may not stay mounted until the drag
|
|
28
|
+
* activates), for every potential drag — keep it cheap */
|
|
29
|
+
export type CreateTopPicksGhost<T> = (args: {
|
|
30
|
+
value: T;
|
|
31
|
+
/** the element the drag started on */
|
|
32
|
+
sourceEl: HTMLElement;
|
|
33
|
+
/** the registered strip */
|
|
34
|
+
stripEl: HTMLElement;
|
|
35
|
+
}) => TopPicksGhost;
|
|
36
|
+
export type TopPicksDnD<T> = {
|
|
37
|
+
dragState: TopPicksDragState<T>;
|
|
38
|
+
startSourceDrag: (event: React.PointerEvent, value: T | null) => void;
|
|
39
|
+
startPickDrag: (event: React.PointerEvent, index: number, value: T) => void;
|
|
40
|
+
setStripEl: (el: HTMLDivElement | null) => void;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* live preview of the reorder result — the translation (px) moving the pick
|
|
44
|
+
* at `index` to the slot it would occupy if dropped right now
|
|
45
|
+
*/
|
|
46
|
+
export declare const getTopPickReorderOffset: (dragState: TopPicksDragState<unknown>, index: number) => number;
|
|
47
|
+
/** "marching ants" outline hinting that the strip accepts the drop — SVG
|
|
48
|
+
* because CSS dashed outlines/borders can't animate their dash offset */
|
|
49
|
+
export declare const TopPicksDnDOutline: () => import("react/jsx-runtime").JSX.Element;
|
|
50
|
+
export declare const useTopPicksDnD: <T>({ enabled, picks, onPicksChange, isSamePick, createGhost, }: {
|
|
51
|
+
enabled: boolean;
|
|
52
|
+
picks: readonly T[];
|
|
53
|
+
onPicksChange: (picks: T[]) => void;
|
|
54
|
+
/** value-equality — pins identical to an existing pick are refused */
|
|
55
|
+
isSamePick?: (a: T, b: T) => boolean;
|
|
56
|
+
createGhost: CreateTopPicksGhost<T>;
|
|
57
|
+
}) => TopPicksDnD<T>;
|
|
58
|
+
export {};
|
|
@@ -7,12 +7,13 @@ export type GoToCollaboratorComponentProps = {
|
|
|
7
7
|
withName: boolean;
|
|
8
8
|
isBeingFollowed: boolean;
|
|
9
9
|
};
|
|
10
|
-
type UserListUserObject = Pick<Collaborator, "avatarUrl" | "id" | "socketId" | "username" | "isInCall" | "isSpeaking" | "isMuted">;
|
|
10
|
+
type UserListUserObject = Pick<Collaborator, "avatarUrl" | "id" | "socketId" | "username" | "isInCall" | "isSpeaking" | "isMuted" | "isCurrentUser">;
|
|
11
11
|
type UserListProps = {
|
|
12
12
|
className?: string;
|
|
13
13
|
mobile?: boolean;
|
|
14
14
|
collaborators: Map<SocketId, UserListUserObject>;
|
|
15
15
|
userToFollow: SocketId | null;
|
|
16
|
+
currentUserControls?: React.ReactNode | ((isMobile: boolean) => React.ReactNode);
|
|
16
17
|
};
|
|
17
|
-
export declare const UserList: React.MemoExoticComponent<({ className, mobile, collaborators, userToFollow }: UserListProps) => import("react/jsx-runtime").JSX.Element>;
|
|
18
|
+
export declare const UserList: React.MemoExoticComponent<({ className, mobile, collaborators, userToFollow, currentUserControls, }: UserListProps) => import("react/jsx-runtime").JSX.Element>;
|
|
18
19
|
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import "./ViewportStatusFrame.scss";
|
|
2
|
+
import type { CSSProperties } from "react";
|
|
3
|
+
import type { ViewportStatusFrame as ViewportStatusFrameType } from "../../types";
|
|
4
|
+
export declare const ViewportStatusBorder: ({ border, style, }: {
|
|
5
|
+
border: string;
|
|
6
|
+
style?: CSSProperties;
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare const ViewportStatusBadge: ({ label, border, }: {
|
|
9
|
+
label: NonNullable<ViewportStatusFrameType["label"]>;
|
|
10
|
+
border?: ViewportStatusFrameType["border"];
|
|
11
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -11,16 +11,19 @@ type InteractiveCanvasProps = {
|
|
|
11
11
|
visibleElements: readonly NonDeletedExcalidrawElement[];
|
|
12
12
|
selectedElements: readonly NonDeletedExcalidrawElement[];
|
|
13
13
|
allElementsMap: NonDeletedSceneElementsMap;
|
|
14
|
-
|
|
14
|
+
canvasNonce: string;
|
|
15
15
|
selectionNonce: number | undefined;
|
|
16
16
|
scale: number;
|
|
17
17
|
appState: InteractiveCanvasAppState;
|
|
18
18
|
renderScrollbars: boolean;
|
|
19
19
|
editorInterface: EditorInterface;
|
|
20
20
|
app: AppClassProperties;
|
|
21
|
+
interactionEnabled: boolean;
|
|
22
|
+
navigationEnabled: boolean;
|
|
21
23
|
renderInteractiveSceneCallback: (data: RenderInteractiveSceneCallback) => void;
|
|
22
24
|
handleCanvasRef: (canvas: HTMLCanvasElement | null) => void;
|
|
23
25
|
onContextMenu: Exclude<DOMAttributes<HTMLCanvasElement | HTMLDivElement>["onContextMenu"], undefined>;
|
|
26
|
+
onClick: Exclude<DOMAttributes<HTMLCanvasElement>["onClick"], undefined>;
|
|
24
27
|
onPointerMove: Exclude<DOMAttributes<HTMLCanvasElement>["onPointerMove"], undefined>;
|
|
25
28
|
onPointerUp: Exclude<DOMAttributes<HTMLCanvasElement>["onPointerUp"], undefined>;
|
|
26
29
|
onPointerCancel: Exclude<DOMAttributes<HTMLCanvasElement>["onPointerCancel"], undefined>;
|
|
@@ -4,11 +4,14 @@ import type { AppState } from "../../types";
|
|
|
4
4
|
import type { RoughCanvas } from "roughjs/bin/canvas";
|
|
5
5
|
interface NewElementCanvasProps {
|
|
6
6
|
appState: AppState;
|
|
7
|
+
newElement: NonNullable<AppState["newElement"]>;
|
|
7
8
|
elementsMap: RenderableElementsMap;
|
|
8
9
|
allElementsMap: NonDeletedSceneElementsMap;
|
|
9
10
|
scale: number;
|
|
10
11
|
rc: RoughCanvas;
|
|
11
12
|
renderConfig: StaticCanvasRenderConfig;
|
|
13
|
+
/** CSS opacity of the whole canvas — a translucent preview of a finished element */
|
|
14
|
+
opacity?: number;
|
|
12
15
|
}
|
|
13
16
|
declare const NewElementCanvas: (props: NewElementCanvasProps) => import("react/jsx-runtime").JSX.Element;
|
|
14
17
|
export default NewElementCanvas;
|