@dxos/react-ui 0.8.4-main.fffef41 → 0.8.4-staging.60fe92afc8
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/LICENSE +102 -5
- package/README.md +1 -1
- package/dist/lib/browser/chunk-5SPBSIWS.mjs +33 -0
- package/dist/lib/browser/chunk-5SPBSIWS.mjs.map +7 -0
- package/dist/lib/browser/chunk-7JFD5ZHZ.mjs +1612 -0
- package/dist/lib/browser/chunk-7JFD5ZHZ.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +5259 -67
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +91 -70
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/browser/translations.mjs +9 -0
- package/dist/lib/browser/translations.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-FPVTVXND.mjs +35 -0
- package/dist/lib/node-esm/chunk-FPVTVXND.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-TTEL2FP2.mjs +1614 -0
- package/dist/lib/node-esm/chunk-TTEL2FP2.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +5259 -67
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +91 -70
- package/dist/lib/node-esm/testing/index.mjs.map +4 -4
- package/dist/lib/node-esm/translations.mjs +10 -0
- package/dist/lib/node-esm/translations.mjs.map +7 -0
- package/dist/types/src/components/Avatars/Avatar.d.ts +1 -1
- package/dist/types/src/components/Avatars/Avatar.d.ts.map +1 -1
- package/dist/types/src/components/Avatars/Avatar.stories.d.ts.map +1 -1
- package/dist/types/src/components/Avatars/Avatar.theme.d.ts +11 -0
- package/dist/types/src/components/Avatars/Avatar.theme.d.ts.map +1 -0
- package/dist/types/src/components/Avatars/AvatarGroup.stories.d.ts.map +1 -1
- package/dist/types/src/components/Breadcrumb/Breadcrumb.d.ts +5 -1
- package/dist/types/src/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
- package/dist/types/src/components/Breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
- package/dist/types/src/components/Breadcrumb/Breadcrumb.theme.d.ts +4 -0
- package/dist/types/src/components/Breadcrumb/Breadcrumb.theme.d.ts.map +1 -0
- package/dist/types/src/components/Button/Button.d.ts +4 -4
- package/dist/types/src/components/Button/Button.d.ts.map +1 -1
- package/dist/types/src/components/Button/Button.stories.d.ts +1 -1
- package/dist/types/src/components/Button/Button.stories.d.ts.map +1 -1
- package/dist/types/src/components/Button/Button.theme.d.ts +11 -0
- package/dist/types/src/components/Button/Button.theme.d.ts.map +1 -0
- package/dist/types/src/components/Button/IconButton.d.ts +3 -1
- package/dist/types/src/components/Button/IconButton.d.ts.map +1 -1
- package/dist/types/src/components/Button/IconButton.stories.d.ts +4 -0
- package/dist/types/src/components/Button/IconButton.stories.d.ts.map +1 -1
- package/dist/types/src/components/Button/IconButton.theme.d.ts +8 -0
- package/dist/types/src/components/Button/IconButton.theme.d.ts.map +1 -0
- package/dist/types/src/components/Button/Toggle.d.ts +2 -2
- package/dist/types/src/components/Button/Toggle.d.ts.map +1 -1
- package/dist/types/src/components/Button/Toggle.stories.d.ts.map +1 -1
- package/dist/types/src/components/Button/ToggleGroup.d.ts +10 -10
- package/dist/types/src/components/Button/ToggleGroup.d.ts.map +1 -1
- package/dist/types/src/components/Button/ToggleGroup.stories.d.ts +6 -6
- package/dist/types/src/components/Button/ToggleGroup.stories.d.ts.map +1 -1
- package/dist/types/src/components/Calendar/Calendar.d.ts +33 -0
- package/dist/types/src/components/Calendar/Calendar.d.ts.map +1 -0
- package/dist/types/src/components/Calendar/Calendar.stories.d.ts +9 -0
- package/dist/types/src/components/Calendar/Calendar.stories.d.ts.map +1 -0
- package/dist/types/src/components/Calendar/Calendar.theme.d.ts +4 -0
- package/dist/types/src/components/Calendar/Calendar.theme.d.ts.map +1 -0
- package/dist/types/src/components/Calendar/index.d.ts +2 -0
- package/dist/types/src/components/Calendar/index.d.ts.map +1 -0
- package/dist/types/src/components/Card/Card.d.ts +126 -0
- package/dist/types/src/components/Card/Card.d.ts.map +1 -0
- package/dist/types/src/components/Card/Card.stories.d.ts +22 -0
- package/dist/types/src/components/Card/Card.stories.d.ts.map +1 -0
- package/dist/types/src/components/Card/Card.theme.d.ts +12 -0
- package/dist/types/src/components/Card/Card.theme.d.ts.map +1 -0
- package/dist/types/src/components/Card/index.d.ts +2 -0
- package/dist/types/src/components/Card/index.d.ts.map +1 -0
- package/dist/types/src/components/Carousel/Carousel.d.ts +106 -0
- package/dist/types/src/components/Carousel/Carousel.d.ts.map +1 -0
- package/dist/types/src/components/Carousel/Carousel.stories.d.ts +14 -0
- package/dist/types/src/components/Carousel/Carousel.stories.d.ts.map +1 -0
- package/dist/types/src/components/Carousel/index.d.ts +2 -0
- package/dist/types/src/components/Carousel/index.d.ts.map +1 -0
- package/dist/types/src/components/Clipboard/ClipboardProvider.d.ts.map +1 -1
- package/dist/types/src/components/Clipboard/CopyButton.d.ts.map +1 -1
- package/dist/types/src/components/Clipboard/index.d.ts +10 -1
- package/dist/types/src/components/Clipboard/index.d.ts.map +1 -1
- package/dist/types/src/components/Column/Column.d.ts +33 -0
- package/dist/types/src/components/Column/Column.d.ts.map +1 -0
- package/dist/types/src/components/Column/Column.stories.d.ts +25 -0
- package/dist/types/src/components/Column/Column.stories.d.ts.map +1 -0
- package/dist/types/src/components/Column/Column.theme.d.ts +9 -0
- package/dist/types/src/components/Column/Column.theme.d.ts.map +1 -0
- package/dist/types/src/components/Column/index.d.ts +3 -0
- package/dist/types/src/components/Column/index.d.ts.map +1 -0
- package/dist/types/src/components/Column/withColumn.d.ts +21 -0
- package/dist/types/src/components/Column/withColumn.d.ts.map +1 -0
- package/dist/types/src/components/DatePicker/DatePicker.d.ts +72 -0
- package/dist/types/src/components/DatePicker/DatePicker.d.ts.map +1 -0
- package/dist/types/src/components/DatePicker/DatePicker.stories.d.ts +10 -0
- package/dist/types/src/components/DatePicker/DatePicker.stories.d.ts.map +1 -0
- package/dist/types/src/components/DatePicker/DatePicker.theme.d.ts +6 -0
- package/dist/types/src/components/DatePicker/DatePicker.theme.d.ts.map +1 -0
- package/dist/types/src/components/DatePicker/index.d.ts +2 -0
- package/dist/types/src/components/DatePicker/index.d.ts.map +1 -0
- package/dist/types/src/components/Dialog/AlertDialog.d.ts +43 -23
- package/dist/types/src/components/Dialog/AlertDialog.d.ts.map +1 -1
- package/dist/types/src/components/Dialog/AlertDialog.stories.d.ts.map +1 -1
- package/dist/types/src/components/Dialog/Dialog.d.ts +58 -23
- package/dist/types/src/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/types/src/components/Dialog/Dialog.stories.d.ts +10 -10
- package/dist/types/src/components/Dialog/Dialog.stories.d.ts.map +1 -1
- package/dist/types/src/components/Dialog/Dialog.theme.d.ts +10 -0
- package/dist/types/src/components/Dialog/Dialog.theme.d.ts.map +1 -0
- package/dist/types/src/components/ErrorFallback/ErrorFallback.d.ts +11 -0
- package/dist/types/src/components/ErrorFallback/ErrorFallback.d.ts.map +1 -0
- package/dist/types/src/components/ErrorFallback/ErrorFallback.stories.d.ts +7 -0
- package/dist/types/src/components/ErrorFallback/ErrorFallback.stories.d.ts.map +1 -0
- package/dist/types/src/components/ErrorFallback/ErrorStack.d.ts +19 -0
- package/dist/types/src/components/ErrorFallback/ErrorStack.d.ts.map +1 -0
- package/dist/types/src/components/ErrorFallback/ThrowError.d.ts +9 -0
- package/dist/types/src/components/ErrorFallback/ThrowError.d.ts.map +1 -0
- package/dist/types/src/components/ErrorFallback/index.d.ts +5 -0
- package/dist/types/src/components/ErrorFallback/index.d.ts.map +1 -0
- package/dist/types/src/components/Focus/Focus.d.ts +36 -0
- package/dist/types/src/components/Focus/Focus.d.ts.map +1 -0
- package/dist/types/src/components/Focus/Focus.stories.d.ts +9 -0
- package/dist/types/src/components/Focus/Focus.stories.d.ts.map +1 -0
- package/dist/types/src/components/Focus/Focus.theme.d.ts +6 -0
- package/dist/types/src/components/Focus/Focus.theme.d.ts.map +1 -0
- package/dist/types/src/components/Focus/index.d.ts +2 -0
- package/dist/types/src/components/Focus/index.d.ts.map +1 -0
- package/dist/types/src/components/Icon/Icon.d.ts +5 -1
- package/dist/types/src/components/Icon/Icon.d.ts.map +1 -1
- package/dist/types/src/components/Icon/Icon.stories.d.ts +11 -3
- package/dist/types/src/components/Icon/Icon.stories.d.ts.map +1 -1
- package/dist/types/src/components/Icon/Icon.theme.d.ts +11 -0
- package/dist/types/src/components/Icon/Icon.theme.d.ts.map +1 -0
- package/dist/types/src/components/Icon/IconBlock.d.ts +15 -0
- package/dist/types/src/components/Icon/IconBlock.d.ts.map +1 -0
- package/dist/types/src/components/Icon/index.d.ts +1 -0
- package/dist/types/src/components/Icon/index.d.ts.map +1 -1
- package/dist/types/src/components/Image/Image.d.ts +21 -0
- package/dist/types/src/components/Image/Image.d.ts.map +1 -0
- package/dist/types/src/components/Image/Image.stories.d.ts +34 -0
- package/dist/types/src/components/Image/Image.stories.d.ts.map +1 -0
- package/dist/types/src/components/Image/index.d.ts +2 -0
- package/dist/types/src/components/Image/index.d.ts.map +1 -0
- package/dist/types/src/components/Input/Input.d.ts +95 -20
- package/dist/types/src/components/Input/Input.d.ts.map +1 -1
- package/dist/types/src/components/Input/Input.stories.d.ts +21 -10
- package/dist/types/src/components/Input/Input.stories.d.ts.map +1 -1
- package/dist/types/src/components/Input/Input.theme.d.ts +115 -0
- package/dist/types/src/components/Input/Input.theme.d.ts.map +1 -0
- package/dist/types/src/components/Input/SegmentedInput.d.ts +79 -0
- package/dist/types/src/components/Input/SegmentedInput.d.ts.map +1 -0
- package/dist/types/src/components/Input/constants.d.ts +2 -0
- package/dist/types/src/components/Input/constants.d.ts.map +1 -0
- package/dist/types/src/components/Input/index.d.ts +2 -0
- package/dist/types/src/components/Input/index.d.ts.map +1 -1
- package/dist/types/src/components/Link/Link.d.ts.map +1 -1
- package/dist/types/src/components/Link/Link.stories.d.ts.map +1 -1
- package/dist/types/src/components/Link/Link.theme.d.ts +6 -0
- package/dist/types/src/components/Link/Link.theme.d.ts.map +1 -0
- package/dist/types/src/components/List/List.d.ts +6 -4
- package/dist/types/src/components/List/List.d.ts.map +1 -1
- package/dist/types/src/components/List/List.stories.d.ts +3 -1
- package/dist/types/src/components/List/List.stories.d.ts.map +1 -1
- package/dist/types/src/components/List/List.theme.d.ts +7 -0
- package/dist/types/src/components/List/List.theme.d.ts.map +1 -0
- package/dist/types/src/components/List/ListDropIndicator.d.ts.map +1 -1
- package/dist/types/src/components/List/Tree.d.ts +2 -2
- package/dist/types/src/components/List/Tree.d.ts.map +1 -1
- package/dist/types/src/components/List/Tree.stories.d.ts.map +1 -1
- package/dist/types/src/components/List/TreeDropIndicator.d.ts.map +1 -1
- package/dist/types/src/components/List/Treegrid.d.ts +6 -10
- package/dist/types/src/components/List/Treegrid.d.ts.map +1 -1
- package/dist/types/src/components/List/Treegrid.stories.d.ts.map +1 -1
- package/dist/types/src/components/List/Treegrid.theme.d.ts +7 -0
- package/dist/types/src/components/List/Treegrid.theme.d.ts.map +1 -0
- package/dist/types/src/components/Main/Main.d.ts +17 -14
- package/dist/types/src/components/Main/Main.d.ts.map +1 -1
- package/dist/types/src/components/Main/Main.stories.d.ts +0 -3
- package/dist/types/src/components/Main/Main.stories.d.ts.map +1 -1
- package/dist/types/src/components/Main/Main.theme.d.ts +20 -0
- package/dist/types/src/components/Main/Main.theme.d.ts.map +1 -0
- package/dist/types/src/components/Main/constants.d.ts +3 -0
- package/dist/types/src/components/Main/constants.d.ts.map +1 -0
- package/dist/types/src/components/Main/index.d.ts +1 -0
- package/dist/types/src/components/Main/index.d.ts.map +1 -1
- package/dist/types/src/components/Main/useSwipeToDismiss.d.ts.map +1 -1
- package/dist/types/src/components/MediaPlayer/MediaPlayer.d.ts +47 -0
- package/dist/types/src/components/MediaPlayer/MediaPlayer.d.ts.map +1 -0
- package/dist/types/src/components/MediaPlayer/MediaPlayer.stories.d.ts +16 -0
- package/dist/types/src/components/MediaPlayer/MediaPlayer.stories.d.ts.map +1 -0
- package/dist/types/src/components/MediaPlayer/index.d.ts +2 -0
- package/dist/types/src/components/MediaPlayer/index.d.ts.map +1 -0
- package/dist/types/src/components/{Menus → Menu}/ContextMenu.d.ts +6 -6
- package/dist/types/src/components/Menu/ContextMenu.d.ts.map +1 -0
- package/dist/types/src/components/Menu/ContextMenu.stories.d.ts.map +1 -0
- package/dist/types/src/components/Menu/DropdownMenu.d.ts +121 -0
- package/dist/types/src/components/Menu/DropdownMenu.d.ts.map +1 -0
- package/dist/types/src/components/Menu/DropdownMenu.stories.d.ts +28 -0
- package/dist/types/src/components/Menu/DropdownMenu.stories.d.ts.map +1 -0
- package/dist/types/src/components/Menu/Menu.theme.d.ts +7 -0
- package/dist/types/src/components/Menu/Menu.theme.d.ts.map +1 -0
- package/dist/types/src/components/Menu/index.d.ts.map +1 -0
- package/dist/types/src/components/Message/Message.d.ts +4 -4
- package/dist/types/src/components/Message/Message.d.ts.map +1 -1
- package/dist/types/src/components/Message/Message.stories.d.ts +9 -6
- package/dist/types/src/components/Message/Message.stories.d.ts.map +1 -1
- package/dist/types/src/components/Message/Message.theme.d.ts +7 -0
- package/dist/types/src/components/Message/Message.theme.d.ts.map +1 -0
- package/dist/types/src/components/Panel/Panel.d.ts +35 -0
- package/dist/types/src/components/Panel/Panel.d.ts.map +1 -0
- package/dist/types/src/components/Panel/Panel.stories.d.ts +6 -0
- package/dist/types/src/components/Panel/Panel.stories.d.ts.map +1 -0
- package/dist/types/src/components/Panel/Panel.theme.d.ts +13 -0
- package/dist/types/src/components/Panel/Panel.theme.d.ts.map +1 -0
- package/dist/types/src/components/Panel/index.d.ts +2 -0
- package/dist/types/src/components/Panel/index.d.ts.map +1 -0
- package/dist/types/src/components/Popover/Popover.d.ts +40 -23
- package/dist/types/src/components/Popover/Popover.d.ts.map +1 -1
- package/dist/types/src/components/Popover/Popover.stories.d.ts.map +1 -1
- package/dist/types/src/components/Popover/Popover.theme.d.ts +8 -0
- package/dist/types/src/components/Popover/Popover.theme.d.ts.map +1 -0
- package/dist/types/src/components/ScrollArea/ScrollArea.d.ts +27 -27
- package/dist/types/src/components/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts +57 -8
- package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts.map +1 -1
- package/dist/types/src/components/ScrollArea/ScrollArea.theme.d.ts +17 -0
- package/dist/types/src/components/ScrollArea/ScrollArea.theme.d.ts.map +1 -0
- package/dist/types/src/components/ScrollArea/index.d.ts +1 -0
- package/dist/types/src/components/ScrollArea/index.d.ts.map +1 -1
- package/dist/types/src/components/ScrollArea/scrollbar.d.ts +18 -0
- package/dist/types/src/components/ScrollArea/scrollbar.d.ts.map +1 -0
- package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts +44 -19
- package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts.map +1 -1
- package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts +10 -5
- package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/Select/Select.d.ts +9 -9
- package/dist/types/src/components/Select/Select.d.ts.map +1 -1
- package/dist/types/src/components/Select/Select.stories.d.ts +2 -2
- package/dist/types/src/components/Select/Select.stories.d.ts.map +1 -1
- package/dist/types/src/components/Select/Select.theme.d.ts +6 -0
- package/dist/types/src/components/Select/Select.theme.d.ts.map +1 -0
- package/dist/types/src/components/Separator/Separator.d.ts +4 -4
- package/dist/types/src/components/Separator/Separator.d.ts.map +1 -1
- package/dist/types/src/components/Separator/Separator.theme.d.ts +7 -0
- package/dist/types/src/components/Separator/Separator.theme.d.ts.map +1 -0
- package/dist/types/src/components/Skeleton/Skeleton.d.ts +12 -0
- package/dist/types/src/components/Skeleton/Skeleton.d.ts.map +1 -0
- package/dist/types/src/components/Skeleton/Skeleton.stories.d.ts +17 -0
- package/dist/types/src/components/Skeleton/Skeleton.stories.d.ts.map +1 -0
- package/dist/types/src/components/Skeleton/Skeleton.theme.d.ts +6 -0
- package/dist/types/src/components/Skeleton/Skeleton.theme.d.ts.map +1 -0
- package/dist/types/src/components/Skeleton/index.d.ts +2 -0
- package/dist/types/src/components/Skeleton/index.d.ts.map +1 -0
- package/dist/types/src/components/Splitter/Splitter.d.ts +32 -0
- package/dist/types/src/components/Splitter/Splitter.d.ts.map +1 -0
- package/dist/types/src/components/Splitter/Splitter.stories.d.ts +7 -0
- package/dist/types/src/components/Splitter/Splitter.stories.d.ts.map +1 -0
- package/dist/types/src/components/Splitter/Splitter.theme.d.ts +4 -0
- package/dist/types/src/components/Splitter/Splitter.theme.d.ts.map +1 -0
- package/dist/types/src/components/Splitter/index.d.ts +2 -0
- package/dist/types/src/components/Splitter/index.d.ts.map +1 -0
- package/dist/types/src/components/Status/Status.d.ts +3 -4
- package/dist/types/src/components/Status/Status.d.ts.map +1 -1
- package/dist/types/src/components/Status/Status.stories.d.ts +4 -2
- package/dist/types/src/components/Status/Status.stories.d.ts.map +1 -1
- package/dist/types/src/components/Status/Status.theme.d.ts +7 -0
- package/dist/types/src/components/Status/Status.theme.d.ts.map +1 -0
- package/dist/types/src/components/Tag/Tag.d.ts +1 -1
- package/dist/types/src/components/Tag/Tag.d.ts.map +1 -1
- package/dist/types/src/components/Tag/Tag.stories.d.ts +0 -5
- package/dist/types/src/components/Tag/Tag.stories.d.ts.map +1 -1
- package/dist/types/src/components/Tag/Tag.theme.d.ts +6 -0
- package/dist/types/src/components/Tag/Tag.theme.d.ts.map +1 -0
- package/dist/types/src/components/Toast/Toast.d.ts +27 -24
- package/dist/types/src/components/Toast/Toast.d.ts.map +1 -1
- package/dist/types/src/components/Toast/Toast.stories.d.ts +5 -2
- package/dist/types/src/components/Toast/Toast.stories.d.ts.map +1 -1
- package/dist/types/src/components/Toast/Toast.theme.d.ts +4 -0
- package/dist/types/src/components/Toast/Toast.theme.d.ts.map +1 -0
- package/dist/types/src/components/Toolbar/Toolbar.d.ts +52 -22
- package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +1 -1
- package/dist/types/src/components/Toolbar/Toolbar.theme.d.ts +8 -0
- package/dist/types/src/components/Toolbar/Toolbar.theme.d.ts.map +1 -0
- package/dist/types/src/components/Tooltip/Tooltip.d.ts +16 -16
- package/dist/types/src/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts +2 -2
- package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts.map +1 -1
- package/dist/types/src/components/Tooltip/Tooltip.theme.d.ts +6 -0
- package/dist/types/src/components/Tooltip/Tooltip.theme.d.ts.map +1 -0
- package/dist/types/src/components/Tooltip/index.d.ts +1 -0
- package/dist/types/src/components/Tooltip/index.d.ts.map +1 -1
- package/dist/types/src/components/Tooltip/tooltipContent.d.ts +4 -0
- package/dist/types/src/components/Tooltip/tooltipContent.d.ts.map +1 -0
- package/dist/types/src/components/index.d.ts +14 -6
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/exemplars/generics.stories.d.ts +19 -0
- package/dist/types/src/exemplars/generics.stories.d.ts.map +1 -0
- package/dist/types/src/exemplars/slot.stories.d.ts +15 -0
- package/dist/types/src/exemplars/slot.stories.d.ts.map +1 -0
- package/dist/types/src/exemplars/tabster.stories.d.ts +8 -0
- package/dist/types/src/exemplars/tabster.stories.d.ts.map +1 -0
- package/dist/types/src/exemplars/virtualizer.stories.d.ts +11 -0
- package/dist/types/src/exemplars/virtualizer.stories.d.ts.map +1 -0
- package/dist/types/src/hooks/index.d.ts +1 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useDensityContext.d.ts +2 -2
- package/dist/types/src/hooks/useDensityContext.d.ts.map +1 -1
- package/dist/types/src/hooks/useElevationContext.d.ts +1 -1
- package/dist/types/src/hooks/useElevationContext.d.ts.map +1 -1
- package/dist/types/src/hooks/useIconHref.d.ts.map +1 -1
- package/dist/types/src/hooks/useSafeArea.d.ts.map +1 -1
- package/dist/types/src/hooks/useSafeCollisionPadding.d.ts.map +1 -1
- package/dist/types/src/hooks/useTranslationsContext.d.ts +1 -1
- package/dist/types/src/hooks/useVisualViewport.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +3 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/playground/Controls.stories.d.ts.map +1 -1
- package/dist/types/src/playground/Custom.stories.d.ts +1 -1
- package/dist/types/src/playground/Custom.stories.d.ts.map +1 -1
- package/dist/types/src/playground/Typography.stories.d.ts.map +1 -1
- package/dist/types/src/primitives/Container/Container.d.ts +7 -0
- package/dist/types/src/primitives/Container/Container.d.ts.map +1 -0
- package/dist/types/src/primitives/Container/Container.stories.d.ts +6 -0
- package/dist/types/src/primitives/Container/Container.stories.d.ts.map +1 -0
- package/dist/types/src/primitives/Container/index.d.ts +2 -0
- package/dist/types/src/primitives/Container/index.d.ts.map +1 -0
- package/dist/types/src/{components → primitives}/DensityProvider/DensityProvider.d.ts +1 -1
- package/dist/types/src/{components → primitives}/DensityProvider/DensityProvider.d.ts.map +1 -1
- package/dist/types/src/primitives/DensityProvider/index.d.ts.map +1 -0
- package/dist/types/src/{components → primitives}/ElevationProvider/ElevationProvider.d.ts +1 -1
- package/dist/types/src/{components → primitives}/ElevationProvider/ElevationProvider.d.ts.map +1 -1
- package/dist/types/src/primitives/ElevationProvider/index.d.ts.map +1 -0
- package/dist/types/src/primitives/Flex/Flex.d.ts +11 -0
- package/dist/types/src/primitives/Flex/Flex.d.ts.map +1 -0
- package/dist/types/src/primitives/Flex/Flex.stories.d.ts +8 -0
- package/dist/types/src/primitives/Flex/Flex.stories.d.ts.map +1 -0
- package/dist/types/src/primitives/Flex/index.d.ts +2 -0
- package/dist/types/src/primitives/Flex/index.d.ts.map +1 -0
- package/dist/types/src/primitives/Grid/Grid.d.ts +10 -0
- package/dist/types/src/primitives/Grid/Grid.d.ts.map +1 -0
- package/dist/types/src/primitives/Grid/Grid.stories.d.ts +8 -0
- package/dist/types/src/primitives/Grid/Grid.stories.d.ts.map +1 -0
- package/dist/types/src/primitives/Grid/index.d.ts +2 -0
- package/dist/types/src/primitives/Grid/index.d.ts.map +1 -0
- package/dist/types/src/{components → primitives}/ThemeProvider/ThemeProvider.d.ts +3 -3
- package/dist/types/src/primitives/ThemeProvider/ThemeProvider.d.ts.map +1 -0
- package/dist/types/src/{components/Menus/DropdownMenu.stories.d.ts → primitives/ThemeProvider/ThemeProvider.stories.d.ts} +2 -5
- package/dist/types/src/primitives/ThemeProvider/ThemeProvider.stories.d.ts.map +1 -0
- package/dist/types/src/primitives/ThemeProvider/TranslationsProvider.d.ts +128 -0
- package/dist/types/src/primitives/ThemeProvider/TranslationsProvider.d.ts.map +1 -0
- package/dist/types/src/primitives/ThemeProvider/index.d.ts +4 -0
- package/dist/types/src/primitives/ThemeProvider/index.d.ts.map +1 -0
- package/dist/types/src/primitives/index.d.ts +7 -0
- package/dist/types/src/primitives/index.d.ts.map +1 -0
- package/dist/types/src/testing/Loading.d.ts +9 -0
- package/dist/types/src/testing/Loading.d.ts.map +1 -0
- package/dist/types/src/testing/decorators/withLayout.d.ts +3 -3
- package/dist/types/src/testing/decorators/withLayout.d.ts.map +1 -1
- package/dist/types/src/testing/decorators/withLayoutVariants.d.ts +1 -1
- package/dist/types/src/testing/decorators/withLayoutVariants.d.ts.map +1 -1
- package/dist/types/src/testing/decorators/withTheme.d.ts +7 -2
- package/dist/types/src/testing/decorators/withTheme.d.ts.map +1 -1
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/theme/bindTheme.d.ts +3 -0
- package/dist/types/src/theme/bindTheme.d.ts.map +1 -0
- package/dist/types/src/theme/defaultTheme.d.ts +4 -0
- package/dist/types/src/theme/defaultTheme.d.ts.map +1 -0
- package/dist/types/src/theme/index.d.ts +31 -0
- package/dist/types/src/theme/index.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +25 -0
- package/dist/types/src/translations.d.ts.map +1 -0
- package/dist/types/src/util/index.d.ts +3 -3
- package/dist/types/src/util/index.d.ts.map +1 -1
- package/dist/types/src/util/mobile.d.ts +5 -0
- package/dist/types/src/util/mobile.d.ts.map +1 -0
- package/dist/types/src/util/slots.d.ts +57 -0
- package/dist/types/src/util/slots.d.ts.map +1 -0
- package/dist/types/src/util/usePx.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +54 -40
- package/src/components/Avatars/Avatar.stories.tsx +7 -9
- package/src/components/Avatars/Avatar.theme.ts +93 -0
- package/src/components/Avatars/Avatar.tsx +7 -15
- package/src/components/Avatars/AvatarGroup.stories.tsx +2 -3
- package/src/components/Breadcrumb/Breadcrumb.stories.tsx +3 -4
- package/src/components/Breadcrumb/Breadcrumb.theme.ts +26 -0
- package/src/components/Breadcrumb/Breadcrumb.tsx +25 -39
- package/src/components/Button/Button.stories.tsx +3 -4
- package/src/components/Button/Button.theme.ts +31 -0
- package/src/components/Button/Button.tsx +13 -27
- package/src/components/Button/IconButton.stories.tsx +58 -8
- package/src/components/Button/IconButton.theme.ts +21 -0
- package/src/components/Button/IconButton.tsx +10 -6
- package/src/components/Button/Toggle.stories.tsx +2 -3
- package/src/components/Button/Toggle.tsx +4 -4
- package/src/components/Button/ToggleGroup.stories.tsx +2 -3
- package/src/components/Button/ToggleGroup.tsx +12 -16
- package/src/components/Calendar/Calendar.stories.tsx +43 -0
- package/src/components/Calendar/Calendar.theme.ts +74 -0
- package/src/components/Calendar/Calendar.tsx +196 -0
- package/src/components/Calendar/index.ts +5 -0
- package/src/components/Card/Card.stories.tsx +172 -0
- package/src/components/Card/Card.theme.ts +93 -0
- package/src/components/Card/Card.tsx +485 -0
- package/src/components/Card/index.ts +5 -0
- package/src/components/Carousel/Carousel.stories.tsx +47 -0
- package/src/components/Carousel/Carousel.tsx +373 -0
- package/src/components/Carousel/index.ts +5 -0
- package/src/components/Clipboard/CopyButton.tsx +10 -11
- package/src/components/Column/AUDIT.md +148 -0
- package/src/components/Column/Column.stories.tsx +181 -0
- package/src/components/Column/Column.theme.ts +48 -0
- package/src/components/Column/Column.tsx +166 -0
- package/src/components/Column/index.ts +6 -0
- package/src/components/Column/withColumn.ts +27 -0
- package/src/components/DatePicker/DatePicker.stories.tsx +102 -0
- package/src/components/DatePicker/DatePicker.theme.ts +35 -0
- package/src/components/DatePicker/DatePicker.tsx +279 -0
- package/src/components/DatePicker/index.ts +5 -0
- package/src/components/Dialog/AlertDialog.stories.tsx +16 -17
- package/src/components/Dialog/AlertDialog.tsx +122 -85
- package/src/components/Dialog/Dialog.stories.tsx +138 -28
- package/src/components/Dialog/Dialog.theme.ts +61 -0
- package/src/components/Dialog/Dialog.tsx +227 -72
- package/src/components/ErrorFallback/ErrorFallback.stories.tsx +45 -0
- package/src/components/ErrorFallback/ErrorFallback.tsx +76 -0
- package/src/components/ErrorFallback/ErrorStack.tsx +120 -0
- package/src/components/ErrorFallback/ThrowError.tsx +37 -0
- package/src/components/ErrorFallback/index.ts +9 -0
- package/src/components/Focus/AUDIT.md +43 -0
- package/src/components/Focus/Focus.stories.tsx +230 -0
- package/src/components/Focus/Focus.theme.ts +32 -0
- package/src/components/Focus/Focus.tsx +201 -0
- package/src/components/Focus/index.ts +5 -0
- package/src/components/Icon/Icon.stories.tsx +45 -15
- package/src/components/Icon/Icon.theme.ts +45 -0
- package/src/components/Icon/Icon.tsx +15 -4
- package/src/components/Icon/IconBlock.tsx +38 -0
- package/src/components/Icon/index.ts +1 -0
- package/src/components/Image/Image.stories.tsx +86 -0
- package/src/components/Image/Image.tsx +252 -0
- package/src/components/Image/index.ts +5 -0
- package/src/components/Input/Input.stories.tsx +148 -65
- package/src/components/Input/Input.theme.ts +191 -0
- package/src/components/Input/Input.tsx +245 -75
- package/src/components/Input/SegmentedInput.tsx +454 -0
- package/src/components/Input/constants.ts +5 -0
- package/src/components/Input/index.ts +2 -0
- package/src/components/Link/Link.stories.tsx +2 -3
- package/src/components/Link/Link.theme.ts +16 -0
- package/src/components/Link/Link.tsx +11 -3
- package/src/components/List/List.stories.tsx +31 -35
- package/src/components/List/List.theme.ts +47 -0
- package/src/components/List/List.tsx +18 -22
- package/src/components/List/ListDropIndicator.tsx +7 -8
- package/src/components/List/Tree.stories.tsx +6 -7
- package/src/components/List/Tree.tsx +0 -1
- package/src/components/List/TreeDropIndicator.tsx +6 -6
- package/src/components/List/Treegrid.stories.tsx +29 -30
- package/src/components/List/Treegrid.theme.ts +35 -0
- package/src/components/List/Treegrid.tsx +24 -30
- package/src/components/Main/Main.stories.tsx +41 -24
- package/src/components/Main/Main.theme.ts +29 -0
- package/src/components/Main/Main.tsx +146 -88
- package/src/components/Main/constants.ts +6 -0
- package/src/components/Main/index.ts +1 -0
- package/src/components/MediaPlayer/MediaPlayer.stories.tsx +50 -0
- package/src/components/MediaPlayer/MediaPlayer.tsx +182 -0
- package/src/components/MediaPlayer/index.ts +5 -0
- package/src/components/{Menus → Menu}/ContextMenu.stories.tsx +2 -6
- package/src/components/{Menus → Menu}/ContextMenu.tsx +9 -33
- package/src/components/{Menus → Menu}/DropdownMenu.stories.tsx +2 -6
- package/src/components/{Menus → Menu}/DropdownMenu.tsx +130 -122
- package/src/components/Menu/Menu.theme.ts +48 -0
- package/src/components/Message/Message.stories.tsx +66 -14
- package/src/components/Message/Message.theme.ts +44 -0
- package/src/components/Message/Message.tsx +107 -38
- package/src/components/Panel/Panel.stories.tsx +67 -0
- package/src/components/Panel/Panel.theme.ts +41 -0
- package/src/components/Panel/Panel.tsx +121 -0
- package/src/components/Panel/index.ts +5 -0
- package/src/components/Popover/Popover.stories.tsx +7 -8
- package/src/components/Popover/Popover.theme.ts +40 -0
- package/src/components/Popover/Popover.tsx +104 -99
- package/src/components/ScrollArea/ScrollArea.stories.tsx +221 -36
- package/src/components/ScrollArea/ScrollArea.theme.ts +107 -0
- package/src/components/ScrollArea/ScrollArea.tsx +98 -79
- package/src/components/ScrollArea/index.ts +2 -1
- package/src/components/ScrollArea/scrollbar.ts +21 -0
- package/src/components/ScrollContainer/ScrollContainer.stories.tsx +47 -25
- package/src/components/ScrollContainer/ScrollContainer.tsx +239 -123
- package/src/components/Select/Select.stories.tsx +7 -8
- package/src/components/Select/Select.theme.ts +55 -0
- package/src/components/Select/Select.tsx +35 -35
- package/src/components/Separator/Separator.theme.ts +23 -0
- package/src/components/Separator/Separator.tsx +5 -8
- package/src/components/Skeleton/Skeleton.stories.tsx +51 -0
- package/src/components/Skeleton/Skeleton.theme.ts +22 -0
- package/src/components/Skeleton/Skeleton.tsx +26 -0
- package/src/components/Skeleton/index.ts +5 -0
- package/src/components/Splitter/Splitter.stories.tsx +83 -0
- package/src/components/Splitter/Splitter.theme.ts +18 -0
- package/src/components/Splitter/Splitter.tsx +122 -0
- package/src/components/Splitter/index.ts +5 -0
- package/src/components/Status/Status.stories.tsx +21 -18
- package/src/components/Status/Status.theme.ts +31 -0
- package/src/components/Status/Status.tsx +9 -7
- package/src/components/Tag/Tag.stories.tsx +6 -12
- package/src/components/Tag/Tag.theme.ts +22 -0
- package/src/components/Tag/Tag.tsx +3 -8
- package/src/components/Toast/Toast.stories.tsx +43 -23
- package/src/components/Toast/Toast.theme.ts +56 -0
- package/src/components/Toast/Toast.tsx +103 -54
- package/src/components/Toolbar/Toolbar.stories.tsx +2 -3
- package/src/components/Toolbar/Toolbar.theme.ts +36 -0
- package/src/components/Toolbar/Toolbar.tsx +237 -23
- package/src/components/Tooltip/Tooltip.stories.tsx +20 -28
- package/src/components/Tooltip/Tooltip.theme.ts +19 -0
- package/src/components/Tooltip/Tooltip.tsx +58 -55
- package/src/components/Tooltip/index.ts +1 -0
- package/src/components/Tooltip/tooltipContent.ts +16 -0
- package/src/components/index.ts +14 -7
- package/src/exemplars/generics.stories.tsx +40 -0
- package/src/exemplars/slot.stories.tsx +116 -0
- package/src/exemplars/tabster.stories.tsx +127 -0
- package/src/exemplars/virtualizer.stories.tsx +136 -0
- package/src/hooks/index.ts +1 -0
- package/src/hooks/useDensityContext.ts +4 -4
- package/src/hooks/useElevationContext.ts +2 -2
- package/src/hooks/useThemeContext.ts +1 -1
- package/src/hooks/useTranslationsContext.ts +1 -1
- package/src/index.ts +3 -1
- package/src/playground/Controls.stories.tsx +3 -10
- package/src/playground/Custom.stories.tsx +18 -41
- package/src/playground/Typography.stories.tsx +3 -3
- package/src/primitives/Container/Container.stories.tsx +29 -0
- package/src/primitives/Container/Container.tsx +21 -0
- package/src/primitives/Container/index.ts +5 -0
- package/src/{components → primitives}/DensityProvider/DensityProvider.tsx +2 -2
- package/src/{components → primitives}/ElevationProvider/ElevationProvider.tsx +1 -1
- package/src/primitives/Flex/Flex.stories.tsx +57 -0
- package/src/primitives/Flex/Flex.tsx +29 -0
- package/src/primitives/Flex/index.ts +5 -0
- package/src/primitives/Grid/Grid.stories.tsx +56 -0
- package/src/primitives/Grid/Grid.tsx +32 -0
- package/src/primitives/Grid/index.ts +5 -0
- package/src/primitives/ThemeProvider/ThemeProvider.stories.tsx +31 -0
- package/src/{components → primitives}/ThemeProvider/ThemeProvider.tsx +11 -11
- package/src/{components → primitives}/ThemeProvider/TranslationsProvider.tsx +1 -16
- package/src/primitives/ThemeProvider/index.ts +8 -0
- package/src/primitives/index.ts +11 -0
- package/src/testing/Loading.tsx +47 -0
- package/src/testing/decorators/withLayout.tsx +32 -21
- package/src/testing/decorators/withLayoutVariants.tsx +21 -24
- package/src/testing/decorators/withTheme.tsx +34 -20
- package/src/testing/index.ts +2 -0
- package/src/theme/bindTheme.ts +13 -0
- package/src/theme/defaultTheme.ts +83 -0
- package/src/theme/index.ts +37 -0
- package/src/translations.ts +33 -0
- package/src/util/index.ts +4 -3
- package/src/util/mobile.ts +11 -0
- package/src/util/slots.ts +129 -0
- package/src/util/usePx.ts +5 -1
- package/dist/lib/browser/chunk-N5GDJTT2.mjs +0 -4707
- package/dist/lib/browser/chunk-N5GDJTT2.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-SP7VQH72.mjs +0 -4709
- package/dist/lib/node-esm/chunk-SP7VQH72.mjs.map +0 -7
- package/dist/types/src/components/AnchoredOverflow/AnchoredOverflow.d.ts +0 -15
- package/dist/types/src/components/AnchoredOverflow/AnchoredOverflow.d.ts.map +0 -1
- package/dist/types/src/components/AnchoredOverflow/index.d.ts +0 -2
- package/dist/types/src/components/AnchoredOverflow/index.d.ts.map +0 -1
- package/dist/types/src/components/DensityProvider/index.d.ts.map +0 -1
- package/dist/types/src/components/ElevationProvider/index.d.ts.map +0 -1
- package/dist/types/src/components/Menus/ContextMenu.d.ts.map +0 -1
- package/dist/types/src/components/Menus/ContextMenu.stories.d.ts.map +0 -1
- package/dist/types/src/components/Menus/DropdownMenu.d.ts +0 -112
- package/dist/types/src/components/Menus/DropdownMenu.d.ts.map +0 -1
- package/dist/types/src/components/Menus/DropdownMenu.stories.d.ts.map +0 -1
- package/dist/types/src/components/Menus/index.d.ts.map +0 -1
- package/dist/types/src/components/ThemeProvider/ThemeProvider.d.ts.map +0 -1
- package/dist/types/src/components/ThemeProvider/TranslationsProvider.d.ts +0 -136
- package/dist/types/src/components/ThemeProvider/TranslationsProvider.d.ts.map +0 -1
- package/dist/types/src/components/ThemeProvider/index.d.ts +0 -3
- package/dist/types/src/components/ThemeProvider/index.d.ts.map +0 -1
- package/dist/types/src/util/ThemedClassName.d.ts +0 -5
- package/dist/types/src/util/ThemedClassName.d.ts.map +0 -1
- package/dist/types/src/util/domino.d.ts +0 -18
- package/dist/types/src/util/domino.d.ts.map +0 -1
- package/dist/types/src/util/hasIosKeyboard.d.ts +0 -2
- package/dist/types/src/util/hasIosKeyboard.d.ts.map +0 -1
- package/src/components/AnchoredOverflow/AnchoredOverflow.tsx +0 -59
- package/src/components/AnchoredOverflow/index.ts +0 -5
- package/src/components/ThemeProvider/index.ts +0 -8
- package/src/util/ThemedClassName.ts +0 -7
- package/src/util/domino.ts +0 -53
- package/src/util/hasIosKeyboard.ts +0 -8
- /package/dist/types/src/components/{Menus → Menu}/ContextMenu.stories.d.ts +0 -0
- /package/dist/types/src/components/{Menus → Menu}/index.d.ts +0 -0
- /package/dist/types/src/{components → primitives}/DensityProvider/index.d.ts +0 -0
- /package/dist/types/src/{components → primitives}/ElevationProvider/index.d.ts +0 -0
- /package/src/components/{Menus → Menu}/index.ts +0 -0
- /package/src/{components → primitives}/DensityProvider/index.ts +0 -0
- /package/src/{components → primitives}/ElevationProvider/index.ts +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/primitives/DensityProvider/DensityProvider.tsx", "../../../src/primitives/ElevationProvider/ElevationProvider.tsx", "../../../src/util/mobile.ts", "../../../src/primitives/ThemeProvider/TranslationsProvider.tsx", "../../../src/primitives/ThemeProvider/ThemeProvider.tsx", "../../../src/hooks/useElevationContext.ts", "../../../src/hooks/useThemeContext.ts", "../../../src/hooks/useSafeArea.ts", "../../../src/components/Tooltip/Tooltip.tsx", "../../../src/components/Tooltip/tooltipContent.ts", "../../../src/components/Column/withColumn.ts", "../../../src/components/ErrorFallback/ErrorStack.tsx", "../../../src/components/Input/constants.ts", "../../../src/components/Main/constants.ts", "../../../src/theme/bindTheme.ts", "../../../src/components/Avatars/Avatar.theme.ts", "../../../src/components/Breadcrumb/Breadcrumb.theme.ts", "../../../src/components/Button/Button.theme.ts", "../../../src/components/Button/IconButton.theme.ts", "../../../src/components/Card/Card.theme.ts", "../../../src/components/Column/Column.theme.ts", "../../../src/components/Dialog/Dialog.theme.ts", "../../../src/components/Focus/Focus.theme.ts", "../../../src/components/Icon/Icon.theme.ts", "../../../src/components/Input/Input.theme.ts", "../../../src/components/Link/Link.theme.ts", "../../../src/components/List/List.theme.ts", "../../../src/components/List/Treegrid.theme.ts", "../../../src/components/Main/Main.theme.ts", "../../../src/components/Menu/Menu.theme.ts", "../../../src/components/Message/Message.theme.ts", "../../../src/components/Panel/Panel.theme.ts", "../../../src/components/Popover/Popover.theme.ts", "../../../src/components/ScrollArea/ScrollArea.theme.ts", "../../../src/components/Select/Select.theme.ts", "../../../src/components/Separator/Separator.theme.ts", "../../../src/components/Skeleton/Skeleton.theme.ts", "../../../src/components/Splitter/Splitter.theme.ts", "../../../src/components/Status/Status.theme.ts", "../../../src/components/Tag/Tag.theme.ts", "../../../src/components/Toast/Toast.theme.ts", "../../../src/components/Toolbar/Toolbar.theme.ts", "../../../src/components/Tooltip/Tooltip.theme.ts", "../../../src/components/Calendar/Calendar.theme.ts", "../../../src/components/DatePicker/DatePicker.theme.ts", "../../../src/theme/defaultTheme.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type PropsWithChildren, createContext } from 'react';\n\nimport { type Density } from '@dxos/ui-types';\n\nexport interface DensityContextValue {\n density?: Density;\n}\n\nexport type DensityProviderProps = PropsWithChildren<{\n density?: Density;\n}>;\n\nexport const DensityContext = createContext<DensityContextValue>({ density: 'md' });\n\nexport const DensityProvider = ({ density, children }: DensityProviderProps) => (\n <DensityContext.Provider value={{ density }}>{children}</DensityContext.Provider>\n);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type PropsWithChildren, createContext } from 'react';\n\nimport { type Elevation } from '@dxos/ui-types';\n\nexport interface ElevationContextValue {\n elevation?: Elevation;\n}\n\nexport type ElevationProviderProps = PropsWithChildren<{\n elevation?: Elevation;\n}>;\n\nexport const ElevationContext = createContext<ElevationContextValue>({ elevation: 'base' });\n\nexport const ElevationProvider = ({ elevation, children }: ElevationProviderProps) => (\n <ElevationContext.Provider value={{ elevation }}>{children}</ElevationContext.Provider>\n);\n", "//\n// Copyright 2023 DXOS.org\n//\n\n/**\n * Determines whether the on-screen keyboard will appear on `focus` outside of a click handler.\n */\nexport const hasIosKeyboard = () => {\n // TODO(burdon): Better way to detect iOS keyboard?\n return !!navigator.userAgent.match(/iP(ad|od|hone).+Safari/);\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { type Locale, enUS as dtLocaleEnUs } from 'date-fns/locale';\nimport i18Next, { type Resource } from 'i18next';\nimport React, { type ReactNode, Suspense, createContext, useContext, useEffect, useState } from 'react';\nimport { initReactI18next, useTranslation as useI18NextTranslation } from 'react-i18next';\n\nconst initialLng = 'en-US';\nconst initialNs = 'dxos-common';\nconst initialDtLocale = dtLocaleEnUs;\n\nexport const resources = {\n [initialLng]: {\n [initialNs]: {\n 'loading translations': 'Loading translations…',\n },\n },\n} as const satisfies Resource;\n\nvoid i18Next.use(initReactI18next).init({\n resources,\n lng: initialLng,\n defaultNS: initialNs,\n interpolation: {\n escapeValue: false,\n },\n});\n\nexport interface TranslationsProviderProps {\n children?: ReactNode;\n // TODO(wittjosiah): Rename to `placeholder` to match ClientProvider?\n // Placeholder => loading, fallback => error.\n fallback?: ReactNode;\n resourceExtensions?: Resource[];\n appNs?: string;\n dtLocale?: Locale;\n}\n\nexport const TranslationsContext = createContext({\n appNs: initialNs,\n dtLocale: initialDtLocale,\n});\n\nexport const useTranslation = (...args: Parameters<typeof useI18NextTranslation>) => {\n const result = useI18NextTranslation(...args);\n const { dtLocale } = useContext(TranslationsContext);\n return { ...result, dtLocale };\n};\n\nexport const TranslationsProvider = ({\n fallback,\n resourceExtensions,\n children,\n appNs,\n dtLocale,\n}: TranslationsProviderProps) => {\n const [loaded, setLoaded] = useState(false);\n useEffect(() => {\n setLoaded(false);\n if (resourceExtensions && resourceExtensions.length) {\n resourceExtensions.forEach((resource) => {\n Object.keys(resource).forEach((language) => {\n Object.keys(resource[language]).forEach((ns) => {\n i18Next.addResourceBundle(language, ns, resource[language][ns]);\n });\n });\n });\n }\n\n setLoaded(true);\n }, [resourceExtensions]);\n\n // TODO(thure): This is not ideal, but i18next was causing `Suspense` to not render the fallback even when the child was asking for namespaces yet to be added.\n // TODO(burdon): Fallbacks should only appear after a short delay, and if the displayed then be visible for 500mx to avoid startup flickering.\n return (\n <TranslationsContext.Provider value={{ appNs: appNs ?? initialNs, dtLocale: dtLocale ?? initialDtLocale }}>\n <Suspense fallback={fallback}>{loaded ? children : fallback}</Suspense>\n </TranslationsContext.Provider>\n );\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { createKeyborg } from 'keyborg';\nimport React, { type PropsWithChildren, createContext, useEffect, useMemo } from 'react';\n\nimport { type Density, type Elevation, type ThemeFunction, type ThemeMode } from '@dxos/ui-types';\n\nimport { type SafeAreaPadding, useSafeArea } from '../../hooks';\nimport { hasIosKeyboard } from '../../util';\nimport { DensityProvider } from '../DensityProvider';\nimport { ElevationProvider } from '../ElevationProvider';\nimport { TranslationsProvider, type TranslationsProviderProps } from './TranslationsProvider';\n\nexport type ThemeContextValue = {\n tx: ThemeFunction<any>;\n themeMode: ThemeMode;\n hasIosKeyboard: boolean;\n safeAreaPadding?: SafeAreaPadding;\n noCache?: boolean;\n platform?: 'mobile' | 'desktop';\n};\n\n/**\n * @internal\n */\nexport const ThemeContext = createContext<ThemeContextValue | undefined>(undefined);\n\nexport type ThemeProviderProps = Omit<TranslationsProviderProps, 'children'> &\n Partial<Omit<ThemeContextValue, 'safeAreaPadding'>> &\n PropsWithChildren<{\n rootDensity?: Density;\n rootElevation?: Elevation;\n }>;\n\nexport const ThemeProvider = ({\n children,\n fallback = null,\n resourceExtensions,\n appNs,\n tx = (_path, _styleProps, ..._options) => undefined,\n themeMode = 'dark',\n rootDensity = 'md',\n noCache,\n platform,\n}: ThemeProviderProps) => {\n useEffect(() => {\n if (document.defaultView) {\n const kb = createKeyborg(document.defaultView);\n kb.subscribe(handleInputModalityChange);\n return () => kb.unsubscribe(handleInputModalityChange);\n }\n }, []);\n\n const safeAreaPadding = useSafeArea();\n // Destructure all props explicitly so useMemo deps are stable primitives, not a new `rest` object every render.\n const contextValue = useMemo(\n () => ({ tx, themeMode, hasIosKeyboard: hasIosKeyboard(), safeAreaPadding, noCache, platform }),\n [tx, themeMode, safeAreaPadding, noCache, platform],\n );\n\n return (\n <ThemeContext.Provider value={contextValue}>\n <TranslationsProvider\n {...{\n fallback,\n resourceExtensions,\n appNs,\n }}\n >\n <ElevationProvider elevation='base'>\n <DensityProvider density={rootDensity}>{children}</DensityProvider>\n </ElevationProvider>\n </TranslationsProvider>\n </ThemeContext.Provider>\n );\n};\n\nconst handleInputModalityChange = (isUsingKeyboard: boolean) => {\n if (isUsingKeyboard) {\n document.body.setAttribute('data-w-keyboard', 'true');\n } else {\n document.body.removeAttribute('data-w-keyboard');\n }\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useContext } from 'react';\n\nimport { type Elevation } from '@dxos/ui-types';\n\nimport { ElevationContext } from '../primitives';\n\nexport const useElevationContext = (propsElevation?: Elevation) => {\n const { elevation } = useContext(ElevationContext);\n return propsElevation ?? elevation;\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useContext } from 'react';\n\nimport { raise } from '@dxos/debug';\n\nimport { ThemeContext } from '../primitives';\n\nexport const useThemeContext = () => useContext(ThemeContext) ?? raise(new Error('Missing ThemeContext'));\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCallback, useState } from 'react';\n\nimport { useViewportResize } from '@dxos/react-hooks';\n\nexport type SafeAreaPadding = Record<'top' | 'right' | 'bottom' | 'left', number>;\n\nexport const initialSafeArea = { top: NaN, right: NaN, bottom: NaN, left: NaN };\n\nexport const useSafeArea = (): SafeAreaPadding => {\n const [padding, setPadding] = useState<SafeAreaPadding>(initialSafeArea);\n const handleResize = useCallback(() => {\n setPadding({\n top: parseFloat(getComputedStyle(document.documentElement).getPropertyValue('--safe-area-top')),\n right: parseFloat(getComputedStyle(document.documentElement).getPropertyValue('--safe-area-right')),\n bottom: parseFloat(getComputedStyle(document.documentElement).getPropertyValue('--safe-area-bottom')),\n left: parseFloat(getComputedStyle(document.documentElement).getPropertyValue('--safe-area-left')),\n });\n }, []);\n\n useViewportResize(handleResize);\n return padding;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\n// This is based upon `@radix-ui/react-tooltip` fetched 17 March 2025 at https://github.com/radix-ui/primitives at commit 6e75e11.\n// TODO(burdon): Replace with https://ui.shadcn.com/docs/components/radix/tooltip\n\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { createContextScope } from '@radix-ui/react-context';\nimport type { Scope } from '@radix-ui/react-context';\nimport { DismissableLayer } from '@radix-ui/react-dismissable-layer';\nimport { useId } from '@radix-ui/react-id';\nimport * as PopperPrimitive from '@radix-ui/react-popper';\nimport { type PopperAnchorProps, createPopperScope } from '@radix-ui/react-popper';\nimport { Portal as PortalPrimitive } from '@radix-ui/react-portal';\nimport { Presence } from '@radix-ui/react-presence';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { Slottable } from '@radix-ui/react-slot';\nimport { type TooltipProps } from '@radix-ui/react-tooltip';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport * as VisuallyHiddenPrimitive from '@radix-ui/react-visually-hidden';\nimport React, {\n type ComponentPropsWithoutRef,\n type ComponentRef,\n type FC,\n type ReactNode,\n type RefObject,\n type SyntheticEvent,\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport { useElevationContext, useThemeContext } from '../../hooks';\n\ntype TooltipScopedProps<P = {}> = P & { __scopeTooltip?: Scope };\nconst [createTooltipContext, createTooltipScope] = createContextScope('Tooltip', [createPopperScope]);\nconst usePopperScope = createPopperScope();\n\n//\n// Tooltip\n//\n\nconst DEFAULT_DELAY_DURATION = 700;\nconst TOOLTIP_OPEN = 'tooltip.open';\nconst TOOLTIP_NAME = 'Tooltip';\n\ntype TooltipContextValue = {\n contentId: string;\n open: boolean;\n stateAttribute: 'closed' | 'delayed-open' | 'instant-open';\n trigger: TooltipTriggerElement | null;\n onTriggerChange(trigger: TooltipTriggerElement | null, content?: ReactNode, side?: TooltipSide): void;\n onTriggerEnter(): void;\n onTriggerLeave(): void;\n onOpen(): void;\n onClose(): void;\n onPointerInTransitChange(inTransit: boolean): void;\n isPointerInTransitRef: RefObject<boolean>;\n disableHoverableContent: boolean;\n};\n\nconst [TooltipContextProvider, useTooltipContext] = createTooltipContext<TooltipContextValue>(TOOLTIP_NAME);\n\ntype TooltipProviderProps = {\n children?: ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n /**\n * The duration from when the pointer enters the trigger until the tooltip gets opened. This will\n * override the prop with the same name passed to Provider.\n * @defaultValue 700\n */\n delayDuration?: number;\n /**\n * When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.\n * @defaultValue false\n */\n disableHoverableContent?: boolean;\n /**\n * How much time a user has to enter another trigger without incurring a delay again.\n * @defaultValue 300\n */\n skipDelayDuration?: number;\n};\n\nconst TooltipProvider: FC<TooltipProviderProps> = (props: TooltipScopedProps<TooltipProviderProps>) => {\n const {\n __scopeTooltip,\n children,\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n disableHoverableContent = false,\n delayDuration = DEFAULT_DELAY_DURATION,\n skipDelayDuration = 300,\n } = props;\n const isOpenDelayedRef = useRef(true);\n const isPointerInTransitRef = useRef(false);\n const skipDelayTimerRef = useRef(0);\n\n useEffect(() => {\n const skipDelayTimer = skipDelayTimerRef.current;\n return () => window.clearTimeout(skipDelayTimer);\n }, []);\n\n const popperScope = usePopperScope(__scopeTooltip);\n const [trigger, setTrigger] = useState<HTMLButtonElement | null>(null);\n const [content, setContent] = useState<ReactNode>(null);\n const [side, setSide] = useState<TooltipSide | undefined>(undefined);\n const triggerRef = useRef<HTMLButtonElement | null>(trigger);\n const handleTriggerChange = useCallback(\n (nextTrigger: HTMLButtonElement | null, nextContent?: ReactNode, nextSide?: TooltipSide) => {\n setTrigger(nextTrigger);\n triggerRef.current = nextTrigger;\n setContent(nextContent ?? null);\n setSide(nextSide);\n },\n [],\n );\n const contentId = useId();\n const openTimerRef = useRef(0);\n const wasOpenDelayedRef = useRef(false);\n const handleOpenChange = useCallback(\n (open: boolean) => {\n if (open) {\n window.clearTimeout(skipDelayTimerRef.current);\n isOpenDelayedRef.current = false;\n // as `onChange` is called within a lifecycle method we\n // avoid dispatching via `dispatchDiscreteCustomEvent`.\n document.dispatchEvent(new CustomEvent(TOOLTIP_OPEN));\n } else {\n window.clearTimeout(skipDelayTimerRef.current);\n skipDelayTimerRef.current = window.setTimeout(() => (isOpenDelayedRef.current = true), skipDelayDuration);\n }\n onOpenChange?.(open);\n },\n [skipDelayDuration, onOpenChange],\n );\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: handleOpenChange,\n });\n const stateAttribute = useMemo(() => {\n return open ? (wasOpenDelayedRef.current ? 'delayed-open' : 'instant-open') : 'closed';\n }, [open]);\n\n const handleOpen = useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n wasOpenDelayedRef.current = false;\n setOpen(true);\n }, [setOpen]);\n\n const handleClose = useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n setOpen(false);\n }, [setOpen]);\n\n const handleDelayedOpen = useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = window.setTimeout(() => {\n wasOpenDelayedRef.current = true;\n setOpen(true);\n openTimerRef.current = 0;\n }, delayDuration);\n }, [delayDuration, setOpen]);\n\n useEffect(() => {\n return () => {\n if (openTimerRef.current) {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n };\n }, []);\n\n const { tx } = useThemeContext();\n const elevation = useElevationContext();\n\n return (\n <PopperPrimitive.Root {...popperScope}>\n <TooltipContextProvider\n scope={__scopeTooltip}\n contentId={contentId}\n open={open}\n stateAttribute={stateAttribute}\n trigger={trigger}\n onTriggerChange={handleTriggerChange}\n onTriggerEnter={useCallback(() => {\n if (isOpenDelayedRef.current) {\n handleDelayedOpen();\n } else {\n handleOpen();\n }\n }, [isOpenDelayedRef, handleDelayedOpen, handleOpen])}\n onTriggerLeave={useCallback(() => {\n if (disableHoverableContent) {\n handleClose();\n } else {\n // Clear the timer in case the pointer leaves the trigger before the tooltip is opened.\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n }, [handleClose, disableHoverableContent])}\n onOpen={handleOpen}\n onClose={handleClose}\n disableHoverableContent={disableHoverableContent}\n isPointerInTransitRef={isPointerInTransitRef}\n onPointerInTransitChange={useCallback((inTransit: boolean) => {\n isPointerInTransitRef.current = inTransit;\n }, [])}\n >\n <TooltipContent side={side} className={tx('tooltip.content', { elevation })}>\n {content}\n <TooltipArrow className={tx('tooltip.arrow')} />\n </TooltipContent>\n <TooltipVirtualTrigger virtualRef={triggerRef as RefObject<HTMLButtonElement>} />\n {children}\n </TooltipContextProvider>\n </PopperPrimitive.Root>\n );\n};\n\nTooltipProvider.displayName = TOOLTIP_NAME;\n\n//\n// TooltipVirtualTrigger\n//\n\nconst TooltipVirtualTrigger = ({\n virtualRef,\n __scopeTooltip,\n}: TooltipScopedProps<Pick<PopperAnchorProps, 'virtualRef'>>) => {\n const popperScope = usePopperScope(__scopeTooltip);\n return <PopperPrimitive.Anchor asChild {...popperScope} virtualRef={virtualRef} />;\n};\n\n//\n// TooltipTrigger\n//\n\nconst TRIGGER_NAME = 'Tooltip.Trigger';\n\ntype TooltipTriggerElement = ComponentRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = ComponentPropsWithoutRef<typeof Primitive.button>;\ntype TooltipTriggerProps = Omit<PrimitiveButtonProps, 'content'> &\n Pick<TooltipProps, 'delayDuration'> & {\n content?: ReactNode;\n side?: TooltipSide;\n onInteract?: (event: SyntheticEvent) => void;\n };\n\nconst TooltipTrigger = forwardRef<TooltipTriggerElement, TooltipTriggerProps>(\n (props: TooltipScopedProps<TooltipTriggerProps>, forwardedRef) => {\n const {\n __scopeTooltip,\n onInteract,\n // TODO(thure): Pass `delayDuration` into the context.\n delayDuration: _delayDuration,\n side,\n content,\n ...triggerProps\n } = props;\n const context = useTooltipContext(TRIGGER_NAME, __scopeTooltip);\n const ref = useRef<TooltipTriggerElement>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const isPointerDownRef = useRef(false);\n const hasPointerMoveOpenedRef = useRef(false);\n const handlePointerUp = useCallback(() => (isPointerDownRef.current = false), []);\n\n useEffect(() => {\n return () => document.removeEventListener('pointerup', handlePointerUp);\n }, [handlePointerUp]);\n\n return (\n <Primitive.button\n // We purposefully avoid adding `type=button` here because tooltip triggers are also\n // commonly anchors and the anchor `type` attribute signifies MIME type.\n aria-describedby={context.open ? context.contentId : undefined}\n data-state={context.stateAttribute}\n {...triggerProps}\n ref={composedRefs}\n onPointerMove={composeEventHandlers(props.onPointerMove, (event) => {\n if (event.pointerType === 'touch') {\n return;\n }\n if (!hasPointerMoveOpenedRef.current && !context.isPointerInTransitRef.current) {\n onInteract?.(event);\n if (event.defaultPrevented) {\n return;\n }\n context.onTriggerChange(ref.current, content, side);\n context.onTriggerEnter();\n hasPointerMoveOpenedRef.current = true;\n }\n })}\n onPointerLeave={composeEventHandlers(props.onPointerLeave, () => {\n context.onTriggerLeave();\n hasPointerMoveOpenedRef.current = false;\n })}\n onPointerDown={composeEventHandlers(props.onPointerDown, () => {\n if (context.open) {\n context.onClose();\n }\n isPointerDownRef.current = true;\n document.addEventListener('pointerup', handlePointerUp, { once: true });\n })}\n onFocus={props.onFocus}\n onBlur={composeEventHandlers(props.onBlur, context.onClose)}\n onClick={composeEventHandlers(props.onClick, context.onClose)}\n />\n );\n },\n);\n\nTooltipTrigger.displayName = TRIGGER_NAME;\n\n//\n// TooltipPortal\n//\n\nconst PORTAL_NAME = 'Tooltip.Portal';\n\ntype PortalContextValue = { forceMount?: true };\nconst [PortalProvider, usePortalContext] = createTooltipContext<PortalContextValue>(PORTAL_NAME, {\n forceMount: undefined,\n});\n\ntype PortalProps = ComponentPropsWithoutRef<typeof PortalPrimitive>;\ntype TooltipPortalProps = {\n children?: ReactNode;\n /**\n * Specify a container element to portal the content into.\n */\n container?: PortalProps['container'];\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n};\n\nconst TooltipPortal: FC<TooltipPortalProps> = (props: TooltipScopedProps<TooltipPortalProps>) => {\n const { __scopeTooltip, forceMount, children, container } = props;\n const context = useTooltipContext(PORTAL_NAME, __scopeTooltip);\n return (\n <PortalProvider scope={__scopeTooltip} forceMount={forceMount}>\n <Presence present={forceMount || context.open}>\n <PortalPrimitive asChild container={container}>\n {children}\n </PortalPrimitive>\n </Presence>\n </PortalProvider>\n );\n};\n\nTooltipPortal.displayName = PORTAL_NAME;\n\n//\n// TooltipContent\n//\n\nconst CONTENT_NAME = 'Tooltip.Content';\n\ntype TooltipContentElement = TooltipContentImplElement;\ntype TooltipContentProps = TooltipContentImplProps & {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n};\n\nconst TooltipContent = forwardRef<TooltipContentElement, TooltipContentProps>(\n (props: TooltipScopedProps<TooltipContentProps>, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeTooltip);\n const { forceMount = portalContext.forceMount, side = 'top', ...contentProps } = props;\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n\n return (\n <Presence present={forceMount || context.open}>\n {context.disableHoverableContent ? (\n <TooltipContentImpl side={side} {...contentProps} ref={forwardedRef} />\n ) : (\n <TooltipContentHoverable side={side} {...contentProps} ref={forwardedRef} />\n )}\n </Presence>\n );\n },\n);\n\ntype Point = { x: number; y: number };\ntype Polygon = Point[];\n\ntype TooltipContentHoverableElement = TooltipContentImplElement;\ntype TooltipContentHoverableProps = TooltipContentImplProps;\n\nconst TooltipContentHoverable = forwardRef<TooltipContentHoverableElement, TooltipContentHoverableProps>(\n (props: TooltipScopedProps<TooltipContentHoverableProps>, forwardedRef) => {\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n const ref = useRef<TooltipContentHoverableElement>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [pointerGraceArea, setPointerGraceArea] = useState<Polygon | null>(null);\n\n const { trigger, onClose } = context;\n const content = ref.current;\n\n const { onPointerInTransitChange } = context;\n\n const handleRemoveGraceArea = useCallback(() => {\n setPointerGraceArea(null);\n onPointerInTransitChange(false);\n }, [onPointerInTransitChange]);\n\n const handleCreateGraceArea = useCallback(\n (event: PointerEvent, hoverTarget: HTMLElement) => {\n const currentTarget = event.currentTarget as HTMLElement;\n const exitPoint = { x: event.clientX, y: event.clientY };\n const exitSide = getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());\n const paddedExitPoints = getPaddedExitPoints(exitPoint, exitSide);\n const hoverTargetPoints = getPointsFromRect(hoverTarget.getBoundingClientRect());\n const graceArea = getHull([...paddedExitPoints, ...hoverTargetPoints]);\n setPointerGraceArea(graceArea);\n onPointerInTransitChange(true);\n },\n [onPointerInTransitChange],\n );\n\n useEffect(() => {\n return () => handleRemoveGraceArea();\n }, [handleRemoveGraceArea]);\n\n useEffect(() => {\n if (trigger && content) {\n const handleTriggerLeave = (event: PointerEvent) => handleCreateGraceArea(event, content);\n const handleContentLeave = (event: PointerEvent) => handleCreateGraceArea(event, trigger);\n\n trigger.addEventListener('pointerleave', handleTriggerLeave);\n content.addEventListener('pointerleave', handleContentLeave);\n return () => {\n trigger.removeEventListener('pointerleave', handleTriggerLeave);\n content.removeEventListener('pointerleave', handleContentLeave);\n };\n }\n }, [trigger, content, handleCreateGraceArea, handleRemoveGraceArea]);\n\n useEffect(() => {\n if (pointerGraceArea) {\n const handleTrackPointerGrace = (event: PointerEvent) => {\n const target = event.target as HTMLElement;\n const pointerPosition = { x: event.clientX, y: event.clientY };\n const hasEnteredTarget = trigger?.contains(target) || content?.contains(target);\n const isPointerOutsideGraceArea = !isPointInPolygon(pointerPosition, pointerGraceArea);\n\n if (hasEnteredTarget) {\n handleRemoveGraceArea();\n } else if (isPointerOutsideGraceArea) {\n handleRemoveGraceArea();\n onClose();\n }\n };\n document.addEventListener('pointermove', handleTrackPointerGrace);\n return () => document.removeEventListener('pointermove', handleTrackPointerGrace);\n }\n }, [trigger, content, pointerGraceArea, onClose, handleRemoveGraceArea]);\n\n return <TooltipContentImpl {...props} ref={composedRefs} />;\n },\n);\n\nconst [VisuallyHiddenContentContextProvider, useVisuallyHiddenContentContext] = createTooltipContext(TOOLTIP_NAME, {\n isInside: false,\n});\n\ntype TooltipContentImplElement = ComponentRef<typeof PopperPrimitive.Content>;\ntype DismissableLayerProps = ComponentPropsWithoutRef<typeof DismissableLayer>;\ntype PopperContentProps = ComponentPropsWithoutRef<typeof PopperPrimitive.Content>;\ntype TooltipContentImplProps = Omit<PopperContentProps, 'onPlaced'> & {\n /**\n * A more descriptive label for accessibility purpose\n */\n 'aria-label'?: string;\n\n /**\n * Event handler called when the escape key is down.\n * Can be prevented.\n */\n onEscapeKeyDown?: DismissableLayerProps['onEscapeKeyDown'];\n /**\n * Event handler called when the a `pointerdown` event happens outside of the `Tooltip`.\n * Can be prevented.\n */\n onPointerDownOutside?: DismissableLayerProps['onPointerDownOutside'];\n};\n\nconst TooltipContentImpl = forwardRef<TooltipContentImplElement, TooltipContentImplProps>(\n (props: TooltipScopedProps<TooltipContentImplProps>, forwardedRef) => {\n const {\n __scopeTooltip,\n children,\n 'aria-label': ariaLabel,\n onEscapeKeyDown,\n onPointerDownOutside,\n ...contentProps\n } = props;\n const context = useTooltipContext(CONTENT_NAME, __scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const { onClose } = context;\n\n // Close this tooltip if another one opens\n useEffect(() => {\n document.addEventListener(TOOLTIP_OPEN, onClose);\n return () => document.removeEventListener(TOOLTIP_OPEN, onClose);\n }, [onClose]);\n\n // Close the tooltip if the trigger is scrolled\n useEffect(() => {\n if (context.trigger) {\n const handleScroll = (event: Event) => {\n const target = event.target as HTMLElement;\n if (target?.contains(context.trigger)) {\n onClose();\n }\n };\n window.addEventListener('scroll', handleScroll, { capture: true });\n return () => window.removeEventListener('scroll', handleScroll, { capture: true });\n }\n }, [context.trigger, onClose]);\n\n return (\n <DismissableLayer\n asChild\n disableOutsidePointerEvents={false}\n onEscapeKeyDown={onEscapeKeyDown}\n onPointerDownOutside={onPointerDownOutside}\n onFocusOutside={(event) => event.preventDefault()}\n onDismiss={onClose}\n >\n <PopperPrimitive.Content\n data-state={context.stateAttribute}\n {...popperScope}\n {...contentProps}\n ref={forwardedRef}\n style={{\n ...contentProps.style,\n // re-namespace exposed content custom properties\n ...{\n '--radix-tooltip-content-transform-origin': 'var(--radix-popper-transform-origin)',\n '--radix-tooltip-content-available-width': 'var(--radix-popper-available-width)',\n '--radix-tooltip-content-available-height': 'var(--radix-popper-available-height)',\n '--radix-tooltip-trigger-width': 'var(--radix-popper-anchor-width)',\n '--radix-tooltip-trigger-height': 'var(--radix-popper-anchor-height)',\n },\n }}\n >\n <Slottable>{children}</Slottable>\n <VisuallyHiddenContentContextProvider scope={__scopeTooltip} isInside={true}>\n <VisuallyHiddenPrimitive.Root id={context.contentId} role='tooltip'>\n {ariaLabel || children}\n </VisuallyHiddenPrimitive.Root>\n </VisuallyHiddenContentContextProvider>\n </PopperPrimitive.Content>\n </DismissableLayer>\n );\n },\n);\n\nTooltipContent.displayName = CONTENT_NAME;\n\n//\n// TooltipArrow\n//\n\nconst ARROW_NAME = 'Tooltip.Arrow';\n\ntype TooltipArrowElement = ComponentRef<typeof PopperPrimitive.Arrow>;\ntype PopperArrowProps = ComponentPropsWithoutRef<typeof PopperPrimitive.Arrow>;\ntype TooltipArrowProps = PopperArrowProps;\n\nconst TooltipArrow = forwardRef<TooltipArrowElement, TooltipArrowProps>(\n (props: TooltipScopedProps<TooltipArrowProps>, forwardedRef) => {\n const { __scopeTooltip, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeTooltip);\n const visuallyHiddenContentContext = useVisuallyHiddenContentContext(ARROW_NAME, __scopeTooltip);\n // if the arrow is inside the `VisuallyHidden`, we don't want to render it all to\n // prevent issues in positioning the arrow due to the duplicate\n return visuallyHiddenContentContext.isInside ? null : (\n <PopperPrimitive.Arrow {...popperScope} {...arrowProps} ref={forwardedRef} />\n );\n },\n);\n\nTooltipArrow.displayName = ARROW_NAME;\n\ntype TooltipSide = NonNullable<TooltipContentProps['side']>;\n\nconst getExitSideFromRect = (point: Point, rect: DOMRect): TooltipSide => {\n const top = Math.abs(rect.top - point.y);\n const bottom = Math.abs(rect.bottom - point.y);\n const right = Math.abs(rect.right - point.x);\n const left = Math.abs(rect.left - point.x);\n\n switch (Math.min(top, bottom, right, left)) {\n case left:\n return 'left';\n case right:\n return 'right';\n case top:\n return 'top';\n case bottom:\n return 'bottom';\n default:\n throw new Error('unreachable');\n }\n};\n\nconst getPaddedExitPoints = (exitPoint: Point, exitSide: TooltipSide, padding = 5) => {\n const paddedExitPoints: Point[] = [];\n switch (exitSide) {\n case 'top':\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y + padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding },\n );\n break;\n case 'bottom':\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y - padding },\n );\n break;\n case 'left':\n paddedExitPoints.push(\n { x: exitPoint.x + padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding },\n );\n break;\n case 'right':\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x - padding, y: exitPoint.y + padding },\n );\n break;\n }\n return paddedExitPoints;\n};\n\nconst getPointsFromRect = (rect: DOMRect) => {\n const { top, right, bottom, left } = rect;\n return [\n { x: left, y: top },\n { x: right, y: top },\n { x: right, y: bottom },\n { x: left, y: bottom },\n ];\n};\n\n// Determine if a point is inside of a polygon.\n// Based on https://github.com/substack/point-in-polygon\nconst isPointInPolygon = (point: Point, polygon: Polygon) => {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const xi = polygon[i].x;\n const yi = polygon[i].y;\n const xj = polygon[j].x;\n const yj = polygon[j].y;\n\n // prettier-ignore\n const intersect = ((yi > y) !== (yj > y)) && (x < (xj - xi) * (y - yi) / (yj - yi) + xi);\n if (intersect) {\n inside = !inside;\n }\n }\n\n return inside;\n};\n\n// Returns a new array of points representing the convex hull of the given set of points.\n// https://www.nayuki.io/page/convex-hull-algorithm\nconst getHull = <P extends Point>(points: Readonly<Array<P>>): Array<P> => {\n const newPoints: Array<P> = points.slice();\n newPoints.sort((a: Point, b: Point) => {\n if (a.x < b.x) {\n return -1;\n } else if (a.x > b.x) {\n return +1;\n } else if (a.y < b.y) {\n return -1;\n } else if (a.y > b.y) {\n return +1;\n } else {\n return 0;\n }\n });\n return getHullPresorted(newPoints);\n};\n\n// Returns the convex hull, assuming that each points[i] <= points[i + 1]. Runs in O(n) time.\nconst getHullPresorted = <P extends Point>(points: Readonly<Array<P>>): Array<P> => {\n if (points.length <= 1) {\n return points.slice();\n }\n\n const upperHull: Array<P> = [];\n for (let i = 0; i < points.length; i++) {\n const p = points[i];\n while (upperHull.length >= 2) {\n const q = upperHull[upperHull.length - 1];\n const r = upperHull[upperHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) {\n upperHull.pop();\n } else {\n break;\n }\n }\n upperHull.push(p);\n }\n upperHull.pop();\n\n const lowerHull: Array<P> = [];\n for (let i = points.length - 1; i >= 0; i--) {\n const p = points[i];\n while (lowerHull.length >= 2) {\n const q = lowerHull[lowerHull.length - 1];\n const r = lowerHull[lowerHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) {\n lowerHull.pop();\n } else {\n break;\n }\n }\n lowerHull.push(p);\n }\n lowerHull.pop();\n\n if (\n upperHull.length === 1 &&\n lowerHull.length === 1 &&\n upperHull[0].x === lowerHull[0].x &&\n upperHull[0].y === lowerHull[0].y\n ) {\n return upperHull;\n } else {\n return upperHull.concat(lowerHull);\n }\n};\n\n//\n// Tooltip\n//\n\nexport const Tooltip = {\n Provider: TooltipProvider,\n Trigger: TooltipTrigger,\n};\n\nexport { createTooltipScope, useTooltipContext };\n\nexport type { TooltipProviderProps, TooltipTriggerProps, TooltipScopedProps, TooltipSide };\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx, surfaceShadow, surfaceZIndex } from '@dxos/ui-theme';\nimport { type ComponentFunction } from '@dxos/ui-types';\n\nimport { type TooltipStyleProps } from './Tooltip.theme';\n\nexport const tooltipContent: ComponentFunction<TooltipStyleProps> = ({ elevation }, ...etc) =>\n mx(\n 'inline-flex items-center p-1 max-w-64 text-sm bg-inverse-surface text-inverse-fg rounded-sm',\n surfaceShadow({ elevation: 'positioned' }),\n surfaceZIndex({ elevation, level: 'tooltip' }),\n ...etc,\n );\n", "//\n// Copyright 2026 DXOS.org\n//\n\n/**\n * Column-aware theme utilities.\n * Components apply these in their theme functions to participate in the Column grid\n * without importing Column React components.\n *\n * CSS custom property cascade:\n * - Column.Root sets `--dx-col: 2 / span 1` (center column placement).\n * - ScrollArea.Viewport resets `--dx-col: auto` after consuming `--gutter`.\n * - Components apply `grid-column: var(--dx-col, auto)` to auto-center in Column\n * or do nothing outside Column / inside ScrollArea.\n */\nexport const withColumn = {\n /** Centers element in the Column grid via --dx-col. No-op outside Column or inside ScrollArea. */\n center: () => '[grid-column:var(--dx-col,auto)]',\n\n /** Propagates the Column grid to children via subgrid. No-op outside Column.\n * Direct children default to center column unless they are a dx-container (ScrollArea). */\n propagate: () =>\n '[.dx-column-root_&]:col-span-full [.dx-column-root_&]:grid [.dx-column-root_&]:grid-cols-subgrid [.dx-column-root_&]:[&>*:not(.dx-container)]:[grid-column:var(--dx-col,auto)]',\n\n /** Resets --dx-col after consuming --gutter. Applied by ScrollArea.Viewport. */\n consumed: () => '[--dx-col:auto]',\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport ErrorStackParser from 'error-stack-parser';\nimport React from 'react';\n\nimport { mx } from '@dxos/ui-theme';\n\ntype LocalFrame = { href: string; fileName: string };\n\nexport type ParsedStackFrame = ReturnType<typeof ErrorStackParser.parse>[number];\n\nexport type ErrorStackProps = {\n /** When set, these frames are shown instead of parsing `error`. */\n frames?: ParsedStackFrame[];\n /** Used when `frames` is omitted. */\n error?: Error;\n};\n\n/**\n * Parses `captureOwnerStack()` output (React dev) into frames for {@link ErrorStack}.\n * Prefixes a synthetic Error line when needed so `error-stack-parser` can read V8-style stacks.\n */\nexport const parseCaptureOwnerStack = (stack: string | null): ParsedStackFrame[] | null => {\n if (stack == null || stack.length === 0) {\n return null;\n }\n const err = new Error();\n err.stack = stack;\n try {\n return ErrorStackParser.parse(err);\n } catch {\n err.stack = `Error\\n${stack}`;\n try {\n return ErrorStackParser.parse(err);\n } catch {\n return null;\n }\n }\n};\n\n/**\n * Renders a parsed error stack trace with tree connector symbols and clickable vscode:// links for local frames.\n */\nexport const ErrorStack = ({ error, frames: framesProp }: ErrorStackProps) => {\n const frames = framesProp ?? (error ? ErrorStackParser.parse(error) : []);\n if (frames.length === 0) {\n return null;\n }\n\n return (\n <div className='font-mono text-sm'>\n {frames.map((frame, i) => {\n const isLast = i === frames.length - 1;\n const local = frame.fileName\n ? parseLocalFrame(frame.fileName, frame.lineNumber, frame.columnNumber)\n : undefined;\n const functionName = frame.functionName ?? '<anonymous>';\n return (\n <div\n key={i}\n className={mx(\n 'grid grid-cols-[16px_1fr_auto_auto] items-stretch gap-x-2',\n local && 'cursor-pointer hover:bg-hover-surface',\n )}\n >\n {/* Tree connector: vertical line full-height + horizontal branch at midpoint */}\n <div className='relative'>\n <div\n className={mx(\n 'absolute left-1/2 -translate-x-1/2 w-px bg-neutral-500',\n isLast ? 'top-0 h-1/2' : 'inset-y-0',\n )}\n />\n <div className='absolute top-1/2 -translate-y-1/2 left-1/2 right-0 h-px bg-neutral-500' />\n </div>\n\n {local ? (\n <a href={local.href} className='truncate self-center'>\n {functionName}\n </a>\n ) : (\n <span className='text-subdued truncate self-center'>{functionName}</span>\n )}\n <span className='text-xs text-subdued truncate self-center truncate'>{local?.fileName ?? ''}</span>\n <span className='text-xs text-subdued text-right self-center'>\n {local ? `${frame.lineNumber}:${frame.columnNumber}` : ''}\n </span>\n </div>\n );\n })}\n </div>\n );\n};\n\n/**\n * Parses a Vite `/@fs/` URL into a `vscode://` deep link and short filename.\n * Returns undefined if the URL cannot be resolved to a local file.\n */\nconst parseLocalFrame = (fileUrl: string, line?: number, col?: number): LocalFrame | undefined => {\n try {\n const { pathname } = new URL(fileUrl);\n if (!pathname.startsWith('/@fs/')) {\n return undefined;\n }\n\n const FILE_PREFIX = '/@fs';\n const localPath = pathname.slice(FILE_PREFIX.length); // /@fs/Users/... → /Users/...\n const PKG_PREFIX = '/packages/';\n const i = localPath.indexOf(PKG_PREFIX);\n const path = i === -1 ? localPath : localPath.substring(i + PKG_PREFIX.length);\n return {\n href: `vscode://file/${localPath}:${line ?? 1}:${col ?? 1}`,\n fileName: path,\n };\n } catch {\n return undefined;\n }\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nexport const inputTextLabel = 'py-1 text-sm text-description';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nexport const mainPaddingTransitions = 'dx-main-content-padding-transitions';\nexport const mainIntrinsicSize = 'dx-main-intrinsic-size';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ClassNameArray, type ComponentFunction, type Theme, type ThemeFunction } from '@dxos/ui-types';\nimport { getDeep } from '@dxos/util';\n\nexport const bindTheme = <P extends Record<string, any>>(theme: Theme<Record<string, any>>): ThemeFunction<P> => {\n return (path: string, styleProps?: P, ...etc: ClassNameArray) => {\n const result = getDeep<Theme<P> | ComponentFunction<P>>(theme, path.split('.'));\n return typeof result === 'function' ? result(styleProps ?? ({} as P), ...etc) : undefined;\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx, getSize, getHeight } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Size, type Theme } from '@dxos/ui-types';\n\nexport type AvatarStyleProps = Partial<{\n size: Size;\n srOnly: boolean;\n status: 'active' | 'inactive' | 'current' | 'error' | 'warning' | 'internal';\n animation: 'pulse' | 'none';\n variant: 'circle' | 'square';\n inGroup: boolean;\n}>;\n\nconst root: ComponentFunction<AvatarStyleProps> = ({ size = 10, inGroup }, ...etc) =>\n mx(\n 'relative inline-flex shrink-0',\n getSize(size),\n inGroup && (size === 'px' || size <= 3 ? '-mr-1' : '-mr-2'),\n ...etc,\n );\n\nconst label: ComponentFunction<AvatarStyleProps> = ({ srOnly }, ...etc) => mx(srOnly && 'sr-only', ...etc);\n\nconst description: ComponentFunction<AvatarStyleProps> = ({ srOnly }, ...etc) =>\n mx('text-description', srOnly && 'sr-only', ...etc);\n\nconst frame: ComponentFunction<AvatarStyleProps> = ({ variant }, ...etc) =>\n mx('h-full w-full bg-(--surface-bg)', variant === 'circle' ? 'rounded-full' : 'rounded-sm', ...etc);\n\nconst statusIcon: ComponentFunction<AvatarStyleProps> = ({ status, size = 3 }, ...etc) =>\n mx(\n 'absolute bottom-0 end-0',\n getSize(size),\n status === 'inactive'\n ? 'text-amber-400 dark:text-amber-300'\n : status === 'active'\n ? 'text-emerald-400 dark:text-emerald-300'\n : 'text-neutral-400 dark:text-neutral-300',\n ...etc,\n );\n\nconst ring: ComponentFunction<AvatarStyleProps> = ({ status, variant, animation }, ...etc) =>\n mx(\n 'absolute inset-0 border-2',\n variant === 'circle' ? 'rounded-full' : 'rounded-sm',\n status === 'current'\n ? 'border-primary-400 dark:border-primary-500'\n : status === 'active'\n ? 'border-emerald-400 dark:border-emerald-400'\n : status === 'error'\n ? 'border-rose-400 dark:border-rose-500'\n : status === 'warning'\n ? 'border-amber-400 dark:border-amber-500'\n : status === 'inactive'\n ? 'border-separator'\n : status === 'internal'\n ? 'border-fuchsia-600'\n : 'border-[color:var(--surface-bg)]',\n animation === 'pulse' ? 'animate-halo-pulse' : '',\n ...etc,\n );\n\nconst fallbackText: ComponentFunction<AvatarStyleProps> = (_props, ...etc) => mx('fill-white', ...etc);\n\nconst group: ComponentFunction<AvatarStyleProps> = (_props, ...etc) => mx('inline-flex items-center', ...etc);\n\nconst groupLabel: ComponentFunction<AvatarStyleProps> = ({ size, srOnly }, ...etc) =>\n mx(\n srOnly\n ? 'sr-only'\n : 'rounded-full truncate text-sm leading-none py-1 px-2 relative z-[1] flex items-center justify-center',\n size && getHeight(size),\n ...etc,\n );\n\nconst groupDescription: ComponentFunction<AvatarStyleProps> = ({ srOnly }, ...etc) =>\n mx(srOnly ? 'sr-only' : 'text-description', ...etc);\n\nexport const avatarTheme: Theme<AvatarStyleProps> = {\n root,\n label,\n description,\n statusIcon,\n frame,\n ring,\n fallbackText,\n group,\n groupLabel,\n groupDescription,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type breadcrumbStyleProps = {};\n\nconst root: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx('shrink-0 flex items-center', ...etc);\n\nconst list: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx('contents', ...etc);\n\nconst listItem: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx('contents', ...etc);\n\nconst current: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx(...etc);\n\nconst separator: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx('opacity-50', ...etc);\n\nexport const breadcrumbTheme: Theme<breadcrumbStyleProps> = {\n root,\n list,\n listItem,\n current,\n separator,\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport type { ComponentFunction, Density, Elevation, Theme } from '@dxos/ui-types';\n\nexport type ButtonStyleProps = Partial<{\n inGroup?: boolean;\n textWrap?: boolean;\n density: Density;\n elevation: Elevation;\n disabled: boolean;\n variant: 'default' | 'primary' | 'ghost' | 'outline';\n}>;\n\nconst root: ComponentFunction<ButtonStyleProps> = (_props, ...etc) => {\n return mx('dx-button dx-focus-ring group gap-1 [&_span]:truncate', ...etc);\n};\n\nconst group: ComponentFunction<{ elevation?: Elevation }> = (_props, ...etc) => {\n return mx(\n 'inline-flex rounded-xs [&>:first-child]:rounded-w-sm [&>:last-child]:rounded-ie-sm [&>button]:relative',\n ...etc,\n );\n};\n\nexport const buttonTheme: Theme<ButtonStyleProps> = {\n root,\n group,\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport type { ComponentFunction, Theme } from '@dxos/ui-types';\n\nimport { type ButtonStyleProps } from './Button.theme';\n\nexport type IconButtonStyleProps = ButtonStyleProps & {\n iconOnly?: boolean;\n square?: boolean;\n};\n\nconst root: ComponentFunction<IconButtonStyleProps> = ({ iconOnly, square }, ...etc) => {\n return mx('px-1.5', !iconOnly && 'gap-1.5', square && 'aspect-square', ...etc);\n};\n\nexport const iconButtonTheme: Theme<IconButtonStyleProps> = {\n root,\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Density, type Theme } from '@dxos/ui-types';\n\nexport type CardStyleProps = {\n border?: boolean;\n fullWidth?: boolean;\n srOnly?: boolean;\n variant?: 'default' | 'subtitle' | 'description';\n density?: Density;\n truncate?: boolean;\n padding?: boolean;\n};\n\nconst root: ComponentFunction<CardStyleProps> = ({ border, fullWidth }, ...etc) =>\n mx(\n 'dx-card dx-card-min-width dx-card-max-width min-h-(--dx-rail-item) group/card relative overflow-hidden',\n 'bg-card-surface',\n border && 'border border-subdued-separator rounded-sm dx-focus-ring-group-y-indicator',\n fullWidth && 'max-w-none!',\n ...etc,\n );\n\nconst header: ComponentFunction<CardStyleProps> = (_, ...etc) =>\n mx(\n 'dx-card__header dx-density-md bg-transparent p-0! gap-0! col-span-3 grid! grid-cols-subgrid! shadow-none [contain:none]',\n ...etc,\n );\n\nconst title: ComponentFunction<CardStyleProps> = (_props, ...etc) => mx('dx-card__title grow truncate', ...etc);\n\nconst body: ComponentFunction<CardStyleProps> = (_props, ...etc) => mx('dx-card__body contents pb-1 last:pb-0', ...etc);\n\nconst text: ComponentFunction<CardStyleProps> = ({ variant = 'default', truncate: _truncate }, ...etc) =>\n mx(\n 'dx-card__text items-center overflow-hidden',\n variant === 'default' && 'py-1',\n variant === 'description' && 'py-1.5 text-description',\n ...etc,\n );\n\nconst textSpan: ComponentFunction<CardStyleProps> = ({ variant = 'default', truncate }, ...etc) =>\n mx(variant === 'description' && 'text-sm text-description line-clamp-3', truncate && 'truncate', ...etc);\n\nconst poster: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__poster col-span-3 max-h-[200px]', ...etc);\n\nconst posterIcon: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__poster-icon col-span-3 grid place-items-center bg-input-surface text-subdued max-h-[200px]', ...etc);\n\nconst action: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__acztion col-span-3 !grid grid-cols-subgrid p-0! w-full text-start overflow-hidden', ...etc);\n\nconst actionLabel: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__action-label min-w-0 flex-1 truncate', ...etc);\n\nconst link: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__link col-span-3 !grid grid-cols-subgrid group p-0! dx-button dx-focus-ring min-h-1!', ...etc);\n\nconst linkLabel: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__link-label min-w-0 flex-1 truncate', ...etc);\n\nconst row: ComponentFunction<CardStyleProps> = ({ fullWidth }, ...etc) =>\n mx('dx-card__row', fullWidth ? 'col-span-full' : 'col-span-3 grid grid-cols-subgrid', ...etc);\n\n// NOTE: Direct children that lack an explicit `col-*` utility default to the\n// Column.Root center track (via `--dx-col`); see `ui-theme`'s `css/components/card.css`.\nconst section: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__section col-span-full grid grid-cols-subgrid', ...etc);\n\nconst sectionTitle: ComponentFunction<CardStyleProps> = (_props, ...etc) =>\n mx('dx-card__section-title col-start-2 col-span-full py-2 text-xs text-description font-medium uppercase', ...etc);\n\nexport const cardTheme: Theme<CardStyleProps> = {\n root,\n header,\n title,\n body,\n row,\n section,\n 'section-title': sectionTitle,\n text,\n 'text-span': textSpan,\n poster,\n 'poster-icon': posterIcon,\n action,\n 'action-label': actionLabel,\n link,\n 'link-label': linkLabel,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction } from '@dxos/ui-types';\n\nimport { withColumn } from './withColumn';\n\nexport type ColumnStyleProps = {};\n\nconst root: ComponentFunction<ColumnStyleProps> = (_, ...etc) => {\n return mx('dx-column-root grid', ...etc);\n};\n\n/**\n * Three-column icon-slot row: spans all 3 columns of the parent Column.Root grid.\n * Uses CSS subgrid to inherit column sizing from the parent Column.\n * Children map to: [col-1: icon/slot] [col-2: content] [col-3: icon/action].\n * NOTE: Must not use overflow-hidden here since it will clip input focus rings.\n */\nconst row: ComponentFunction<ColumnStyleProps> = (_, ...etc) => {\n return mx('col-span-3 grid grid-cols-subgrid', ...etc);\n};\n\n/**\n * Bleed placement: spans all 3 columns of the parent Column.Root grid (gutter-to-gutter).\n * Use for `ScrollArea`, full-width dividers, tables, or any content that should ignore gutters.\n */\nconst bleed: ComponentFunction<ColumnStyleProps> = (_, ...etc) => {\n return mx('col-span-full grid grid-cols-subgrid min-h-0', ...etc);\n};\n\n/**\n * Center placement: places the element in column 2 (the central track between gutters) of the\n * parent Column.Root grid. Does NOT use subgrid — placement is explicit on this element only.\n * Safe to nest arbitrary compound components (including those that render `display: contents`).\n */\nconst center: ComponentFunction<ColumnStyleProps> = (_, ...etc) => {\n return mx(withColumn.center(), 'min-h-0', ...etc);\n};\n\nexport const columnTheme = {\n root,\n row,\n bleed,\n center,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Elevation, type Theme } from '@dxos/ui-types';\n\nimport { withColumn } from '../Column/withColumn';\n\nexport type DialogSize = 'sm' | 'md' | 'lg' | 'xl';\n\nconst sizeMap: Record<DialogSize, string> = {\n sm: 'md:max-w-[24rem]',\n md: 'md:max-w-[32rem]!',\n lg: 'md:max-w-[40rem]!',\n xl: 'md:max-w-[60rem]!',\n};\n\nexport type DialogStyleProps = {\n srOnly?: boolean;\n inOverlayLayout?: boolean;\n elevation?: Elevation;\n size?: DialogSize;\n};\n\nconst overlay: ComponentFunction<DialogStyleProps> = (_props, ...etc) => mx('dx-dialog__overlay', ...etc);\n\nconst content: ComponentFunction<DialogStyleProps> = ({ inOverlayLayout, size = 'md' }, ...etc) => {\n return mx(\n '@container',\n 'dx-dialog__content dx-focus-ring dx-modal-surface py-4',\n !inOverlayLayout && 'fixed z-50 top-[50%] left-[50%] -translate-x-[50%] -translate-y-[50%]',\n sizeMap[size],\n ...etc,\n );\n};\n\nconst header: ComponentFunction<DialogStyleProps> = (_props, ...etc) =>\n mx('dx-dialog__header flex pb-4 items-center justify-between', withColumn.center(), ...etc);\n\nconst body: ComponentFunction<DialogStyleProps> = (_props, ...etc) =>\n mx('dx-dialog__body dx-expander', withColumn.propagate(), ...etc);\n\nconst actionBar: ComponentFunction<DialogStyleProps> = (_props, ...etc) =>\n mx('dx-dialog__actionbar flex items-center pt-4 gap-2', withColumn.center(), ...etc);\n\nconst title: ComponentFunction<DialogStyleProps> = ({ srOnly }, ...etc) =>\n mx('dx-dialog__title', srOnly && 'sr-only', ...etc);\n\nconst description: ComponentFunction<DialogStyleProps> = ({ srOnly }, ...etc) =>\n mx('dx-dialog__description', 'text-description', srOnly && 'sr-only', ...etc);\n\nexport const dialogTheme: Theme<DialogStyleProps> = {\n overlay,\n content,\n header,\n body,\n actionbar: actionBar,\n title,\n description,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type FocusStyleProps = {\n border?: boolean;\n};\n\n/**\n * Focus ring styles shared by Focus.Group and Focus.Item.\n * Uses a `::after` pseudo-element overlay so the ring paints above child content\n * (inset box-shadow alone is obscured by children with backgrounds).\n * The pseudo-element is `pointer-events-none` and absolutely positioned over the element.\n * When `border` is true, a subdued CSS border is always visible (e.g., for grid cell edges).\n */\nconst ring: ComponentFunction<FocusStyleProps> = ({ border }, ...etc) =>\n mx(\n 'dx-ring-pseudo outline-hidden',\n 'focus:after:ring-focus-ring-subtle',\n 'data-[focus-state=active]:after:ring-focus-ring-subtle',\n 'data-[focus-state=error]:after:ring-rose-500',\n border && 'border border-separator',\n ...etc,\n );\n\nexport const focusTheme: Theme<FocusStyleProps> = {\n group: ring,\n item: ring,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { getSize, mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Size, type Theme } from '@dxos/ui-types';\n\nexport type IconStyleProps = {\n size?: Size;\n};\n\nexport type IconBlockStyleProps = {\n compact?: boolean;\n /** Constrain to a square (1:1) slot rather than the default rail-item width. */\n square?: boolean;\n};\n\n/**\n * Size can be specified directly, or inherited from a container (e.g., toolbar).\n */\nconst root: ComponentFunction<IconStyleProps> = ({ size }, etc) => {\n return mx(\n 'shrink-0 text-[var(--icons-color,currentColor)]',\n size\n ? getSize(size)\n : '[width:var(--icon-size,var(--dx-default-icons-size))] [height:var(--icon-size,var(--dx-default-icons-size))]',\n etc,\n );\n};\n\n/**\n * Static slot sized to `--dx-rail-item` so a wrapped `Icon` lines up with an `IconButton iconOnly`.\n */\nconst block: ComponentFunction<IconBlockStyleProps> = ({ compact, square }, ...etc) =>\n mx(\n 'grid place-items-center [&>img]:max-w-[1.5rem]',\n square ? 'aspect-square' : 'w-[var(--dx-rail-item)]',\n compact ? '' : 'h-[var(--dx-rail-item)]',\n ...etc,\n );\n\nexport const iconTheme: Theme<IconStyleProps & IconBlockStyleProps> = {\n root,\n block,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { densityDimensions, staticDisabled } from '@dxos/ui-theme';\nimport { getSize, getHeight, getWidth, mx, snapSize, sizeValue, textValence } from '@dxos/ui-theme';\nimport {\n type ComponentFragment,\n type ComponentFunction,\n type Density,\n type Elevation,\n type MessageValence,\n type Size,\n} from '@dxos/ui-types';\n\nimport { inputTextLabel } from './constants';\n\nexport type InputStyleProps = Partial<{\n variant: 'default' | 'subdued' | 'static';\n density: Density;\n disabled: boolean;\n elevation: Elevation;\n focused: boolean;\n validationValence: MessageValence;\n size: Size;\n checked: boolean;\n}>;\n\nexport type InputMetaStyleProps = Partial<{\n srOnly: boolean;\n validationValence: MessageValence;\n}>;\n\nconst textInputSurfaceFocus =\n 'transition-colors bg-input-surface focus:bg-focus-surface border border-separator focus:border-separator';\n\nconst textInputSurfaceHover = 'hover:bg-focus-surface';\n\nconst booleanInputSurface =\n 'shadow-inner transition-colors bg-un-accent aria-checked:bg-accent-bg aria-[checked=mixed]:bg-accent-bg';\n\nconst booleanInputSurfaceHover =\n 'hover:bg-un-accent-hover hover:aria-checked:bg-accent-bg-hover hover:aria-[checked=mixed]:bg-accent-bg-hover';\n\n// TODO(burdon): Replace with semantic tokens.\nconst valence = (valence?: MessageValence) => {\n switch (valence) {\n case 'success':\n return 'shadow-emerald-500/50 dark:shadow-emerald-600/50';\n case 'info':\n return 'shadow-cyan-500/50 dark:shadow-cyan-600/50';\n case 'warning':\n return 'shadow-amber-500/50 dark:shadow-amber-600/50';\n case 'error':\n return 'shadow-rose-500/50 dark:shadow-rose-600/50';\n }\n};\n\nconst sharedSubduedInputStyles: ComponentFragment<InputStyleProps> = (props) => [\n '[[data-drag-autoscroll=\"active\"]_&]:pointer-events-none',\n 'py-0 w-full bg-transparent text-current placeholder-placeholder',\n 'dx-focus-subdued',\n densityDimensions(props.density),\n props.disabled && staticDisabled,\n];\n\nconst sharedDefaultInputStyles: ComponentFragment<InputStyleProps> = (props) => [\n '[[data-drag-autoscroll=\"active\"]_&]:pointer-events-none',\n 'py-0 w-full text-base-fg rounded-xs placeholder-placeholder',\n textInputSurfaceFocus,\n densityDimensions(props.density),\n props.disabled ? staticDisabled : textInputSurfaceHover,\n];\n\nconst sharedStaticInputStyles: ComponentFragment<InputStyleProps> = (props) => [\n '[[data-drag-autoscroll=\"active\"]_&]:pointer-events-none',\n 'py-0 w-full text-base-fg rounded-xs placeholder-placeholder',\n textInputSurfaceFocus,\n textInputSurfaceHover,\n props.focused && 'bg-attention-surface',\n valence(props.validationValence),\n props.disabled && staticDisabled,\n props.focused && 'dx-focus-static',\n];\n\nconst input: ComponentFunction<InputStyleProps> = (props, ...etc) =>\n props.variant === 'subdued'\n ? mx(...sharedSubduedInputStyles(props), ...etc)\n : props.variant === 'static'\n ? mx(...sharedStaticInputStyles(props), ...etc)\n : mx(\n ...sharedDefaultInputStyles(props),\n !props.disabled && 'dx-focus-ring',\n valence(props.validationValence),\n ...etc,\n );\n\nconst textArea: ComponentFunction<InputStyleProps> = (props, ...etc) => input(props, ...etc);\n\nconst checkbox: ComponentFunction<InputStyleProps> = ({ size = 5 }, ...etc) =>\n mx('dx-checkbox dx-focus-ring', getSize(size), ...etc);\n\nconst checkboxIndicator: ComponentFunction<InputStyleProps> = ({ size = 5, checked }, ...etc) =>\n mx(getSize(snapSize(sizeValue(size) * 0.65, 4)), !checked && 'invisible', ...etc);\n\nconst switchRoot: ComponentFunction<InputStyleProps> = ({ size = 5, disabled }, ...etc) =>\n mx(\n getHeight(size),\n getWidth(snapSize(sizeValue(size) * 1.75, 9)),\n booleanInputSurface,\n !disabled && booleanInputSurfaceHover,\n // TODO(burdon): Added m-1 margin to make 40px width to align with 40px icon button.\n 'cursor-pointer shrink-0 rounded-full px-1 mx-1 relative',\n 'dx-focus-ring',\n ...etc,\n );\n\nconst switchThumb: ComponentFunction<InputStyleProps> = ({ size = 5 }, ...etc) =>\n mx(\n getSize(size === 'px' ? 'px' : ((size - 2) as Size)),\n 'block bg-white rounded-full transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-[100%]',\n ...etc,\n );\n\nconst withSegmentsInput: ComponentFunction<InputStyleProps> = (props, ...etc) =>\n mx(\n 'font-mono selection:bg-transparent mx-auto',\n props.density === 'lg'\n ? 'text-lg'\n : props.density === 'sm'\n ? 'text-sm'\n : props.density === 'xs'\n ? 'text-xs'\n : 'text-base pointer-fine:text-sm',\n props.disabled && 'cursor-not-allowed',\n ...etc,\n );\n\nconst segment: ComponentFunction<InputStyleProps> = (props, ...etc) =>\n mx(\n 'flex items-center justify-center font-mono',\n props.density === 'lg'\n ? 'size-12 rounded-xs'\n : props.density === 'sm'\n ? 'size-7 rounded-xs'\n : props.density === 'xs'\n ? 'size-6 rounded-xs'\n : 'size-10 pointer-fine:size-8 rounded-xs',\n 'bg-input-surface text-base-fg transition-colors border border-separator',\n 'data-[focused]:bg-attention-surface data-[focused]:border-focus-ring-subtle',\n 'data-[focused]:ring-2 data-[focused]:ring-offset-0 data-[focused]:ring-focus-ring-subtle',\n valence(props.validationValence),\n props.disabled && staticDisabled,\n ...etc,\n );\n\nconst label: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx('block', inputTextLabel, props.srOnly && 'sr-only', ...etc);\n\nconst description: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx('text-description', props.srOnly && 'sr-only', ...etc);\n\nconst descriptionAndValidation: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx('leading-none my-1.5', props.srOnly && 'sr-only', ...etc);\n\nconst validation: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx(inputTextLabel, props.srOnly ? 'sr-only' : textValence(props.validationValence), ...etc);\n\nconst triggerIcon: ComponentFunction<{}> = (_p, ...etc) =>\n mx(\n 'shrink-0 inline-flex items-center justify-center size-7 rounded-xs',\n 'bg-input-surface text-subdued hover:text-base-fg hover:bg-hover-surface',\n 'dx-focus-ring',\n ...etc,\n );\n\nexport const inputTheme = {\n input,\n textArea,\n inputWithSegments: withSegmentsInput,\n segment,\n checkbox,\n checkboxIndicator,\n label,\n description,\n switch: switchRoot,\n switchThumb,\n validation,\n descriptionAndValidation,\n triggerIcon,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type LinkStyleProps = {\n variant?: 'accent' | 'neutral';\n};\n\nconst root: ComponentFunction<LinkStyleProps> = ({ variant }, ...etc) => mx('dx-link', ...etc);\n\nexport const linkTheme: Theme<LinkStyleProps> = {\n root,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { densityBlockSize, ghostHover } from '@dxos/ui-theme';\nimport { getSize, mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Density, type Theme } from '@dxos/ui-types';\n\nexport type ListStyleProps = Partial<{\n density: Density;\n collapsible: boolean;\n}>;\n\nconst root: ComponentFunction<ListStyleProps> = (_, ...etc) => mx(...etc);\n\nconst item: ComponentFunction<ListStyleProps> = ({ collapsible }, ...etc) => mx(!collapsible && 'flex', ...etc);\n\nconst itemEndcap: ComponentFunction<ListStyleProps> = ({ density }, ...etc) =>\n mx(\n density === 'lg' ? getSize(10) : density === 'sm' ? getSize(7) : density === 'xs' ? getSize(6) : getSize(8),\n 'shrink-0 flex items-center justify-center',\n ...etc,\n );\n\nconst itemHeading: ComponentFunction<ListStyleProps> = ({ density }, ...etc) =>\n mx(densityBlockSize(density), 'flex items-center overflow-hidden [&>span]:truncate', ...etc);\n\nconst itemDragHandleIcon: ComponentFunction<ListStyleProps> = (_props, ...etc) => mx(getSize(5), 'mt-2.5', ...etc);\n\nconst itemOpenTrigger: ComponentFunction<ListStyleProps> = ({ density }, ...etc) =>\n mx('w-5 rounded-sm flex justify-center items-center', densityBlockSize(density), ghostHover, 'dx-focus-ring', ...etc);\n\nconst itemOpenTriggerIcon: ComponentFunction<ListStyleProps> = (_props, ...etc) => {\n return mx(getSize(5), ...etc);\n};\n\nexport const listTheme: Theme<ListStyleProps> = {\n root,\n item: {\n root: item,\n endcap: itemEndcap,\n heading: itemHeading,\n dragHandleIcon: itemDragHandleIcon,\n openTrigger: itemOpenTrigger,\n openTriggerIcon: itemOpenTriggerIcon,\n },\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport type { ComponentFunction, Theme } from '@dxos/ui-types';\n\nexport type TreegridStyleProps = Partial<{\n level: number;\n indent: boolean;\n}>;\n\nconst levelStyles = new Map<number, string>([\n [1, '[&>.indent:first-of-type]:pl-0 font-medium'],\n [2, '[&>.indent:first-of-type]:pl-0'],\n [3, '[&>.indent:first-of-type]:pl-1'],\n [4, '[&>.indent:first-of-type]:pl-2'],\n [5, '[&>.indent:first-of-type]:pl-3'],\n [6, '[&>.indent:first-of-type]:pl-4'],\n [7, '[&>.indent:first-of-type]:pl-5'],\n [8, '[&>.indent:first-of-type]:pl-6'],\n]);\n\nconst root: ComponentFunction<TreegridStyleProps> = (_, ...etc) => mx('grid', ...etc);\n\nconst row: ComponentFunction<TreegridStyleProps> = ({ level = 1 }, ...etc) =>\n mx(levelStyles.get(Math.min(Math.max(Math.round(level), 1), 8)), ...etc);\n\nconst cell: ComponentFunction<TreegridStyleProps> = ({ indent }, ...etc) => mx(indent && 'indent', ...etc);\n\nexport const treegridTheme: Theme<TreegridStyleProps> = {\n root,\n row,\n cell,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction } from '@dxos/ui-types';\n\nimport { mainPaddingTransitions } from './constants';\n\nconst padding = 'dx-main-content-padding';\n\nexport type MainStyleProps = Partial<{\n bounce: boolean;\n handlesFocus: boolean;\n}>;\n\nconst content: ComponentFunction<MainStyleProps> = ({ bounce }, ...etc) =>\n mx(padding, mainPaddingTransitions, bounce && 'dx-main-bounce-layout', 'dx-focus-ring-main', ...etc);\n\nconst sidebar: ComponentFunction<MainStyleProps> = (_, ...etc) =>\n mx('dx-main-sidebar', 'dx-focus-ring-inset-over-all', ...etc);\n\nconst overlay: ComponentFunction<MainStyleProps> = (_, ...etc) => mx('dx-main-overlay', ...etc);\n\nexport const mainTheme = {\n content,\n sidebar,\n overlay,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { dataDisabled } from '@dxos/ui-theme';\nimport { mx, surfaceShadow, surfaceZIndex } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Elevation, type Theme } from '@dxos/ui-types';\n\nexport type MenuStyleProps = Partial<{\n constrainBlockSize: boolean;\n elevation: Elevation;\n}>;\n\nconst content: ComponentFunction<MenuStyleProps> = ({ elevation }, ...etc) =>\n mx(\n 'dx-popover-surface w-48 rounded-sm md:w-56 border border-separator',\n surfaceZIndex({ elevation, level: 'menu' }),\n surfaceShadow({ elevation: 'positioned' }),\n ...etc,\n );\n\nconst viewport: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx('rounded-sm p-1 max-h-[var(--radix-dropdown-menu-content-available-height)] overflow-y-auto', ...etc);\n\nconst item: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx(\n 'flex cursor-pointer select-none items-center gap-2 rounded-xs px-2 py-2 text-sm',\n 'hover:bg-hover-surface data-[highlighted]:bg-hover-surface',\n 'dx-focus-subdued',\n dataDisabled,\n ...etc,\n );\n\nconst separator: ComponentFunction<MenuStyleProps> = (_props, ...etc) => mx('my-1 mx-2 h-px bg-separator', ...etc);\n\nconst groupLabel: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx('text-description', 'select-none px-2 py-2', ...etc);\n\nconst arrow: ComponentFunction<MenuStyleProps> = (_props, ...etc) => mx('fill-separator', ...etc);\n\nexport const menuTheme: Theme<MenuStyleProps> = {\n content,\n viewport,\n item,\n separator,\n groupLabel,\n arrow,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx, messageValence } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Elevation, type MessageValence, type Theme } from '@dxos/ui-types';\n\nexport type MessageStyleProps = {\n valence?: MessageValence;\n elevation?: Elevation;\n};\n\nconst root: ComponentFunction<MessageStyleProps> = ({ valence }, etc) => {\n return mx('p-1 rounded-sm', messageValence(valence), etc);\n};\n\nconst header: ComponentFunction<MessageStyleProps> = (_, etc) => {\n return mx('items-center', etc);\n};\n\nconst title: ComponentFunction<MessageStyleProps> = (_, etc) => {\n return mx('col-start-2 overflow-hidden truncate', etc);\n};\n\nconst icon: ComponentFunction<MessageStyleProps> = (_, etc) => {\n return mx('col-start-1 grid place-items-center', etc);\n};\n\nconst close: ComponentFunction<MessageStyleProps> = (_, etc) => {\n return mx('col-start-3', etc);\n};\n\nconst content: ComponentFunction<MessageStyleProps> = (_, etc) => {\n return mx('col-start-2 flex flex-col first:font-medium pb-1.5', etc);\n};\n\nexport const messageTheme: Theme<MessageStyleProps> = {\n root,\n header,\n icon,\n title,\n close,\n content,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction } from '@dxos/ui-types';\n\ntype Size = 'lg' | 'md' | 'sm';\n\nexport type PanelStyleProps = {\n size?: Size;\n};\n\nconst sizes: Record<Size, string> = {\n lg: 'h-(--dx-topbar-size)',\n md: 'h-(--dx-toolbar-size)',\n sm: 'h-(--dx-statusbar-size)',\n};\n\nconst root: ComponentFunction<PanelStyleProps> = (_, ...etc) =>\n mx(\n 'dx-container grid grid-cols-[100%] overflow-hidden',\n // Add uncategorized children to content slot.\n '[&>*:not([data-slot])]:[grid-area:content]',\n ...etc,\n );\n\nconst toolbar: ComponentFunction<PanelStyleProps> = ({ size = 'md' }, ...etc) =>\n mx('[grid-area:toolbar]', 'shrink-0', sizes[size], ...etc);\n\nconst content: ComponentFunction<PanelStyleProps> = (_, ...etc) => mx('[grid-area:content] min-h-0', ...etc);\n\nconst statusbar: ComponentFunction<PanelStyleProps> = ({ size = 'md' }, ...etc) =>\n mx('[grid-area:statusbar]', 'shrink-0', sizes[size], ...etc);\n\nexport const panelTheme = {\n root,\n toolbar,\n content,\n statusbar,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx, surfaceShadow, surfaceZIndex } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Elevation, type Theme } from '@dxos/ui-types';\n\nexport type PopoverStyleProps = Partial<{\n constrainBlock: boolean;\n constrainInline: boolean;\n elevation: Elevation;\n}>;\n\nconst content: ComponentFunction<PopoverStyleProps> = ({ elevation }, ...etc) =>\n mx(\n 'dx-popover-surface border border-separator rounded-sm',\n surfaceShadow({ elevation: 'positioned' }),\n surfaceZIndex({ elevation, level: 'menu' }),\n 'dx-focus-ring',\n ...etc,\n );\n\nconst viewport: ComponentFunction<PopoverStyleProps> = ({ constrainBlock, constrainInline }, ...etc) =>\n mx(\n 'grid grid-rows-[1fr] min-h-0 min-w-popover-min-width',\n (constrainBlock || constrainInline) && 'overflow-hidden',\n constrainBlock && 'max-h-(--radix-popover-content-available-height)',\n constrainBlock &&\n 'max-h-[min(var(--radix-popover-content-available-height),calc(100dvh-var(--spacing-screen-border)*2))]',\n constrainInline && 'max-w-(--radix-popover-content-available-width)',\n ...etc,\n );\n\nconst arrow: ComponentFunction<PopoverStyleProps> = (_props, ...etc) => mx('fill-separator', ...etc);\n\nexport const popoverTheme: Theme<PopoverStyleProps> = {\n content,\n viewport,\n arrow,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type AllowedAxis, type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nimport { withColumn } from '../Column/withColumn';\n\nexport type ScrollAreaStyleProps = {\n orientation?: AllowedAxis;\n autoHide?: boolean;\n /** Balance left/right, top/bottom offset with scrollbar. */\n centered?: boolean;\n /** Add default padding. */\n /** TODO(burdon): Integrate with Column.Root padding. */\n padding?: boolean;\n /** Use thin scrollbars. */\n /** TODO(burdon): Density fine/course. */\n thin?: boolean;\n /** Enable snap scrolling. */\n snap?: boolean;\n};\n\nconst root: ComponentFunction<ScrollAreaStyleProps> = ({ orientation }, ...etc) =>\n mx(\n // Expand\n 'dx-container',\n\n orientation === 'vertical' && 'group/scroll-v flex flex-col',\n orientation === 'horizontal' && 'group/scroll-h flex',\n // `flex flex-col` is required (as in `vertical`) so the viewport's `flex-1 min-h-0` can\n // bound its height; without it the viewport grows to content height and only scrolls\n // horizontally (the root clips the vertical overflow instead of scrolling it).\n orientation === 'all' && 'group/scroll-all flex flex-col',\n\n // Apply col-span-full only when inside a Column.Root grid (detected via dx-column-root marker).\n '[.dx-column-root_&]:col-span-full',\n\n ...etc,\n );\n\n/**\n * NOTE: The browser reserves space for scrollbars.\n */\nconst viewport: ComponentFunction<ScrollAreaStyleProps> = (\n { orientation, centered, padding, snap, autoHide },\n ...etc\n) => {\n return mx(\n 'flex-1 min-h-0 w-full',\n\n // Reset --dx-col so nested components don't try to grid-position themselves.\n // ScrollArea has already consumed --gutter for padding.\n withColumn.consumed(),\n\n orientation === 'vertical' && 'overflow-y-scroll',\n orientation === 'horizontal' && 'flex overflow-x-scroll overscroll-x-contain',\n orientation === 'all' && 'overflow-scroll',\n\n '[&::-webkit-scrollbar-corner]:bg-transparent',\n '[&::-webkit-scrollbar-track]:bg-transparent',\n '[&::-webkit-scrollbar-thumb]:rounded-none',\n\n '[&::-webkit-scrollbar]:w-[var(--scroll-width)] [&::-webkit-scrollbar]:h-[var(--scroll-width)]',\n\n // If contained within Column.Root grid the gutter is set by that component (--gutter CSS variable).\n // If centered, left padding compensates for scrollbar width so content is visually centered.\n (orientation === 'vertical' || orientation === 'all') &&\n (padding\n ? [\n centered ? 'pl-[var(--gutter,calc(var(--scroll-width)+var(--scroll-padding)))]' : 'pl-[var(--gutter,0)]',\n 'pr-[calc(var(--gutter,calc(var(--scroll-width)+var(--scroll-padding)))-var(--scroll-width))]',\n ]\n : centered && 'pl-[var(--scroll-width)]'),\n\n (orientation === 'horizontal' || orientation === 'all') &&\n (padding\n ? [centered && 'pt-[calc(var(--scroll-width)+var(--scroll-padding))]', 'pb-[var(--scroll-padding)]']\n : centered && 'pt-[var(--scroll-width)]'),\n\n snap && [\n orientation === 'vertical' && 'snap-y snap-mandatory',\n orientation === 'horizontal' && 'snap-x snap-mandatory',\n orientation === 'all' && 'snap-both snap-mandatory',\n ],\n\n autoHide\n ? [\n orientation === 'vertical' && 'group-hover/scroll-v:[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb',\n orientation === 'horizontal' && 'group-hover/scroll-h:[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb',\n orientation === 'all' && 'group-hover/scroll-all:[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb',\n ]\n : [\n orientation === 'vertical' && '[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb',\n orientation === 'horizontal' && '[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb',\n orientation === 'all' && '[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb',\n ],\n\n ...etc,\n );\n};\n\nexport const scrollAreaTheme: Theme<ScrollAreaStyleProps> = {\n root,\n viewport,\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { mx, surfaceShadow, surfaceZIndex } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Elevation, type Theme } from '@dxos/ui-types';\n\nexport type SelectStyleProps = Partial<{\n elevation: Elevation;\n}>;\n\nconst content: ComponentFunction<SelectStyleProps> = ({ elevation }, ...etc) => {\n return mx(\n 'dx-modal-surface rounded-sm border border-separator',\n 'min-w-(--radix-select-trigger-width) max-h-(--radix-select-content-available-height)',\n surfaceShadow({ elevation: 'positioned' }),\n surfaceZIndex({ elevation, level: 'menu' }),\n ...etc,\n );\n};\n\nconst triggerButton: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx('grid grid-cols-[1fr_auto] [&>span]:text-left', ...etc);\n\nconst viewport: ComponentFunction<SelectStyleProps> = (_props, ...etc) => mx(...etc);\n\nconst item: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx(\n 'flex items-center min-h-[2rem] px-2.5 py-1 gap-2',\n 'text-base-fg leading-none select-none outline-hidden',\n '[&>svg]:invisible [&[data-state=checked]>svg]:visible',\n 'dx-highlighted',\n ...etc,\n );\n\nconst itemIndicator: ComponentFunction<SelectStyleProps> = (_props, ...etc) => mx('items-center', ...etc);\n\nconst arrow: ComponentFunction<SelectStyleProps> = (_props, ...etc) => mx('fill-separator', ...etc);\n\nconst separator: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx('self-stretch border-b my-1 border-separator', ...etc);\n\nconst scrollButton: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx('dx-modal-surface flex items-center justify-center cursor-default h-6 w-full', ...etc);\n\nexport const selectTheme: Theme<SelectStyleProps> = {\n content,\n triggerButton,\n viewport,\n item,\n itemIndicator,\n arrow,\n separator,\n scrollButton,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type SeparatorStyleProps = {\n orientation?: 'horizontal' | 'vertical';\n subdued?: boolean;\n};\n\nconst root: ComponentFunction<SeparatorStyleProps> = ({ orientation, subdued }, ...etc) =>\n mx(\n 'self-stretch',\n orientation === 'vertical' ? 'border-e mx-1' : 'border-b my-1',\n subdued ? 'border-subdued-separator' : 'border-separator',\n ...etc,\n );\n\nexport const separatorTheme: Theme<SeparatorStyleProps> = {\n root,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport type { ComponentFunction, Theme } from '@dxos/ui-types';\n\nexport type SkeletonStyleProps = {\n variant?: 'default' | 'circle' | 'text';\n};\n\nconst root: ComponentFunction<SkeletonStyleProps> = ({ variant = 'default' }, ...etc) =>\n mx(\n 'animate-pulse bg-neutral-300 dark:bg-neutral-700 rounded-md',\n variant === 'circle' && 'rounded-full',\n variant === 'text' && 'rounded-sm',\n ...etc,\n );\n\nexport const skeletonTheme: Theme<SkeletonStyleProps> = {\n root,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type SplitterStyleProps = {};\n\nconst root: ComponentFunction<SplitterStyleProps> = (_props, ...etc) => mx('relative h-full overflow-hidden', ...etc);\n\nconst panel: ComponentFunction<SplitterStyleProps> = (_props, ...etc) =>\n mx('absolute inset-x-0 flex flex-col overflow-hidden', ...etc);\n\nexport const splitterTheme: Theme<SplitterStyleProps> = {\n root,\n panel,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport type { ComponentFunction, Theme } from '@dxos/ui-types';\n\nexport type StatusStyleProps = {\n variant?: 'default' | 'main-bottom';\n indeterminate?: boolean;\n};\n\nconst root: ComponentFunction<StatusStyleProps> = ({ variant = 'default' }, ...etc) =>\n mx(\n 'h-1 relative rounded-full overflow-hidden',\n variant === 'main-bottom' ? 'w-full block' : 'inline-20 inline-block bg-base-surface',\n ...etc,\n );\n\nconst bar: ComponentFunction<StatusStyleProps> = ({ variant = 'default', indeterminate }, ...etc) =>\n mx(\n 'absolute inset-y-0 block rounded-full',\n variant === 'main-bottom' ? 'bg-composer-300' : 'bg-un-accent',\n indeterminate ? 'animate-progress-indeterminate' : 'start-0',\n ...etc,\n );\n\nexport const statusTheme: Theme<StatusStyleProps> = {\n root,\n bar,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport {\n type ChromaticPalette,\n type ComponentFunction,\n type MessageValence,\n type NeutralPalette,\n type Theme,\n} from '@dxos/ui-types';\n\nexport type TagStyleProps = {\n palette?: ChromaticPalette | NeutralPalette | MessageValence;\n};\n\nconst root: ComponentFunction<TagStyleProps> = (_, ...etc) => mx('dx-tag', ...etc);\n\nexport const tagTheme: Theme<TagStyleProps> = {\n root,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx, surfaceShadow } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type ToastStyleProps = {};\n\nconst viewport: ComponentFunction<ToastStyleProps> = (_props, ...etc) =>\n mx(\n // TODO(burdon): block-end should take into account status bar.\n 'z-40 fixed bottom-[calc(env(safe-area-inset-bottom)+1rem)] inset-start-[calc(env(safe-area-inset-left)+1rem)] inset-end-[calc(env(safe-area-inset-right)+1rem)] w-auto md:end-[calc(env(safe-area-inset-right)+1rem)] md:left-auto md:w-full md:max-w-sm',\n 'rounded-md flex flex-col gap-2',\n ...etc,\n );\n\nconst root: ComponentFunction<ToastStyleProps> = (_props, ...etc) =>\n mx(\n 'dx-popover-surface rounded-md p-1',\n surfaceShadow({ elevation: 'toast' }),\n 'radix-state-open:animate-toast-slide-in-bottom md:radix-state-open:animate-toast-slide-in-right',\n 'radix-state-closed:animate-toast-hide',\n 'radix-swipe-end:animate-toast-swipe-out',\n 'translate-x-radix-toast-swipe-move-x',\n 'radix-swipe-cancel:translate-x-0 radix-swipe-cancel:duration-200 radix-swipe-cancel:ease-[ease]',\n 'dx-focus-ring',\n ...etc,\n );\n\nconst grid: ComponentFunction<ToastStyleProps> = (_props, ...etc) => mx('gap-y-1 pbe-1', ...etc);\n\nconst header: ComponentFunction<ToastStyleProps> = (_props, ...etc) => mx('items-center', ...etc);\n\nconst icon: ComponentFunction<ToastStyleProps> = (_props, ...etc) => mx('col-start-1 grid place-items-center', ...etc);\n\nconst title: ComponentFunction<ToastStyleProps> = (_props, ...etc) => mx('col-start-2 truncate font-medium', ...etc);\n\nconst close: ComponentFunction<ToastStyleProps> = (_props, ...etc) => mx('col-start-3', ...etc);\n\nconst description: ComponentFunction<ToastStyleProps> = (_props, ...etc) =>\n mx('col-start-2 overflow-hidden text-description', ...etc);\n\nconst actions: ComponentFunction<ToastStyleProps> = (_props, ...etc) => mx('flex gap-2 mbs-1', ...etc);\n\nexport const toastTheme: Theme<ToastStyleProps> = {\n viewport,\n root,\n grid,\n header,\n icon,\n title,\n close,\n description,\n actions,\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Density, type Theme } from '@dxos/ui-types';\n\nexport type ToolbarStyleProps = Partial<{\n density: Density;\n disabled: boolean;\n layoutManaged: boolean;\n}>;\n\nconst layout =\n 'w-full shrink-0 flex flex-nowrap p-1 gap-1 items-center overflow-x-auto scrollbar-none dx-contain-layout';\n\nconst root: ComponentFunction<ToolbarStyleProps> = ({ density, disabled, layoutManaged }, ...etc) => {\n return mx(\n 'bg-toolbar-surface dx-toolbar shadow-sm',\n density === 'lg' && 'h-(--dx-rail-size) px-3!',\n density === 'sm' && 'h-7 px-2!',\n density === 'xs' && 'h-6 px-1!',\n disabled && '*:opacity-20',\n !layoutManaged && layout,\n ...etc,\n );\n};\n\nconst text: ComponentFunction<ToolbarStyleProps> = (_, ...etc) => {\n return mx('px-2 grow truncate items-center', ...etc);\n};\n\nexport const toolbarTheme: Theme<ToolbarStyleProps> = {\n root,\n text,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Elevation, type Theme } from '@dxos/ui-types';\n\nimport { tooltipContent } from './tooltipContent';\n\nexport type TooltipStyleProps = Partial<{\n elevation: Elevation;\n}>;\n\nconst arrow: ComponentFunction<TooltipStyleProps> = (_props, ...etc) => mx('fill-inverse-surface', ...etc);\n\nexport const tooltipTheme: Theme<TooltipStyleProps> = {\n content: tooltipContent,\n arrow,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type CalendarStyleProps = Partial<{}>;\n\n//\n// Theme slots target react-aria-components elements. RAC attaches `data-*` attributes to its\n// rendered nodes (`data-selected`, `data-focused`, `data-disabled`, `data-outside-month`,\n// `data-selection-start`, `data-selection-end`, `data-hovered`, etc.) which we hook into via\n// Tailwind's `data-[…]:` modifiers.\n//\n\nconst root: ComponentFunction<CalendarStyleProps> = (_p, ...etc) =>\n mx('relative w-fit h-fit self-start p-2 select-none bg-group-surface text-base-fg', ...etc);\n\nconst nav: ComponentFunction<CalendarStyleProps> = (_p, ...etc) => mx('flex items-center justify-between pb-1', ...etc);\n\nconst caption_label: ComponentFunction<CalendarStyleProps> = (_p, ...etc) =>\n mx('flex-1 text-center text-sm font-medium', ...etc);\n\nconst button_previous: ComponentFunction<CalendarStyleProps> = (_p, ...etc) =>\n mx(\n 'h-7 w-7 inline-flex items-center justify-center rounded-sm shrink-0',\n 'text-description hover:bg-hover-surface',\n 'data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed',\n ...etc,\n );\n\nconst button_next: ComponentFunction<CalendarStyleProps> = (_p, ...etc) =>\n mx(\n 'h-7 w-7 inline-flex items-center justify-center rounded-sm shrink-0',\n 'text-description hover:bg-hover-surface',\n 'data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed',\n ...etc,\n );\n\nconst month_grid: ComponentFunction<CalendarStyleProps> = (_p, ...etc) => mx('w-full border-collapse', ...etc);\n\nconst weekdays: ComponentFunction<CalendarStyleProps> = (_p, ...etc) => mx('', ...etc);\n\nconst weekday: ComponentFunction<CalendarStyleProps> = (_p, ...etc) =>\n mx('w-9 h-7 text-xs font-thin text-description', ...etc);\n\nconst day: ComponentFunction<CalendarStyleProps> = (_p, ...etc) =>\n mx(\n 'relative w-9 h-9 p-0 text-center text-sm rounded-sm inline-flex items-center justify-center cursor-pointer',\n 'outline-none',\n 'data-[hovered]:bg-hover-surface',\n 'data-[focus-visible]:outline-2 data-[focus-visible]:outline-primary-500',\n 'data-[selected]:bg-primary-500 data-[selected]:text-primary-fg data-[selected]:hover:bg-primary-500',\n 'data-[outside-month]:text-description/40',\n 'data-[disabled]:text-description/40 data-[disabled]:cursor-not-allowed data-[disabled]:hover:bg-transparent',\n 'data-[unavailable]:line-through data-[unavailable]:text-description/50 data-[unavailable]:cursor-not-allowed',\n // Range selection visual layer.\n 'data-[selection-start]:rounded-l-sm data-[selection-end]:rounded-r-sm',\n 'data-[selection-start]:bg-primary-500 data-[selection-end]:bg-primary-500',\n ...etc,\n );\n\nexport const calendarTheme: Theme<CalendarStyleProps> = {\n root,\n nav,\n caption_label,\n button_previous,\n button_next,\n month_grid,\n weekdays,\n weekday,\n day,\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { mx } from '@dxos/ui-theme';\nimport { type ComponentFunction, type Theme } from '@dxos/ui-types';\n\nexport type DatePickerStyleProps = Partial<{\n hasValue: boolean;\n}>;\n\nconst trigger: ComponentFunction<DatePickerStyleProps> = ({ hasValue }, ...etc) =>\n mx(\n 'inline-flex w-fit items-center gap-2 px-2 rounded-sm border border-separator',\n 'bg-input-surface text-base-fg',\n 'hover:bg-hover-surface focus-visible:outline-2 focus-visible:outline-primary-500',\n !hasValue && 'text-description',\n ...etc,\n );\n\nconst content: ComponentFunction<DatePickerStyleProps> = (_p, ...etc) => mx('flex flex-col gap-2 p-2', ...etc);\n\nconst timeField: ComponentFunction<DatePickerStyleProps> = (_p, ...etc) =>\n mx(\n 'flex items-center gap-2 px-2 py-1',\n '[&_input]:bg-input-surface [&_input]:border [&_input]:border-separator',\n '[&_input]:rounded-sm [&_input]:px-2 [&_input]:py-1',\n ...etc,\n );\n\nexport const datePickerTheme: Theme<DatePickerStyleProps> = {\n trigger,\n content,\n timeField,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Theme } from '@dxos/ui-types';\n\nimport { avatarTheme } from '../components/Avatars/Avatar.theme';\nimport { breadcrumbTheme } from '../components/Breadcrumb/Breadcrumb.theme';\nimport { buttonTheme } from '../components/Button/Button.theme';\nimport { iconButtonTheme } from '../components/Button/IconButton.theme';\nimport { calendarTheme } from '../components/Calendar/Calendar.theme';\nimport { cardTheme } from '../components/Card/Card.theme';\nimport { columnTheme } from '../components/Column/Column.theme';\nimport { datePickerTheme } from '../components/DatePicker/DatePicker.theme';\nimport { dialogTheme } from '../components/Dialog/Dialog.theme';\nimport { focusTheme } from '../components/Focus/Focus.theme';\nimport { iconTheme } from '../components/Icon/Icon.theme';\nimport { inputTheme } from '../components/Input/Input.theme';\nimport { linkTheme } from '../components/Link/Link.theme';\nimport { listTheme } from '../components/List/List.theme';\nimport { treegridTheme } from '../components/List/Treegrid.theme';\nimport { mainTheme } from '../components/Main/Main.theme';\nimport { menuTheme } from '../components/Menu/Menu.theme';\nimport { messageTheme } from '../components/Message/Message.theme';\nimport { panelTheme } from '../components/Panel/Panel.theme';\nimport { popoverTheme } from '../components/Popover/Popover.theme';\nimport { scrollAreaTheme } from '../components/ScrollArea/ScrollArea.theme';\nimport { selectTheme } from '../components/Select/Select.theme';\nimport { separatorTheme } from '../components/Separator/Separator.theme';\nimport { skeletonTheme } from '../components/Skeleton/Skeleton.theme';\nimport { splitterTheme } from '../components/Splitter/Splitter.theme';\nimport { statusTheme } from '../components/Status/Status.theme';\nimport { tagTheme } from '../components/Tag/Tag.theme';\nimport { toastTheme } from '../components/Toast/Toast.theme';\nimport { toolbarTheme } from '../components/Toolbar/Toolbar.theme';\nimport { tooltipTheme } from '../components/Tooltip/Tooltip.theme';\nimport { bindTheme } from './bindTheme';\n\nexport const defaultTheme: Theme<Record<string, any>> = {\n themeName: () => 'default',\n\n //\n // Primitives\n //\n\n column: columnTheme,\n panel: panelTheme,\n\n //\n // Components\n //\n\n avatar: avatarTheme,\n breadcrumb: breadcrumbTheme,\n button: buttonTheme,\n calendar: calendarTheme,\n card: cardTheme,\n datePicker: datePickerTheme,\n dialog: dialogTheme,\n focus: focusTheme,\n icon: iconTheme,\n iconButton: iconButtonTheme,\n input: inputTheme,\n link: linkTheme,\n list: listTheme,\n main: mainTheme,\n message: messageTheme,\n menu: menuTheme,\n popover: popoverTheme,\n scrollArea: scrollAreaTheme,\n select: selectTheme,\n separator: separatorTheme,\n skeleton: skeletonTheme,\n splitter: splitterTheme,\n status: statusTheme,\n tag: tagTheme,\n toast: toastTheme,\n toolbar: toolbarTheme,\n tooltip: tooltipTheme,\n treegrid: treegridTheme,\n};\n\nexport const defaultTx = bindTheme(defaultTheme);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "createContext", "DensityContext", "density", "DensityProvider", "children", "Provider", "value", "React", "createContext", "ElevationContext", "elevation", "ElevationProvider", "children", "Provider", "value", "hasIosKeyboard", "navigator", "userAgent", "match", "enUS", "dtLocaleEnUs", "i18Next", "React", "Suspense", "createContext", "useContext", "useEffect", "useState", "initReactI18next", "useTranslation", "useI18NextTranslation", "initialLng", "initialNs", "initialDtLocale", "resources", "use", "init", "lng", "defaultNS", "interpolation", "escapeValue", "TranslationsContext", "appNs", "dtLocale", "args", "result", "TranslationsProvider", "fallback", "resourceExtensions", "children", "loaded", "setLoaded", "length", "forEach", "resource", "Object", "keys", "language", "ns", "addResourceBundle", "Provider", "value", "createKeyborg", "React", "createContext", "useEffect", "useMemo", "useContext", "useElevationContext", "propsElevation", "elevation", "useContext", "ElevationContext", "useContext", "raise", "useThemeContext", "useContext", "ThemeContext", "raise", "Error", "useCallback", "useState", "useViewportResize", "initialSafeArea", "top", "NaN", "right", "bottom", "left", "useSafeArea", "padding", "setPadding", "handleResize", "parseFloat", "getComputedStyle", "document", "documentElement", "getPropertyValue", "ThemeContext", "createContext", "undefined", "ThemeProvider", "children", "fallback", "resourceExtensions", "appNs", "tx", "_path", "_styleProps", "_options", "themeMode", "rootDensity", "noCache", "platform", "useEffect", "document", "defaultView", "kb", "createKeyborg", "subscribe", "handleInputModalityChange", "unsubscribe", "safeAreaPadding", "useSafeArea", "contextValue", "useMemo", "hasIosKeyboard", "React", "Provider", "value", "TranslationsProvider", "ElevationProvider", "elevation", "DensityProvider", "density", "isUsingKeyboard", "body", "setAttribute", "removeAttribute", "composeEventHandlers", "useComposedRefs", "createContextScope", "DismissableLayer", "useId", "PopperPrimitive", "createPopperScope", "Portal", "PortalPrimitive", "Presence", "Primitive", "Slottable", "useControllableState", "VisuallyHiddenPrimitive", "React", "forwardRef", "useCallback", "useEffect", "useMemo", "useRef", "useState", "createTooltipContext", "createTooltipScope", "createContextScope", "createPopperScope", "usePopperScope", "DEFAULT_DELAY_DURATION", "TOOLTIP_OPEN", "TOOLTIP_NAME", "TooltipContextProvider", "useTooltipContext", "TooltipProvider", "props", "__scopeTooltip", "children", "open", "openProp", "defaultOpen", "onOpenChange", "disableHoverableContent", "delayDuration", "skipDelayDuration", "isOpenDelayedRef", "useRef", "isPointerInTransitRef", "skipDelayTimerRef", "useEffect", "skipDelayTimer", "current", "window", "clearTimeout", "popperScope", "trigger", "setTrigger", "useState", "content", "setContent", "side", "setSide", "undefined", "triggerRef", "handleTriggerChange", "useCallback", "nextTrigger", "nextContent", "nextSide", "contentId", "useId", "openTimerRef", "wasOpenDelayedRef", "handleOpenChange", "document", "dispatchEvent", "CustomEvent", "setTimeout", "setOpen", "useControllableState", "prop", "defaultProp", "onChange", "stateAttribute", "useMemo", "handleOpen", "handleClose", "handleDelayedOpen", "tx", "useThemeContext", "elevation", "useElevationContext", "React", "Root", "scope", "onTriggerChange", "onTriggerEnter", "onTriggerLeave", "onOpen", "onClose", "onPointerInTransitChange", "inTransit", "TooltipContent", "className", "TooltipArrow", "TooltipVirtualTrigger", "virtualRef", "displayName", "Anchor", "asChild", "TRIGGER_NAME", "TooltipTrigger", "forwardRef", "forwardedRef", "onInteract", "_delayDuration", "triggerProps", "context", "ref", "composedRefs", "useComposedRefs", "isPointerDownRef", "hasPointerMoveOpenedRef", "handlePointerUp", "removeEventListener", "Primitive", "button", "aria-describedby", "data-state", "onPointerMove", "composeEventHandlers", "event", "pointerType", "defaultPrevented", "onPointerLeave", "onPointerDown", "addEventListener", "once", "onFocus", "onBlur", "onClick", "PORTAL_NAME", "PortalProvider", "usePortalContext", "forceMount", "TooltipPortal", "container", "Presence", "present", "PortalPrimitive", "CONTENT_NAME", "portalContext", "contentProps", "TooltipContentImpl", "TooltipContentHoverable", "pointerGraceArea", "setPointerGraceArea", "handleRemoveGraceArea", "handleCreateGraceArea", "hoverTarget", "currentTarget", "exitPoint", "x", "clientX", "y", "clientY", "exitSide", "getExitSideFromRect", "getBoundingClientRect", "paddedExitPoints", "getPaddedExitPoints", "hoverTargetPoints", "getPointsFromRect", "graceArea", "getHull", "handleTriggerLeave", "handleContentLeave", "handleTrackPointerGrace", "target", "pointerPosition", "hasEnteredTarget", "contains", "isPointerOutsideGraceArea", "isPointInPolygon", "VisuallyHiddenContentContextProvider", "useVisuallyHiddenContentContext", "isInside", "ariaLabel", "onEscapeKeyDown", "onPointerDownOutside", "handleScroll", "capture", "DismissableLayer", "disableOutsidePointerEvents", "onFocusOutside", "preventDefault", "onDismiss", "Content", "style", "Slottable", "id", "role", "ARROW_NAME", "arrowProps", "visuallyHiddenContentContext", "Arrow", "point", "rect", "top", "Math", "abs", "bottom", "right", "left", "min", "Error", "padding", "push", "polygon", "inside", "i", "j", "length", "xi", "yi", "xj", "yj", "intersect", "points", "newPoints", "slice", "sort", "a", "b", "getHullPresorted", "upperHull", "p", "q", "r", "pop", "lowerHull", "concat", "Tooltip", "Provider", "Trigger", "mx", "surfaceShadow", "surfaceZIndex", "tooltipContent", "elevation", "etc", "level", "withColumn", "center", "propagate", "consumed", "ErrorStackParser", "React", "mx", "parseCaptureOwnerStack", "stack", "length", "err", "Error", "parse", "ErrorStack", "error", "frames", "framesProp", "div", "className", "map", "frame", "i", "isLast", "local", "fileName", "parseLocalFrame", "lineNumber", "columnNumber", "undefined", "functionName", "key", "a", "href", "span", "fileUrl", "line", "col", "pathname", "URL", "startsWith", "FILE_PREFIX", "localPath", "slice", "PKG_PREFIX", "indexOf", "path", "substring", "inputTextLabel", "mainPaddingTransitions", "mainIntrinsicSize", "getDeep", "bindTheme", "theme", "path", "styleProps", "etc", "result", "split", "undefined", "mx", "getSize", "getHeight", "root", "size", "inGroup", "etc", "label", "srOnly", "description", "frame", "variant", "statusIcon", "status", "ring", "animation", "fallbackText", "_props", "group", "groupLabel", "groupDescription", "avatarTheme", "mx", "root", "_props", "etc", "list", "listItem", "current", "separator", "breadcrumbTheme", "mx", "root", "_props", "etc", "group", "buttonTheme", "mx", "root", "iconOnly", "square", "etc", "iconButtonTheme", "mx", "root", "border", "fullWidth", "etc", "header", "_", "title", "_props", "body", "text", "variant", "truncate", "_truncate", "textSpan", "poster", "posterIcon", "action", "actionLabel", "link", "linkLabel", "row", "section", "sectionTitle", "cardTheme", "mx", "root", "_", "etc", "mx", "row", "bleed", "center", "withColumn", "columnTheme", "mx", "sizeMap", "sm", "md", "lg", "xl", "overlay", "_props", "etc", "mx", "content", "inOverlayLayout", "size", "header", "withColumn", "center", "body", "propagate", "actionBar", "title", "srOnly", "description", "dialogTheme", "actionbar", "mx", "ring", "border", "etc", "focusTheme", "group", "item", "getSize", "mx", "root", "size", "etc", "block", "compact", "square", "iconTheme", "densityDimensions", "staticDisabled", "getSize", "getHeight", "getWidth", "mx", "snapSize", "sizeValue", "textValence", "textInputSurfaceFocus", "textInputSurfaceHover", "booleanInputSurface", "booleanInputSurfaceHover", "valence", "sharedSubduedInputStyles", "props", "densityDimensions", "density", "disabled", "staticDisabled", "sharedDefaultInputStyles", "sharedStaticInputStyles", "focused", "validationValence", "input", "etc", "variant", "mx", "textArea", "checkbox", "size", "getSize", "checkboxIndicator", "checked", "snapSize", "sizeValue", "switchRoot", "getHeight", "getWidth", "switchThumb", "withSegmentsInput", "segment", "label", "inputTextLabel", "srOnly", "description", "descriptionAndValidation", "validation", "textValence", "triggerIcon", "_p", "inputTheme", "inputWithSegments", "switch", "mx", "root", "variant", "etc", "linkTheme", "densityBlockSize", "ghostHover", "getSize", "mx", "root", "_", "etc", "item", "collapsible", "itemEndcap", "density", "itemHeading", "itemDragHandleIcon", "_props", "itemOpenTrigger", "itemOpenTriggerIcon", "listTheme", "endcap", "heading", "dragHandleIcon", "openTrigger", "openTriggerIcon", "mx", "levelStyles", "Map", "root", "_", "etc", "row", "level", "get", "Math", "min", "max", "round", "cell", "indent", "treegridTheme", "mx", "padding", "content", "bounce", "etc", "mx", "mainPaddingTransitions", "sidebar", "_", "overlay", "mainTheme", "dataDisabled", "mx", "surfaceShadow", "surfaceZIndex", "content", "elevation", "etc", "level", "viewport", "_props", "item", "separator", "groupLabel", "arrow", "menuTheme", "mx", "messageValence", "root", "valence", "etc", "header", "_", "title", "icon", "close", "content", "messageTheme", "mx", "sizes", "lg", "md", "sm", "root", "_", "etc", "toolbar", "size", "content", "statusbar", "panelTheme", "mx", "surfaceShadow", "surfaceZIndex", "content", "elevation", "etc", "level", "viewport", "constrainBlock", "constrainInline", "arrow", "_props", "popoverTheme", "mx", "root", "orientation", "etc", "mx", "viewport", "centered", "padding", "snap", "autoHide", "withColumn", "consumed", "scrollAreaTheme", "mx", "surfaceShadow", "surfaceZIndex", "content", "elevation", "etc", "level", "triggerButton", "_props", "viewport", "item", "itemIndicator", "arrow", "separator", "scrollButton", "selectTheme", "mx", "root", "orientation", "subdued", "etc", "separatorTheme", "mx", "root", "variant", "etc", "skeletonTheme", "mx", "root", "_props", "etc", "panel", "splitterTheme", "mx", "root", "variant", "etc", "bar", "indeterminate", "statusTheme", "mx", "root", "_", "etc", "tagTheme", "mx", "surfaceShadow", "viewport", "_props", "etc", "root", "elevation", "grid", "header", "icon", "title", "close", "description", "actions", "toastTheme", "mx", "layout", "root", "density", "disabled", "layoutManaged", "etc", "text", "_", "toolbarTheme", "mx", "arrow", "_props", "etc", "mx", "tooltipTheme", "content", "tooltipContent", "mx", "root", "_p", "etc", "nav", "caption_label", "button_previous", "button_next", "month_grid", "weekdays", "weekday", "day", "calendarTheme", "mx", "trigger", "hasValue", "etc", "content", "_p", "timeField", "datePickerTheme", "defaultTheme", "themeName", "column", "columnTheme", "panel", "panelTheme", "avatar", "avatarTheme", "breadcrumb", "breadcrumbTheme", "button", "buttonTheme", "calendar", "calendarTheme", "card", "cardTheme", "datePicker", "datePickerTheme", "dialog", "dialogTheme", "focus", "focusTheme", "icon", "iconTheme", "iconButton", "iconButtonTheme", "input", "inputTheme", "link", "linkTheme", "list", "listTheme", "main", "mainTheme", "message", "messageTheme", "menu", "menuTheme", "popover", "popoverTheme", "scrollArea", "scrollAreaTheme", "select", "selectTheme", "separator", "separatorTheme", "skeleton", "skeletonTheme", "splitter", "splitterTheme", "status", "statusTheme", "tag", "tagTheme", "toast", "toastTheme", "toolbar", "toolbarTheme", "tooltip", "tooltipTheme", "treegrid", "treegridTheme", "defaultTx", "bindTheme"]
|
|
7
|
+
}
|