tldraw 3.16.0-canary.5dac57cf9465 → 3.16.0-canary.5f8d98bccb38
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-cjs/index.d.ts +299 -105
- package/dist-cjs/index.js +37 -14
- package/dist-cjs/index.js.map +2 -2
- package/dist-cjs/lib/Tldraw.js +12 -2
- package/dist-cjs/lib/Tldraw.js.map +2 -2
- package/dist-cjs/lib/canvas/TldrawScribble.js +1 -1
- package/dist-cjs/lib/canvas/TldrawScribble.js.map +2 -2
- package/dist-cjs/lib/defaultExternalContentHandlers.js +5 -4
- package/dist-cjs/lib/defaultExternalContentHandlers.js.map +2 -2
- package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js +3 -3
- package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/arrow/arrowLabel.js +6 -0
- package/dist-cjs/lib/shapes/arrow/arrowLabel.js.map +3 -3
- package/dist-cjs/lib/shapes/arrow/elbow/ElbowArrowDebug.js +3 -3
- package/dist-cjs/lib/shapes/arrow/elbow/ElbowArrowDebug.js.map +1 -1
- package/dist-cjs/lib/shapes/draw/DrawShapeUtil.js +3 -3
- package/dist-cjs/lib/shapes/draw/DrawShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/embed/EmbedShapeUtil.js +1 -1
- package/dist-cjs/lib/shapes/embed/EmbedShapeUtil.js.map +1 -1
- package/dist-cjs/lib/shapes/frame/FrameShapeUtil.js +18 -12
- package/dist-cjs/lib/shapes/frame/FrameShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/frame/components/FrameHeading.js +1 -1
- package/dist-cjs/lib/shapes/frame/components/FrameHeading.js.map +2 -2
- package/dist-cjs/lib/shapes/geo/GeoShapeUtil.js +2 -2
- package/dist-cjs/lib/shapes/geo/GeoShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/geo/components/GeoShapeBody.js +2 -1
- package/dist-cjs/lib/shapes/geo/components/GeoShapeBody.js.map +2 -2
- package/dist-cjs/lib/shapes/highlight/HighlightShapeUtil.js +5 -1
- package/dist-cjs/lib/shapes/highlight/HighlightShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/image/ImageShapeUtil.js +6 -3
- package/dist-cjs/lib/shapes/image/ImageShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/line/LineShapeUtil.js +5 -1
- package/dist-cjs/lib/shapes/line/LineShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/note/NoteShapeUtil.js +4 -4
- package/dist-cjs/lib/shapes/note/NoteShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/PlainTextLabel.js +1 -3
- package/dist-cjs/lib/shapes/shared/PlainTextLabel.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/ShapeFill.js +4 -4
- package/dist-cjs/lib/shapes/shared/ShapeFill.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/freehand/svg.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/useEditablePlainText.js +0 -2
- package/dist-cjs/lib/shapes/shared/useEditablePlainText.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/useImageOrVideoAsset.js +0 -2
- package/dist-cjs/lib/shapes/shared/useImageOrVideoAsset.js.map +2 -2
- package/dist-cjs/lib/shapes/text/TextShapeUtil.js +2 -2
- package/dist-cjs/lib/shapes/text/TextShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/video/VideoShapeUtil.js +3 -3
- package/dist-cjs/lib/shapes/video/VideoShapeUtil.js.map +1 -1
- package/dist-cjs/lib/tools/EraserTool/childStates/Erasing.js +25 -1
- package/dist-cjs/lib/tools/EraserTool/childStates/Erasing.js.map +2 -2
- package/dist-cjs/lib/tools/EraserTool/childStates/Pointing.js +12 -0
- package/dist-cjs/lib/tools/EraserTool/childStates/Pointing.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/Translating.js.map +2 -2
- package/dist-cjs/lib/ui/TldrawUi.js +27 -12
- package/dist-cjs/lib/ui/TldrawUi.js.map +3 -3
- package/dist-cjs/lib/ui/assetUrls.js +13 -10
- package/dist-cjs/lib/ui/assetUrls.js.map +2 -2
- package/dist-cjs/lib/ui/components/ActionsMenu/DefaultActionsMenu.js +10 -2
- package/dist-cjs/lib/ui/components/ActionsMenu/DefaultActionsMenu.js.map +2 -2
- package/dist-cjs/lib/ui/components/{FollowingIndicator.js → DefaultFollowingIndicator.js} +6 -6
- package/dist-cjs/lib/ui/components/DefaultFollowingIndicator.js.map +7 -0
- package/dist-cjs/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.js +6 -6
- package/dist-cjs/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.js.map +1 -1
- package/dist-cjs/lib/ui/components/Minimap/MinimapManager.js +4 -4
- package/dist-cjs/lib/ui/components/Minimap/MinimapManager.js.map +2 -2
- package/dist-cjs/lib/ui/components/MobileStylePanel.js +5 -3
- package/dist-cjs/lib/ui/components/MobileStylePanel.js.map +2 -2
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanel.js +9 -4
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanel.js.map +2 -2
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanelContent.js +255 -316
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanelContent.js.map +2 -2
- package/dist-cjs/lib/ui/components/{primitives/TldrawUiButtonPicker.js → StylePanel/StylePanelButtonPicker.js} +52 -45
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelButtonPicker.js.map +7 -0
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelContext.js +68 -0
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelContext.js.map +7 -0
- package/dist-cjs/lib/ui/components/StylePanel/{DoubleDropdownPicker.js → StylePanelDoubleDropdownPicker.js} +23 -22
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelDoubleDropdownPicker.js.map +7 -0
- package/dist-cjs/lib/ui/components/StylePanel/{DropdownPicker.js → StylePanelDropdownPicker.js} +24 -21
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelDropdownPicker.js.map +7 -0
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelSubheading.js +28 -0
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelSubheading.js.map +7 -0
- package/dist-cjs/lib/ui/components/Toolbar/AltTextEditor.js +3 -2
- package/dist-cjs/lib/ui/components/Toolbar/AltTextEditor.js.map +2 -2
- package/dist-cjs/lib/ui/components/Toolbar/DefaultImageToolbarContent.js +39 -10
- package/dist-cjs/lib/ui/components/Toolbar/DefaultImageToolbarContent.js.map +2 -2
- package/dist-cjs/lib/ui/components/Toolbar/DefaultToolbar.js +66 -22
- package/dist-cjs/lib/ui/components/Toolbar/DefaultToolbar.js.map +3 -3
- package/dist-cjs/lib/ui/components/Toolbar/DefaultVideoToolbarContent.js +15 -3
- package/dist-cjs/lib/ui/components/Toolbar/DefaultVideoToolbarContent.js.map +2 -2
- package/dist-cjs/lib/ui/components/Toolbar/LinkEditor.js +3 -3
- package/dist-cjs/lib/ui/components/Toolbar/LinkEditor.js.map +2 -2
- package/dist-cjs/lib/ui/components/Toolbar/OverflowingToolbar.js +188 -78
- package/dist-cjs/lib/ui/components/Toolbar/OverflowingToolbar.js.map +3 -3
- package/dist-cjs/lib/ui/components/primitives/TldrawUiContextualToolbar.js +10 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiContextualToolbar.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiSlider.js +17 -4
- package/dist-cjs/lib/ui/components/primitives/TldrawUiSlider.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiToolbar.js +17 -3
- package/dist-cjs/lib/ui/components/primitives/TldrawUiToolbar.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiTooltip.js +167 -159
- package/dist-cjs/lib/ui/components/primitives/TldrawUiTooltip.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/layout.js +30 -5
- package/dist-cjs/lib/ui/components/primitives/layout.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuContext.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuGroup.js +25 -12
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuGroup.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuItem.js +154 -19
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuItem.js.map +2 -2
- package/dist-cjs/lib/ui/context/actions.js +23 -10
- package/dist-cjs/lib/ui/context/actions.js.map +2 -2
- package/dist-cjs/lib/ui/context/components.js +2 -0
- package/dist-cjs/lib/ui/context/components.js.map +2 -2
- package/dist-cjs/lib/ui/context/events.js.map +2 -2
- package/dist-cjs/lib/ui/hooks/useExportAs.js +3 -2
- package/dist-cjs/lib/ui/hooks/useExportAs.js.map +2 -2
- package/dist-cjs/lib/ui/hooks/useTools.js +94 -9
- package/dist-cjs/lib/ui/hooks/useTools.js.map +2 -2
- package/dist-cjs/lib/ui/hooks/useTranslation/TLUiTranslationKey.js.map +1 -1
- package/dist-cjs/lib/ui/hooks/useTranslation/defaultTranslation.js +4 -2
- package/dist-cjs/lib/ui/hooks/useTranslation/defaultTranslation.js.map +2 -2
- package/dist-cjs/lib/ui/kbd-utils.js +9 -3
- package/dist-cjs/lib/ui/kbd-utils.js.map +2 -2
- package/dist-cjs/lib/ui/version.js +3 -3
- package/dist-cjs/lib/ui/version.js.map +1 -1
- package/dist-cjs/lib/utils/export/copyAs.js +1 -2
- package/dist-cjs/lib/utils/export/copyAs.js.map +2 -2
- package/dist-cjs/lib/utils/export/export.js +0 -20
- package/dist-cjs/lib/utils/export/export.js.map +2 -2
- package/dist-cjs/lib/utils/export/exportAs.js +1 -2
- package/dist-cjs/lib/utils/export/exportAs.js.map +2 -2
- package/dist-esm/index.d.mts +299 -105
- package/dist-esm/index.mjs +70 -30
- package/dist-esm/index.mjs.map +2 -2
- package/dist-esm/lib/Tldraw.mjs +14 -4
- package/dist-esm/lib/Tldraw.mjs.map +2 -2
- package/dist-esm/lib/canvas/TldrawScribble.mjs +1 -1
- package/dist-esm/lib/canvas/TldrawScribble.mjs.map +2 -2
- package/dist-esm/lib/defaultExternalContentHandlers.mjs +5 -4
- package/dist-esm/lib/defaultExternalContentHandlers.mjs.map +2 -2
- package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs +4 -3
- package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/arrow/arrowLabel.mjs +6 -0
- package/dist-esm/lib/shapes/arrow/arrowLabel.mjs.map +3 -3
- package/dist-esm/lib/shapes/arrow/elbow/ElbowArrowDebug.mjs +3 -3
- package/dist-esm/lib/shapes/arrow/elbow/ElbowArrowDebug.mjs.map +1 -1
- package/dist-esm/lib/shapes/draw/DrawShapeUtil.mjs +4 -3
- package/dist-esm/lib/shapes/draw/DrawShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/embed/EmbedShapeUtil.mjs +1 -1
- package/dist-esm/lib/shapes/embed/EmbedShapeUtil.mjs.map +1 -1
- package/dist-esm/lib/shapes/frame/FrameShapeUtil.mjs +19 -12
- package/dist-esm/lib/shapes/frame/FrameShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/frame/components/FrameHeading.mjs +1 -1
- package/dist-esm/lib/shapes/frame/components/FrameHeading.mjs.map +2 -2
- package/dist-esm/lib/shapes/geo/GeoShapeUtil.mjs +3 -2
- package/dist-esm/lib/shapes/geo/GeoShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/geo/components/GeoShapeBody.mjs +2 -1
- package/dist-esm/lib/shapes/geo/components/GeoShapeBody.mjs.map +2 -2
- package/dist-esm/lib/shapes/highlight/HighlightShapeUtil.mjs +6 -1
- package/dist-esm/lib/shapes/highlight/HighlightShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/image/ImageShapeUtil.mjs +6 -3
- package/dist-esm/lib/shapes/image/ImageShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/line/LineShapeUtil.mjs +6 -1
- package/dist-esm/lib/shapes/line/LineShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/note/NoteShapeUtil.mjs +5 -4
- package/dist-esm/lib/shapes/note/NoteShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/PlainTextLabel.mjs +1 -3
- package/dist-esm/lib/shapes/shared/PlainTextLabel.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/ShapeFill.mjs +5 -4
- package/dist-esm/lib/shapes/shared/ShapeFill.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/freehand/svg.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/useEditablePlainText.mjs +0 -2
- package/dist-esm/lib/shapes/shared/useEditablePlainText.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/useImageOrVideoAsset.mjs +0 -2
- package/dist-esm/lib/shapes/shared/useImageOrVideoAsset.mjs.map +2 -2
- package/dist-esm/lib/shapes/text/TextShapeUtil.mjs +3 -2
- package/dist-esm/lib/shapes/text/TextShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/video/VideoShapeUtil.mjs +3 -3
- package/dist-esm/lib/shapes/video/VideoShapeUtil.mjs.map +1 -1
- package/dist-esm/lib/tools/EraserTool/childStates/Erasing.mjs +26 -1
- package/dist-esm/lib/tools/EraserTool/childStates/Erasing.mjs.map +2 -2
- package/dist-esm/lib/tools/EraserTool/childStates/Pointing.mjs +13 -0
- package/dist-esm/lib/tools/EraserTool/childStates/Pointing.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/Translating.mjs.map +2 -2
- package/dist-esm/lib/ui/TldrawUi.mjs +29 -14
- package/dist-esm/lib/ui/TldrawUi.mjs.map +3 -3
- package/dist-esm/lib/ui/assetUrls.mjs +13 -10
- package/dist-esm/lib/ui/assetUrls.mjs.map +2 -2
- package/dist-esm/lib/ui/components/ActionsMenu/DefaultActionsMenu.mjs +10 -2
- package/dist-esm/lib/ui/components/ActionsMenu/DefaultActionsMenu.mjs.map +2 -2
- package/dist-esm/lib/ui/components/{FollowingIndicator.mjs → DefaultFollowingIndicator.mjs} +3 -3
- package/dist-esm/lib/ui/components/DefaultFollowingIndicator.mjs.map +7 -0
- package/dist-esm/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.mjs +6 -6
- package/dist-esm/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.mjs.map +1 -1
- package/dist-esm/lib/ui/components/Minimap/MinimapManager.mjs +4 -4
- package/dist-esm/lib/ui/components/Minimap/MinimapManager.mjs.map +2 -2
- package/dist-esm/lib/ui/components/MobileStylePanel.mjs +6 -3
- package/dist-esm/lib/ui/components/MobileStylePanel.mjs.map +2 -2
- package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanel.mjs +14 -5
- package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanel.mjs.map +2 -2
- package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanelContent.mjs +257 -320
- package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanelContent.mjs.map +2 -2
- package/dist-esm/lib/ui/components/StylePanel/StylePanelButtonPicker.mjs +126 -0
- package/dist-esm/lib/ui/components/StylePanel/StylePanelButtonPicker.mjs.map +7 -0
- package/dist-esm/lib/ui/components/StylePanel/StylePanelContext.mjs +48 -0
- package/dist-esm/lib/ui/components/StylePanel/StylePanelContext.mjs.map +7 -0
- package/dist-esm/lib/ui/components/StylePanel/{DoubleDropdownPicker.mjs → StylePanelDoubleDropdownPicker.mjs} +20 -19
- package/dist-esm/lib/ui/components/StylePanel/StylePanelDoubleDropdownPicker.mjs.map +7 -0
- package/dist-esm/lib/ui/components/StylePanel/{DropdownPicker.mjs → StylePanelDropdownPicker.mjs} +21 -18
- package/dist-esm/lib/ui/components/StylePanel/StylePanelDropdownPicker.mjs.map +7 -0
- package/dist-esm/lib/ui/components/StylePanel/StylePanelSubheading.mjs +8 -0
- package/dist-esm/lib/ui/components/StylePanel/StylePanelSubheading.mjs.map +7 -0
- package/dist-esm/lib/ui/components/Toolbar/AltTextEditor.mjs +3 -2
- package/dist-esm/lib/ui/components/Toolbar/AltTextEditor.mjs.map +2 -2
- package/dist-esm/lib/ui/components/Toolbar/DefaultImageToolbarContent.mjs +39 -10
- package/dist-esm/lib/ui/components/Toolbar/DefaultImageToolbarContent.mjs.map +2 -2
- package/dist-esm/lib/ui/components/Toolbar/DefaultToolbar.mjs +56 -22
- package/dist-esm/lib/ui/components/Toolbar/DefaultToolbar.mjs.map +2 -2
- package/dist-esm/lib/ui/components/Toolbar/DefaultVideoToolbarContent.mjs +15 -3
- package/dist-esm/lib/ui/components/Toolbar/DefaultVideoToolbarContent.mjs.map +2 -2
- package/dist-esm/lib/ui/components/Toolbar/LinkEditor.mjs +3 -3
- package/dist-esm/lib/ui/components/Toolbar/LinkEditor.mjs.map +2 -2
- package/dist-esm/lib/ui/components/Toolbar/OverflowingToolbar.mjs +192 -80
- package/dist-esm/lib/ui/components/Toolbar/OverflowingToolbar.mjs.map +3 -3
- package/dist-esm/lib/ui/components/primitives/TldrawUiContextualToolbar.mjs +10 -1
- package/dist-esm/lib/ui/components/primitives/TldrawUiContextualToolbar.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiSlider.mjs +17 -4
- package/dist-esm/lib/ui/components/primitives/TldrawUiSlider.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiToolbar.mjs +18 -4
- package/dist-esm/lib/ui/components/primitives/TldrawUiToolbar.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiTooltip.mjs +176 -161
- package/dist-esm/lib/ui/components/primitives/TldrawUiTooltip.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/layout.mjs +31 -6
- package/dist-esm/lib/ui/components/primitives/layout.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuContext.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuGroup.mjs +25 -12
- package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuGroup.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuItem.mjs +162 -21
- package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuItem.mjs.map +2 -2
- package/dist-esm/lib/ui/context/actions.mjs +23 -10
- package/dist-esm/lib/ui/context/actions.mjs.map +2 -2
- package/dist-esm/lib/ui/context/components.mjs +2 -0
- package/dist-esm/lib/ui/context/components.mjs.map +2 -2
- package/dist-esm/lib/ui/context/events.mjs.map +2 -2
- package/dist-esm/lib/ui/hooks/useExportAs.mjs +3 -2
- package/dist-esm/lib/ui/hooks/useExportAs.mjs.map +2 -2
- package/dist-esm/lib/ui/hooks/useTools.mjs +102 -10
- package/dist-esm/lib/ui/hooks/useTools.mjs.map +2 -2
- package/dist-esm/lib/ui/hooks/useTranslation/defaultTranslation.mjs +4 -2
- package/dist-esm/lib/ui/hooks/useTranslation/defaultTranslation.mjs.map +2 -2
- package/dist-esm/lib/ui/kbd-utils.mjs +9 -3
- package/dist-esm/lib/ui/kbd-utils.mjs.map +2 -2
- package/dist-esm/lib/ui/version.mjs +3 -3
- package/dist-esm/lib/ui/version.mjs.map +1 -1
- package/dist-esm/lib/utils/export/copyAs.mjs +1 -2
- package/dist-esm/lib/utils/export/copyAs.mjs.map +2 -2
- package/dist-esm/lib/utils/export/export.mjs +0 -20
- package/dist-esm/lib/utils/export/export.mjs.map +2 -2
- package/dist-esm/lib/utils/export/exportAs.mjs +1 -2
- package/dist-esm/lib/utils/export/exportAs.mjs.map +2 -2
- package/package.json +11 -34
- package/src/index.ts +51 -22
- package/src/lib/Tldraw.tsx +15 -2
- package/src/lib/canvas/TldrawScribble.tsx +1 -1
- package/src/lib/defaultExternalContentHandlers.ts +12 -4
- package/src/lib/shapes/arrow/ArrowShapeOptions.test.ts +2 -1
- package/src/lib/shapes/arrow/ArrowShapeTool.test.ts +4 -3
- package/src/lib/shapes/arrow/ArrowShapeUtil.test.ts +7 -6
- package/src/lib/shapes/arrow/ArrowShapeUtil.tsx +4 -3
- package/src/lib/shapes/arrow/arrowLabel.ts +8 -0
- package/src/lib/shapes/arrow/elbow/ElbowArrowDebug.tsx +3 -3
- package/src/lib/shapes/draw/DrawShapeTool.test.ts +0 -5
- package/src/lib/shapes/draw/DrawShapeUtil.tsx +4 -3
- package/src/lib/shapes/embed/EmbedShapeUtil.tsx +1 -1
- package/src/lib/shapes/frame/FrameShapeUtil.tsx +29 -14
- package/src/lib/shapes/frame/components/FrameHeading.tsx +1 -1
- package/src/lib/shapes/geo/GeoShapeUtil.tsx +3 -2
- package/src/lib/shapes/geo/components/GeoShapeBody.tsx +2 -2
- package/src/lib/shapes/highlight/HighlightShapeUtil.tsx +7 -1
- package/src/lib/shapes/image/ImageShapeUtil.tsx +6 -3
- package/src/lib/shapes/line/LineShapeUtil.test.tsx +4 -3
- package/src/lib/shapes/line/LineShapeUtil.tsx +6 -1
- package/src/lib/shapes/line/__snapshots__/LineShapeUtil.test.tsx.snap +2 -2
- package/src/lib/shapes/note/NoteShapeUtil.tsx +9 -4
- package/src/lib/shapes/shared/PlainTextLabel.tsx +0 -6
- package/src/lib/shapes/shared/ShapeFill.tsx +5 -4
- package/src/lib/shapes/shared/freehand/svg.ts +2 -0
- package/src/lib/shapes/shared/useEditablePlainText.ts +0 -6
- package/src/lib/shapes/shared/useImageOrVideoAsset.ts +0 -7
- package/src/lib/shapes/text/TextShapeTool.test.ts +6 -5
- package/src/lib/shapes/text/TextShapeUtil.tsx +3 -2
- package/src/lib/shapes/video/VideoShapeUtil.tsx +3 -3
- package/src/lib/tools/EraserTool/childStates/Erasing.ts +34 -1
- package/src/lib/tools/EraserTool/childStates/Pointing.ts +20 -0
- package/src/lib/tools/SelectTool/childStates/Translating.ts +0 -1
- package/src/lib/ui/TldrawUi.tsx +33 -12
- package/src/lib/ui/assetUrls.ts +13 -10
- package/src/lib/ui/components/ActionsMenu/DefaultActionsMenu.tsx +13 -2
- package/src/lib/ui/components/{FollowingIndicator.tsx → DefaultFollowingIndicator.tsx} +2 -1
- package/src/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.tsx +6 -6
- package/src/lib/ui/components/Minimap/MinimapManager.ts +4 -4
- package/src/lib/ui/components/MobileStylePanel.tsx +9 -6
- package/src/lib/ui/components/StylePanel/DefaultStylePanel.tsx +27 -13
- package/src/lib/ui/components/StylePanel/DefaultStylePanelContent.tsx +260 -381
- package/src/lib/ui/components/{primitives/TldrawUiButtonPicker.tsx → StylePanel/StylePanelButtonPicker.tsx} +65 -51
- package/src/lib/ui/components/StylePanel/StylePanelContext.tsx +63 -0
- package/src/lib/ui/components/StylePanel/{DoubleDropdownPicker.tsx → StylePanelDoubleDropdownPicker.tsx} +28 -19
- package/src/lib/ui/components/StylePanel/StylePanelDropdownPicker.tsx +119 -0
- package/src/lib/ui/components/StylePanel/StylePanelSubheading.tsx +9 -0
- package/src/lib/ui/components/Toolbar/AltTextEditor.tsx +4 -3
- package/src/lib/ui/components/Toolbar/DefaultImageToolbarContent.tsx +33 -16
- package/src/lib/ui/components/Toolbar/DefaultToolbar.tsx +55 -24
- package/src/lib/ui/components/Toolbar/DefaultVideoToolbarContent.tsx +12 -4
- package/src/lib/ui/components/Toolbar/LinkEditor.tsx +5 -5
- package/src/lib/ui/components/Toolbar/OverflowingToolbar.tsx +208 -56
- package/src/lib/ui/components/primitives/TldrawUiContextualToolbar.tsx +6 -1
- package/src/lib/ui/components/primitives/TldrawUiSlider.tsx +50 -30
- package/src/lib/ui/components/primitives/TldrawUiToolbar.tsx +25 -5
- package/src/lib/ui/components/primitives/TldrawUiTooltip.tsx +209 -181
- package/src/lib/ui/components/primitives/layout.tsx +79 -5
- package/src/lib/ui/components/primitives/menus/TldrawUiMenuContext.tsx +0 -1
- package/src/lib/ui/components/primitives/menus/TldrawUiMenuGroup.tsx +29 -16
- package/src/lib/ui/components/primitives/menus/TldrawUiMenuItem.tsx +221 -18
- package/src/lib/ui/context/actions.tsx +23 -10
- package/src/lib/ui/context/components.tsx +3 -0
- package/src/lib/ui/context/events.tsx +2 -1
- package/src/lib/ui/hooks/useExportAs.ts +3 -2
- package/src/lib/ui/hooks/useTools.tsx +140 -10
- package/src/lib/ui/hooks/useTranslation/TLUiTranslationKey.ts +2 -0
- package/src/lib/ui/hooks/useTranslation/defaultTranslation.ts +4 -2
- package/src/lib/ui/kbd-utils.ts +10 -3
- package/src/lib/ui/version.ts +3 -3
- package/src/lib/ui.css +365 -245
- package/src/lib/utils/excalidraw/__snapshots__/putExcalidrawContent.test.tsx.snap +5 -5
- package/src/lib/utils/export/copyAs.ts +1 -24
- package/src/lib/utils/export/export.ts +0 -36
- package/src/lib/utils/export/exportAs.ts +1 -32
- package/src/lib/utils/tldr/__snapshots__/buildFromV1Document.test.ts.snap +4 -4
- package/src/test/A11y.test.tsx +3 -2
- package/src/test/ClickManager.test.ts +7 -6
- package/src/test/Editor.test.tsx +20 -19
- package/src/test/EraserTool.test.ts +184 -13
- package/src/test/HandTool.test.ts +10 -9
- package/src/test/HighlightShape.test.ts +2 -1
- package/src/test/SelectTool.test.ts +3 -2
- package/src/test/TLUserPreferences.test.ts +4 -3
- package/src/test/TestEditor.ts +13 -15
- package/src/test/TldrawEditor.test.tsx +11 -10
- package/src/test/ZoomTool.test.ts +7 -6
- package/src/test/__snapshots__/drawing.test.ts.snap +2 -2
- package/src/test/__snapshots__/groups.test.tsx.snap +6 -6
- package/src/test/__snapshots__/resizing.test.ts.snap +2 -2
- package/src/test/arrows-megabus.test.tsx +5 -4
- package/src/test/bindings.test.tsx +24 -37
- package/src/test/bookmark-shapes.test.ts +1 -8
- package/src/test/commands/__snapshots__/getSvgString.test.ts.snap +23 -7
- package/src/test/commands/__snapshots__/packShapes.test.ts.snap +8 -8
- package/src/test/commands/__snapshots__/zoomToFit.test.ts.snap +2 -2
- package/src/test/commands/alignShapes.test.tsx +25 -24
- package/src/test/commands/animationSpeed.test.ts +2 -1
- package/src/test/commands/centerOnPoint.test.ts +3 -2
- package/src/test/commands/clipboard.test.ts +3 -2
- package/src/test/commands/createShapes.test.ts +2 -1
- package/src/test/commands/deleteShapes.test.ts +2 -1
- package/src/test/commands/distributeShapes.test.tsx +11 -10
- package/src/test/commands/getSvgString.test.ts +2 -1
- package/src/test/commands/packShapes.test.ts +5 -4
- package/src/test/commands/resizeShape.test.ts +2 -1
- package/src/test/commands/rotateShapes.test.ts +7 -6
- package/src/test/commands/setCamera.test.ts +4 -3
- package/src/test/commands/setCurrentPage.test.ts +3 -2
- package/src/test/commands/stackShapes.test.ts +11 -10
- package/src/test/commands/stretch.test.tsx +13 -12
- package/src/test/createDeepLink.test.tsx +2 -1
- package/src/test/cropping.test.ts +3 -2
- package/src/test/custom-clipping.test.ts +436 -0
- package/src/test/drawing.test.ts +2 -1
- package/src/test/flipShapes.test.ts +4 -3
- package/src/test/frames.test.ts +25 -24
- package/src/test/getCulledShapes.test.tsx +74 -4
- package/src/test/groups.test.tsx +1 -1
- package/src/test/handleDeepLink.test.tsx +2 -1
- package/src/test/maxShapes.test.ts +3 -2
- package/src/test/modifiers.test.ts +5 -4
- package/src/test/navigation.test.ts +12 -11
- package/src/test/panning.test.ts +2 -1
- package/src/test/perf/perf.test.ts +2 -1
- package/src/test/registerDeepLinkListener.test.tsx +10 -9
- package/src/test/resizing.test.ts +39 -38
- package/src/test/select.test.tsx +4 -3
- package/src/test/selection-omnibus.test.ts +11 -10
- package/src/test/shapeutils.test.ts +4 -3
- package/src/test/translating.test.ts +9 -8
- package/tldraw.css +673 -537
- package/dist-cjs/lib/ui/components/FollowingIndicator.js.map +0 -7
- package/dist-cjs/lib/ui/components/StylePanel/DoubleDropdownPicker.js.map +0 -7
- package/dist-cjs/lib/ui/components/StylePanel/DropdownPicker.js.map +0 -7
- package/dist-cjs/lib/ui/components/primitives/TldrawUiButtonPicker.js.map +0 -7
- package/dist-esm/lib/ui/components/FollowingIndicator.mjs.map +0 -7
- package/dist-esm/lib/ui/components/StylePanel/DoubleDropdownPicker.mjs.map +0 -7
- package/dist-esm/lib/ui/components/StylePanel/DropdownPicker.mjs.map +0 -7
- package/dist-esm/lib/ui/components/primitives/TldrawUiButtonPicker.mjs +0 -114
- package/dist-esm/lib/ui/components/primitives/TldrawUiButtonPicker.mjs.map +0 -7
- package/src/lib/ui/components/StylePanel/DropdownPicker.tsx +0 -110
package/dist-cjs/index.d.ts
CHANGED
|
@@ -68,7 +68,6 @@ import { TLClickEventInfo } from '@tldraw/editor';
|
|
|
68
68
|
import { TLContent } from '@tldraw/editor';
|
|
69
69
|
import { TLCropInfo } from '@tldraw/editor';
|
|
70
70
|
import { TLDefaultColorStyle } from '@tldraw/editor';
|
|
71
|
-
import { TLDefaultColorTheme } from '@tldraw/editor';
|
|
72
71
|
import { TLDefaultColorThemeColor } from '@tldraw/editor';
|
|
73
72
|
import { TLDefaultDashStyle } from '@tldraw/editor';
|
|
74
73
|
import { TLDefaultFillStyle } from '@tldraw/editor';
|
|
@@ -193,9 +192,6 @@ export declare class ArrowBindingUtil extends BindingUtil<TLArrowBinding> {
|
|
|
193
192
|
/** @public @react */
|
|
194
193
|
export declare function ArrowDownToolbarItem(): JSX_2.Element;
|
|
195
194
|
|
|
196
|
-
/** @public @react */
|
|
197
|
-
export declare function ArrowheadStylePickerSet({ styles }: StylePickerSetProps): JSX_2.Element | null;
|
|
198
|
-
|
|
199
195
|
/** @public @react */
|
|
200
196
|
export declare function ArrowLeftToolbarItem(): JSX_2.Element;
|
|
201
197
|
|
|
@@ -500,9 +496,6 @@ export declare function CloudToolbarItem(): JSX_2.Element;
|
|
|
500
496
|
/** @public @react */
|
|
501
497
|
export declare function ColorSchemeMenu(): JSX_2.Element;
|
|
502
498
|
|
|
503
|
-
/** @public @react */
|
|
504
|
-
export declare function CommonStylePickerSet({ styles, theme }: ThemeStylePickerSetProps): JSX_2.Element;
|
|
505
|
-
|
|
506
499
|
/**
|
|
507
500
|
* Contains the size within the given box size
|
|
508
501
|
*
|
|
@@ -534,14 +527,6 @@ export declare function ConvertToEmbedMenuItem(): JSX_2.Element | null;
|
|
|
534
527
|
*/
|
|
535
528
|
export declare function copyAs(editor: Editor, ids: TLShapeId[], opts: CopyAsOptions): Promise<void>;
|
|
536
529
|
|
|
537
|
-
/**
|
|
538
|
-
* @deprecated The format parameter is now part of the opts object.
|
|
539
|
-
* @public
|
|
540
|
-
*/
|
|
541
|
-
export declare function copyAs(editor: Editor, ids: TLShapeId[], format: TLCopyType, opts?: TLImageExportOptions & {
|
|
542
|
-
format?: undefined;
|
|
543
|
-
}): Promise<void>;
|
|
544
|
-
|
|
545
530
|
/** @public @react */
|
|
546
531
|
export declare function CopyAsMenuGroup(): JSX_2.Element;
|
|
547
532
|
|
|
@@ -853,6 +838,9 @@ export declare let defaultEditorAssetUrls: TLEditorAssetUrls;
|
|
|
853
838
|
/** @public */
|
|
854
839
|
export declare type DefaultEmbedDefinitionType = (typeof DEFAULT_EMBED_DEFINITIONS)[number]['type'];
|
|
855
840
|
|
|
841
|
+
/** @public @react */
|
|
842
|
+
export declare function DefaultFollowingIndicator(): JSX_2.Element | null;
|
|
843
|
+
|
|
856
844
|
/** @public */
|
|
857
845
|
export declare const DefaultFontFaces: TLDefaultFonts;
|
|
858
846
|
|
|
@@ -996,7 +984,7 @@ export declare function DefaultSharePanel(): JSX_2.Element;
|
|
|
996
984
|
export declare const DefaultStylePanel: NamedExoticComponent<TLUiStylePanelProps>;
|
|
997
985
|
|
|
998
986
|
/** @public @react */
|
|
999
|
-
export declare function DefaultStylePanelContent(
|
|
987
|
+
export declare function DefaultStylePanelContent(): JSX_2.Element;
|
|
1000
988
|
|
|
1001
989
|
/** @public @react */
|
|
1002
990
|
export declare const DefaultToasts: NamedExoticComponent<object>;
|
|
@@ -1017,6 +1005,11 @@ export declare function DefaultToolbarContent(): JSX_2.Element;
|
|
|
1017
1005
|
/** @public */
|
|
1018
1006
|
export declare interface DefaultToolbarProps {
|
|
1019
1007
|
children?: ReactNode;
|
|
1008
|
+
orientation?: 'horizontal' | 'vertical';
|
|
1009
|
+
minItems?: number;
|
|
1010
|
+
minSizePx?: number;
|
|
1011
|
+
maxItems?: number;
|
|
1012
|
+
maxSizePx?: number;
|
|
1020
1013
|
}
|
|
1021
1014
|
|
|
1022
1015
|
/** @public */
|
|
@@ -1484,12 +1477,6 @@ export declare interface ExampleDialogProps {
|
|
|
1484
1477
|
*/
|
|
1485
1478
|
export declare function exportAs(editor: Editor, ids: TLShapeId[], opts: ExportAsOptions): Promise<void>;
|
|
1486
1479
|
|
|
1487
|
-
/**
|
|
1488
|
-
* @deprecated The format & name parameters are now part of the opts object.
|
|
1489
|
-
* @public
|
|
1490
|
-
*/
|
|
1491
|
-
export declare function exportAs(editor: Editor, ids: TLShapeId[], format?: TLExportType, name?: string, opts?: TLImageExportOptions): Promise<void>;
|
|
1492
|
-
|
|
1493
1480
|
/** @public */
|
|
1494
1481
|
export declare interface ExportAsOptions extends TLImageExportOptions {
|
|
1495
1482
|
/** {@inheritdoc @tldraw/editor#TLImageExportOptions.format} */
|
|
@@ -1501,23 +1488,6 @@ export declare interface ExportAsOptions extends TLImageExportOptions {
|
|
|
1501
1488
|
/** @public @react */
|
|
1502
1489
|
export declare function ExportFileContentSubMenu(): JSX_2.Element;
|
|
1503
1490
|
|
|
1504
|
-
/**
|
|
1505
|
-
* Export the given shapes as a blob.
|
|
1506
|
-
* @param editor - The editor instance.
|
|
1507
|
-
* @param ids - The ids of the shapes to export.
|
|
1508
|
-
* @param format - The format to export as.
|
|
1509
|
-
* @param opts - Rendering options.
|
|
1510
|
-
* @returns A promise that resolves to a blob.
|
|
1511
|
-
* @deprecated Use {@link @tldraw/editor#Editor.toImage} instead.
|
|
1512
|
-
* @public
|
|
1513
|
-
*/
|
|
1514
|
-
export declare function exportToBlob({ editor, ids, format, opts, }: {
|
|
1515
|
-
editor: Editor;
|
|
1516
|
-
format: TLExportType;
|
|
1517
|
-
ids: TLShapeId[];
|
|
1518
|
-
opts?: TLImageExportOptions;
|
|
1519
|
-
}): Promise<Blob>;
|
|
1520
|
-
|
|
1521
1491
|
/** @public @react */
|
|
1522
1492
|
export declare function ExtrasGroup(): JSX_2.Element;
|
|
1523
1493
|
|
|
@@ -1574,6 +1544,7 @@ export declare class FrameShapeUtil extends BaseBoxShapeUtil<TLFrameShape> {
|
|
|
1574
1544
|
canEdit(): boolean;
|
|
1575
1545
|
canResize(): boolean;
|
|
1576
1546
|
canResizeChildren(): boolean;
|
|
1547
|
+
isExportBoundsContainer(): boolean;
|
|
1577
1548
|
getDefaultProps(): TLFrameShape['props'];
|
|
1578
1549
|
getAriaDescriptor(shape: TLFrameShape): string;
|
|
1579
1550
|
getGeometry(shape: TLFrameShape): Geometry2d;
|
|
@@ -1582,6 +1553,7 @@ export declare class FrameShapeUtil extends BaseBoxShapeUtil<TLFrameShape> {
|
|
|
1582
1553
|
toSvg(shape: TLFrameShape, ctx: SvgExportContext): JSX_2.Element;
|
|
1583
1554
|
indicator(shape: TLFrameShape): JSX_2.Element;
|
|
1584
1555
|
providesBackgroundForChildren(): boolean;
|
|
1556
|
+
getClipPath(shape: TLFrameShape): Vec[];
|
|
1585
1557
|
canReceiveNewChildrenOfType(shape: TLShape): boolean;
|
|
1586
1558
|
onResize(shape: any, info: TLResizeInfo<any>): any;
|
|
1587
1559
|
getInterpolatedProps(startShape: TLFrameShape, endShape: TLFrameShape, t: number): TLFrameShapeProps;
|
|
@@ -1730,9 +1702,6 @@ export declare class GeoShapeUtil extends BaseBoxShapeUtil<TLGeoShape> {
|
|
|
1730
1702
|
getInterpolatedProps(startShape: TLGeoShape, endShape: TLGeoShape, t: number): TLGeoShapeProps;
|
|
1731
1703
|
}
|
|
1732
1704
|
|
|
1733
|
-
/** @public @react */
|
|
1734
|
-
export declare function GeoStylePickerSet({ styles }: StylePickerSetProps): JSX_2.Element | null;
|
|
1735
|
-
|
|
1736
1705
|
/** @public */
|
|
1737
1706
|
export declare function getArrowBindings(editor: Editor, shape: TLArrowShape): TLArrowBindings;
|
|
1738
1707
|
|
|
@@ -1775,6 +1744,29 @@ export declare function getHitShapeOnCanvasPointerDown(editor: Editor, hitLabels
|
|
|
1775
1744
|
/** @public */
|
|
1776
1745
|
export declare function getMediaAssetInfoPartial(file: File, assetId: TLAssetId, isImageType: boolean, isVideoType: boolean, maxImageDimension?: number): Promise<TLImageAsset | TLVideoAsset>;
|
|
1777
1746
|
|
|
1747
|
+
/**
|
|
1748
|
+
* ## getStrokePoints
|
|
1749
|
+
*
|
|
1750
|
+
* Get an array of points as objects with an adjusted point, pressure, vector, distance, and
|
|
1751
|
+
* runningLength.
|
|
1752
|
+
*
|
|
1753
|
+
* @param points - An array of points (as `[x, y, pressure]` or `{x, y, pressure}`). Pressure is
|
|
1754
|
+
* optional in both cases.
|
|
1755
|
+
* @param options - An object with options.
|
|
1756
|
+
* @public
|
|
1757
|
+
*/
|
|
1758
|
+
export declare function getStrokePoints(rawInputPoints: VecLike[], options?: StrokeOptions): StrokePoint[];
|
|
1759
|
+
|
|
1760
|
+
/**
|
|
1761
|
+
* Turn an array of stroke points into a path of quadradic curves.
|
|
1762
|
+
*
|
|
1763
|
+
* @param points - The stroke points returned from perfect-freehand
|
|
1764
|
+
* @param closed - Whether the shape is closed
|
|
1765
|
+
*
|
|
1766
|
+
* @public
|
|
1767
|
+
*/
|
|
1768
|
+
export declare function getSvgPathFromStrokePoints(points: StrokePoint[], closed?: boolean): string;
|
|
1769
|
+
|
|
1778
1770
|
/**
|
|
1779
1771
|
* Original (uncropped) width and height of shape.
|
|
1780
1772
|
*
|
|
@@ -1870,6 +1862,7 @@ export declare class ImageShapeUtil extends BaseBoxShapeUtil<TLImageShape> {
|
|
|
1870
1862
|
static migrations: TLPropsMigrations;
|
|
1871
1863
|
isAspectRatioLocked(): boolean;
|
|
1872
1864
|
canCrop(): boolean;
|
|
1865
|
+
isExportBoundsContainer(): boolean;
|
|
1873
1866
|
getDefaultProps(): TLImageShape['props'];
|
|
1874
1867
|
getGeometry(shape: TLImageShape): Geometry2d;
|
|
1875
1868
|
getAriaDescriptor(shape: TLImageShape): string;
|
|
@@ -2120,21 +2113,57 @@ export declare class NoteShapeUtil extends ShapeUtil<TLNoteShape> {
|
|
|
2120
2113
|
/** @public @react */
|
|
2121
2114
|
export declare function NoteToolbarItem(): JSX_2.Element;
|
|
2122
2115
|
|
|
2116
|
+
/**
|
|
2117
|
+
* Checks if a file is allowed to be uploaded. If it is not, it will show a toast explaining why to the user.
|
|
2118
|
+
*
|
|
2119
|
+
* @param file - The file to check
|
|
2120
|
+
* @param options - The options for the external content handler
|
|
2121
|
+
* @returns True if the file is allowed, false otherwise
|
|
2122
|
+
* @public
|
|
2123
|
+
*/
|
|
2124
|
+
export declare function notifyIfFileNotAllowed(file: File, options: TLDefaultExternalContentHandlerOpts): boolean;
|
|
2125
|
+
|
|
2123
2126
|
/** @public @react */
|
|
2124
2127
|
export declare function OfflineIndicator(): JSX_2.Element;
|
|
2125
2128
|
|
|
2126
|
-
/**
|
|
2127
|
-
|
|
2129
|
+
/**
|
|
2130
|
+
* A helper method to use in {@link TLUiToolItem#onDragStart} to create a shape by dragging it from
|
|
2131
|
+
* the toolbar.
|
|
2132
|
+
* @public
|
|
2133
|
+
*/
|
|
2134
|
+
export declare function onDragFromToolbarToCreateShape(editor: Editor, info: TLPointerEventInfo, opts: OnDragFromToolbarToCreateShapesOpts): void;
|
|
2135
|
+
|
|
2136
|
+
/**
|
|
2137
|
+
* Options for {@link onDragFromToolbarToCreateShape}.
|
|
2138
|
+
* @public
|
|
2139
|
+
*/
|
|
2140
|
+
export declare interface OnDragFromToolbarToCreateShapesOpts {
|
|
2141
|
+
/**
|
|
2142
|
+
* Create the shape being dragged. You don't need to worry about positioning it, as it'll be
|
|
2143
|
+
* immediately updated with the correct position.
|
|
2144
|
+
*/
|
|
2145
|
+
createShape(id: TLShapeId): void;
|
|
2146
|
+
/**
|
|
2147
|
+
* Called once the drag interaction has finished.
|
|
2148
|
+
*/
|
|
2149
|
+
onDragEnd?(id: TLShapeId): void;
|
|
2150
|
+
}
|
|
2128
2151
|
|
|
2129
2152
|
/** @public @react */
|
|
2130
2153
|
export declare function OvalToolbarItem(): JSX_2.Element;
|
|
2131
2154
|
|
|
2132
2155
|
/** @public @react */
|
|
2133
|
-
export declare function OverflowingToolbar({ children }: OverflowingToolbarProps): JSX_2.Element;
|
|
2156
|
+
export declare function OverflowingToolbar({ children, orientation, sizingParentClassName, minItems, minSizePx, maxItems, maxSizePx, }: OverflowingToolbarProps): JSX_2.Element;
|
|
2134
2157
|
|
|
2135
2158
|
/** @public */
|
|
2136
2159
|
export declare interface OverflowingToolbarProps {
|
|
2137
2160
|
children: React.ReactNode;
|
|
2161
|
+
orientation: 'horizontal' | 'vertical';
|
|
2162
|
+
sizingParentClassName: string;
|
|
2163
|
+
minItems: number;
|
|
2164
|
+
minSizePx: number;
|
|
2165
|
+
maxItems: number;
|
|
2166
|
+
maxSizePx: number;
|
|
2138
2167
|
}
|
|
2139
2168
|
|
|
2140
2169
|
/** @public @react */
|
|
@@ -2511,9 +2540,6 @@ export declare interface SolidPathBuilderOpts extends BasePathBuilderOpts {
|
|
|
2511
2540
|
|
|
2512
2541
|
/* Excluded from this release type: Spinner */
|
|
2513
2542
|
|
|
2514
|
-
/** @public @react */
|
|
2515
|
-
export declare function SplineStylePickerSet({ styles }: StylePickerSetProps): JSX_2.Element | null;
|
|
2516
|
-
|
|
2517
2543
|
/** @public @react */
|
|
2518
2544
|
export declare function StackMenuItems(): JSX_2.Element;
|
|
2519
2545
|
|
|
@@ -2523,11 +2549,172 @@ export declare function StarToolbarItem(): JSX_2.Element;
|
|
|
2523
2549
|
/** @public */
|
|
2524
2550
|
export declare const STROKE_SIZES: Record<TLDefaultSizeStyle, number>;
|
|
2525
2551
|
|
|
2552
|
+
/**
|
|
2553
|
+
* The options object for `getStroke` or `getStrokePoints`.
|
|
2554
|
+
*
|
|
2555
|
+
* @public
|
|
2556
|
+
*/
|
|
2557
|
+
export declare interface StrokeOptions {
|
|
2558
|
+
/** The base size (diameter) of the stroke. */
|
|
2559
|
+
size?: number;
|
|
2560
|
+
/** The effect of pressure on the stroke's size. */
|
|
2561
|
+
thinning?: number;
|
|
2562
|
+
/** How much to soften the stroke's edges. */
|
|
2563
|
+
smoothing?: number;
|
|
2564
|
+
streamline?: number;
|
|
2565
|
+
/** An easing function to apply to each point's pressure. */
|
|
2566
|
+
easing?(pressure: number): number;
|
|
2567
|
+
/** Whether to simulate pressure based on velocity. */
|
|
2568
|
+
simulatePressure?: boolean;
|
|
2569
|
+
/** Cap, taper and easing for the start of the line. */
|
|
2570
|
+
start?: {
|
|
2571
|
+
cap?: boolean;
|
|
2572
|
+
easing?(distance: number): number;
|
|
2573
|
+
taper?: boolean | number;
|
|
2574
|
+
};
|
|
2575
|
+
/** Cap, taper and easing for the end of the line. */
|
|
2576
|
+
end?: {
|
|
2577
|
+
cap?: boolean;
|
|
2578
|
+
easing?(distance: number): number;
|
|
2579
|
+
taper?: boolean | number;
|
|
2580
|
+
};
|
|
2581
|
+
/** Whether to handle the points as a completed stroke. */
|
|
2582
|
+
last?: boolean;
|
|
2583
|
+
}
|
|
2584
|
+
|
|
2585
|
+
/**
|
|
2586
|
+
* The points returned by `getStrokePoints`, and the input for `getStrokeOutlinePoints`
|
|
2587
|
+
*
|
|
2588
|
+
* @public
|
|
2589
|
+
*/
|
|
2590
|
+
export declare interface StrokePoint {
|
|
2591
|
+
point: Vec;
|
|
2592
|
+
input: Vec;
|
|
2593
|
+
vector: Vec;
|
|
2594
|
+
pressure: number;
|
|
2595
|
+
distance: number;
|
|
2596
|
+
runningLength: number;
|
|
2597
|
+
radius: number;
|
|
2598
|
+
}
|
|
2599
|
+
|
|
2600
|
+
/** @public @react */
|
|
2601
|
+
export declare function StylePanelArrowheadPicker(): JSX_2.Element | null;
|
|
2602
|
+
|
|
2603
|
+
/** @public @react */
|
|
2604
|
+
export declare function StylePanelArrowKindPicker(): JSX_2.Element | null;
|
|
2605
|
+
|
|
2526
2606
|
/** @public */
|
|
2527
|
-
export declare
|
|
2607
|
+
export declare const StylePanelButtonPicker: <T extends string>(props: StylePanelButtonPickerProps<T>) => ReactElement;
|
|
2608
|
+
|
|
2609
|
+
/** @public */
|
|
2610
|
+
export declare interface StylePanelButtonPickerProps<T extends string> {
|
|
2611
|
+
title: string;
|
|
2612
|
+
uiType: string;
|
|
2613
|
+
style: StyleProp<T>;
|
|
2614
|
+
value: SharedStyle<T>;
|
|
2615
|
+
items: StyleValuesForUi<T>;
|
|
2616
|
+
onValueChange?(style: StyleProp<T>, value: T): void;
|
|
2617
|
+
onHistoryMark?(id: string): void;
|
|
2618
|
+
}
|
|
2619
|
+
|
|
2620
|
+
/** @public @react */
|
|
2621
|
+
export declare function StylePanelColorPicker(): JSX_2.Element | null;
|
|
2622
|
+
|
|
2623
|
+
/** @public */
|
|
2624
|
+
export declare interface StylePanelContext {
|
|
2625
|
+
styles: ReadonlySharedStyleMap;
|
|
2626
|
+
showUiLabels: boolean;
|
|
2627
|
+
onHistoryMark(id: string): void;
|
|
2628
|
+
onValueChange<T>(style: StyleProp<T>, value: T): void;
|
|
2629
|
+
}
|
|
2630
|
+
|
|
2631
|
+
/** @public @react */
|
|
2632
|
+
export declare function StylePanelContextProvider({ children, styles }: StylePanelContextProviderProps): JSX_2.Element;
|
|
2633
|
+
|
|
2634
|
+
/** @public */
|
|
2635
|
+
export declare interface StylePanelContextProviderProps {
|
|
2636
|
+
children: React.ReactNode;
|
|
2528
2637
|
styles: ReadonlySharedStyleMap;
|
|
2529
2638
|
}
|
|
2530
2639
|
|
|
2640
|
+
/** @public @react */
|
|
2641
|
+
export declare function StylePanelDashPicker(): JSX_2.Element | null;
|
|
2642
|
+
|
|
2643
|
+
/** @public @react */
|
|
2644
|
+
export declare const StylePanelDoubleDropdownPicker: <T extends string>(props: StylePanelDoubleDropdownPickerProps<T>) => React_2.JSX.Element;
|
|
2645
|
+
|
|
2646
|
+
/** @public */
|
|
2647
|
+
export declare interface StylePanelDoubleDropdownPickerProps<T extends string> {
|
|
2648
|
+
uiTypeA: string;
|
|
2649
|
+
uiTypeB: string;
|
|
2650
|
+
label: Exclude<string, TLUiTranslationKey> | TLUiTranslationKey;
|
|
2651
|
+
labelA: Exclude<string, TLUiTranslationKey> | TLUiTranslationKey;
|
|
2652
|
+
labelB: Exclude<string, TLUiTranslationKey> | TLUiTranslationKey;
|
|
2653
|
+
itemsA: StyleValuesForUi<T>;
|
|
2654
|
+
itemsB: StyleValuesForUi<T>;
|
|
2655
|
+
styleA: StyleProp<T>;
|
|
2656
|
+
styleB: StyleProp<T>;
|
|
2657
|
+
valueA: SharedStyle<T>;
|
|
2658
|
+
valueB: SharedStyle<T>;
|
|
2659
|
+
onValueChange?(style: StyleProp<T>, value: T): void;
|
|
2660
|
+
}
|
|
2661
|
+
|
|
2662
|
+
/** @public @react */
|
|
2663
|
+
export declare const StylePanelDropdownPicker: <T extends string>(props: StylePanelDropdownPickerProps<T>) => React_2.JSX.Element;
|
|
2664
|
+
|
|
2665
|
+
/** @public */
|
|
2666
|
+
export declare interface StylePanelDropdownPickerProps<T extends string> {
|
|
2667
|
+
id: string;
|
|
2668
|
+
label?: Exclude<string, TLUiTranslationKey> | TLUiTranslationKey;
|
|
2669
|
+
uiType: string;
|
|
2670
|
+
stylePanelType: string;
|
|
2671
|
+
style: StyleProp<T>;
|
|
2672
|
+
value: SharedStyle<T>;
|
|
2673
|
+
items: StyleValuesForUi<T>;
|
|
2674
|
+
type: 'icon' | 'menu' | 'tool';
|
|
2675
|
+
onValueChange?(style: StyleProp<T>, value: T): void;
|
|
2676
|
+
}
|
|
2677
|
+
|
|
2678
|
+
/** @public @react */
|
|
2679
|
+
export declare function StylePanelFillPicker(): JSX_2.Element | null;
|
|
2680
|
+
|
|
2681
|
+
/** @public @react */
|
|
2682
|
+
export declare function StylePanelFontPicker(): JSX_2.Element | null;
|
|
2683
|
+
|
|
2684
|
+
/** @public @react */
|
|
2685
|
+
export declare function StylePanelGeoShapePicker(): JSX_2.Element | null;
|
|
2686
|
+
|
|
2687
|
+
/** @public @react */
|
|
2688
|
+
export declare function StylePanelLabelAlignPicker(): JSX_2.Element | null;
|
|
2689
|
+
|
|
2690
|
+
/** @public @react */
|
|
2691
|
+
export declare function StylePanelOpacityPicker(): JSX_2.Element | null;
|
|
2692
|
+
|
|
2693
|
+
/** @public @react */
|
|
2694
|
+
export declare function StylePanelSection({ children }: StylePanelSectionProps): JSX_2.Element;
|
|
2695
|
+
|
|
2696
|
+
/** @public */
|
|
2697
|
+
export declare interface StylePanelSectionProps {
|
|
2698
|
+
children: React_3.ReactNode;
|
|
2699
|
+
}
|
|
2700
|
+
|
|
2701
|
+
/** @public @react */
|
|
2702
|
+
export declare function StylePanelSizePicker(): JSX_2.Element | null;
|
|
2703
|
+
|
|
2704
|
+
/** @public @react */
|
|
2705
|
+
export declare function StylePanelSplinePicker(): JSX_2.Element | null;
|
|
2706
|
+
|
|
2707
|
+
/** @public @react */
|
|
2708
|
+
export declare function StylePanelSubheading({ children }: StylePanelSubheadingProps): JSX_2.Element;
|
|
2709
|
+
|
|
2710
|
+
/** @public */
|
|
2711
|
+
export declare interface StylePanelSubheadingProps {
|
|
2712
|
+
children: React.ReactNode;
|
|
2713
|
+
}
|
|
2714
|
+
|
|
2715
|
+
/** @public @react */
|
|
2716
|
+
export declare function StylePanelTextAlignPicker(): JSX_2.Element | null;
|
|
2717
|
+
|
|
2531
2718
|
/** @public */
|
|
2532
2719
|
export declare type StyleValuesForUi<T> = readonly {
|
|
2533
2720
|
readonly icon: string | TLUiIconJsx;
|
|
@@ -2567,12 +2754,6 @@ export declare interface TextAreaProps {
|
|
|
2567
2754
|
*/
|
|
2568
2755
|
export declare const TextDirection: Extension<any, any>;
|
|
2569
2756
|
|
|
2570
|
-
/**
|
|
2571
|
-
* @deprecated Use `PlainTextLabel` instead.
|
|
2572
|
-
* @public
|
|
2573
|
-
*/
|
|
2574
|
-
export declare const TextLabel: React_3.NamedExoticComponent<PlainTextLabelProps>;
|
|
2575
|
-
|
|
2576
2757
|
/** @public */
|
|
2577
2758
|
export declare interface TextShapeOptions {
|
|
2578
2759
|
/** How much addition padding should be added to the horizontal geometry of the shape when binding to an arrow? */
|
|
@@ -2650,18 +2831,9 @@ export declare class TextShapeUtil extends ShapeUtil<TLTextShape> {
|
|
|
2650
2831
|
} | undefined;
|
|
2651
2832
|
}
|
|
2652
2833
|
|
|
2653
|
-
/** @public @react */
|
|
2654
|
-
export declare function TextStylePickerSet({ theme, styles }: ThemeStylePickerSetProps): JSX_2.Element | null;
|
|
2655
|
-
|
|
2656
2834
|
/** @public @react */
|
|
2657
2835
|
export declare function TextToolbarItem(): JSX_2.Element;
|
|
2658
2836
|
|
|
2659
|
-
/** @public */
|
|
2660
|
-
export declare interface ThemeStylePickerSetProps {
|
|
2661
|
-
styles: ReadonlySharedStyleMap;
|
|
2662
|
-
theme: TLDefaultColorTheme;
|
|
2663
|
-
}
|
|
2664
|
-
|
|
2665
2837
|
/**
|
|
2666
2838
|
* Default extensions for the TipTap editor.
|
|
2667
2839
|
*
|
|
@@ -2918,8 +3090,12 @@ export declare function TldrawUiButtonIcon({ icon, small, invertIcon }: TLUiButt
|
|
|
2918
3090
|
/** @public @react */
|
|
2919
3091
|
export declare function TldrawUiButtonLabel({ children }: TLUiButtonLabelProps): JSX_2.Element;
|
|
2920
3092
|
|
|
2921
|
-
/**
|
|
2922
|
-
|
|
3093
|
+
/**
|
|
3094
|
+
* A column, usually of UI controls like buttons, select dropdown, checkboxes, etc.
|
|
3095
|
+
*
|
|
3096
|
+
* @public @react
|
|
3097
|
+
*/
|
|
3098
|
+
export declare const TldrawUiColumn: ForwardRefExoticComponent<TLUiLayoutProps & RefAttributes<HTMLDivElement>>;
|
|
2923
3099
|
|
|
2924
3100
|
/** @public @react */
|
|
2925
3101
|
export declare function TldrawUiComponentsProvider({ overrides, children, }: TLUiComponentsProviderProps): JSX_2.Element;
|
|
@@ -2993,6 +3169,9 @@ export declare const TldrawUiGrid: ForwardRefExoticComponent<TLUiLayoutProps & R
|
|
|
2993
3169
|
/** @public @react */
|
|
2994
3170
|
export declare const TldrawUiIcon: NamedExoticComponent<TLUiIconProps>;
|
|
2995
3171
|
|
|
3172
|
+
/** @public @react */
|
|
3173
|
+
export declare function TldrawUiInFrontOfTheCanvas(): JSX_2.Element;
|
|
3174
|
+
|
|
2996
3175
|
/** @public @react */
|
|
2997
3176
|
export declare const TldrawUiInput: React_2.ForwardRefExoticComponent<TLUiInputProps & React_2.RefAttributes<HTMLInputElement>>;
|
|
2998
3177
|
|
|
@@ -3015,7 +3194,7 @@ export declare function TldrawUiMenuContextProvider({ type, sourceId, children,
|
|
|
3015
3194
|
export declare function TldrawUiMenuGroup({ id, label, className, children }: TLUiMenuGroupProps): boolean | JSX_2.Element | Iterable<ReactNode> | null | number | string | undefined;
|
|
3016
3195
|
|
|
3017
3196
|
/** @public @react */
|
|
3018
|
-
export declare function TldrawUiMenuItem<TranslationKey extends string = string, IconType extends string = string>({ disabled, spinner, readonlyOk, id, kbd, label, icon, iconLeft, onSelect, noClose, isSelected, }: TLUiMenuItemProps<TranslationKey, IconType>): JSX_2.Element | null;
|
|
3197
|
+
export declare function TldrawUiMenuItem<TranslationKey extends string = string, IconType extends string = string>({ disabled, spinner, readonlyOk, id, kbd, label, icon, iconLeft, onSelect, noClose, isSelected, onDragStart, }: TLUiMenuItemProps<TranslationKey, IconType>): JSX_2.Element | null;
|
|
3019
3198
|
|
|
3020
3199
|
/** @public @react */
|
|
3021
3200
|
export declare function TldrawUiMenuSubmenu<Translation extends string = string>({ id, disabled, label, size, children, }: TLUiMenuSubmenuProps<Translation>): boolean | JSX_2.Element | Iterable<ReactNode> | null | number | string | undefined;
|
|
@@ -3023,6 +3202,22 @@ export declare function TldrawUiMenuSubmenu<Translation extends string = string>
|
|
|
3023
3202
|
/** @public @react */
|
|
3024
3203
|
export declare function TldrawUiMenuToolItem({ toolId, ...rest }: TLUiMenuToolItemProps): JSX_2.Element | null;
|
|
3025
3204
|
|
|
3205
|
+
/** @public */
|
|
3206
|
+
export declare interface TldrawUiOrientationContext {
|
|
3207
|
+
orientation: 'horizontal' | 'vertical';
|
|
3208
|
+
tooltipSide: 'bottom' | 'left' | 'right' | 'top';
|
|
3209
|
+
}
|
|
3210
|
+
|
|
3211
|
+
/** @public @react */
|
|
3212
|
+
export declare function TldrawUiOrientationProvider({ children, orientation, tooltipSide, }: TldrawUiOrientationProviderProps): JSX_2.Element;
|
|
3213
|
+
|
|
3214
|
+
/** @public */
|
|
3215
|
+
export declare interface TldrawUiOrientationProviderProps {
|
|
3216
|
+
children: ReactNode;
|
|
3217
|
+
orientation: 'horizontal' | 'vertical';
|
|
3218
|
+
tooltipSide?: 'bottom' | 'left' | 'right' | 'top';
|
|
3219
|
+
}
|
|
3220
|
+
|
|
3026
3221
|
/** @public @react */
|
|
3027
3222
|
export declare function TldrawUiPopover({ id, children, onOpenChange, open, className }: TLUiPopoverProps): JSX_2.Element;
|
|
3028
3223
|
|
|
@@ -3074,13 +3269,13 @@ export declare const TldrawUiToolbar: React_3.ForwardRefExoticComponent<TLUiTool
|
|
|
3074
3269
|
export declare const TldrawUiToolbarButton: React_3.ForwardRefExoticComponent<TLUiToolbarButtonProps & React_3.RefAttributes<HTMLButtonElement>>;
|
|
3075
3270
|
|
|
3076
3271
|
/** @public @react */
|
|
3077
|
-
export declare const TldrawUiToolbarToggleGroup: ({ children, className, type, ...props }: TLUiToolbarToggleGroupProps) => JSX_2.Element;
|
|
3272
|
+
export declare const TldrawUiToolbarToggleGroup: ({ children, className, type, asChild, ...props }: TLUiToolbarToggleGroupProps) => JSX_2.Element;
|
|
3078
3273
|
|
|
3079
3274
|
/** @public @react */
|
|
3080
3275
|
export declare const TldrawUiToolbarToggleItem: ({ children, className, type, value, tooltip, ...props }: TLUiToolbarToggleItemProps) => JSX_2.Element;
|
|
3081
3276
|
|
|
3082
3277
|
/** @public @react */
|
|
3083
|
-
export declare
|
|
3278
|
+
export declare const TldrawUiTooltip: React_3.ForwardRefExoticComponent<TldrawUiTooltipProps & React_3.RefAttributes<HTMLButtonElement>>;
|
|
3084
3279
|
|
|
3085
3280
|
/** @public */
|
|
3086
3281
|
export declare interface TldrawUiTooltipProps {
|
|
@@ -3089,6 +3284,8 @@ export declare interface TldrawUiTooltipProps {
|
|
|
3089
3284
|
side?: 'bottom' | 'left' | 'right' | 'top';
|
|
3090
3285
|
sideOffset?: number;
|
|
3091
3286
|
disabled?: boolean;
|
|
3287
|
+
showOnMobile?: boolean;
|
|
3288
|
+
delayDuration?: number;
|
|
3092
3289
|
}
|
|
3093
3290
|
|
|
3094
3291
|
/** @public @react */
|
|
@@ -3259,18 +3456,6 @@ export declare interface TLUiButtonLabelProps {
|
|
|
3259
3456
|
children?: ReactNode;
|
|
3260
3457
|
}
|
|
3261
3458
|
|
|
3262
|
-
/** @public */
|
|
3263
|
-
export declare interface TLUiButtonPickerProps<T extends string> {
|
|
3264
|
-
title: string;
|
|
3265
|
-
uiType: string;
|
|
3266
|
-
style: StyleProp<T>;
|
|
3267
|
-
value: SharedStyle<T>;
|
|
3268
|
-
items: StyleValuesForUi<T>;
|
|
3269
|
-
theme: TLDefaultColorTheme;
|
|
3270
|
-
onValueChange(style: StyleProp<T>, value: T): void;
|
|
3271
|
-
onHistoryMark?(id: string): void;
|
|
3272
|
-
}
|
|
3273
|
-
|
|
3274
3459
|
/** @public */
|
|
3275
3460
|
export declare interface TLUiButtonProps extends React_2.HTMLAttributes<HTMLButtonElement> {
|
|
3276
3461
|
disabled?: boolean;
|
|
@@ -3305,6 +3490,7 @@ export declare interface TLUiComponents {
|
|
|
3305
3490
|
Dialogs?: ComponentType | null;
|
|
3306
3491
|
Toasts?: ComponentType | null;
|
|
3307
3492
|
A11y?: ComponentType | null;
|
|
3493
|
+
FollowingIndicator?: ComponentType | null;
|
|
3308
3494
|
}
|
|
3309
3495
|
|
|
3310
3496
|
/** @public */
|
|
@@ -3630,11 +3816,14 @@ export declare interface TLUiEventMap {
|
|
|
3630
3816
|
'flatten-to-image': null;
|
|
3631
3817
|
'a11y-repeat-shape-announce': null;
|
|
3632
3818
|
'open-url': {
|
|
3633
|
-
|
|
3819
|
+
destinationUrl: string;
|
|
3634
3820
|
};
|
|
3635
3821
|
'open-context-menu': null;
|
|
3636
3822
|
'adjust-shape-styles': null;
|
|
3637
3823
|
'copy-link': null;
|
|
3824
|
+
'drag-tool': {
|
|
3825
|
+
id: string;
|
|
3826
|
+
};
|
|
3638
3827
|
'image-replace': null;
|
|
3639
3828
|
'video-replace': null;
|
|
3640
3829
|
'open-kbd-shortcuts': null;
|
|
@@ -3724,6 +3913,7 @@ export declare type TLUiKeyboardShortcutsDialogProps = TLUiDialogProps & {
|
|
|
3724
3913
|
/** @public */
|
|
3725
3914
|
export declare interface TLUiLayoutProps extends HTMLAttributes<HTMLDivElement> {
|
|
3726
3915
|
children: ReactNode;
|
|
3916
|
+
tooltipSide?: 'bottom' | 'left' | 'right' | 'top';
|
|
3727
3917
|
asChild?: boolean;
|
|
3728
3918
|
}
|
|
3729
3919
|
|
|
@@ -3766,7 +3956,7 @@ export declare interface TLUiMenuContextProviderProps {
|
|
|
3766
3956
|
}
|
|
3767
3957
|
|
|
3768
3958
|
/** @public */
|
|
3769
|
-
export declare type TLUiMenuContextType = 'context-menu' | 'helper-buttons' | 'icons' | 'keyboard-shortcuts' | 'menu' | '
|
|
3959
|
+
export declare type TLUiMenuContextType = 'context-menu' | 'helper-buttons' | 'icons' | 'keyboard-shortcuts' | 'menu' | 'small-icons' | 'toolbar-overflow' | 'toolbar';
|
|
3770
3960
|
|
|
3771
3961
|
/** @public */
|
|
3772
3962
|
export declare interface TLUiMenuGroupProps<TranslationKey extends string = string> {
|
|
@@ -3826,6 +4016,10 @@ export declare interface TLUiMenuItemProps<TranslationKey extends string = strin
|
|
|
3826
4016
|
* Whether the item is selected.
|
|
3827
4017
|
*/
|
|
3828
4018
|
isSelected?: boolean;
|
|
4019
|
+
/**
|
|
4020
|
+
* The function to call when the item is dragged. If this is provided, the item will be draggable.
|
|
4021
|
+
*/
|
|
4022
|
+
onDragStart?(source: TLUiEventSource, info: TLPointerEventInfo): void;
|
|
3829
4023
|
}
|
|
3830
4024
|
|
|
3831
4025
|
/** @public */
|
|
@@ -3902,14 +4096,10 @@ export declare interface TLUiSliderProps {
|
|
|
3902
4096
|
ariaValueModifier?: number;
|
|
3903
4097
|
}
|
|
3904
4098
|
|
|
3905
|
-
/** @public */
|
|
3906
|
-
export declare interface TLUiStylePanelContentProps {
|
|
3907
|
-
styles: ReturnType<typeof useRelevantStyles>;
|
|
3908
|
-
}
|
|
3909
|
-
|
|
3910
4099
|
/** @public */
|
|
3911
4100
|
export declare interface TLUiStylePanelProps {
|
|
3912
4101
|
isMobile?: boolean;
|
|
4102
|
+
styles?: null | ReadonlySharedStyleMap;
|
|
3913
4103
|
children?: ReactNode;
|
|
3914
4104
|
}
|
|
3915
4105
|
|
|
@@ -3966,7 +4156,8 @@ export declare interface TLUiToolbarProps extends React_3.HTMLAttributes<HTMLDiv
|
|
|
3966
4156
|
className?: string;
|
|
3967
4157
|
dir?: 'ltr' | 'rtl';
|
|
3968
4158
|
label: string;
|
|
3969
|
-
orientation?: 'grid' | 'horizontal';
|
|
4159
|
+
orientation?: 'grid' | 'horizontal' | 'vertical';
|
|
4160
|
+
tooltipSide?: 'bottom' | 'left' | 'right' | 'top';
|
|
3970
4161
|
}
|
|
3971
4162
|
|
|
3972
4163
|
/** @public */
|
|
@@ -3977,6 +4168,7 @@ export declare interface TLUiToolbarToggleGroupProps extends React_3.HTMLAttribu
|
|
|
3977
4168
|
value: any;
|
|
3978
4169
|
defaultValue?: any;
|
|
3979
4170
|
type: 'multiple' | 'single';
|
|
4171
|
+
asChild?: boolean;
|
|
3980
4172
|
}
|
|
3981
4173
|
|
|
3982
4174
|
/** @public */
|
|
@@ -3995,6 +4187,7 @@ export declare interface TLUiToolItem<TranslationKey extends string = string, Ic
|
|
|
3995
4187
|
shortcutsLabel?: TranslationKey;
|
|
3996
4188
|
icon: IconType | TLUiIconJsx;
|
|
3997
4189
|
onSelect(source: TLUiEventSource): void;
|
|
4190
|
+
onDragStart?(source: TLUiEventSource, info: TLPointerEventInfo): void;
|
|
3998
4191
|
/**
|
|
3999
4192
|
* The keyboard shortcut for this tool. This is a string that can be a single key,
|
|
4000
4193
|
* or a combination of keys.
|
|
@@ -4030,7 +4223,7 @@ export declare interface TLUiTranslation {
|
|
|
4030
4223
|
export declare type TLUiTranslationContextType = TLUiTranslation;
|
|
4031
4224
|
|
|
4032
4225
|
/** @public */
|
|
4033
|
-
export declare type TLUiTranslationKey = 'a11y.adjust-shape-styles' | 'a11y.enlarge-shape' | 'a11y.enter-leave-container' | 'a11y.move-shape-faster' | 'a11y.move-shape' | 'a11y.multiple-shapes' | 'a11y.open-context-menu' | 'a11y.open-keyboard-shortcuts' | 'a11y.pan-camera' | 'a11y.repeat-shape' | 'a11y.rotate-shape-ccw-fine' | 'a11y.rotate-shape-ccw' | 'a11y.rotate-shape-cw-fine' | 'a11y.rotate-shape-cw' | 'a11y.select-shape-direction' | 'a11y.select-shape' | 'a11y.shape-image' | 'a11y.shape-index' | 'a11y.shape-video' | 'a11y.shrink-shape' | 'a11y.skip-to-main-content' | 'a11y.status' | 'action.align-bottom' | 'action.align-center-horizontal.short' | 'action.align-center-horizontal' | 'action.align-center-vertical.short' | 'action.align-center-vertical' | 'action.align-left' | 'action.align-right' | 'action.align-top' | 'action.back-to-content' | 'action.bring-forward' | 'action.bring-to-front' | 'action.convert-to-bookmark' | 'action.convert-to-embed' | 'action.copy-as-png.short' | 'action.copy-as-png' | 'action.copy-as-svg.short' | 'action.copy-as-svg' | 'action.copy' | 'action.cut' | 'action.delete' | 'action.distribute-horizontal.short' | 'action.distribute-horizontal' | 'action.distribute-vertical.short' | 'action.distribute-vertical' | 'action.download-original' | 'action.duplicate' | 'action.edit-link' | 'action.exit-pen-mode' | 'action.export-all-as-png.short' | 'action.export-all-as-png' | 'action.export-all-as-svg.short' | 'action.export-all-as-svg' | 'action.export-as-png.short' | 'action.export-as-png' | 'action.export-as-svg.short' | 'action.export-as-svg' | 'action.fit-frame-to-content' | 'action.flatten-to-image' | 'action.flip-horizontal.short' | 'action.flip-horizontal' | 'action.flip-vertical.short' | 'action.flip-vertical' | 'action.fork-project-on-tldraw' | 'action.fork-project' | 'action.group' | 'action.insert-embed' | 'action.insert-media' | 'action.leave-shared-project' | 'action.new-project' | 'action.new-shared-project' | 'action.open-cursor-chat' | 'action.open-embed-link' | 'action.open-file' | 'action.open-kbd-shortcuts' | 'action.pack' | 'action.paste-error-description' | 'action.paste-error-title' | 'action.paste' | 'action.print' | 'action.redo' | 'action.remove-frame' | 'action.rename' | 'action.rotate-ccw' | 'action.rotate-cw' | 'action.save-copy' | 'action.select-all' | 'action.select-none' | 'action.send-backward' | 'action.send-to-back' | 'action.share-project' | 'action.stack-horizontal.short' | 'action.stack-horizontal' | 'action.stack-vertical.short' | 'action.stack-vertical' | 'action.stop-following' | 'action.stretch-horizontal.short' | 'action.stretch-horizontal' | 'action.stretch-vertical.short' | 'action.stretch-vertical' | 'action.toggle-auto-size' | 'action.toggle-dark-mode.menu' | 'action.toggle-dark-mode' | 'action.toggle-debug-mode.menu' | 'action.toggle-debug-mode' | 'action.toggle-dynamic-size-mode.menu' | 'action.toggle-dynamic-size-mode' | 'action.toggle-edge-scrolling.menu' | 'action.toggle-edge-scrolling' | 'action.toggle-focus-mode.menu' | 'action.toggle-focus-mode' | 'action.toggle-grid.menu' | 'action.toggle-grid' | 'action.toggle-keyboard-shortcuts.menu' | 'action.toggle-keyboard-shortcuts' | 'action.toggle-lock' | 'action.toggle-paste-at-cursor.menu' | 'action.toggle-paste-at-cursor' | 'action.toggle-reduce-motion.menu' | 'action.toggle-reduce-motion' | 'action.toggle-snap-mode.menu' | 'action.toggle-snap-mode' | 'action.toggle-tool-lock.menu' | 'action.toggle-tool-lock' | 'action.toggle-transparent.context-menu' | 'action.toggle-transparent.menu' | 'action.toggle-transparent' | 'action.toggle-ui-labels.menu' | 'action.toggle-ui-labels' | 'action.toggle-wrap-mode.menu' | 'action.toggle-wrap-mode' | 'action.undo' | 'action.ungroup' | 'action.unlock-all' | 'action.zoom-in' | 'action.zoom-out' | 'action.zoom-to-100' | 'action.zoom-to-fit' | 'action.zoom-to-selection' | 'actions-menu.title' | 'align-style.end' | 'align-style.justify' | 'align-style.middle' | 'align-style.start' | 'app.loading' | 'arrow-kind-style.arc' | 'arrow-kind-style.elbow' | 'arrowheadEnd-style.arrow' | 'arrowheadEnd-style.bar' | 'arrowheadEnd-style.diamond' | 'arrowheadEnd-style.dot' | 'arrowheadEnd-style.inverted' | 'arrowheadEnd-style.none' | 'arrowheadEnd-style.pipe' | 'arrowheadEnd-style.square' | 'arrowheadEnd-style.triangle' | 'arrowheadStart-style.arrow' | 'arrowheadStart-style.bar' | 'arrowheadStart-style.diamond' | 'arrowheadStart-style.dot' | 'arrowheadStart-style.inverted' | 'arrowheadStart-style.none' | 'arrowheadStart-style.pipe' | 'arrowheadStart-style.square' | 'arrowheadStart-style.triangle' | 'assets.files.amount-too-many' | 'assets.files.size-too-big' | 'assets.files.type-not-allowed' | 'assets.files.upload-failed' | 'assets.url.failed' | 'color-style.black' | 'color-style.blue' | 'color-style.green' | 'color-style.grey' | 'color-style.light-blue' | 'color-style.light-green' | 'color-style.light-red' | 'color-style.light-violet' | 'color-style.orange' | 'color-style.red' | 'color-style.violet' | 'color-style.white' | 'color-style.yellow' | 'context-menu.arrange' | 'context-menu.copy-as' | 'context-menu.edit' | 'context-menu.export-all-as' | 'context-menu.export-as' | 'context-menu.move-to-page' | 'context-menu.reorder' | 'context-menu.title' | 'context.pages.new-page' | 'cursor-chat.type-to-chat' | 'dash-style.dashed' | 'dash-style.dotted' | 'dash-style.draw' | 'dash-style.solid' | 'document-name-menu.copy-link' | 'document.default-name' | 'edit-link-dialog.cancel' | 'edit-link-dialog.clear' | 'edit-link-dialog.detail' | 'edit-link-dialog.external-link' | 'edit-link-dialog.invalid-url' | 'edit-link-dialog.save' | 'edit-link-dialog.title' | 'edit-link-dialog.url' | 'embed-dialog.back' | 'embed-dialog.cancel' | 'embed-dialog.create' | 'embed-dialog.instruction' | 'embed-dialog.invalid-url' | 'embed-dialog.title' | 'embed-dialog.url' | 'file-system.confirm-clear.cancel' | 'file-system.confirm-clear.continue' | 'file-system.confirm-clear.description' | 'file-system.confirm-clear.dont-show-again' | 'file-system.confirm-clear.title' | 'file-system.confirm-open.cancel' | 'file-system.confirm-open.description' | 'file-system.confirm-open.dont-show-again' | 'file-system.confirm-open.open' | 'file-system.confirm-open.title' | 'file-system.file-open-error.file-format-version-too-new' | 'file-system.file-open-error.generic-corrupted-file' | 'file-system.file-open-error.not-a-tldraw-file' | 'file-system.file-open-error.title' | 'file-system.shared-document-file-open-error.description' | 'file-system.shared-document-file-open-error.title' | 'fill-style.fill' | 'fill-style.none' | 'fill-style.pattern' | 'fill-style.semi' | 'fill-style.solid' | 'focus-mode.toggle-focus-mode' | 'font-style.draw' | 'font-style.mono' | 'font-style.sans' | 'font-style.serif' | 'geo-style.arrow-down' | 'geo-style.arrow-left' | 'geo-style.arrow-right' | 'geo-style.arrow-up' | 'geo-style.check-box' | 'geo-style.cloud' | 'geo-style.diamond' | 'geo-style.ellipse' | 'geo-style.heart' | 'geo-style.hexagon' | 'geo-style.octagon' | 'geo-style.oval' | 'geo-style.pentagon' | 'geo-style.rectangle' | 'geo-style.rhombus' | 'geo-style.star' | 'geo-style.trapezoid' | 'geo-style.triangle' | 'geo-style.x-box' | 'handle.crop.bottom-left' | 'handle.crop.bottom-right' | 'handle.crop.bottom' | 'handle.crop.left' | 'handle.crop.right' | 'handle.crop.top-left' | 'handle.crop.top-right' | 'handle.crop.top' | 'handle.resize-bottom-left' | 'handle.resize-bottom-right' | 'handle.resize-bottom' | 'handle.resize-left' | 'handle.resize-right' | 'handle.resize-top-left' | 'handle.resize-top-right' | 'handle.resize-top' | 'handle.rotate.bottom_left_rotate' | 'handle.rotate.bottom_right_rotate' | 'handle.rotate.mobile_rotate' | 'handle.rotate.top_left_rotate' | 'handle.rotate.top_right_rotate' | 'help-menu.about' | 'help-menu.discord' | 'help-menu.github' | 'help-menu.import-tldr-file' | 'help-menu.keyboard-shortcuts' | 'help-menu.privacy' | 'help-menu.terms' | 'help-menu.title' | 'help-menu.twitter' | 'menu.accessibility' | 'menu.copy-as' | 'menu.edit' | 'menu.export-as' | 'menu.file' | 'menu.language' | 'menu.preferences' | 'menu.theme' | 'menu.title' | 'menu.view' | 'navigation-zone.minimap' | 'navigation-zone.title' | 'navigation-zone.toggle-minimap' | 'navigation-zone.zoom' | 'opacity-style.0.1' | 'opacity-style.0.25' | 'opacity-style.0.5' | 'opacity-style.0.75' | 'opacity-style.1' | 'page-menu.create-new-page' | 'page-menu.edit-done' | 'page-menu.edit-start' | 'page-menu.go-to-page' | 'page-menu.max-page-count-reached' | 'page-menu.new-page-initial-name' | 'page-menu.submenu.delete' | 'page-menu.submenu.duplicate-page' | 'page-menu.submenu.move-down' | 'page-menu.submenu.move-up' | 'page-menu.submenu.rename' | 'page-menu.submenu.title' | 'page-menu.title' | 'people-menu.anonymous-user' | 'people-menu.avatar-color' | 'people-menu.change-color' | 'people-menu.change-name' | 'people-menu.follow' | 'people-menu.following' | 'people-menu.invite' | 'people-menu.leading' | 'people-menu.title' | 'people-menu.user' | 'share-menu.copied' | 'share-menu.copy-link-note' | 'share-menu.copy-link' | 'share-menu.copy-readonly-link-note' | 'share-menu.copy-readonly-link' | 'share-menu.create-snapshot-link' | 'share-menu.creating-project' | 'share-menu.fork-note' | 'share-menu.offline-note' | 'share-menu.project-too-large' | 'share-menu.save-note' | 'share-menu.share-project' | 'share-menu.snapshot-link-note' | 'share-menu.title' | 'share-menu.upload-failed' | 'sharing.confirm-leave.cancel' | 'sharing.confirm-leave.description' | 'sharing.confirm-leave.dont-show-again' | 'sharing.confirm-leave.leave' | 'sharing.confirm-leave.title' | 'shortcuts-dialog.a11y' | 'shortcuts-dialog.collaboration' | 'shortcuts-dialog.edit' | 'shortcuts-dialog.file' | 'shortcuts-dialog.preferences' | 'shortcuts-dialog.text-formatting' | 'shortcuts-dialog.title' | 'shortcuts-dialog.tools' | 'shortcuts-dialog.transform' | 'shortcuts-dialog.view' | 'size-style.l' | 'size-style.m' | 'size-style.s' | 'size-style.xl' | 'spline-style.cubic' | 'spline-style.line' | 'status.offline' | 'style-panel.align' | 'style-panel.arrow-kind' | 'style-panel.arrowhead-end' | 'style-panel.arrowhead-start' | 'style-panel.arrowheads' | 'style-panel.color' | 'style-panel.dash' | 'style-panel.fill' | 'style-panel.font' | 'style-panel.geo' | 'style-panel.label-align' | 'style-panel.mixed' | 'style-panel.opacity' | 'style-panel.position' | 'style-panel.size' | 'style-panel.spline' | 'style-panel.title' | 'style-panel.vertical-align' | 'theme.dark' | 'theme.light' | 'theme.system' | 'toast.close' | 'toast.error.copy-fail.desc' | 'toast.error.copy-fail.title' | 'toast.error.export-fail.desc' | 'toast.error.export-fail.title' | 'toast.error' | 'toast.info' | 'toast.success' | 'toast.warning' | 'tool-panel.more' | 'tool-panel.title' | 'tool.arrow-down' | 'tool.arrow-left' | 'tool.arrow-right' | 'tool.arrow-up' | 'tool.arrow' | 'tool.aspect-ratio.circle' | 'tool.aspect-ratio.landscape' | 'tool.aspect-ratio.original' | 'tool.aspect-ratio.portrait' | 'tool.aspect-ratio.square' | 'tool.aspect-ratio.wide' | 'tool.aspect-ratio' | 'tool.bookmark' | 'tool.check-box' | 'tool.cloud' | 'tool.diamond' | 'tool.draw' | 'tool.ellipse' | 'tool.embed' | 'tool.eraser' | 'tool.flip-horz' | 'tool.flip-vert' | 'tool.frame' | 'tool.hand' | 'tool.heart' | 'tool.hexagon' | 'tool.highlight' | 'tool.image-crop' | 'tool.image-toolbar-title' | 'tool.image-zoom' | 'tool.laser' | 'tool.line' | 'tool.media-alt-text-confirm' | 'tool.media-alt-text-desc' | 'tool.media-alt-text' | 'tool.media' | 'tool.note' | 'tool.octagon' | 'tool.oval' | 'tool.pentagon' | 'tool.pointer-down' | 'tool.rectangle' | 'tool.replace-media' | 'tool.rhombus' | 'tool.rich-text-bold' | 'tool.rich-text-bulletList' | 'tool.rich-text-code' | 'tool.rich-text-header' | 'tool.rich-text-highlight' | 'tool.rich-text-italic' | 'tool.rich-text-link-remove' | 'tool.rich-text-link-visit' | 'tool.rich-text-link' | 'tool.rich-text-orderedList' | 'tool.rich-text-strikethrough' | 'tool.rich-text-toolbar-title' | 'tool.rotate-cw' | 'tool.select' | 'tool.star' | 'tool.text' | 'tool.trapezoid' | 'tool.triangle' | 'tool.x-box' | 'ui.checked' | 'ui.close' | 'ui.unchecked' | 'verticalAlign-style.end' | 'verticalAlign-style.middle' | 'verticalAlign-style.start' | 'vscode.file-open.backup-failed' | 'vscode.file-open.backup-saved' | 'vscode.file-open.backup' | 'vscode.file-open.desc' | 'vscode.file-open.dont-show-again' | 'vscode.file-open.open';
|
|
4226
|
+
export declare type TLUiTranslationKey = 'a11y.adjust-shape-styles' | 'a11y.enlarge-shape' | 'a11y.enter-leave-container' | 'a11y.move-shape-faster' | 'a11y.move-shape' | 'a11y.multiple-shapes' | 'a11y.open-context-menu' | 'a11y.open-keyboard-shortcuts' | 'a11y.pan-camera' | 'a11y.repeat-shape' | 'a11y.rotate-shape-ccw-fine' | 'a11y.rotate-shape-ccw' | 'a11y.rotate-shape-cw-fine' | 'a11y.rotate-shape-cw' | 'a11y.select-shape-direction' | 'a11y.select-shape' | 'a11y.shape-image' | 'a11y.shape-index' | 'a11y.shape-video' | 'a11y.shrink-shape' | 'a11y.skip-to-main-content' | 'a11y.status' | 'action.align-bottom' | 'action.align-center-horizontal.short' | 'action.align-center-horizontal' | 'action.align-center-vertical.short' | 'action.align-center-vertical' | 'action.align-left' | 'action.align-right' | 'action.align-top' | 'action.back-to-content' | 'action.bring-forward' | 'action.bring-to-front' | 'action.convert-to-bookmark' | 'action.convert-to-embed' | 'action.copy-as-png.short' | 'action.copy-as-png' | 'action.copy-as-svg.short' | 'action.copy-as-svg' | 'action.copy' | 'action.cut' | 'action.delete' | 'action.distribute-horizontal.short' | 'action.distribute-horizontal' | 'action.distribute-vertical.short' | 'action.distribute-vertical' | 'action.download-original' | 'action.duplicate' | 'action.edit-link' | 'action.exit-pen-mode' | 'action.export-all-as-png.short' | 'action.export-all-as-png' | 'action.export-all-as-svg.short' | 'action.export-all-as-svg' | 'action.export-as-png.short' | 'action.export-as-png' | 'action.export-as-svg.short' | 'action.export-as-svg' | 'action.fit-frame-to-content' | 'action.flatten-to-image' | 'action.flip-horizontal.short' | 'action.flip-horizontal' | 'action.flip-vertical.short' | 'action.flip-vertical' | 'action.fork-project-on-tldraw' | 'action.fork-project' | 'action.group' | 'action.insert-embed' | 'action.insert-media' | 'action.leave-shared-project' | 'action.new-project' | 'action.new-shared-project' | 'action.open-cursor-chat' | 'action.open-embed-link' | 'action.open-file' | 'action.open-kbd-shortcuts' | 'action.pack' | 'action.paste-error-description' | 'action.paste-error-title' | 'action.paste' | 'action.print' | 'action.redo' | 'action.remove-frame' | 'action.rename' | 'action.rotate-ccw' | 'action.rotate-cw' | 'action.save-copy' | 'action.select-all' | 'action.select-none' | 'action.send-backward' | 'action.send-to-back' | 'action.share-project' | 'action.stack-horizontal.short' | 'action.stack-horizontal' | 'action.stack-vertical.short' | 'action.stack-vertical' | 'action.stop-following' | 'action.stretch-horizontal.short' | 'action.stretch-horizontal' | 'action.stretch-vertical.short' | 'action.stretch-vertical' | 'action.toggle-auto-size' | 'action.toggle-dark-mode.menu' | 'action.toggle-dark-mode' | 'action.toggle-debug-mode.menu' | 'action.toggle-debug-mode' | 'action.toggle-dynamic-size-mode.menu' | 'action.toggle-dynamic-size-mode' | 'action.toggle-edge-scrolling.menu' | 'action.toggle-edge-scrolling' | 'action.toggle-focus-mode.menu' | 'action.toggle-focus-mode' | 'action.toggle-grid.menu' | 'action.toggle-grid' | 'action.toggle-keyboard-shortcuts.menu' | 'action.toggle-keyboard-shortcuts' | 'action.toggle-lock' | 'action.toggle-paste-at-cursor.menu' | 'action.toggle-paste-at-cursor' | 'action.toggle-reduce-motion.menu' | 'action.toggle-reduce-motion' | 'action.toggle-snap-mode.menu' | 'action.toggle-snap-mode' | 'action.toggle-tool-lock.menu' | 'action.toggle-tool-lock' | 'action.toggle-transparent.context-menu' | 'action.toggle-transparent.menu' | 'action.toggle-transparent' | 'action.toggle-ui-labels.menu' | 'action.toggle-ui-labels' | 'action.toggle-wrap-mode.menu' | 'action.toggle-wrap-mode' | 'action.undo' | 'action.ungroup' | 'action.unlock-all' | 'action.zoom-in' | 'action.zoom-out' | 'action.zoom-to-100' | 'action.zoom-to-fit' | 'action.zoom-to-selection' | 'actions-menu.title' | 'align-style.end' | 'align-style.justify' | 'align-style.middle' | 'align-style.start' | 'app.loading' | 'arrow-kind-style.arc' | 'arrow-kind-style.elbow' | 'arrowheadEnd-style.arrow' | 'arrowheadEnd-style.bar' | 'arrowheadEnd-style.diamond' | 'arrowheadEnd-style.dot' | 'arrowheadEnd-style.inverted' | 'arrowheadEnd-style.none' | 'arrowheadEnd-style.pipe' | 'arrowheadEnd-style.square' | 'arrowheadEnd-style.triangle' | 'arrowheadStart-style.arrow' | 'arrowheadStart-style.bar' | 'arrowheadStart-style.diamond' | 'arrowheadStart-style.dot' | 'arrowheadStart-style.inverted' | 'arrowheadStart-style.none' | 'arrowheadStart-style.pipe' | 'arrowheadStart-style.square' | 'arrowheadStart-style.triangle' | 'assets.files.amount-too-many' | 'assets.files.size-too-big' | 'assets.files.type-not-allowed' | 'assets.files.upload-failed' | 'assets.url.failed' | 'color-style.black' | 'color-style.blue' | 'color-style.green' | 'color-style.grey' | 'color-style.light-blue' | 'color-style.light-green' | 'color-style.light-red' | 'color-style.light-violet' | 'color-style.orange' | 'color-style.red' | 'color-style.violet' | 'color-style.white' | 'color-style.yellow' | 'context-menu.arrange' | 'context-menu.copy-as' | 'context-menu.edit' | 'context-menu.export-all-as' | 'context-menu.export-as' | 'context-menu.move-to-page' | 'context-menu.reorder' | 'context-menu.title' | 'context.pages.new-page' | 'cursor-chat.type-to-chat' | 'dash-style.dashed' | 'dash-style.dotted' | 'dash-style.draw' | 'dash-style.solid' | 'document-name-menu.copy-link' | 'document.default-name' | 'edit-link-dialog.cancel' | 'edit-link-dialog.clear' | 'edit-link-dialog.detail' | 'edit-link-dialog.external-link' | 'edit-link-dialog.invalid-url' | 'edit-link-dialog.save' | 'edit-link-dialog.title' | 'edit-link-dialog.url' | 'embed-dialog.back' | 'embed-dialog.cancel' | 'embed-dialog.create' | 'embed-dialog.instruction' | 'embed-dialog.invalid-url' | 'embed-dialog.title' | 'embed-dialog.url' | 'file-system.confirm-clear.cancel' | 'file-system.confirm-clear.continue' | 'file-system.confirm-clear.description' | 'file-system.confirm-clear.dont-show-again' | 'file-system.confirm-clear.title' | 'file-system.confirm-open.cancel' | 'file-system.confirm-open.description' | 'file-system.confirm-open.dont-show-again' | 'file-system.confirm-open.open' | 'file-system.confirm-open.title' | 'file-system.file-open-error.file-format-version-too-new' | 'file-system.file-open-error.generic-corrupted-file' | 'file-system.file-open-error.not-a-tldraw-file' | 'file-system.file-open-error.title' | 'file-system.shared-document-file-open-error.description' | 'file-system.shared-document-file-open-error.title' | 'fill-style.fill' | 'fill-style.none' | 'fill-style.pattern' | 'fill-style.semi' | 'fill-style.solid' | 'focus-mode.toggle-focus-mode' | 'font-style.draw' | 'font-style.mono' | 'font-style.sans' | 'font-style.serif' | 'geo-style.arrow-down' | 'geo-style.arrow-left' | 'geo-style.arrow-right' | 'geo-style.arrow-up' | 'geo-style.check-box' | 'geo-style.cloud' | 'geo-style.diamond' | 'geo-style.ellipse' | 'geo-style.heart' | 'geo-style.hexagon' | 'geo-style.octagon' | 'geo-style.oval' | 'geo-style.pentagon' | 'geo-style.rectangle' | 'geo-style.rhombus-2' | 'geo-style.rhombus' | 'geo-style.star' | 'geo-style.trapezoid' | 'geo-style.triangle' | 'geo-style.x-box' | 'handle.crop.bottom-left' | 'handle.crop.bottom-right' | 'handle.crop.bottom' | 'handle.crop.left' | 'handle.crop.right' | 'handle.crop.top-left' | 'handle.crop.top-right' | 'handle.crop.top' | 'handle.resize-bottom-left' | 'handle.resize-bottom-right' | 'handle.resize-bottom' | 'handle.resize-left' | 'handle.resize-right' | 'handle.resize-top-left' | 'handle.resize-top-right' | 'handle.resize-top' | 'handle.rotate.bottom_left_rotate' | 'handle.rotate.bottom_right_rotate' | 'handle.rotate.mobile_rotate' | 'handle.rotate.top_left_rotate' | 'handle.rotate.top_right_rotate' | 'help-menu.about' | 'help-menu.discord' | 'help-menu.github' | 'help-menu.import-tldr-file' | 'help-menu.keyboard-shortcuts' | 'help-menu.privacy' | 'help-menu.terms' | 'help-menu.title' | 'help-menu.twitter' | 'menu.accessibility' | 'menu.copy-as' | 'menu.edit' | 'menu.export-as' | 'menu.file' | 'menu.language' | 'menu.preferences' | 'menu.theme' | 'menu.title' | 'menu.view' | 'navigation-zone.minimap' | 'navigation-zone.title' | 'navigation-zone.toggle-minimap' | 'navigation-zone.zoom' | 'opacity-style.0.1' | 'opacity-style.0.25' | 'opacity-style.0.5' | 'opacity-style.0.75' | 'opacity-style.1' | 'page-menu.create-new-page' | 'page-menu.edit-done' | 'page-menu.edit-start' | 'page-menu.go-to-page' | 'page-menu.max-page-count-reached' | 'page-menu.new-page-initial-name' | 'page-menu.submenu.delete' | 'page-menu.submenu.duplicate-page' | 'page-menu.submenu.move-down' | 'page-menu.submenu.move-up' | 'page-menu.submenu.rename' | 'page-menu.submenu.title' | 'page-menu.title' | 'people-menu.anonymous-user' | 'people-menu.avatar-color' | 'people-menu.change-color' | 'people-menu.change-name' | 'people-menu.follow' | 'people-menu.following' | 'people-menu.invite' | 'people-menu.leading' | 'people-menu.title' | 'people-menu.user' | 'share-menu.copied' | 'share-menu.copy-link-note' | 'share-menu.copy-link' | 'share-menu.copy-readonly-link-note' | 'share-menu.copy-readonly-link' | 'share-menu.create-snapshot-link' | 'share-menu.creating-project' | 'share-menu.fork-note' | 'share-menu.offline-note' | 'share-menu.project-too-large' | 'share-menu.save-note' | 'share-menu.share-project' | 'share-menu.snapshot-link-note' | 'share-menu.title' | 'share-menu.upload-failed' | 'sharing.confirm-leave.cancel' | 'sharing.confirm-leave.description' | 'sharing.confirm-leave.dont-show-again' | 'sharing.confirm-leave.leave' | 'sharing.confirm-leave.title' | 'shortcuts-dialog.a11y' | 'shortcuts-dialog.collaboration' | 'shortcuts-dialog.edit' | 'shortcuts-dialog.file' | 'shortcuts-dialog.preferences' | 'shortcuts-dialog.text-formatting' | 'shortcuts-dialog.title' | 'shortcuts-dialog.tools' | 'shortcuts-dialog.transform' | 'shortcuts-dialog.view' | 'size-style.l' | 'size-style.m' | 'size-style.s' | 'size-style.xl' | 'spline-style.cubic' | 'spline-style.line' | 'status.offline' | 'style-panel.align' | 'style-panel.arrow-kind' | 'style-panel.arrowhead-end' | 'style-panel.arrowhead-start' | 'style-panel.arrowheads' | 'style-panel.color' | 'style-panel.dash' | 'style-panel.fill' | 'style-panel.font' | 'style-panel.geo' | 'style-panel.label-align' | 'style-panel.mixed' | 'style-panel.opacity' | 'style-panel.position' | 'style-panel.size' | 'style-panel.spline' | 'style-panel.title' | 'style-panel.vertical-align' | 'theme.dark' | 'theme.light' | 'theme.system' | 'toast.close' | 'toast.error.copy-fail.desc' | 'toast.error.copy-fail.title' | 'toast.error.export-fail.desc' | 'toast.error.export-fail.title' | 'toast.error' | 'toast.info' | 'toast.success' | 'toast.warning' | 'tool-panel.more' | 'tool-panel.title' | 'tool.arrow-down' | 'tool.arrow-left' | 'tool.arrow-right' | 'tool.arrow-up' | 'tool.arrow' | 'tool.aspect-ratio.circle' | 'tool.aspect-ratio.landscape' | 'tool.aspect-ratio.original' | 'tool.aspect-ratio.portrait' | 'tool.aspect-ratio.square' | 'tool.aspect-ratio.wide' | 'tool.aspect-ratio' | 'tool.bookmark' | 'tool.check-box' | 'tool.cloud' | 'tool.diamond' | 'tool.draw' | 'tool.ellipse' | 'tool.embed' | 'tool.eraser' | 'tool.flip-horz' | 'tool.flip-vert' | 'tool.frame' | 'tool.hand' | 'tool.heart' | 'tool.hexagon' | 'tool.highlight' | 'tool.image-crop-confirm' | 'tool.image-crop' | 'tool.image-toolbar-title' | 'tool.image-zoom' | 'tool.laser' | 'tool.line' | 'tool.media-alt-text-confirm' | 'tool.media-alt-text-desc' | 'tool.media-alt-text' | 'tool.media' | 'tool.note' | 'tool.octagon' | 'tool.oval' | 'tool.pentagon' | 'tool.pointer-down' | 'tool.rectangle' | 'tool.replace-media' | 'tool.rhombus' | 'tool.rich-text-bold' | 'tool.rich-text-bulletList' | 'tool.rich-text-code' | 'tool.rich-text-header' | 'tool.rich-text-highlight' | 'tool.rich-text-italic' | 'tool.rich-text-link-remove' | 'tool.rich-text-link-visit' | 'tool.rich-text-link' | 'tool.rich-text-orderedList' | 'tool.rich-text-strikethrough' | 'tool.rich-text-toolbar-title' | 'tool.rotate-cw' | 'tool.select' | 'tool.star' | 'tool.text' | 'tool.trapezoid' | 'tool.triangle' | 'tool.x-box' | 'ui.checked' | 'ui.close' | 'ui.unchecked' | 'verticalAlign-style.end' | 'verticalAlign-style.middle' | 'verticalAlign-style.start' | 'vscode.file-open.backup-failed' | 'vscode.file-open.backup-saved' | 'vscode.file-open.backup' | 'vscode.file-open.desc' | 'vscode.file-open.dont-show-again' | 'vscode.file-open.open';
|
|
4034
4227
|
|
|
4035
4228
|
/** @public */
|
|
4036
4229
|
export declare interface TLUiTranslationProviderProps {
|
|
@@ -4212,13 +4405,6 @@ export declare function useA11y(): TLUiA11yContextType;
|
|
|
4212
4405
|
/** @public */
|
|
4213
4406
|
export declare function useActions(): TLUiActionsContextType;
|
|
4214
4407
|
|
|
4215
|
-
/**
|
|
4216
|
-
* @deprecated Use {@link useImageOrVideoAsset} instead.
|
|
4217
|
-
*
|
|
4218
|
-
* @public
|
|
4219
|
-
*/
|
|
4220
|
-
export declare const useAsset: typeof useImageOrVideoAsset;
|
|
4221
|
-
|
|
4222
4408
|
/* Excluded from this release type: useAssetUrls */
|
|
4223
4409
|
|
|
4224
4410
|
/** @public */
|
|
@@ -4273,7 +4459,11 @@ export declare function useDefaultHelpers(): {
|
|
|
4273
4459
|
copy: (source: TLUiEventSource) => Promise<void>;
|
|
4274
4460
|
copyAs: (ids: TLShapeId[], format?: TLCopyType) => void;
|
|
4275
4461
|
cut: (source: TLUiEventSource) => Promise<void>;
|
|
4276
|
-
exportAs: (ids: TLShapeId[],
|
|
4462
|
+
exportAs: (ids: TLShapeId[], opts?: {
|
|
4463
|
+
format?: TLExportType;
|
|
4464
|
+
name?: string;
|
|
4465
|
+
scale?: number;
|
|
4466
|
+
}) => void;
|
|
4277
4467
|
getEmbedDefinition: (url: string) => TLEmbedResult;
|
|
4278
4468
|
insertMedia: () => Promise<void>;
|
|
4279
4469
|
isMobile: boolean;
|
|
@@ -4323,14 +4513,12 @@ export declare function useEditableRichText(shapeId: TLShapeId, type: string, ri
|
|
|
4323
4513
|
rInput: RefObject<HTMLDivElement>;
|
|
4324
4514
|
};
|
|
4325
4515
|
|
|
4326
|
-
/**
|
|
4327
|
-
* @deprecated Use `useEditablePlainText` instead.
|
|
4328
|
-
* @public
|
|
4329
|
-
*/
|
|
4330
|
-
export declare const useEditableText: typeof useEditablePlainText;
|
|
4331
|
-
|
|
4332
4516
|
/** @public */
|
|
4333
|
-
export declare function useExportAs(): (ids: TLShapeId[],
|
|
4517
|
+
export declare function useExportAs(): (ids: TLShapeId[], opts?: {
|
|
4518
|
+
format?: TLExportType;
|
|
4519
|
+
name?: string;
|
|
4520
|
+
scale?: number;
|
|
4521
|
+
}) => void;
|
|
4334
4522
|
|
|
4335
4523
|
/**
|
|
4336
4524
|
* This is a handy helper hook that resolves an asset to an optimized URL for a given shape, or its
|
|
@@ -4404,9 +4592,15 @@ export declare const useSelectedShapesAnnouncer: () => void;
|
|
|
4404
4592
|
/** @public */
|
|
4405
4593
|
export declare function useShowCollaborationUi(): boolean;
|
|
4406
4594
|
|
|
4595
|
+
/** @public */
|
|
4596
|
+
export declare function useStylePanelContext(): StylePanelContext;
|
|
4597
|
+
|
|
4407
4598
|
/** @public */
|
|
4408
4599
|
export declare function useTldrawUiComponents(): TLUiComponents;
|
|
4409
4600
|
|
|
4601
|
+
/** @public */
|
|
4602
|
+
export declare function useTldrawUiOrientation(): TldrawUiOrientationContext;
|
|
4603
|
+
|
|
4410
4604
|
/** @public */
|
|
4411
4605
|
export declare function useToasts(): TLUiToastsContextType;
|
|
4412
4606
|
|