tldraw 3.16.0-internal.a478398270c6 → 3.16.0-internal.f8b97f0c414f
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 +471 -130
- package/dist-cjs/index.js +58 -15
- 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/TldrawImage.js +5 -2
- package/dist-cjs/lib/TldrawImage.js.map +3 -3
- package/dist-cjs/lib/canvas/TldrawCropHandles.js +1 -1
- package/dist-cjs/lib/canvas/TldrawCropHandles.js.map +2 -2
- package/dist-cjs/lib/canvas/TldrawHandles.js +1 -1
- package/dist-cjs/lib/canvas/TldrawHandles.js.map +2 -2
- package/dist-cjs/lib/canvas/TldrawOverlays.js +1 -1
- package/dist-cjs/lib/canvas/TldrawOverlays.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/canvas/TldrawSelectionForeground.js +279 -271
- package/dist-cjs/lib/canvas/TldrawSelectionForeground.js.map +2 -2
- package/dist-cjs/lib/defaultExternalContentHandlers.js +6 -4
- package/dist-cjs/lib/defaultExternalContentHandlers.js.map +2 -2
- package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js +27 -44
- package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/arrow/arrowLabel.js +22 -4
- package/dist-cjs/lib/shapes/arrow/arrowLabel.js.map +3 -3
- package/dist-cjs/lib/shapes/arrow/arrowTargetState.js +1 -1
- package/dist-cjs/lib/shapes/arrow/arrowTargetState.js.map +2 -2
- 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/arrow/elbow/elbowArrowSnapLines.js.map +1 -1
- package/dist-cjs/lib/shapes/arrow/toolStates/Pointing.js +3 -0
- package/dist-cjs/lib/shapes/arrow/toolStates/Pointing.js.map +2 -2
- package/dist-cjs/lib/shapes/bookmark/BookmarkShapeUtil.js +4 -4
- package/dist-cjs/lib/shapes/bookmark/BookmarkShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/draw/DrawShapeUtil.js +3 -6
- 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/FrameShapeTool.js.map +1 -1
- package/dist-cjs/lib/shapes/frame/FrameShapeUtil.js +25 -18
- 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/frame/components/FrameLabelInput.js +2 -2
- package/dist-cjs/lib/shapes/frame/components/FrameLabelInput.js.map +2 -2
- package/dist-cjs/lib/shapes/geo/GeoShapeUtil.js +3 -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 -4
- 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 +20 -5
- package/dist-cjs/lib/shapes/line/LineShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/note/NoteShapeUtil.js +8 -6
- package/dist-cjs/lib/shapes/note/NoteShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/HyperlinkButton.js +4 -4
- package/dist-cjs/lib/shapes/shared/HyperlinkButton.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/PathBuilder.js +21 -3
- package/dist-cjs/lib/shapes/shared/PathBuilder.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/PlainTextLabel.js +2 -3
- package/dist-cjs/lib/shapes/shared/PlainTextLabel.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/RichTextLabel.js +5 -2
- package/dist-cjs/lib/shapes/shared/RichTextLabel.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/SvgTextLabel.js +4 -3
- package/dist-cjs/lib/shapes/shared/SvgTextLabel.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/crop.js +1 -0
- package/dist-cjs/lib/shapes/shared/crop.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/freehand/svg.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/useEditablePlainText.js +3 -4
- package/dist-cjs/lib/shapes/shared/useEditablePlainText.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/useEditableRichText.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/shared/usePrefersReducedMotion.js +10 -1
- package/dist-cjs/lib/shapes/shared/usePrefersReducedMotion.js.map +2 -2
- package/dist-cjs/lib/shapes/text/PlainTextArea.js +2 -2
- package/dist-cjs/lib/shapes/text/PlainTextArea.js.map +2 -2
- package/dist-cjs/lib/shapes/text/RichTextArea.js +3 -3
- package/dist-cjs/lib/shapes/text/RichTextArea.js.map +2 -2
- package/dist-cjs/lib/shapes/text/TextShapeUtil.js +7 -13
- 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/styles.js.map +2 -2
- 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/Crop/children/PointingCrop.js +7 -1
- package/dist-cjs/lib/tools/SelectTool/childStates/Crop/children/PointingCrop.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/DraggingHandle.js +43 -22
- package/dist-cjs/lib/tools/SelectTool/childStates/DraggingHandle.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/Idle.js +2 -15
- package/dist-cjs/lib/tools/SelectTool/childStates/Idle.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/PointingShape.js +5 -0
- package/dist-cjs/lib/tools/SelectTool/childStates/PointingShape.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/Resizing.js +8 -0
- package/dist-cjs/lib/tools/SelectTool/childStates/Resizing.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/Rotating.js +8 -0
- package/dist-cjs/lib/tools/SelectTool/childStates/Rotating.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/Translating.js +8 -0
- package/dist-cjs/lib/tools/SelectTool/childStates/Translating.js.map +2 -2
- package/dist-cjs/lib/tools/selection-logic/getHitShapeOnCanvasPointerDown.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/components/A11y.js +15 -13
- package/dist-cjs/lib/ui/components/A11y.js.map +2 -2
- package/dist-cjs/lib/ui/components/AccessibilityMenu.js +35 -0
- package/dist-cjs/lib/ui/components/AccessibilityMenu.js.map +7 -0
- package/dist-cjs/lib/ui/components/ActionsMenu/DefaultActionsMenu.js +12 -3
- 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/DefaultMenuPanel.js +3 -2
- package/dist-cjs/lib/ui/components/DefaultMenuPanel.js.map +2 -2
- package/dist-cjs/lib/ui/components/EditLinkDialog.js +11 -1
- package/dist-cjs/lib/ui/components/EditLinkDialog.js.map +2 -2
- package/dist-cjs/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.js +57 -7
- package/dist-cjs/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.js.map +2 -2
- package/dist-cjs/lib/ui/components/MainMenu/DefaultMainMenuContent.js +3 -2
- package/dist-cjs/lib/ui/components/MainMenu/DefaultMainMenuContent.js.map +2 -2
- 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/NavigationPanel/DefaultNavigationPanel.js +4 -5
- package/dist-cjs/lib/ui/components/NavigationPanel/DefaultNavigationPanel.js.map +2 -2
- package/dist-cjs/lib/ui/components/PageMenu/DefaultPageMenu.js +3 -2
- package/dist-cjs/lib/ui/components/PageMenu/DefaultPageMenu.js.map +2 -2
- package/dist-cjs/lib/ui/components/SharePanel/PeopleMenuItem.js +3 -2
- package/dist-cjs/lib/ui/components/SharePanel/PeopleMenuItem.js.map +2 -2
- package/dist-cjs/lib/ui/components/SharePanel/UserPresenceColorPicker.js +2 -2
- package/dist-cjs/lib/ui/components/SharePanel/UserPresenceColorPicker.js.map +2 -2
- package/dist-cjs/lib/ui/components/Spinner.js +2 -25
- package/dist-cjs/lib/ui/components/Spinner.js.map +2 -2
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanel.js +11 -4
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanel.js.map +2 -2
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanelContent.js +249 -278
- 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 -54
- 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} +26 -25
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelDoubleDropdownPicker.js.map +7 -0
- package/dist-cjs/lib/ui/components/StylePanel/{DropdownPicker.js → StylePanelDropdownPicker.js} +47 -43
- 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/DefaultImageToolbar.js +21 -7
- package/dist-cjs/lib/ui/components/Toolbar/DefaultImageToolbar.js.map +3 -3
- 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 -21
- 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 +189 -80
- package/dist-cjs/lib/ui/components/Toolbar/OverflowingToolbar.js.map +3 -3
- package/dist-cjs/lib/ui/components/Toolbar/ToggleToolLockedButton.js +5 -4
- package/dist-cjs/lib/ui/components/Toolbar/ToggleToolLockedButton.js.map +2 -2
- package/dist-cjs/lib/ui/components/menu-items.js +22 -0
- package/dist-cjs/lib/ui/components/menu-items.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/Button/TldrawUiButtonIcon.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiContextualToolbar.js +11 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiContextualToolbar.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiDialog.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiDialog.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiIcon.js +35 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiIcon.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiInput.js +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiInput.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiPopover.js +3 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiPopover.js.map +3 -3
- package/dist-cjs/lib/ui/components/primitives/TldrawUiSlider.js +23 -6
- package/dist-cjs/lib/ui/components/primitives/TldrawUiSlider.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiToolbar.js +33 -7
- package/dist-cjs/lib/ui/components/primitives/TldrawUiToolbar.js.map +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiTooltip.js +294 -0
- package/dist-cjs/lib/ui/components/primitives/TldrawUiTooltip.js.map +7 -0
- package/dist-cjs/lib/ui/components/primitives/layout.js +76 -0
- package/dist-cjs/lib/ui/components/primitives/layout.js.map +7 -0
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuCheckboxItem.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 -22
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuItem.js.map +2 -2
- package/dist-cjs/lib/ui/context/TldrawUiContextProvider.js +3 -2
- package/dist-cjs/lib/ui/context/TldrawUiContextProvider.js.map +2 -2
- package/dist-cjs/lib/ui/context/actions.js +79 -17
- 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/menu-hooks.js.map +2 -2
- package/dist-cjs/lib/ui/hooks/useClipboardEvents.js +1 -1
- package/dist-cjs/lib/ui/hooks/useClipboardEvents.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/useKeyboardShortcuts.js +2 -2
- package/dist-cjs/lib/ui/hooks/useKeyboardShortcuts.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 +13 -0
- package/dist-cjs/lib/ui/hooks/useTranslation/defaultTranslation.js.map +2 -2
- package/dist-cjs/lib/ui/kbd-utils.js +11 -4
- 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/excalidraw/putExcalidrawContent.js +1 -1
- package/dist-cjs/lib/utils/excalidraw/putExcalidrawContent.js.map +2 -2
- 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-cjs/lib/utils/tldr/buildFromV1Document.js +3 -2
- package/dist-cjs/lib/utils/tldr/buildFromV1Document.js.map +2 -2
- package/dist-esm/index.d.mts +471 -130
- package/dist-esm/index.mjs +107 -32
- 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/TldrawImage.mjs +5 -2
- package/dist-esm/lib/TldrawImage.mjs.map +2 -2
- package/dist-esm/lib/canvas/TldrawCropHandles.mjs +1 -1
- package/dist-esm/lib/canvas/TldrawCropHandles.mjs.map +2 -2
- package/dist-esm/lib/canvas/TldrawHandles.mjs +1 -1
- package/dist-esm/lib/canvas/TldrawHandles.mjs.map +2 -2
- package/dist-esm/lib/canvas/TldrawOverlays.mjs +1 -1
- package/dist-esm/lib/canvas/TldrawOverlays.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/canvas/TldrawSelectionForeground.mjs +279 -271
- package/dist-esm/lib/canvas/TldrawSelectionForeground.mjs.map +2 -2
- package/dist-esm/lib/defaultExternalContentHandlers.mjs +6 -4
- package/dist-esm/lib/defaultExternalContentHandlers.mjs.map +2 -2
- package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs +30 -44
- package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/arrow/arrowLabel.mjs +25 -5
- package/dist-esm/lib/shapes/arrow/arrowLabel.mjs.map +3 -3
- package/dist-esm/lib/shapes/arrow/arrowTargetState.mjs +1 -1
- package/dist-esm/lib/shapes/arrow/arrowTargetState.mjs.map +2 -2
- 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/arrow/elbow/elbowArrowSnapLines.mjs.map +1 -1
- package/dist-esm/lib/shapes/arrow/toolStates/Pointing.mjs +3 -0
- package/dist-esm/lib/shapes/arrow/toolStates/Pointing.mjs.map +2 -2
- package/dist-esm/lib/shapes/bookmark/BookmarkShapeUtil.mjs +5 -5
- package/dist-esm/lib/shapes/bookmark/BookmarkShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/draw/DrawShapeUtil.mjs +4 -6
- 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/FrameShapeTool.mjs.map +1 -1
- package/dist-esm/lib/shapes/frame/FrameShapeUtil.mjs +26 -18
- 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/frame/components/FrameLabelInput.mjs +3 -3
- package/dist-esm/lib/shapes/frame/components/FrameLabelInput.mjs.map +2 -2
- package/dist-esm/lib/shapes/geo/GeoShapeUtil.mjs +4 -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 -4
- 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 +21 -5
- package/dist-esm/lib/shapes/line/LineShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/note/NoteShapeUtil.mjs +9 -6
- package/dist-esm/lib/shapes/note/NoteShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/HyperlinkButton.mjs +5 -5
- package/dist-esm/lib/shapes/shared/HyperlinkButton.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/PathBuilder.mjs +22 -3
- package/dist-esm/lib/shapes/shared/PathBuilder.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/PlainTextLabel.mjs +2 -3
- package/dist-esm/lib/shapes/shared/PlainTextLabel.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/RichTextLabel.mjs +5 -2
- package/dist-esm/lib/shapes/shared/RichTextLabel.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/SvgTextLabel.mjs +4 -3
- package/dist-esm/lib/shapes/shared/SvgTextLabel.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/crop.mjs +1 -0
- package/dist-esm/lib/shapes/shared/crop.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/freehand/svg.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/useEditablePlainText.mjs +4 -5
- package/dist-esm/lib/shapes/shared/useEditablePlainText.mjs.map +2 -2
- package/dist-esm/lib/shapes/shared/useEditableRichText.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/shared/usePrefersReducedMotion.mjs +10 -1
- package/dist-esm/lib/shapes/shared/usePrefersReducedMotion.mjs.map +2 -2
- package/dist-esm/lib/shapes/text/PlainTextArea.mjs +3 -3
- package/dist-esm/lib/shapes/text/PlainTextArea.mjs.map +2 -2
- package/dist-esm/lib/shapes/text/RichTextArea.mjs +3 -4
- package/dist-esm/lib/shapes/text/RichTextArea.mjs.map +2 -2
- package/dist-esm/lib/shapes/text/TextShapeUtil.mjs +8 -13
- 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/styles.mjs.map +2 -2
- 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/Crop/children/PointingCrop.mjs +7 -1
- package/dist-esm/lib/tools/SelectTool/childStates/Crop/children/PointingCrop.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/DraggingHandle.mjs +43 -22
- package/dist-esm/lib/tools/SelectTool/childStates/DraggingHandle.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/Idle.mjs +2 -15
- package/dist-esm/lib/tools/SelectTool/childStates/Idle.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/PointingShape.mjs +5 -0
- package/dist-esm/lib/tools/SelectTool/childStates/PointingShape.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/Resizing.mjs +8 -0
- package/dist-esm/lib/tools/SelectTool/childStates/Resizing.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/Rotating.mjs +8 -0
- package/dist-esm/lib/tools/SelectTool/childStates/Rotating.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/Translating.mjs +8 -0
- package/dist-esm/lib/tools/SelectTool/childStates/Translating.mjs.map +2 -2
- package/dist-esm/lib/tools/selection-logic/getHitShapeOnCanvasPointerDown.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/components/A11y.mjs +16 -14
- package/dist-esm/lib/ui/components/A11y.mjs.map +2 -2
- package/dist-esm/lib/ui/components/AccessibilityMenu.mjs +19 -0
- package/dist-esm/lib/ui/components/AccessibilityMenu.mjs.map +7 -0
- package/dist-esm/lib/ui/components/ActionsMenu/DefaultActionsMenu.mjs +12 -3
- 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/DefaultMenuPanel.mjs +3 -2
- package/dist-esm/lib/ui/components/DefaultMenuPanel.mjs.map +2 -2
- package/dist-esm/lib/ui/components/EditLinkDialog.mjs +11 -1
- package/dist-esm/lib/ui/components/EditLinkDialog.mjs.map +2 -2
- package/dist-esm/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.mjs +57 -7
- package/dist-esm/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.mjs.map +2 -2
- package/dist-esm/lib/ui/components/MainMenu/DefaultMainMenuContent.mjs +3 -3
- package/dist-esm/lib/ui/components/MainMenu/DefaultMainMenuContent.mjs.map +2 -2
- 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/NavigationPanel/DefaultNavigationPanel.mjs +4 -5
- package/dist-esm/lib/ui/components/NavigationPanel/DefaultNavigationPanel.mjs.map +2 -2
- package/dist-esm/lib/ui/components/PageMenu/DefaultPageMenu.mjs +4 -3
- package/dist-esm/lib/ui/components/PageMenu/DefaultPageMenu.mjs.map +2 -2
- package/dist-esm/lib/ui/components/SharePanel/PeopleMenuItem.mjs +3 -2
- package/dist-esm/lib/ui/components/SharePanel/PeopleMenuItem.mjs.map +2 -2
- package/dist-esm/lib/ui/components/SharePanel/UserPresenceColorPicker.mjs +2 -2
- package/dist-esm/lib/ui/components/SharePanel/UserPresenceColorPicker.mjs.map +2 -2
- package/dist-esm/lib/ui/components/Spinner.mjs +3 -26
- package/dist-esm/lib/ui/components/Spinner.mjs.map +2 -2
- package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanel.mjs +16 -5
- package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanel.mjs.map +2 -2
- package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanelContent.mjs +251 -282
- 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} +23 -22
- package/dist-esm/lib/ui/components/StylePanel/StylePanelDoubleDropdownPicker.mjs.map +7 -0
- package/dist-esm/lib/ui/components/StylePanel/{DropdownPicker.mjs → StylePanelDropdownPicker.mjs} +44 -40
- 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/DefaultImageToolbar.mjs +23 -9
- package/dist-esm/lib/ui/components/Toolbar/DefaultImageToolbar.mjs.map +3 -3
- 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 -21
- 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 -81
- package/dist-esm/lib/ui/components/Toolbar/OverflowingToolbar.mjs.map +3 -3
- package/dist-esm/lib/ui/components/Toolbar/ToggleToolLockedButton.mjs +5 -4
- package/dist-esm/lib/ui/components/Toolbar/ToggleToolLockedButton.mjs.map +2 -2
- package/dist-esm/lib/ui/components/menu-items.mjs +22 -0
- package/dist-esm/lib/ui/components/menu-items.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/Button/TldrawUiButtonIcon.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiContextualToolbar.mjs +12 -3
- package/dist-esm/lib/ui/components/primitives/TldrawUiContextualToolbar.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiDialog.mjs +1 -1
- package/dist-esm/lib/ui/components/primitives/TldrawUiDialog.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiIcon.mjs +36 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiIcon.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiInput.mjs +3 -3
- package/dist-esm/lib/ui/components/primitives/TldrawUiInput.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiPopover.mjs +3 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiPopover.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiSlider.mjs +23 -6
- package/dist-esm/lib/ui/components/primitives/TldrawUiSlider.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiToolbar.mjs +33 -7
- package/dist-esm/lib/ui/components/primitives/TldrawUiToolbar.mjs.map +2 -2
- package/dist-esm/lib/ui/components/primitives/TldrawUiTooltip.mjs +272 -0
- package/dist-esm/lib/ui/components/primitives/TldrawUiTooltip.mjs.map +7 -0
- package/dist-esm/lib/ui/components/primitives/layout.mjs +46 -0
- package/dist-esm/lib/ui/components/primitives/layout.mjs.map +7 -0
- package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuCheckboxItem.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 -24
- package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuItem.mjs.map +2 -2
- package/dist-esm/lib/ui/context/TldrawUiContextProvider.mjs +3 -2
- package/dist-esm/lib/ui/context/TldrawUiContextProvider.mjs.map +2 -2
- package/dist-esm/lib/ui/context/actions.mjs +79 -17
- 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/menu-hooks.mjs.map +2 -2
- package/dist-esm/lib/ui/hooks/useClipboardEvents.mjs +2 -2
- package/dist-esm/lib/ui/hooks/useClipboardEvents.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/useKeyboardShortcuts.mjs +2 -2
- package/dist-esm/lib/ui/hooks/useKeyboardShortcuts.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 +13 -0
- package/dist-esm/lib/ui/hooks/useTranslation/defaultTranslation.mjs.map +2 -2
- package/dist-esm/lib/ui/kbd-utils.mjs +11 -4
- 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/excalidraw/putExcalidrawContent.mjs +1 -1
- package/dist-esm/lib/utils/excalidraw/putExcalidrawContent.mjs.map +2 -2
- 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/dist-esm/lib/utils/tldr/buildFromV1Document.mjs +3 -2
- package/dist-esm/lib/utils/tldr/buildFromV1Document.mjs.map +2 -2
- package/package.json +12 -34
- package/src/index.ts +80 -24
- package/src/lib/Tldraw.tsx +15 -2
- package/src/lib/TldrawImage.tsx +6 -2
- package/src/lib/canvas/TldrawCropHandles.tsx +3 -1
- package/src/lib/canvas/TldrawHandles.tsx +5 -1
- package/src/lib/canvas/TldrawOverlays.tsx +1 -1
- package/src/lib/canvas/TldrawScribble.tsx +1 -1
- package/src/lib/canvas/TldrawSelectionForeground.tsx +5 -1
- package/src/lib/defaultExternalContentHandlers.ts +14 -5
- package/src/lib/shapes/arrow/ArrowShapeOptions.test.ts +2 -1
- package/src/lib/shapes/arrow/ArrowShapeTool.test.ts +6 -5
- package/src/lib/shapes/arrow/ArrowShapeUtil.test.ts +53 -11
- package/src/lib/shapes/arrow/ArrowShapeUtil.tsx +30 -46
- package/src/lib/shapes/arrow/arrowLabel.ts +31 -3
- package/src/lib/shapes/arrow/arrowTargetState.ts +3 -2
- package/src/lib/shapes/arrow/elbow/ElbowArrowDebug.tsx +3 -3
- package/src/lib/shapes/arrow/elbow/elbowArrowSnapLines.tsx +2 -2
- package/src/lib/shapes/arrow/toolStates/Pointing.tsx +3 -0
- package/src/lib/shapes/bookmark/BookmarkShapeUtil.tsx +5 -5
- package/src/lib/shapes/draw/DrawShapeTool.test.ts +0 -5
- package/src/lib/shapes/draw/DrawShapeUtil.tsx +4 -7
- package/src/lib/shapes/embed/EmbedShapeUtil.tsx +1 -1
- package/src/lib/shapes/frame/FrameShapeTool.ts +1 -1
- package/src/lib/shapes/frame/FrameShapeUtil.tsx +35 -21
- package/src/lib/shapes/frame/components/FrameHeading.tsx +1 -1
- package/src/lib/shapes/frame/components/FrameLabelInput.tsx +3 -3
- package/src/lib/shapes/geo/GeoShapeUtil.tsx +4 -2
- package/src/lib/shapes/geo/components/GeoShapeBody.tsx +2 -2
- package/src/lib/shapes/highlight/HighlightShapeUtil.tsx +7 -4
- package/src/lib/shapes/image/ImageShapeUtil.tsx +6 -3
- package/src/lib/shapes/line/LineShapeUtil.test.tsx +8 -7
- package/src/lib/shapes/line/LineShapeUtil.tsx +25 -6
- package/src/lib/shapes/line/__snapshots__/LineShapeUtil.test.tsx.snap +2 -2
- package/src/lib/shapes/note/NoteShapeTool.test.ts +2 -1
- package/src/lib/shapes/note/NoteShapeUtil.tsx +11 -4
- package/src/lib/shapes/shared/HyperlinkButton.tsx +5 -5
- package/src/lib/shapes/shared/PathBuilder.test.tsx +1 -1
- package/src/lib/shapes/shared/PathBuilder.tsx +35 -1
- package/src/lib/shapes/shared/PlainTextLabel.tsx +3 -7
- package/src/lib/shapes/shared/RichTextLabel.tsx +6 -1
- package/src/lib/shapes/shared/ShapeFill.tsx +5 -4
- package/src/lib/shapes/shared/SvgTextLabel.tsx +4 -2
- package/src/lib/shapes/shared/crop.ts +1 -0
- package/src/lib/shapes/shared/freehand/svg.ts +2 -0
- package/src/lib/shapes/shared/useEditablePlainText.ts +12 -12
- package/src/lib/shapes/shared/useEditableRichText.ts +7 -3
- package/src/lib/shapes/shared/useImageOrVideoAsset.ts +0 -7
- package/src/lib/shapes/shared/usePrefersReducedMotion.tsx +11 -1
- package/src/lib/shapes/text/PlainTextArea.tsx +3 -3
- package/src/lib/shapes/text/RichTextArea.tsx +3 -4
- package/src/lib/shapes/text/TextShapeTool.test.ts +6 -5
- package/src/lib/shapes/text/TextShapeUtil.tsx +8 -14
- package/src/lib/shapes/video/VideoShapeUtil.tsx +3 -3
- package/src/lib/styles.tsx +3 -1
- 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/Crop/children/PointingCrop.ts +8 -1
- package/src/lib/tools/SelectTool/childStates/DraggingHandle.tsx +54 -30
- package/src/lib/tools/SelectTool/childStates/Idle.ts +2 -24
- package/src/lib/tools/SelectTool/childStates/PointingShape.ts +7 -0
- package/src/lib/tools/SelectTool/childStates/Resizing.ts +12 -1
- package/src/lib/tools/SelectTool/childStates/Rotating.ts +11 -0
- package/src/lib/tools/SelectTool/childStates/Translating.ts +11 -1
- package/src/lib/tools/selection-logic/getHitShapeOnCanvasPointerDown.ts +1 -0
- package/src/lib/ui/TldrawUi.tsx +33 -12
- package/src/lib/ui/components/A11y.tsx +17 -15
- package/src/lib/ui/components/AccessibilityMenu.tsx +20 -0
- package/src/lib/ui/components/ActionsMenu/DefaultActionsMenu.tsx +15 -3
- package/src/lib/ui/components/{FollowingIndicator.tsx → DefaultFollowingIndicator.tsx} +2 -1
- package/src/lib/ui/components/DefaultMenuPanel.tsx +4 -3
- package/src/lib/ui/components/EditLinkDialog.tsx +16 -6
- package/src/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialogContent.tsx +46 -6
- package/src/lib/ui/components/MainMenu/DefaultMainMenuContent.tsx +4 -2
- package/src/lib/ui/components/Minimap/MinimapManager.ts +4 -4
- package/src/lib/ui/components/MobileStylePanel.tsx +9 -6
- package/src/lib/ui/components/NavigationPanel/DefaultNavigationPanel.tsx +4 -5
- package/src/lib/ui/components/PageMenu/DefaultPageMenu.tsx +5 -4
- package/src/lib/ui/components/SharePanel/PeopleMenuItem.tsx +4 -3
- package/src/lib/ui/components/SharePanel/UserPresenceColorPicker.tsx +3 -3
- package/src/lib/ui/components/Spinner.tsx +2 -24
- package/src/lib/ui/components/StylePanel/DefaultStylePanel.tsx +28 -12
- package/src/lib/ui/components/StylePanel/DefaultStylePanelContent.tsx +261 -342
- package/src/lib/ui/components/{primitives/TldrawUiButtonPicker.tsx → StylePanel/StylePanelButtonPicker.tsx} +66 -48
- package/src/lib/ui/components/StylePanel/StylePanelContext.tsx +63 -0
- package/src/lib/ui/components/StylePanel/{DoubleDropdownPicker.tsx → StylePanelDoubleDropdownPicker.tsx} +31 -22
- 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 +5 -4
- package/src/lib/ui/components/Toolbar/DefaultImageToolbar.tsx +25 -9
- package/src/lib/ui/components/Toolbar/DefaultImageToolbarContent.tsx +33 -16
- package/src/lib/ui/components/Toolbar/DefaultToolbar.tsx +55 -23
- 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 +212 -61
- package/src/lib/ui/components/Toolbar/ToggleToolLockedButton.tsx +17 -12
- package/src/lib/ui/components/menu-items.tsx +25 -0
- package/src/lib/ui/components/primitives/Button/TldrawUiButtonIcon.tsx +2 -2
- package/src/lib/ui/components/primitives/TldrawUiContextualToolbar.tsx +8 -3
- package/src/lib/ui/components/primitives/TldrawUiDialog.tsx +1 -1
- package/src/lib/ui/components/primitives/TldrawUiIcon.tsx +41 -3
- package/src/lib/ui/components/primitives/TldrawUiInput.tsx +3 -3
- package/src/lib/ui/components/primitives/TldrawUiPopover.tsx +4 -2
- package/src/lib/ui/components/primitives/TldrawUiSlider.tsx +54 -29
- package/src/lib/ui/components/primitives/TldrawUiToolbar.tsx +59 -12
- package/src/lib/ui/components/primitives/TldrawUiTooltip.tsx +365 -0
- package/src/lib/ui/components/primitives/layout.tsx +107 -0
- package/src/lib/ui/components/primitives/menus/TldrawUiMenuCheckboxItem.tsx +2 -2
- 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 +224 -23
- package/src/lib/ui/context/TldrawUiContextProvider.tsx +23 -20
- package/src/lib/ui/context/actions.tsx +81 -18
- package/src/lib/ui/context/components.tsx +3 -0
- package/src/lib/ui/context/events.tsx +7 -3
- package/src/lib/ui/hooks/menu-hooks.ts +1 -0
- package/src/lib/ui/hooks/useClipboardEvents.ts +2 -2
- package/src/lib/ui/hooks/useExportAs.ts +3 -2
- package/src/lib/ui/hooks/useKeyboardShortcuts.ts +3 -2
- package/src/lib/ui/hooks/useTools.tsx +142 -11
- package/src/lib/ui/hooks/useTranslation/TLUiTranslationKey.ts +13 -0
- package/src/lib/ui/hooks/useTranslation/defaultTranslation.ts +13 -0
- package/src/lib/ui/kbd-utils.ts +12 -4
- package/src/lib/ui/version.ts +3 -3
- package/src/lib/ui.css +432 -315
- package/src/lib/utils/excalidraw/__snapshots__/putExcalidrawContent.test.tsx.snap +21 -7
- package/src/lib/utils/excalidraw/putExcalidrawContent.ts +7 -7
- 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 +28 -7
- package/src/lib/utils/tldr/buildFromV1Document.ts +2 -1
- package/src/test/A11y.test.tsx +3 -2
- package/src/test/ClickManager.test.ts +7 -6
- package/src/test/Editor.test.tsx +56 -28
- 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 +40 -13
- package/src/test/TLUserPreferences.test.ts +4 -3
- package/src/test/TestEditor.ts +13 -15
- package/src/test/TldrawEditor.test.tsx +26 -19
- 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 +17 -10
- 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/deletePage.test.ts +84 -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/putContent.test.ts +1 -0
- 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/commands/updateShapes.test.ts +9 -5
- package/src/test/createDeepLink.test.tsx +2 -1
- package/src/test/cropping.test.ts +3 -2
- package/src/test/custom-clipping.test.ts +442 -0
- package/src/test/customSnapping.test.tsx +55 -41
- 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 +80 -4
- package/src/test/groups.test.tsx +6 -4
- package/src/test/handleDeepLink.test.tsx +2 -1
- package/src/test/inner-outer-margin.test.ts +315 -0
- package/src/test/maxShapes.test.ts +3 -2
- package/src/test/modifiers.test.ts +5 -4
- package/src/test/navigation.test.ts +264 -9
- 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 +398 -48
- package/src/test/translating.test.ts +12 -11
- package/tldraw.css +759 -630
- 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 -113
- package/dist-esm/lib/ui/components/primitives/TldrawUiButtonPicker.mjs.map +0 -7
- package/src/lib/ui/components/StylePanel/DropdownPicker.tsx +0 -109
package/src/lib/ui.css
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/* @tldraw/ui */
|
|
2
2
|
|
|
3
3
|
.tl-container {
|
|
4
|
-
--layer-above: 1;
|
|
5
|
-
--layer-focused-input: 10;
|
|
6
|
-
--layer-menu-click-capture: 250;
|
|
7
|
-
--layer-panels: 300;
|
|
8
|
-
--layer-menus: 400;
|
|
9
|
-
--layer-toasts: 650;
|
|
10
|
-
--layer-cursor: 700;
|
|
11
|
-
--layer-header-footer: 999;
|
|
12
|
-
--layer-following-indicator: 1000;
|
|
4
|
+
--tl-layer-above: 1;
|
|
5
|
+
--tl-layer-focused-input: 10;
|
|
6
|
+
--tl-layer-menu-click-capture: 250;
|
|
7
|
+
--tl-layer-panels: 300;
|
|
8
|
+
--tl-layer-menus: 400;
|
|
9
|
+
--tl-layer-toasts: 650;
|
|
10
|
+
--tl-layer-cursor: 700;
|
|
11
|
+
--tl-layer-header-footer: 999;
|
|
12
|
+
--tl-layer-following-indicator: 1000;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
/* Button */
|
|
@@ -33,23 +33,23 @@
|
|
|
33
33
|
text-rendering: optimizeLegibility;
|
|
34
34
|
font-size: 12px;
|
|
35
35
|
gap: 0px;
|
|
36
|
-
color: var(--color-text-1);
|
|
36
|
+
color: var(--tl-color-text-1);
|
|
37
37
|
z-index: 0;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
.tlui-button:disabled {
|
|
41
|
-
color: var(--color-text-3);
|
|
41
|
+
color: var(--tl-color-text-3);
|
|
42
42
|
text-shadow: none;
|
|
43
43
|
cursor: default;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
.tlui-button:disabled .tlui-kbd {
|
|
47
|
-
color: var(--color-text-3);
|
|
47
|
+
color: var(--tl-color-text-3);
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
.tlui-button > * {
|
|
51
51
|
position: relative;
|
|
52
|
-
z-index: var(--layer-above);
|
|
52
|
+
z-index: var(--tl-layer-above);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
.tlui-button__label {
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
*/
|
|
66
66
|
.tl-container__focused:not(.tl-container__no-focus-ring) .tlui-button:focus-visible {
|
|
67
67
|
border-radius: 10px;
|
|
68
|
-
outline: 2px solid var(--color-focus);
|
|
68
|
+
outline: 2px solid var(--tl-color-focus);
|
|
69
69
|
outline-offset: -5px;
|
|
70
70
|
}
|
|
71
71
|
.tl-container__focused:not(.tl-container__no-focus-ring) .tlui-button__tool:focus-visible {
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
}
|
|
74
74
|
.tlui-slider__container:has(.tlui-slider__thumb:focus-visible) {
|
|
75
75
|
border-radius: 10px;
|
|
76
|
-
outline: 2px solid var(--color-focus);
|
|
76
|
+
outline: 2px solid var(--tl-color-focus);
|
|
77
77
|
outline-offset: -5px;
|
|
78
78
|
}
|
|
79
79
|
|
|
@@ -82,8 +82,8 @@
|
|
|
82
82
|
content: '';
|
|
83
83
|
position: absolute;
|
|
84
84
|
inset: 4px;
|
|
85
|
-
border-radius: var(--radius-2);
|
|
86
|
-
background: var(--color-muted-2);
|
|
85
|
+
border-radius: var(--tl-radius-2);
|
|
86
|
+
background: var(--tl-color-muted-2);
|
|
87
87
|
opacity: 0;
|
|
88
88
|
}
|
|
89
89
|
|
|
@@ -93,18 +93,18 @@
|
|
|
93
93
|
|
|
94
94
|
.tlui-button[data-isactive='true']::after,
|
|
95
95
|
.tlui-button[data-isactive='true']:not(:disabled, :focus-visible):active:after {
|
|
96
|
-
background: var(--color-hint);
|
|
96
|
+
background: var(--tl-color-hint);
|
|
97
97
|
opacity: 1;
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
-
.tlui-button[aria-expanded='true'][data-direction='left']
|
|
101
|
-
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
100
|
+
.tlui-button[aria-expanded='true'][data-direction='left'] {
|
|
101
|
+
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
102
102
|
opacity: 1;
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
@media (hover: hover) {
|
|
106
106
|
.tlui-button[aria-expanded='true'][data-direction='left']:not(:hover)::after {
|
|
107
|
-
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
107
|
+
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
108
108
|
opacity: 1;
|
|
109
109
|
}
|
|
110
110
|
|
|
@@ -118,18 +118,18 @@
|
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
.tlui-button__icon + .tlui-button__label {
|
|
121
|
-
margin-left: var(--space-2);
|
|
121
|
+
margin-left: var(--tl-space-2);
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
/* Low button */
|
|
125
125
|
|
|
126
126
|
.tlui-button__low {
|
|
127
|
-
border-radius: var(--radius-3);
|
|
128
|
-
background-color: var(--color-low);
|
|
127
|
+
border-radius: var(--tl-radius-3);
|
|
128
|
+
background-color: var(--tl-color-low);
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
.tlui-button__low::after {
|
|
132
|
-
background-color: var(--color-muted-2);
|
|
132
|
+
background-color: var(--tl-color-muted-2);
|
|
133
133
|
opacity: 0;
|
|
134
134
|
}
|
|
135
135
|
|
|
@@ -142,31 +142,25 @@
|
|
|
142
142
|
/* Primary / danger buttons */
|
|
143
143
|
|
|
144
144
|
.tlui-button__primary {
|
|
145
|
-
color: var(--color-primary);
|
|
145
|
+
color: var(--tl-color-primary);
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
.tlui-button__danger {
|
|
149
|
-
color: var(--color-danger);
|
|
149
|
+
color: var(--tl-color-danger);
|
|
150
150
|
text-shadow: none;
|
|
151
151
|
}
|
|
152
152
|
|
|
153
153
|
@media (hover: hover) {
|
|
154
154
|
.tlui-button__primary:not(:disabled, :focus-visible):hover {
|
|
155
|
-
color: var(--color-primary);
|
|
155
|
+
color: var(--tl-color-primary);
|
|
156
156
|
}
|
|
157
157
|
|
|
158
158
|
.tlui-button__danger:not(:disabled, :focus-visible):hover {
|
|
159
|
-
color: var(--color-danger);
|
|
159
|
+
color: var(--tl-color-danger);
|
|
160
160
|
text-shadow: none;
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
-
/* Panel button */
|
|
165
|
-
|
|
166
|
-
.tlui-button__panel {
|
|
167
|
-
position: relative;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
164
|
/* Menu button */
|
|
171
165
|
|
|
172
166
|
.tlui-button__menu {
|
|
@@ -179,7 +173,7 @@
|
|
|
179
173
|
|
|
180
174
|
.tlui-button__menu::after {
|
|
181
175
|
inset: 4px;
|
|
182
|
-
border-radius: var(--radius-2);
|
|
176
|
+
border-radius: var(--tl-radius-2);
|
|
183
177
|
}
|
|
184
178
|
|
|
185
179
|
.tlui-button__menu > .tlui-icon + .tlui-button__label {
|
|
@@ -207,18 +201,26 @@
|
|
|
207
201
|
|
|
208
202
|
/* Tool lock button */
|
|
209
203
|
|
|
210
|
-
.tlui-toolbar__lock-button {
|
|
204
|
+
.tlui-main-toolbar__lock-button {
|
|
211
205
|
position: absolute;
|
|
212
|
-
top: 4px;
|
|
213
|
-
right: 0px;
|
|
214
206
|
pointer-events: all;
|
|
215
207
|
height: 40px;
|
|
216
208
|
width: 40px;
|
|
209
|
+
border-radius: var(--tl-radius-2);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
.tlui-main-toolbar--horizontal .tlui-main-toolbar__lock-button {
|
|
213
|
+
top: 4px;
|
|
214
|
+
right: 0px;
|
|
217
215
|
min-width: 0px;
|
|
218
|
-
border-radius: var(--radius-2);
|
|
219
216
|
}
|
|
220
217
|
|
|
221
|
-
.tlui-toolbar__lock-button
|
|
218
|
+
.tlui-main-toolbar--vertical .tlui-main-toolbar__lock-button {
|
|
219
|
+
bottom: 0px;
|
|
220
|
+
min-height: 0px;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
.tlui-main-toolbar__lock-button::after {
|
|
222
224
|
top: 4px;
|
|
223
225
|
left: 8px;
|
|
224
226
|
inset: 4px;
|
|
@@ -230,16 +232,6 @@
|
|
|
230
232
|
position: relative;
|
|
231
233
|
height: 48px;
|
|
232
234
|
width: 48px;
|
|
233
|
-
margin-left: -2px;
|
|
234
|
-
margin-right: -2px;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
.tlui-button__tool:nth-of-type(1) {
|
|
238
|
-
margin-left: 0px;
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
.tlui-button__tool:nth-last-of-type(1) {
|
|
242
|
-
margin-right: 0px;
|
|
243
235
|
}
|
|
244
236
|
|
|
245
237
|
.tlui-button__tool::after {
|
|
@@ -248,69 +240,64 @@
|
|
|
248
240
|
}
|
|
249
241
|
|
|
250
242
|
.tlui-button__tool[aria-pressed='true'] {
|
|
251
|
-
color: var(--color-selected-contrast);
|
|
243
|
+
color: var(--tl-color-selected-contrast);
|
|
252
244
|
}
|
|
253
245
|
|
|
254
246
|
.tlui-button__tool[aria-pressed='true']:not(:disabled, :focus-visible):active {
|
|
255
|
-
color: var(--color-selected-contrast);
|
|
247
|
+
color: var(--tl-color-selected-contrast);
|
|
256
248
|
}
|
|
257
249
|
|
|
258
250
|
.tlui-button__tool[aria-pressed='true']:not(:disabled)::after {
|
|
259
|
-
background: var(--color-selected);
|
|
251
|
+
background: var(--tl-color-selected);
|
|
260
252
|
opacity: 1;
|
|
261
253
|
}
|
|
262
254
|
|
|
263
|
-
.tlui-layout__mobile .tlui-button__tool {
|
|
255
|
+
.tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-button__tool {
|
|
264
256
|
height: 48px;
|
|
265
257
|
width: 43px;
|
|
266
258
|
}
|
|
267
259
|
|
|
268
|
-
.tlui-layout__mobile .tlui-button__tool > .tlui-icon {
|
|
260
|
+
.tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-button__tool > .tlui-icon {
|
|
269
261
|
height: 16px;
|
|
270
262
|
width: 16px;
|
|
271
263
|
}
|
|
272
264
|
|
|
273
|
-
/*
|
|
265
|
+
/* Row layout */
|
|
274
266
|
|
|
275
|
-
.tlui-
|
|
267
|
+
.tlui-row {
|
|
276
268
|
display: flex;
|
|
277
269
|
flex-direction: row;
|
|
270
|
+
padding: 0 2px;
|
|
278
271
|
}
|
|
279
|
-
.tlui-
|
|
272
|
+
.tlui-row > * {
|
|
280
273
|
margin-left: -2px;
|
|
281
274
|
margin-right: -2px;
|
|
282
275
|
}
|
|
283
|
-
|
|
284
|
-
|
|
276
|
+
|
|
277
|
+
/* Column layout */
|
|
278
|
+
|
|
279
|
+
.tlui-column {
|
|
280
|
+
display: flex;
|
|
281
|
+
flex-direction: column;
|
|
282
|
+
padding: 2px 0;
|
|
285
283
|
}
|
|
286
|
-
.tlui-
|
|
287
|
-
margin-
|
|
284
|
+
.tlui-column > * {
|
|
285
|
+
margin-top: -2px;
|
|
286
|
+
margin-bottom: -2px;
|
|
288
287
|
}
|
|
289
288
|
|
|
290
|
-
/*
|
|
289
|
+
/* Grid layout */
|
|
291
290
|
|
|
292
|
-
.tlui-
|
|
291
|
+
.tlui-grid {
|
|
293
292
|
display: grid;
|
|
294
|
-
grid-template-columns: repeat(4,
|
|
293
|
+
grid-template-columns: repeat(4, 1fr);
|
|
295
294
|
grid-auto-flow: row;
|
|
296
295
|
overflow: hidden;
|
|
296
|
+
padding: 2px;
|
|
297
297
|
}
|
|
298
|
-
.tlui-
|
|
298
|
+
.tlui-grid > * {
|
|
299
299
|
margin: -2px;
|
|
300
300
|
}
|
|
301
|
-
.tlui-buttons__grid > .tlui-button:nth-of-type(4n),
|
|
302
|
-
.tlui-buttons__vertical-align > .tlui-button:nth-of-type(3n) {
|
|
303
|
-
margin-right: 0px;
|
|
304
|
-
}
|
|
305
|
-
.tlui-buttons__grid > .tlui-button:nth-of-type(4n - 3) {
|
|
306
|
-
margin-left: 0px;
|
|
307
|
-
}
|
|
308
|
-
.tlui-buttons__grid > .tlui-button:nth-of-type(-n + 4) {
|
|
309
|
-
margin-top: 0px;
|
|
310
|
-
}
|
|
311
|
-
.tlui-buttons__grid > .tlui-button:nth-last-of-type(-n + 4) {
|
|
312
|
-
margin-bottom: 0px;
|
|
313
|
-
}
|
|
314
301
|
|
|
315
302
|
/* Zoom button */
|
|
316
303
|
|
|
@@ -334,9 +321,9 @@
|
|
|
334
321
|
pointer-events: none;
|
|
335
322
|
user-select: none;
|
|
336
323
|
contain: strict;
|
|
337
|
-
z-index: var(--layer-panels);
|
|
324
|
+
z-index: var(--tl-layer-panels);
|
|
338
325
|
transform: translate3d(0, 0, 0);
|
|
339
|
-
--sab: env(safe-area-inset-bottom);
|
|
326
|
+
--tl-sab: env(safe-area-inset-bottom);
|
|
340
327
|
font-weight: 500;
|
|
341
328
|
line-height: 1.6;
|
|
342
329
|
-webkit-font-smoothing: antialiased;
|
|
@@ -389,11 +376,11 @@
|
|
|
389
376
|
justify-content: flex-start;
|
|
390
377
|
align-items: flex-start;
|
|
391
378
|
width: min-content;
|
|
392
|
-
gap: var(--space-3);
|
|
393
|
-
margin: var(--space-2) var(--space-3);
|
|
379
|
+
gap: var(--tl-space-3);
|
|
380
|
+
margin: var(--tl-space-2) var(--tl-space-3);
|
|
394
381
|
white-space: nowrap;
|
|
395
382
|
pointer-events: none;
|
|
396
|
-
z-index: var(--layer-panels);
|
|
383
|
+
z-index: var(--tl-layer-panels);
|
|
397
384
|
}
|
|
398
385
|
|
|
399
386
|
/* ---------------------- Icon ---------------------- */
|
|
@@ -421,7 +408,7 @@
|
|
|
421
408
|
|
|
422
409
|
.tlui-slider__container {
|
|
423
410
|
width: 100%;
|
|
424
|
-
padding: 0px var(--space-4);
|
|
411
|
+
padding: 0px var(--tl-space-4);
|
|
425
412
|
}
|
|
426
413
|
|
|
427
414
|
.tlui-slider {
|
|
@@ -447,7 +434,7 @@
|
|
|
447
434
|
content: '';
|
|
448
435
|
height: 3px;
|
|
449
436
|
width: 100%;
|
|
450
|
-
background-color: var(--color-muted-1);
|
|
437
|
+
background-color: var(--tl-color-muted-1);
|
|
451
438
|
border-radius: 14px;
|
|
452
439
|
}
|
|
453
440
|
|
|
@@ -456,7 +443,7 @@
|
|
|
456
443
|
top: calc(50% - 2px);
|
|
457
444
|
left: 0px;
|
|
458
445
|
height: 3px;
|
|
459
|
-
background-color: var(--color-selected);
|
|
446
|
+
background-color: var(--tl-color-selected);
|
|
460
447
|
border-radius: 14px;
|
|
461
448
|
}
|
|
462
449
|
|
|
@@ -468,16 +455,16 @@
|
|
|
468
455
|
height: 18px;
|
|
469
456
|
position: relative;
|
|
470
457
|
top: -1px;
|
|
471
|
-
background-color: var(--color-panel);
|
|
458
|
+
background-color: var(--tl-color-panel);
|
|
472
459
|
border-radius: 999px;
|
|
473
|
-
box-shadow: inset 0px 0px 0px 2px var(--color-text-1);
|
|
460
|
+
box-shadow: inset 0px 0px 0px 2px var(--tl-color-text-1);
|
|
474
461
|
}
|
|
475
462
|
|
|
476
463
|
.tlui-slider__thumb:active {
|
|
477
464
|
cursor: grabbing;
|
|
478
465
|
box-shadow:
|
|
479
|
-
inset 0px 0px 0px 2px var(--color-text-1),
|
|
480
|
-
var(--shadow-1);
|
|
466
|
+
inset 0px 0px 0px 2px var(--tl-color-text-1),
|
|
467
|
+
var(--tl-shadow-1);
|
|
481
468
|
}
|
|
482
469
|
|
|
483
470
|
/* ---------------------- Input --------------------- */
|
|
@@ -486,7 +473,7 @@
|
|
|
486
473
|
background: none;
|
|
487
474
|
margin: 0px;
|
|
488
475
|
position: relative;
|
|
489
|
-
z-index: var(--layer-above);
|
|
476
|
+
z-index: var(--tl-layer-above);
|
|
490
477
|
height: 40px;
|
|
491
478
|
max-height: 40px;
|
|
492
479
|
display: flex;
|
|
@@ -495,8 +482,8 @@
|
|
|
495
482
|
font-family: inherit;
|
|
496
483
|
font-size: 12px;
|
|
497
484
|
font-weight: inherit;
|
|
498
|
-
color: var(--color-text-1);
|
|
499
|
-
padding: var(--space-4);
|
|
485
|
+
color: var(--tl-color-text-1);
|
|
486
|
+
padding: var(--tl-space-4);
|
|
500
487
|
padding-left: 0px;
|
|
501
488
|
border: none;
|
|
502
489
|
outline: none;
|
|
@@ -512,8 +499,8 @@
|
|
|
512
499
|
height: 44px;
|
|
513
500
|
display: flex;
|
|
514
501
|
align-items: center;
|
|
515
|
-
gap: var(--space-4);
|
|
516
|
-
color: var(--color-text);
|
|
502
|
+
gap: var(--tl-space-4);
|
|
503
|
+
color: var(--tl-color-text);
|
|
517
504
|
}
|
|
518
505
|
|
|
519
506
|
.tlui-input__wrapper > .tlui-icon {
|
|
@@ -545,7 +532,7 @@
|
|
|
545
532
|
grid-auto-columns: minmax(1em, auto);
|
|
546
533
|
align-self: bottom;
|
|
547
534
|
color: currentColor;
|
|
548
|
-
margin-left: var(--space-4);
|
|
535
|
+
margin-left: var(--tl-space-4);
|
|
549
536
|
}
|
|
550
537
|
|
|
551
538
|
.tlui-kbd > span {
|
|
@@ -562,13 +549,13 @@
|
|
|
562
549
|
}
|
|
563
550
|
|
|
564
551
|
.tlui-kbd:not(:last-child) {
|
|
565
|
-
margin-right: var(--space-2);
|
|
552
|
+
margin-right: var(--tl-space-2);
|
|
566
553
|
}
|
|
567
554
|
|
|
568
555
|
/* Focus Mode Button */
|
|
569
556
|
|
|
570
557
|
.tlui-focus-button {
|
|
571
|
-
z-index: var(--layer-panels);
|
|
558
|
+
z-index: var(--tl-layer-panels);
|
|
572
559
|
pointer-events: all;
|
|
573
560
|
}
|
|
574
561
|
|
|
@@ -579,16 +566,16 @@
|
|
|
579
566
|
}
|
|
580
567
|
|
|
581
568
|
.tlui-menu {
|
|
582
|
-
z-index: var(--layer-menus);
|
|
569
|
+
z-index: var(--tl-layer-menus);
|
|
583
570
|
height: fit-content;
|
|
584
571
|
width: fit-content;
|
|
585
|
-
border-radius: var(--radius-3);
|
|
572
|
+
border-radius: var(--tl-radius-3);
|
|
586
573
|
pointer-events: all;
|
|
587
574
|
touch-action: auto;
|
|
588
575
|
overflow-y: auto;
|
|
589
576
|
overscroll-behavior: none;
|
|
590
|
-
background-color: var(--color-panel);
|
|
591
|
-
box-shadow: var(--shadow-3);
|
|
577
|
+
background-color: var(--tl-color-panel);
|
|
578
|
+
box-shadow: var(--tl-shadow-3);
|
|
592
579
|
}
|
|
593
580
|
|
|
594
581
|
.tlui-menu::-webkit-scrollbar {
|
|
@@ -606,7 +593,7 @@
|
|
|
606
593
|
}
|
|
607
594
|
|
|
608
595
|
.tlui-menu__group {
|
|
609
|
-
border-bottom: 1px solid var(--color-divider);
|
|
596
|
+
border-bottom: 1px solid var(--tl-color-divider);
|
|
610
597
|
}
|
|
611
598
|
.tlui-menu__group:nth-last-of-type(1) {
|
|
612
599
|
border-bottom: none;
|
|
@@ -616,23 +603,23 @@
|
|
|
616
603
|
|
|
617
604
|
.tlui-menu__submenu__trigger[data-state='open']::after {
|
|
618
605
|
opacity: 1;
|
|
619
|
-
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
606
|
+
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
620
607
|
}
|
|
621
608
|
|
|
622
609
|
.tlui-menu__submenu__trigger[data-direction='left'][data-state='open']::after {
|
|
623
610
|
opacity: 1;
|
|
624
|
-
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
611
|
+
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
625
612
|
}
|
|
626
613
|
|
|
627
614
|
@media (hover: hover) {
|
|
628
615
|
.tlui-menu__submenu__trigger[data-state='open']:not(:hover)::after {
|
|
629
616
|
opacity: 1;
|
|
630
|
-
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
617
|
+
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
631
618
|
}
|
|
632
619
|
|
|
633
620
|
.tlui-menu__submenu__trigger[data-direction='left'][data-state='open']:not(:hover)::after {
|
|
634
621
|
opacity: 1;
|
|
635
|
-
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
622
|
+
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
636
623
|
}
|
|
637
624
|
}
|
|
638
625
|
|
|
@@ -657,7 +644,7 @@
|
|
|
657
644
|
.tlui-menu-click-capture {
|
|
658
645
|
position: fixed;
|
|
659
646
|
inset: 0;
|
|
660
|
-
z-index: var(--layer-menu-click-capture);
|
|
647
|
+
z-index: var(--tl-layer-menu-click-capture);
|
|
661
648
|
}
|
|
662
649
|
|
|
663
650
|
/* --------------------- Popover -------------------- */
|
|
@@ -673,10 +660,10 @@
|
|
|
673
660
|
max-height: calc(var(--radix-popover-content-available-height) - 8px);
|
|
674
661
|
margin: 0px;
|
|
675
662
|
border: none;
|
|
676
|
-
border-radius: var(--radius-3);
|
|
677
|
-
background-color: var(--color-panel);
|
|
678
|
-
box-shadow: var(--shadow-3);
|
|
679
|
-
z-index: var(--layer-menus);
|
|
663
|
+
border-radius: var(--tl-radius-3);
|
|
664
|
+
background-color: var(--tl-color-panel);
|
|
665
|
+
box-shadow: var(--tl-shadow-3);
|
|
666
|
+
z-index: var(--tl-layer-menus);
|
|
680
667
|
overflow: hidden;
|
|
681
668
|
overflow-y: auto;
|
|
682
669
|
touch-action: auto;
|
|
@@ -689,22 +676,22 @@
|
|
|
689
676
|
|
|
690
677
|
.tlui-menu-zone {
|
|
691
678
|
position: relative;
|
|
692
|
-
z-index: var(--layer-panels);
|
|
679
|
+
z-index: var(--tl-layer-panels);
|
|
693
680
|
width: fit-content;
|
|
694
|
-
border-right: 2px solid var(--color-background);
|
|
695
|
-
border-bottom: 2px solid var(--color-background);
|
|
696
|
-
border-bottom-right-radius: var(--radius-4);
|
|
697
|
-
background-color: var(--color-low);
|
|
681
|
+
border-right: 2px solid var(--tl-color-background);
|
|
682
|
+
border-bottom: 2px solid var(--tl-color-background);
|
|
683
|
+
border-bottom-right-radius: var(--tl-radius-4);
|
|
684
|
+
background-color: var(--tl-color-low);
|
|
698
685
|
}
|
|
699
686
|
|
|
700
687
|
.tlui-menu-zone *[data-state='open']::after {
|
|
701
|
-
background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
688
|
+
background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
702
689
|
opacity: 1;
|
|
703
690
|
}
|
|
704
691
|
|
|
705
692
|
@media (hover: hover) {
|
|
706
693
|
.tlui-menu-zone *[data-state='open']:not(:hover)::after {
|
|
707
|
-
background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
694
|
+
background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
708
695
|
opacity: 1;
|
|
709
696
|
}
|
|
710
697
|
}
|
|
@@ -730,8 +717,8 @@
|
|
|
730
717
|
align-items: center;
|
|
731
718
|
width: 100%;
|
|
732
719
|
height: 40px;
|
|
733
|
-
padding-left: var(--space-4);
|
|
734
|
-
border-bottom: 1px solid var(--color-divider);
|
|
720
|
+
padding-left: var(--tl-space-4);
|
|
721
|
+
border-bottom: 1px solid var(--tl-color-divider);
|
|
735
722
|
}
|
|
736
723
|
|
|
737
724
|
.tlui-page-menu__header > .tlui-button:nth-of-type(1) {
|
|
@@ -739,7 +726,7 @@
|
|
|
739
726
|
}
|
|
740
727
|
|
|
741
728
|
.tlui-page-menu__header__title {
|
|
742
|
-
color: var(--color-text);
|
|
729
|
+
color: var(--tl-color-text);
|
|
743
730
|
font-size: 12px;
|
|
744
731
|
flex-grow: 2;
|
|
745
732
|
}
|
|
@@ -824,7 +811,7 @@
|
|
|
824
811
|
display: inline-flex;
|
|
825
812
|
align-items: center;
|
|
826
813
|
justify-content: center;
|
|
827
|
-
color: var(--color-text);
|
|
814
|
+
color: var(--tl-color-text);
|
|
828
815
|
}
|
|
829
816
|
|
|
830
817
|
.tlui-page_menu__item__sortable {
|
|
@@ -837,7 +824,7 @@
|
|
|
837
824
|
flex-direction: row;
|
|
838
825
|
align-items: center;
|
|
839
826
|
overflow: hidden;
|
|
840
|
-
z-index: var(--layer-above);
|
|
827
|
+
z-index: var(--tl-layer-above);
|
|
841
828
|
}
|
|
842
829
|
|
|
843
830
|
.tlui-page_menu__item__sortable__title {
|
|
@@ -849,7 +836,7 @@
|
|
|
849
836
|
}
|
|
850
837
|
|
|
851
838
|
.tlui-page_menu__item__sortable:focus-visible {
|
|
852
|
-
z-index: var(--layer-focused-input);
|
|
839
|
+
z-index: var(--tl-layer-focused-input);
|
|
853
840
|
}
|
|
854
841
|
|
|
855
842
|
.tlui-page_menu__item__sortable__handle {
|
|
@@ -858,7 +845,7 @@
|
|
|
858
845
|
min-width: 0px;
|
|
859
846
|
height: 40px;
|
|
860
847
|
cursor: grab;
|
|
861
|
-
color: var(--color-text-3);
|
|
848
|
+
color: var(--tl-color-text-3);
|
|
862
849
|
flex-shrink: 0;
|
|
863
850
|
margin-right: -9px;
|
|
864
851
|
}
|
|
@@ -900,13 +887,13 @@
|
|
|
900
887
|
}
|
|
901
888
|
|
|
902
889
|
.tlui-page_menu__item__submenu > .tlui-button[data-state='open']::after {
|
|
903
|
-
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
890
|
+
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
904
891
|
opacity: 1;
|
|
905
892
|
}
|
|
906
893
|
|
|
907
894
|
@media (hover: hover) {
|
|
908
895
|
.tlui-page_menu__item__submenu > .tlui-button[data-state='open']:not(:hover)::after {
|
|
909
|
-
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
896
|
+
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
910
897
|
opacity: 1;
|
|
911
898
|
}
|
|
912
899
|
}
|
|
@@ -942,7 +929,7 @@
|
|
|
942
929
|
top: 48px;
|
|
943
930
|
left: -9999px;
|
|
944
931
|
padding: 8px 16px;
|
|
945
|
-
z-index: var(--layer-toasts);
|
|
932
|
+
z-index: var(--tl-layer-toasts);
|
|
946
933
|
}
|
|
947
934
|
|
|
948
935
|
.tl-skip-to-main-content:focus {
|
|
@@ -954,17 +941,17 @@
|
|
|
954
941
|
.tlui-offline-indicator {
|
|
955
942
|
display: flex;
|
|
956
943
|
flex-direction: row;
|
|
957
|
-
gap: var(--space-3);
|
|
958
|
-
color: var(--color-text);
|
|
959
|
-
background-color: var(--color-low);
|
|
960
|
-
border: 3px solid var(--color-background);
|
|
961
|
-
padding: 0px var(--space-5);
|
|
944
|
+
gap: var(--tl-space-3);
|
|
945
|
+
color: var(--tl-color-text);
|
|
946
|
+
background-color: var(--tl-color-low);
|
|
947
|
+
border: 3px solid var(--tl-color-background);
|
|
948
|
+
padding: 0px var(--tl-space-5);
|
|
962
949
|
height: 42px;
|
|
963
950
|
align-items: center;
|
|
964
951
|
justify-content: center;
|
|
965
952
|
border-radius: 99px;
|
|
966
953
|
opacity: 0;
|
|
967
|
-
animation: fade-in;
|
|
954
|
+
animation: tl-fade-in;
|
|
968
955
|
animation-duration: 0.12s;
|
|
969
956
|
animation-delay: 2s;
|
|
970
957
|
animation-fill-mode: forwards;
|
|
@@ -973,10 +960,10 @@
|
|
|
973
960
|
/* ------------------- Style panel ------------------ */
|
|
974
961
|
|
|
975
962
|
.tlui-style-panel__wrapper {
|
|
976
|
-
box-shadow: var(--shadow-2);
|
|
977
|
-
border-radius: var(--radius-3);
|
|
963
|
+
box-shadow: var(--tl-shadow-2);
|
|
964
|
+
border-radius: var(--tl-radius-3);
|
|
978
965
|
pointer-events: all;
|
|
979
|
-
background-color: var(--color-panel);
|
|
966
|
+
background-color: var(--tl-color-panel);
|
|
980
967
|
height: fit-content;
|
|
981
968
|
max-height: 100%;
|
|
982
969
|
margin: 8px;
|
|
@@ -985,7 +972,7 @@
|
|
|
985
972
|
overscroll-behavior: none;
|
|
986
973
|
overflow-y: auto;
|
|
987
974
|
overflow-x: hidden;
|
|
988
|
-
color: var(--color-text);
|
|
975
|
+
color: var(--tl-color-text);
|
|
989
976
|
}
|
|
990
977
|
/* if the style panel is the only child (ie no share menu), increase the margin */
|
|
991
978
|
.tlui-style-panel__wrapper:only-child {
|
|
@@ -994,12 +981,18 @@
|
|
|
994
981
|
|
|
995
982
|
.tlui-style-panel {
|
|
996
983
|
position: relative;
|
|
997
|
-
z-index: var(--layer-panels);
|
|
984
|
+
z-index: var(--tl-layer-panels);
|
|
998
985
|
pointer-events: all;
|
|
999
986
|
width: 148px;
|
|
1000
987
|
max-width: 148px;
|
|
1001
988
|
}
|
|
1002
989
|
|
|
990
|
+
.tlui-style-panel[data-show-ui-labels='true'] .tlui-button[data-isactive='true'] {
|
|
991
|
+
border-radius: 10px;
|
|
992
|
+
outline: 2px solid var(--tl-color-text);
|
|
993
|
+
outline-offset: -5px;
|
|
994
|
+
}
|
|
995
|
+
|
|
1003
996
|
.tlui-style-panel::-webkit-scrollbar {
|
|
1004
997
|
display: none;
|
|
1005
998
|
}
|
|
@@ -1014,8 +1007,22 @@
|
|
|
1014
1007
|
flex-direction: column;
|
|
1015
1008
|
}
|
|
1016
1009
|
|
|
1017
|
-
|
|
1018
|
-
|
|
1010
|
+
/*
|
|
1011
|
+
add a border to the bottom of all but the last section. we have to handle empty sections too, which
|
|
1012
|
+
are hidden and shouldn't be counted
|
|
1013
|
+
*/
|
|
1014
|
+
.tlui-style-panel__section:not(:nth-last-child(-n + 1 of .tlui-style-panel__section:not(:empty))) {
|
|
1015
|
+
border-bottom: 1px solid var(--tl-color-divider);
|
|
1016
|
+
}
|
|
1017
|
+
/*
|
|
1018
|
+
if a section ends with a slider and we're adding a border, we need some extra space for visual
|
|
1019
|
+
balance. we need to handle empty sections as above. is this the most complex css selector in all of
|
|
1020
|
+
tldraw? probably.
|
|
1021
|
+
*/
|
|
1022
|
+
.tlui-style-panel__section:has(.tlui-slider__container:last-child):not(
|
|
1023
|
+
:nth-last-child(-n + 1 of .tlui-style-panel__section:not(:empty))
|
|
1024
|
+
) {
|
|
1025
|
+
margin-bottom: 7px;
|
|
1019
1026
|
}
|
|
1020
1027
|
|
|
1021
1028
|
.tlui-style-panel__section:empty {
|
|
@@ -1024,23 +1031,19 @@
|
|
|
1024
1031
|
|
|
1025
1032
|
.tlui-style-panel__section__common:not(:only-child) {
|
|
1026
1033
|
margin-bottom: 7px;
|
|
1027
|
-
border-bottom: 1px solid var(--color-divider);
|
|
1034
|
+
border-bottom: 1px solid var(--tl-color-divider);
|
|
1028
1035
|
}
|
|
1029
1036
|
|
|
1030
|
-
.tlui-style-
|
|
1031
|
-
|
|
1032
|
-
}
|
|
1033
|
-
/* Only really used for the alignment picker */
|
|
1034
|
-
.tlui-style-panel__row__extra-button {
|
|
1035
|
-
margin-left: -2px;
|
|
1037
|
+
.tlui-style-panel__dropdown-picker:only-child {
|
|
1038
|
+
flex: 1;
|
|
1036
1039
|
}
|
|
1037
1040
|
|
|
1038
1041
|
.tlui-style-panel__double-select-picker {
|
|
1039
1042
|
display: flex;
|
|
1040
1043
|
grid-template-columns: 1fr auto;
|
|
1041
1044
|
align-items: center;
|
|
1042
|
-
padding-left: var(--space-4);
|
|
1043
|
-
color: var(--color-text-1);
|
|
1045
|
+
padding-left: var(--tl-space-4);
|
|
1046
|
+
color: var(--tl-color-text-1);
|
|
1044
1047
|
font-size: 12px;
|
|
1045
1048
|
}
|
|
1046
1049
|
|
|
@@ -1054,25 +1057,48 @@
|
|
|
1054
1057
|
|
|
1055
1058
|
.tlui-style-panel .tlui-button[data-state='open']::after {
|
|
1056
1059
|
opacity: 1;
|
|
1057
|
-
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
1060
|
+
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
1058
1061
|
}
|
|
1059
1062
|
|
|
1060
1063
|
@media (hover: hover) {
|
|
1064
|
+
.tlui-style-panel .tlui-button[aria-expanded='true'] {
|
|
1065
|
+
background: none;
|
|
1066
|
+
}
|
|
1061
1067
|
.tlui-style-panel .tlui-button[data-state='open']:not(:hover)::after {
|
|
1062
1068
|
opacity: 1;
|
|
1063
|
-
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
1069
|
+
background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
1064
1070
|
}
|
|
1065
1071
|
}
|
|
1066
1072
|
|
|
1073
|
+
/* Accessibility subheadings */
|
|
1074
|
+
|
|
1075
|
+
.tlui-style-panel__section .tlui-style-panel__subheading,
|
|
1076
|
+
.tlui-style-panel__section__common .tlui-style-panel__subheading,
|
|
1077
|
+
.tlui-style-panel__subheading + .tlui-slider__container {
|
|
1078
|
+
margin: 0;
|
|
1079
|
+
padding: var(--tl-space-2) var(--tl-space-3) 0px var(--tl-space-4);
|
|
1080
|
+
font-size: 12px;
|
|
1081
|
+
font-weight: inherit;
|
|
1082
|
+
line-height: inherit;
|
|
1083
|
+
}
|
|
1084
|
+
|
|
1085
|
+
.tlui-style-panel .tlui-style-panel__subheading:nth-of-type(1) {
|
|
1086
|
+
padding-top: var(--tl-space-3);
|
|
1087
|
+
}
|
|
1088
|
+
|
|
1089
|
+
.tlui-style-panel__subheading + .tlui-slider__container {
|
|
1090
|
+
padding-top: 0px;
|
|
1091
|
+
}
|
|
1092
|
+
|
|
1067
1093
|
/* --------------------- Bottom --------------------- */
|
|
1068
1094
|
|
|
1069
1095
|
.tlui-layout__bottom {
|
|
1070
1096
|
grid-row: 2;
|
|
1097
|
+
width: 100%;
|
|
1071
1098
|
}
|
|
1072
1099
|
|
|
1073
1100
|
.tlui-layout__bottom__main {
|
|
1074
1101
|
width: 100%;
|
|
1075
|
-
position: relative;
|
|
1076
1102
|
display: flex;
|
|
1077
1103
|
align-items: flex-end;
|
|
1078
1104
|
justify-content: center;
|
|
@@ -1084,11 +1110,10 @@
|
|
|
1084
1110
|
display: flex;
|
|
1085
1111
|
width: min-content;
|
|
1086
1112
|
flex-direction: column;
|
|
1087
|
-
z-index: var(--layer-panels);
|
|
1113
|
+
z-index: var(--tl-layer-panels);
|
|
1088
1114
|
pointer-events: all;
|
|
1089
1115
|
position: absolute;
|
|
1090
1116
|
left: 0px;
|
|
1091
|
-
bottom: 0px;
|
|
1092
1117
|
}
|
|
1093
1118
|
|
|
1094
1119
|
.tlui-navigation-panel::before {
|
|
@@ -1098,30 +1123,16 @@
|
|
|
1098
1123
|
z-index: -1;
|
|
1099
1124
|
inset: -2px -2px 0px 0px;
|
|
1100
1125
|
border-radius: 0;
|
|
1101
|
-
border-top: 2px solid var(--color-background);
|
|
1102
|
-
border-right: 2px solid var(--color-background);
|
|
1103
|
-
border-top-right-radius: var(--radius-4);
|
|
1104
|
-
background-color: var(--color-low);
|
|
1126
|
+
border-top: 2px solid var(--tl-color-background);
|
|
1127
|
+
border-right: 2px solid var(--tl-color-background);
|
|
1128
|
+
border-top-right-radius: var(--tl-radius-4);
|
|
1129
|
+
background-color: var(--tl-color-low);
|
|
1105
1130
|
}
|
|
1106
1131
|
|
|
1107
1132
|
.tlui-navigation-panel[data-a11y='true']::before {
|
|
1108
1133
|
display: none;
|
|
1109
1134
|
}
|
|
1110
1135
|
|
|
1111
|
-
.tlui-navigation-panel__toggle .tlui-icon {
|
|
1112
|
-
opacity: 0.24;
|
|
1113
|
-
}
|
|
1114
|
-
|
|
1115
|
-
.tlui-navigation-panel__toggle:active .tlui-icon {
|
|
1116
|
-
opacity: 1;
|
|
1117
|
-
}
|
|
1118
|
-
|
|
1119
|
-
@media (hover: hover) {
|
|
1120
|
-
.tlui-navigation-panel__toggle:hover .tlui-icon {
|
|
1121
|
-
opacity: 1;
|
|
1122
|
-
}
|
|
1123
|
-
}
|
|
1124
|
-
|
|
1125
1136
|
/* Minimap */
|
|
1126
1137
|
|
|
1127
1138
|
.tlui-minimap {
|
|
@@ -1129,7 +1140,7 @@
|
|
|
1129
1140
|
height: 96px;
|
|
1130
1141
|
min-height: 96px;
|
|
1131
1142
|
overflow: hidden;
|
|
1132
|
-
padding: var(--space-3);
|
|
1143
|
+
padding: var(--tl-space-3);
|
|
1133
1144
|
padding-top: 0px;
|
|
1134
1145
|
}
|
|
1135
1146
|
|
|
@@ -1142,114 +1153,220 @@
|
|
|
1142
1153
|
/* --------------------- Toolbar -------------------- */
|
|
1143
1154
|
|
|
1144
1155
|
/* Wide container */
|
|
1145
|
-
.tlui-toolbar {
|
|
1156
|
+
.tlui-main-toolbar {
|
|
1146
1157
|
grid-column: 1 / span 3;
|
|
1147
1158
|
grid-row: 1;
|
|
1148
1159
|
display: flex;
|
|
1149
1160
|
align-items: center;
|
|
1150
1161
|
justify-content: center;
|
|
1151
1162
|
flex-grow: 2;
|
|
1152
|
-
|
|
1163
|
+
}
|
|
1164
|
+
|
|
1165
|
+
.tlui-main-toolbar--horizontal {
|
|
1166
|
+
padding-bottom: calc(var(--tl-space-3) + var(--tl-sab));
|
|
1167
|
+
max-width: 100%;
|
|
1168
|
+
}
|
|
1169
|
+
|
|
1170
|
+
.tlui-main-toolbar--vertical {
|
|
1171
|
+
position: absolute;
|
|
1172
|
+
left: 0;
|
|
1173
|
+
top: 90px; /* height of page menu + 'back to content' button */
|
|
1174
|
+
bottom: 140px; /* height of expanded mini-map */
|
|
1175
|
+
padding-left: calc(var(--tl-space-3) + var(--tl-sab));
|
|
1176
|
+
}
|
|
1177
|
+
|
|
1178
|
+
[data-breakpoints-below*='6'] .tlui-main-toolbar--vertical {
|
|
1179
|
+
bottom: 90px; /* collapsed mini-map, but same as top to keep things looking even */
|
|
1153
1180
|
}
|
|
1154
1181
|
|
|
1155
1182
|
/* Centered Content */
|
|
1156
|
-
.tlui-toolbar__inner {
|
|
1183
|
+
.tlui-main-toolbar__inner {
|
|
1157
1184
|
position: relative;
|
|
1158
1185
|
width: fit-content;
|
|
1159
1186
|
display: flex;
|
|
1160
|
-
gap: var(--space-3);
|
|
1161
|
-
align-items: flex-
|
|
1187
|
+
gap: var(--tl-space-3);
|
|
1188
|
+
align-items: flex-start;
|
|
1189
|
+
}
|
|
1190
|
+
|
|
1191
|
+
.tlui-main-toolbar--vertical .tlui-main-toolbar__inner {
|
|
1192
|
+
flex-direction: column;
|
|
1162
1193
|
}
|
|
1163
1194
|
|
|
1164
|
-
.tlui-toolbar__left {
|
|
1195
|
+
.tlui-main-toolbar--horizontal .tlui-main-toolbar__left {
|
|
1165
1196
|
width: fit-content;
|
|
1166
1197
|
}
|
|
1198
|
+
.tlui-main-toolbar--vertical .tlui-main-toolbar__left {
|
|
1199
|
+
display: flex;
|
|
1200
|
+
height: fit-content;
|
|
1201
|
+
}
|
|
1167
1202
|
|
|
1168
1203
|
/* Row of controls + lock button */
|
|
1169
|
-
.tlui-toolbar__extras {
|
|
1204
|
+
.tlui-main-toolbar__extras {
|
|
1170
1205
|
position: relative;
|
|
1171
|
-
z-index: var(--layer-above);
|
|
1172
|
-
width: 100%;
|
|
1206
|
+
z-index: var(--tl-layer-above);
|
|
1173
1207
|
pointer-events: none;
|
|
1174
|
-
|
|
1175
|
-
height: 48px;
|
|
1208
|
+
align-self: stretch;
|
|
1176
1209
|
}
|
|
1177
1210
|
|
|
1178
|
-
.tlui-toolbar__extras:empty {
|
|
1211
|
+
.tlui-main-toolbar__extras:empty {
|
|
1179
1212
|
display: none;
|
|
1180
1213
|
}
|
|
1181
1214
|
|
|
1182
|
-
.tlui-
|
|
1183
|
-
|
|
1215
|
+
.tlui-main-toolbar--horizontal .tlui-main-toolbar__extras {
|
|
1216
|
+
height: 48px;
|
|
1217
|
+
top: 6px;
|
|
1218
|
+
}
|
|
1219
|
+
|
|
1220
|
+
.tlui-main-toolbar--vertical .tlui-main-toolbar__extras {
|
|
1221
|
+
width: 48px;
|
|
1222
|
+
order: 1;
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1225
|
+
.tlui-main-toolbar__extras__controls {
|
|
1184
1226
|
position: relative;
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1227
|
+
z-index: var(--tl-layer-above);
|
|
1228
|
+
background-color: var(--tl-color-low);
|
|
1229
|
+
border: 2px solid var(--tl-color-background);
|
|
1230
|
+
pointer-events: all;
|
|
1231
|
+
}
|
|
1232
|
+
|
|
1233
|
+
.tlui-main-toolbar--horizontal .tlui-main-toolbar__extras__controls {
|
|
1234
|
+
border-top-left-radius: var(--tl-radius-4);
|
|
1235
|
+
border-top-right-radius: var(--tl-radius-4);
|
|
1191
1236
|
margin-left: 8px;
|
|
1192
1237
|
margin-right: 0px;
|
|
1193
|
-
pointer-events: all;
|
|
1194
1238
|
width: fit-content;
|
|
1195
1239
|
}
|
|
1196
1240
|
|
|
1197
|
-
.tlui-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1241
|
+
.tlui-main-toolbar--vertical .tlui-main-toolbar__extras__controls {
|
|
1242
|
+
border-top-right-radius: var(--tl-radius-4);
|
|
1243
|
+
border-bottom-right-radius: var(--tl-radius-4);
|
|
1244
|
+
margin-top: 8px;
|
|
1245
|
+
margin-left: -2px;
|
|
1246
|
+
margin-bottom: 0px;
|
|
1247
|
+
width: fit-content;
|
|
1248
|
+
}
|
|
1249
|
+
|
|
1250
|
+
.tlui-main-toolbar__tools {
|
|
1251
|
+
border-radius: var(--tl-radius-4);
|
|
1252
|
+
z-index: var(--tl-layer-panels);
|
|
1203
1253
|
pointer-events: all;
|
|
1204
1254
|
position: relative;
|
|
1205
|
-
background: var(--color-panel);
|
|
1206
|
-
box-shadow: var(--shadow-2);
|
|
1255
|
+
background: var(--tl-color-panel);
|
|
1256
|
+
box-shadow: var(--tl-shadow-2);
|
|
1207
1257
|
}
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1258
|
+
|
|
1259
|
+
.tlui-main-toolbar--horizontal .tlui-main-toolbar__mobile-style-panel {
|
|
1260
|
+
align-self: flex-end;
|
|
1261
|
+
}
|
|
1262
|
+
.tlui-main-toolbar--vertical .tlui-main-toolbar__mobile-style-panel {
|
|
1263
|
+
align-self: flex-start;
|
|
1212
1264
|
}
|
|
1213
1265
|
|
|
1214
|
-
.tlui-toolbar__overflow {
|
|
1266
|
+
.tlui-main-toolbar--horizontal .tlui-main-toolbar__overflow {
|
|
1215
1267
|
width: 40px;
|
|
1268
|
+
margin-left: 2px;
|
|
1269
|
+
}
|
|
1270
|
+
.tlui-main-toolbar--vertical .tlui-main-toolbar__overflow {
|
|
1271
|
+
height: 40px;
|
|
1272
|
+
margin-top: 2px;
|
|
1216
1273
|
}
|
|
1217
1274
|
|
|
1218
|
-
.tlui-layout__mobile .tlui-toolbar__overflow {
|
|
1275
|
+
.tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-main-toolbar__overflow {
|
|
1219
1276
|
width: 32px;
|
|
1220
1277
|
padding: 0px;
|
|
1221
1278
|
}
|
|
1222
1279
|
|
|
1223
|
-
.tlui-toolbar *[data-state='open']::after {
|
|
1224
|
-
background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
1280
|
+
.tlui-main-toolbar--horizontal *[data-state='open']::after {
|
|
1281
|
+
background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
1282
|
+
opacity: 1;
|
|
1283
|
+
}
|
|
1284
|
+
.tlui-main-toolbar--vertical *[data-state='open']::after {
|
|
1285
|
+
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
1225
1286
|
opacity: 1;
|
|
1226
1287
|
}
|
|
1227
1288
|
|
|
1289
|
+
.tlui-main-toolbar__overflow-content {
|
|
1290
|
+
touch-action: none;
|
|
1291
|
+
}
|
|
1292
|
+
|
|
1293
|
+
.tlui-main-toolbar__tools [data-toolbar-visible='false'],
|
|
1294
|
+
.tlui-main-toolbar__overflow-content [data-toolbar-visible='false'] {
|
|
1295
|
+
display: none;
|
|
1296
|
+
}
|
|
1297
|
+
|
|
1298
|
+
.tlui-main-toolbar__group:empty {
|
|
1299
|
+
display: none;
|
|
1300
|
+
}
|
|
1301
|
+
.tlui-row.tlui-main-toolbar__group:not(:nth-last-child(-n + 1 of [data-toolbar-visible='true'])) {
|
|
1302
|
+
border-right: 1px solid var(--color-divider);
|
|
1303
|
+
margin-right: 2px;
|
|
1304
|
+
}
|
|
1305
|
+
.tlui-column.tlui-main-toolbar__group:not(
|
|
1306
|
+
:nth-last-child(-n + 1 of [data-toolbar-visible='true'])
|
|
1307
|
+
) {
|
|
1308
|
+
border-bottom: 1px solid var(--color-divider);
|
|
1309
|
+
margin-bottom: 2px;
|
|
1310
|
+
}
|
|
1311
|
+
.tlui-grid.tlui-main-toolbar__group {
|
|
1312
|
+
grid-column: 1 / span 4;
|
|
1313
|
+
}
|
|
1314
|
+
.tlui-grid.tlui-main-toolbar__group:not(:nth-last-child(-n + 1 of [data-toolbar-visible='true'])) {
|
|
1315
|
+
border-bottom: 1px solid var(--color-divider);
|
|
1316
|
+
margin-bottom: 2px;
|
|
1317
|
+
}
|
|
1318
|
+
|
|
1228
1319
|
@media (hover: hover) {
|
|
1229
|
-
.tlui-toolbar *[data-state='open']:not(:hover)::after {
|
|
1230
|
-
background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
|
|
1320
|
+
.tlui-main-toolbar--horizontal *[data-state='open']:not(:hover)::after {
|
|
1321
|
+
background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
1322
|
+
opacity: 1;
|
|
1323
|
+
}
|
|
1324
|
+
.tlui-main-toolbar--vertical *[data-state='open']:not(:hover)::after {
|
|
1325
|
+
background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
|
|
1231
1326
|
opacity: 1;
|
|
1232
1327
|
}
|
|
1233
1328
|
}
|
|
1234
1329
|
|
|
1235
|
-
|
|
1236
|
-
|
|
1330
|
+
/* ------------------- Tooltip -------------------- */
|
|
1331
|
+
|
|
1332
|
+
.tlui-tooltip {
|
|
1333
|
+
font-size: 12px;
|
|
1334
|
+
padding: 2px 8px;
|
|
1335
|
+
border-radius: 4px;
|
|
1336
|
+
background-color: var(--tl-color-tooltip);
|
|
1337
|
+
box-shadow: none;
|
|
1338
|
+
color: var(--tl-color-text-shadow);
|
|
1339
|
+
max-width: 400px;
|
|
1340
|
+
width: fit-content;
|
|
1341
|
+
text-align: center;
|
|
1342
|
+
will-change: transform, opacity;
|
|
1343
|
+
z-index: 2;
|
|
1344
|
+
}
|
|
1345
|
+
|
|
1346
|
+
.tlui-tooltip__arrow {
|
|
1347
|
+
fill: var(--tl-color-tooltip);
|
|
1348
|
+
will-change: opacity;
|
|
1349
|
+
}
|
|
1350
|
+
|
|
1351
|
+
[data-radix-popper-content-wrapper]:has(.tlui-tooltip) {
|
|
1352
|
+
z-index: var(--tl-layer-toasts) !important;
|
|
1353
|
+
pointer-events: none;
|
|
1237
1354
|
}
|
|
1238
1355
|
|
|
1239
1356
|
/* ------------------- Debug panel ------------------ */
|
|
1240
1357
|
|
|
1241
1358
|
.tlui-debug-panel {
|
|
1242
|
-
background-color: var(--color-low);
|
|
1359
|
+
background-color: var(--tl-color-low);
|
|
1243
1360
|
width: 100%;
|
|
1244
1361
|
display: grid;
|
|
1245
1362
|
align-items: center;
|
|
1246
1363
|
grid-template-columns: 1fr auto auto auto;
|
|
1247
1364
|
justify-content: space-between;
|
|
1248
|
-
padding-left: var(--space-4);
|
|
1249
|
-
border-top: 1px solid var(--color-background);
|
|
1365
|
+
padding-left: var(--tl-space-4);
|
|
1366
|
+
border-top: 1px solid var(--tl-color-background);
|
|
1250
1367
|
font-size: 12px;
|
|
1251
|
-
color: var(--color-text-1);
|
|
1252
|
-
z-index: var(--layer-panels);
|
|
1368
|
+
color: var(--tl-color-text-1);
|
|
1369
|
+
z-index: var(--tl-layer-panels);
|
|
1253
1370
|
pointer-events: all;
|
|
1254
1371
|
}
|
|
1255
1372
|
|
|
@@ -1265,7 +1382,7 @@
|
|
|
1265
1382
|
|
|
1266
1383
|
.tlui-debug-panel__fps__slow {
|
|
1267
1384
|
font-weight: bold;
|
|
1268
|
-
color: var(--color-danger);
|
|
1385
|
+
color: var(--tl-color-danger);
|
|
1269
1386
|
}
|
|
1270
1387
|
|
|
1271
1388
|
.tlui-a11y-audit {
|
|
@@ -1275,7 +1392,7 @@
|
|
|
1275
1392
|
.tlui-a11y-audit th,
|
|
1276
1393
|
.tlui-a11y-audit td {
|
|
1277
1394
|
padding: 8px;
|
|
1278
|
-
border: 1px solid var(--color-low-border);
|
|
1395
|
+
border: 1px solid var(--tl-color-low-border);
|
|
1279
1396
|
}
|
|
1280
1397
|
|
|
1281
1398
|
/* --------------------- Toasts --------------------- */
|
|
@@ -1288,10 +1405,10 @@
|
|
|
1288
1405
|
align-items: flex-end;
|
|
1289
1406
|
justify-content: flex-end;
|
|
1290
1407
|
flex-direction: column;
|
|
1291
|
-
gap: var(--space-3);
|
|
1408
|
+
gap: var(--tl-space-3);
|
|
1292
1409
|
pointer-events: none;
|
|
1293
|
-
padding: 0px var(--space-3) 64px 0px;
|
|
1294
|
-
z-index: var(--layer-toasts);
|
|
1410
|
+
padding: 0px var(--tl-space-3) 64px 0px;
|
|
1411
|
+
z-index: var(--tl-layer-toasts);
|
|
1295
1412
|
}
|
|
1296
1413
|
|
|
1297
1414
|
.tlui-toast__viewport > * {
|
|
@@ -1300,34 +1417,34 @@
|
|
|
1300
1417
|
|
|
1301
1418
|
.tlui-toast__icon {
|
|
1302
1419
|
padding-top: 11px;
|
|
1303
|
-
padding-left: var(--space-4);
|
|
1304
|
-
color: var(--color-text-1);
|
|
1420
|
+
padding-left: var(--tl-space-4);
|
|
1421
|
+
color: var(--tl-color-text-1);
|
|
1305
1422
|
}
|
|
1306
1423
|
|
|
1307
1424
|
.tlui-toast__container {
|
|
1308
1425
|
min-width: 200px;
|
|
1309
1426
|
display: flex;
|
|
1310
1427
|
flex-direction: row;
|
|
1311
|
-
background-color: var(--color-panel);
|
|
1312
|
-
box-shadow: var(--shadow-2);
|
|
1313
|
-
border-radius: var(--radius-3);
|
|
1428
|
+
background-color: var(--tl-color-panel);
|
|
1429
|
+
box-shadow: var(--tl-shadow-2);
|
|
1430
|
+
border-radius: var(--tl-radius-3);
|
|
1314
1431
|
font-size: 12px;
|
|
1315
1432
|
}
|
|
1316
1433
|
|
|
1317
1434
|
.tlui-toast__container[data-severity='success'] .tlui-icon {
|
|
1318
|
-
color: var(--color-success);
|
|
1435
|
+
color: var(--tl-color-success);
|
|
1319
1436
|
}
|
|
1320
1437
|
|
|
1321
1438
|
.tlui-toast__container[data-severity='info'] .tlui-icon {
|
|
1322
|
-
color: var(--color-info);
|
|
1439
|
+
color: var(--tl-color-info);
|
|
1323
1440
|
}
|
|
1324
1441
|
|
|
1325
1442
|
.tlui-toast__container[data-severity='warning'] .tlui-icon {
|
|
1326
|
-
color: var(--color-warning);
|
|
1443
|
+
color: var(--tl-color-warning);
|
|
1327
1444
|
}
|
|
1328
1445
|
|
|
1329
1446
|
.tlui-toast__container[data-severity='error'] .tlui-icon {
|
|
1330
|
-
color: var(--color-danger);
|
|
1447
|
+
color: var(--tl-color-danger);
|
|
1331
1448
|
}
|
|
1332
1449
|
|
|
1333
1450
|
.tlui-toast__main {
|
|
@@ -1336,27 +1453,27 @@
|
|
|
1336
1453
|
}
|
|
1337
1454
|
|
|
1338
1455
|
.tlui-toast__content {
|
|
1339
|
-
padding: var(--space-4);
|
|
1456
|
+
padding: var(--tl-space-4);
|
|
1340
1457
|
display: flex;
|
|
1341
1458
|
line-height: 1.4;
|
|
1342
1459
|
flex-direction: column;
|
|
1343
|
-
gap: var(--space-3);
|
|
1460
|
+
gap: var(--tl-space-3);
|
|
1344
1461
|
}
|
|
1345
1462
|
|
|
1346
1463
|
.tlui-toast__main[data-actions='true'] .tlui-toast__content {
|
|
1347
|
-
padding-bottom: var(--space-2);
|
|
1464
|
+
padding-bottom: var(--tl-space-2);
|
|
1348
1465
|
}
|
|
1349
1466
|
|
|
1350
1467
|
.tlui-toast__title {
|
|
1351
1468
|
font-weight: bold;
|
|
1352
|
-
color: var(--color-text-1);
|
|
1469
|
+
color: var(--tl-color-text-1);
|
|
1353
1470
|
/* this makes the default toast look better */
|
|
1354
1471
|
line-height: 16px;
|
|
1355
1472
|
}
|
|
1356
1473
|
|
|
1357
1474
|
.tlui-toast__description {
|
|
1358
|
-
color: var(--color-text-1);
|
|
1359
|
-
padding: var(--space-3);
|
|
1475
|
+
color: var(--tl-color-text-1);
|
|
1476
|
+
padding: var(--tl-space-3);
|
|
1360
1477
|
margin: 0px;
|
|
1361
1478
|
padding: 0px;
|
|
1362
1479
|
}
|
|
@@ -1379,11 +1496,11 @@
|
|
|
1379
1496
|
|
|
1380
1497
|
@media (prefers-reduced-motion: no-preference) {
|
|
1381
1498
|
.tlui-toast__container[data-state='open'] {
|
|
1382
|
-
animation: slide-in 200ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
|
|
1499
|
+
animation: tlui-slide-in 200ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
|
|
1383
1500
|
}
|
|
1384
1501
|
|
|
1385
1502
|
.tlui-toast__container[data-state='closed'] {
|
|
1386
|
-
animation:
|
|
1503
|
+
animation: tlui-fade-out 100ms ease-in;
|
|
1387
1504
|
}
|
|
1388
1505
|
|
|
1389
1506
|
.tlui-toast__container[data-swipe='move'] {
|
|
@@ -1396,7 +1513,7 @@
|
|
|
1396
1513
|
}
|
|
1397
1514
|
|
|
1398
1515
|
.tlui-toast__container[data-swipe='end'] {
|
|
1399
|
-
animation:
|
|
1516
|
+
animation: tlui-slide-out 100ms ease-out;
|
|
1400
1517
|
}
|
|
1401
1518
|
}
|
|
1402
1519
|
|
|
@@ -1408,14 +1525,14 @@
|
|
|
1408
1525
|
left: 0px;
|
|
1409
1526
|
width: 100%;
|
|
1410
1527
|
height: 100%;
|
|
1411
|
-
z-index: var(--layer-canvas-overlays);
|
|
1412
|
-
background-color: var(--color-overlay);
|
|
1528
|
+
z-index: var(--tl-layer-canvas-overlays);
|
|
1529
|
+
background-color: var(--tl-color-overlay);
|
|
1413
1530
|
pointer-events: all;
|
|
1414
|
-
animation:
|
|
1531
|
+
animation: tl-fade-in 0.12s ease-out;
|
|
1415
1532
|
display: grid;
|
|
1416
1533
|
place-items: center;
|
|
1417
1534
|
overflow-y: auto;
|
|
1418
|
-
padding: 0px var(--space-3);
|
|
1535
|
+
padding: 0px var(--tl-space-3);
|
|
1419
1536
|
}
|
|
1420
1537
|
|
|
1421
1538
|
.tlui-dialog__content {
|
|
@@ -1423,9 +1540,9 @@
|
|
|
1423
1540
|
flex-direction: column;
|
|
1424
1541
|
position: relative;
|
|
1425
1542
|
cursor: default;
|
|
1426
|
-
background-color: var(--color-panel);
|
|
1427
|
-
box-shadow: var(--shadow-3);
|
|
1428
|
-
border-radius: var(--radius-3);
|
|
1543
|
+
background-color: var(--tl-color-panel);
|
|
1544
|
+
box-shadow: var(--tl-shadow-3);
|
|
1545
|
+
border-radius: var(--tl-radius-3);
|
|
1429
1546
|
font-size: 12px;
|
|
1430
1547
|
overflow: hidden;
|
|
1431
1548
|
min-width: 300px;
|
|
@@ -1438,9 +1555,9 @@
|
|
|
1438
1555
|
display: flex;
|
|
1439
1556
|
align-items: center;
|
|
1440
1557
|
flex: 0;
|
|
1441
|
-
z-index: var(--layer-header-footer);
|
|
1442
|
-
padding-left: var(--space-4);
|
|
1443
|
-
color: var(--color-text);
|
|
1558
|
+
z-index: var(--tl-layer-header-footer);
|
|
1559
|
+
padding-left: var(--tl-space-4);
|
|
1560
|
+
color: var(--tl-color-text);
|
|
1444
1561
|
height: 40px;
|
|
1445
1562
|
}
|
|
1446
1563
|
|
|
@@ -1449,7 +1566,7 @@
|
|
|
1449
1566
|
font-weight: inherit;
|
|
1450
1567
|
font-size: 12px;
|
|
1451
1568
|
margin: 0px;
|
|
1452
|
-
color: var(--color-text-1);
|
|
1569
|
+
color: var(--tl-color-text-1);
|
|
1453
1570
|
}
|
|
1454
1571
|
|
|
1455
1572
|
.tlui-dialog__header__close {
|
|
@@ -1457,16 +1574,16 @@
|
|
|
1457
1574
|
}
|
|
1458
1575
|
|
|
1459
1576
|
.tlui-dialog__body {
|
|
1460
|
-
padding: var(--space-4) var(--space-4);
|
|
1577
|
+
padding: var(--tl-space-4) var(--tl-space-4);
|
|
1461
1578
|
flex: 0 1;
|
|
1462
1579
|
overflow-y: auto;
|
|
1463
1580
|
overflow-x: hidden;
|
|
1464
|
-
color: var(--color-text-1);
|
|
1581
|
+
color: var(--tl-color-text-1);
|
|
1465
1582
|
user-select: all;
|
|
1466
1583
|
-webkit-user-select: text;
|
|
1467
1584
|
}
|
|
1468
1585
|
.tlui-dialog__body a {
|
|
1469
|
-
color: var(--color-selected);
|
|
1586
|
+
color: var(--tl-color-selected);
|
|
1470
1587
|
}
|
|
1471
1588
|
|
|
1472
1589
|
.tlui-dialog__body ul,
|
|
@@ -1474,13 +1591,13 @@
|
|
|
1474
1591
|
padding-left: 16px;
|
|
1475
1592
|
display: flex;
|
|
1476
1593
|
flex-direction: column;
|
|
1477
|
-
gap: var(--space-2);
|
|
1594
|
+
gap: var(--tl-space-2);
|
|
1478
1595
|
}
|
|
1479
1596
|
|
|
1480
1597
|
.tlui-dialog__footer {
|
|
1481
1598
|
position: relative;
|
|
1482
1599
|
min-height: 12px;
|
|
1483
|
-
z-index: var(--layer-header-footer);
|
|
1600
|
+
z-index: var(--tl-layer-header-footer);
|
|
1484
1601
|
}
|
|
1485
1602
|
|
|
1486
1603
|
.tlui-dialog__footer__actions {
|
|
@@ -1500,15 +1617,15 @@
|
|
|
1500
1617
|
.tlui-edit-link-dialog {
|
|
1501
1618
|
display: flex;
|
|
1502
1619
|
flex-direction: column;
|
|
1503
|
-
gap: var(--space-4);
|
|
1504
|
-
color: var(--color-text);
|
|
1620
|
+
gap: var(--tl-space-4);
|
|
1621
|
+
color: var(--tl-color-text);
|
|
1505
1622
|
}
|
|
1506
1623
|
|
|
1507
1624
|
.tlui-edit-link-dialog__input {
|
|
1508
|
-
background-color: var(--color-muted-2);
|
|
1625
|
+
background-color: var(--tl-color-muted-2);
|
|
1509
1626
|
flex-grow: 2;
|
|
1510
|
-
border-radius: var(--radius-2);
|
|
1511
|
-
padding: 0px var(--space-4);
|
|
1627
|
+
border-radius: var(--tl-radius-2);
|
|
1628
|
+
padding: 0px var(--tl-space-4);
|
|
1512
1629
|
}
|
|
1513
1630
|
|
|
1514
1631
|
/* Embed Dialog */
|
|
@@ -1516,15 +1633,15 @@
|
|
|
1516
1633
|
.tlui-embed__spacer {
|
|
1517
1634
|
flex-grow: 2;
|
|
1518
1635
|
min-height: 0px;
|
|
1519
|
-
margin-left: calc(-1 * var(--space-4));
|
|
1520
|
-
margin-top: calc(-1 * var(--space-4));
|
|
1636
|
+
margin-left: calc(-1 * var(--tl-space-4));
|
|
1637
|
+
margin-top: calc(-1 * var(--tl-space-4));
|
|
1521
1638
|
pointer-events: none;
|
|
1522
1639
|
}
|
|
1523
1640
|
|
|
1524
1641
|
.tlui-embed-dialog__list {
|
|
1525
1642
|
display: flex;
|
|
1526
1643
|
flex-direction: column;
|
|
1527
|
-
padding: 0px var(--space-3) var(--space-4) var(--space-3);
|
|
1644
|
+
padding: 0px var(--tl-space-3) var(--tl-space-4) var(--tl-space-3);
|
|
1528
1645
|
}
|
|
1529
1646
|
|
|
1530
1647
|
.tlui-embed-dialog__item__image {
|
|
@@ -1536,49 +1653,49 @@
|
|
|
1536
1653
|
background-size: contain;
|
|
1537
1654
|
background-repeat: no-repeat;
|
|
1538
1655
|
background-position: center center;
|
|
1539
|
-
background-color: var(--color-selected-contrast);
|
|
1540
|
-
border-radius: var(--radius-1);
|
|
1656
|
+
background-color: var(--tl-color-selected-contrast);
|
|
1657
|
+
border-radius: var(--tl-radius-1);
|
|
1541
1658
|
}
|
|
1542
1659
|
|
|
1543
1660
|
.tlui-embed-dialog__enter {
|
|
1544
1661
|
display: flex;
|
|
1545
1662
|
flex-direction: column;
|
|
1546
|
-
gap: var(--space-4);
|
|
1547
|
-
color: var(--color-text-1);
|
|
1663
|
+
gap: var(--tl-space-4);
|
|
1664
|
+
color: var(--tl-color-text-1);
|
|
1548
1665
|
}
|
|
1549
1666
|
|
|
1550
1667
|
.tlui-embed-dialog__input {
|
|
1551
|
-
background-color: var(--color-muted-2);
|
|
1668
|
+
background-color: var(--tl-color-muted-2);
|
|
1552
1669
|
flex-grow: 2;
|
|
1553
|
-
border-radius: var(--radius-2);
|
|
1554
|
-
padding: 0px var(--space-4);
|
|
1670
|
+
border-radius: var(--tl-radius-2);
|
|
1671
|
+
padding: 0px var(--tl-space-4);
|
|
1555
1672
|
}
|
|
1556
1673
|
|
|
1557
1674
|
.tlui-embed-dialog__warning {
|
|
1558
|
-
color: var(--color-danger);
|
|
1675
|
+
color: var(--tl-color-danger);
|
|
1559
1676
|
text-shadow: none;
|
|
1560
1677
|
}
|
|
1561
1678
|
|
|
1562
1679
|
.tlui-embed-dialog__instruction__link {
|
|
1563
1680
|
display: flex;
|
|
1564
|
-
gap: var(--space-1);
|
|
1565
|
-
margin-top: var(--space-4);
|
|
1681
|
+
gap: var(--tl-space-1);
|
|
1682
|
+
margin-top: var(--tl-space-4);
|
|
1566
1683
|
}
|
|
1567
1684
|
|
|
1568
1685
|
.tlui-embed-dialog__enter a {
|
|
1569
|
-
color: var(--color-text-1);
|
|
1686
|
+
color: var(--tl-color-text-1);
|
|
1570
1687
|
}
|
|
1571
1688
|
|
|
1572
1689
|
/* --------------- Keyboard shortcuts --------------- */
|
|
1573
1690
|
|
|
1574
1691
|
.tlui-shortcuts-dialog__header {
|
|
1575
|
-
border-bottom: 1px solid var(--color-divider);
|
|
1692
|
+
border-bottom: 1px solid var(--tl-color-divider);
|
|
1576
1693
|
}
|
|
1577
1694
|
|
|
1578
1695
|
.tlui-shortcuts-dialog__body {
|
|
1579
1696
|
position: relative;
|
|
1580
1697
|
columns: 3;
|
|
1581
|
-
column-gap: var(--space-9);
|
|
1698
|
+
column-gap: var(--tl-space-9);
|
|
1582
1699
|
pointer-events: all;
|
|
1583
1700
|
touch-action: auto;
|
|
1584
1701
|
|
|
@@ -1596,14 +1713,14 @@
|
|
|
1596
1713
|
|
|
1597
1714
|
.tlui-shortcuts-dialog__group {
|
|
1598
1715
|
break-inside: avoid-column;
|
|
1599
|
-
padding-bottom: var(--space-6);
|
|
1716
|
+
padding-bottom: var(--tl-space-6);
|
|
1600
1717
|
}
|
|
1601
1718
|
|
|
1602
1719
|
.tlui-shortcuts-dialog__group__title {
|
|
1603
1720
|
font-size: inherit;
|
|
1604
1721
|
font-weight: inherit;
|
|
1605
1722
|
margin: 0px;
|
|
1606
|
-
color: var(--color-text-3);
|
|
1723
|
+
color: var(--tl-color-text-3);
|
|
1607
1724
|
height: 32px;
|
|
1608
1725
|
display: flex;
|
|
1609
1726
|
align-items: center;
|
|
@@ -1612,12 +1729,12 @@
|
|
|
1612
1729
|
.tlui-shortcuts-dialog__group__content {
|
|
1613
1730
|
display: flex;
|
|
1614
1731
|
flex-direction: column;
|
|
1615
|
-
color: var(--color-text-1);
|
|
1732
|
+
color: var(--tl-color-text-1);
|
|
1616
1733
|
}
|
|
1617
1734
|
|
|
1618
1735
|
.tlui-shortcuts-dialog__key-pair {
|
|
1619
1736
|
display: flex;
|
|
1620
|
-
gap: var(--space-4);
|
|
1737
|
+
gap: var(--tl-space-4);
|
|
1621
1738
|
align-items: center;
|
|
1622
1739
|
justify-content: space-between;
|
|
1623
1740
|
height: 32px;
|
|
@@ -1644,12 +1761,12 @@
|
|
|
1644
1761
|
height: 24px;
|
|
1645
1762
|
background: linear-gradient(
|
|
1646
1763
|
to bottom,
|
|
1647
|
-
var(--color-panel-transparent) 0%,
|
|
1648
|
-
var(--color-panel) 90%,
|
|
1649
|
-
var(--color-panel) 100%
|
|
1764
|
+
var(--tl-color-panel-transparent) 0%,
|
|
1765
|
+
var(--tl-color-panel) 90%,
|
|
1766
|
+
var(--tl-color-panel) 100%
|
|
1650
1767
|
);
|
|
1651
|
-
border-bottom-left-radius: var(--radius-3);
|
|
1652
|
-
border-bottom-right-radius: var(--radius-3);
|
|
1768
|
+
border-bottom-left-radius: var(--tl-radius-3);
|
|
1769
|
+
border-bottom-right-radius: var(--tl-radius-3);
|
|
1653
1770
|
pointer-events: none;
|
|
1654
1771
|
}
|
|
1655
1772
|
|
|
@@ -1664,10 +1781,10 @@
|
|
|
1664
1781
|
.tlui-help-menu {
|
|
1665
1782
|
pointer-events: all;
|
|
1666
1783
|
position: absolute;
|
|
1667
|
-
bottom: var(--space-2);
|
|
1668
|
-
right: var(--space-2);
|
|
1669
|
-
z-index: var(--layer-panels);
|
|
1670
|
-
border: 2px solid var(--color-background);
|
|
1784
|
+
bottom: var(--tl-space-2);
|
|
1785
|
+
right: var(--tl-space-2);
|
|
1786
|
+
z-index: var(--tl-layer-panels);
|
|
1787
|
+
border: 2px solid var(--tl-color-background);
|
|
1671
1788
|
border-radius: 100%;
|
|
1672
1789
|
}
|
|
1673
1790
|
|
|
@@ -1678,7 +1795,7 @@
|
|
|
1678
1795
|
display: flex;
|
|
1679
1796
|
flex-direction: row;
|
|
1680
1797
|
justify-content: flex-end;
|
|
1681
|
-
z-index: var(--layer-panels);
|
|
1798
|
+
z-index: var(--tl-layer-panels);
|
|
1682
1799
|
align-items: center;
|
|
1683
1800
|
padding-top: 2px;
|
|
1684
1801
|
padding-right: 4px;
|
|
@@ -1694,7 +1811,7 @@
|
|
|
1694
1811
|
border: none;
|
|
1695
1812
|
cursor: pointer;
|
|
1696
1813
|
pointer-events: all;
|
|
1697
|
-
border-radius: var(--radius-1);
|
|
1814
|
+
border-radius: var(--tl-radius-1);
|
|
1698
1815
|
padding-right: 1px;
|
|
1699
1816
|
height: 100%;
|
|
1700
1817
|
}
|
|
@@ -1707,8 +1824,8 @@
|
|
|
1707
1824
|
.tlui-people-menu__avatar {
|
|
1708
1825
|
height: 24px;
|
|
1709
1826
|
width: 24px;
|
|
1710
|
-
border: 2px solid var(--color-background);
|
|
1711
|
-
background-color: var(--color-low);
|
|
1827
|
+
border: 2px solid var(--tl-color-background);
|
|
1828
|
+
background-color: var(--tl-color-low);
|
|
1712
1829
|
border-radius: 100%;
|
|
1713
1830
|
display: flex;
|
|
1714
1831
|
align-items: center;
|
|
@@ -1717,7 +1834,7 @@
|
|
|
1717
1834
|
font-size: 10px;
|
|
1718
1835
|
font-weight: bold;
|
|
1719
1836
|
text-align: center;
|
|
1720
|
-
color: var(--color-selected-contrast);
|
|
1837
|
+
color: var(--tl-color-selected-contrast);
|
|
1721
1838
|
z-index: 2;
|
|
1722
1839
|
}
|
|
1723
1840
|
|
|
@@ -1731,7 +1848,7 @@
|
|
|
1731
1848
|
|
|
1732
1849
|
@media (hover: hover) {
|
|
1733
1850
|
.tlui-people-menu__avatars-button:hover .tlui-people-menu__avatar {
|
|
1734
|
-
border-color: var(--color-low);
|
|
1851
|
+
border-color: var(--tl-color-low);
|
|
1735
1852
|
}
|
|
1736
1853
|
}
|
|
1737
1854
|
|
|
@@ -1739,12 +1856,12 @@
|
|
|
1739
1856
|
min-width: 0px;
|
|
1740
1857
|
font-size: 11px;
|
|
1741
1858
|
font-weight: 600;
|
|
1742
|
-
color: var(--color-text-1);
|
|
1859
|
+
color: var(--tl-color-text-1);
|
|
1743
1860
|
font-family: inherit;
|
|
1744
1861
|
padding: 0px 4px;
|
|
1745
1862
|
}
|
|
1746
1863
|
.tlui-people-menu__more::after {
|
|
1747
|
-
border-radius: var(--radius-2);
|
|
1864
|
+
border-radius: var(--tl-radius-2);
|
|
1748
1865
|
inset: 0px;
|
|
1749
1866
|
}
|
|
1750
1867
|
|
|
@@ -1773,7 +1890,7 @@
|
|
|
1773
1890
|
}
|
|
1774
1891
|
|
|
1775
1892
|
.tlui-people-menu__section:not(:last-child) {
|
|
1776
|
-
border-bottom: 1px solid var(--color-divider);
|
|
1893
|
+
border-bottom: 1px solid var(--tl-color-divider);
|
|
1777
1894
|
}
|
|
1778
1895
|
|
|
1779
1896
|
.tlui-people-menu__user {
|
|
@@ -1792,7 +1909,7 @@
|
|
|
1792
1909
|
text-overflow: ellipsis;
|
|
1793
1910
|
white-space: nowrap;
|
|
1794
1911
|
font-size: 12px;
|
|
1795
|
-
color: var(--color-text-1);
|
|
1912
|
+
color: var(--tl-color-text-1);
|
|
1796
1913
|
max-width: 100%;
|
|
1797
1914
|
flex-grow: 1;
|
|
1798
1915
|
flex-shrink: 100;
|
|
@@ -1804,7 +1921,7 @@
|
|
|
1804
1921
|
text-overflow: ellipsis;
|
|
1805
1922
|
white-space: nowrap;
|
|
1806
1923
|
font-size: 12px;
|
|
1807
|
-
color: var(--color-text-3);
|
|
1924
|
+
color: var(--tl-color-text-3);
|
|
1808
1925
|
flex-grow: 100;
|
|
1809
1926
|
flex-shrink: 0;
|
|
1810
1927
|
margin-left: 4px;
|
|
@@ -1895,7 +2012,7 @@
|
|
|
1895
2012
|
inset: 0px;
|
|
1896
2013
|
border-width: 2px;
|
|
1897
2014
|
border-style: solid;
|
|
1898
|
-
z-index: var(--layer-following-indicator);
|
|
2015
|
+
z-index: var(--tl-layer-following-indicator);
|
|
1899
2016
|
pointer-events: none;
|
|
1900
2017
|
}
|
|
1901
2018
|
|
|
@@ -1914,7 +2031,7 @@
|
|
|
1914
2031
|
}
|
|
1915
2032
|
|
|
1916
2033
|
.tlui-contextual-toolbar [data-isactive='true']::after {
|
|
1917
|
-
background-color: var(--color-muted-2);
|
|
2034
|
+
background-color: var(--tl-color-muted-2);
|
|
1918
2035
|
opacity: 1;
|
|
1919
2036
|
}
|
|
1920
2037
|
|
|
@@ -1930,7 +2047,7 @@
|
|
|
1930
2047
|
|
|
1931
2048
|
.tlui-contextual-toolbar[data-visible='true'] {
|
|
1932
2049
|
opacity: 1;
|
|
1933
|
-
z-index: var(--layer-menus);
|
|
2050
|
+
z-index: var(--tl-layer-menus);
|
|
1934
2051
|
}
|
|
1935
2052
|
|
|
1936
2053
|
.tlui-contextual-toolbar[data-interactive='true'],
|
|
@@ -1978,7 +2095,7 @@
|
|
|
1978
2095
|
}
|
|
1979
2096
|
|
|
1980
2097
|
/* ------------------- Animations ------------------- */
|
|
1981
|
-
@keyframes
|
|
2098
|
+
@keyframes tlui-fade-out {
|
|
1982
2099
|
0% {
|
|
1983
2100
|
opacity: 1;
|
|
1984
2101
|
}
|
|
@@ -1987,20 +2104,20 @@
|
|
|
1987
2104
|
}
|
|
1988
2105
|
}
|
|
1989
2106
|
|
|
1990
|
-
@keyframes slide-in {
|
|
2107
|
+
@keyframes tlui-slide-in {
|
|
1991
2108
|
from {
|
|
1992
|
-
transform: translateX(calc(100% + var(--space-3)));
|
|
2109
|
+
transform: translateX(calc(100% + var(--tl-space-3)));
|
|
1993
2110
|
}
|
|
1994
2111
|
to {
|
|
1995
2112
|
transform: translateX(0px);
|
|
1996
2113
|
}
|
|
1997
2114
|
}
|
|
1998
2115
|
|
|
1999
|
-
@keyframes
|
|
2116
|
+
@keyframes tlui-slide-out {
|
|
2000
2117
|
from {
|
|
2001
2118
|
transform: translateX(var(--radix-toast-swipe-end-x));
|
|
2002
2119
|
}
|
|
2003
2120
|
to {
|
|
2004
|
-
transform: translateX(calc(100% + var(--space-3)));
|
|
2121
|
+
transform: translateX(calc(100% + var(--tl-space-3)));
|
|
2005
2122
|
}
|
|
2006
2123
|
}
|