@dxos/react-ui 0.8.4-main.ead640a → 0.8.4-main.effb148878
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-FFPB5LWE.mjs +1600 -0
- package/dist/lib/browser/chunk-FFPB5LWE.mjs.map +7 -0
- package/dist/lib/browser/chunk-WU2YVQX4.mjs +32 -0
- package/dist/lib/browser/chunk-WU2YVQX4.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +5210 -65
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +94 -73
- 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-TIKGPZSG.mjs +34 -0
- package/dist/lib/node-esm/chunk-TIKGPZSG.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-WOYP6QDI.mjs +1602 -0
- package/dist/lib/node-esm/chunk-WOYP6QDI.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +5210 -65
- 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 +94 -73
- 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/{Buttons → Button}/Button.d.ts +3 -3
- package/dist/types/src/components/Button/Button.d.ts.map +1 -0
- package/dist/types/src/components/{Buttons → Button}/Button.stories.d.ts +1 -1
- package/dist/types/src/components/Button/Button.stories.d.ts.map +1 -0
- 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/{Buttons → Button}/IconButton.d.ts +3 -2
- package/dist/types/src/components/Button/IconButton.d.ts.map +1 -0
- package/dist/types/src/components/{Buttons → Button}/IconButton.stories.d.ts +4 -0
- package/dist/types/src/components/Button/IconButton.stories.d.ts.map +1 -0
- 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/{Buttons → Button}/Toggle.d.ts +2 -2
- package/dist/types/src/components/Button/Toggle.d.ts.map +1 -0
- package/dist/types/src/components/Button/Toggle.stories.d.ts +16 -0
- package/dist/types/src/components/Button/Toggle.stories.d.ts.map +1 -0
- package/dist/types/src/components/Button/ToggleGroup.d.ts +27 -0
- package/dist/types/src/components/Button/ToggleGroup.d.ts.map +1 -0
- package/dist/types/src/components/{Buttons → Button}/ToggleGroup.stories.d.ts +6 -6
- package/dist/types/src/components/Button/ToggleGroup.stories.d.ts.map +1 -0
- package/dist/types/src/components/Button/index.d.ts.map +1 -0
- 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 +135 -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 +102 -0
- package/dist/types/src/components/Carousel/Carousel.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 +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 +51 -0
- package/dist/types/src/components/Dialog/AlertDialog.d.ts.map +1 -0
- package/dist/types/src/components/Dialog/AlertDialog.stories.d.ts.map +1 -0
- package/dist/types/src/components/Dialog/Dialog.d.ts +66 -0
- package/dist/types/src/components/Dialog/Dialog.d.ts.map +1 -0
- package/dist/types/src/components/Dialog/Dialog.stories.d.ts +25 -0
- package/dist/types/src/components/Dialog/Dialog.stories.d.ts.map +1 -0
- 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/Dialog/index.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 +25 -0
- package/dist/types/src/components/Icon/Icon.stories.d.ts.map +1 -0
- package/dist/types/src/components/Icon/Icon.theme.d.ts +6 -0
- package/dist/types/src/components/Icon/Icon.theme.d.ts.map +1 -0
- package/dist/types/src/components/Image/Image.d.ts +15 -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 +93 -19
- 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/{Lists → List}/List.d.ts +6 -4
- package/dist/types/src/components/List/List.d.ts.map +1 -0
- package/dist/types/src/components/{Lists → List}/List.stories.d.ts +3 -1
- package/dist/types/src/components/List/List.stories.d.ts.map +1 -0
- 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 -0
- package/dist/types/src/components/{Lists → List}/Tree.d.ts +2 -2
- package/dist/types/src/components/List/Tree.d.ts.map +1 -0
- package/dist/types/src/components/List/Tree.stories.d.ts.map +1 -0
- package/dist/types/src/components/List/TreeDropIndicator.d.ts.map +1 -0
- package/dist/types/src/components/{Lists → List}/Treegrid.d.ts +5 -9
- package/dist/types/src/components/List/Treegrid.d.ts.map +1 -0
- package/dist/types/src/components/List/Treegrid.stories.d.ts.map +1 -0
- 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/List/index.d.ts.map +1 -0
- package/dist/types/src/components/Main/Main.d.ts +25 -22
- 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 +43 -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 +2 -2
- package/dist/types/src/components/Message/Message.d.ts.map +1 -1
- package/dist/types/src/components/Message/Message.stories.d.ts +5 -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 +62 -0
- package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts.map +1 -0
- package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts +23 -0
- package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts.map +1 -0
- package/dist/types/src/components/ScrollContainer/index.d.ts +2 -0
- package/dist/types/src/components/ScrollContainer/index.d.ts.map +1 -0
- package/dist/types/src/components/Select/Select.d.ts +10 -10
- 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 +19 -19
- package/dist/types/src/components/Toast/Toast.d.ts.map +1 -1
- package/dist/types/src/components/Toast/Toast.stories.d.ts.map +1 -1
- package/dist/types/src/components/Toast/Toast.theme.d.ts +6 -0
- package/dist/types/src/components/Toast/Toast.theme.d.ts.map +1 -0
- package/dist/types/src/components/Toolbar/Toolbar.d.ts +53 -21
- 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 +18 -9
- 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/index.d.ts +1 -1
- package/dist/types/src/testing/decorators/index.d.ts.map +1 -1
- 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 +12 -0
- package/dist/types/src/testing/decorators/withLayoutVariants.d.ts.map +1 -0
- 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 +24 -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 +55 -38
- 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 +4 -5
- package/src/components/Breadcrumb/Breadcrumb.theme.ts +26 -0
- package/src/components/Breadcrumb/Breadcrumb.tsx +25 -39
- package/src/components/{Buttons → Button}/Button.stories.tsx +4 -5
- package/src/components/Button/Button.theme.ts +31 -0
- package/src/components/{Buttons → Button}/Button.tsx +12 -26
- package/src/components/Button/IconButton.stories.tsx +92 -0
- package/src/components/Button/IconButton.theme.ts +21 -0
- package/src/components/{Buttons → Button}/IconButton.tsx +20 -15
- package/src/components/{Buttons → Button}/Toggle.stories.tsx +7 -7
- package/src/components/{Buttons → Button}/Toggle.tsx +4 -4
- package/src/components/{Buttons → Button}/ToggleGroup.stories.tsx +2 -3
- package/src/components/{Buttons → 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 +101 -0
- package/src/components/Card/Card.tsx +496 -0
- package/src/components/Card/index.ts +5 -0
- package/src/components/Carousel/Carousel.tsx +371 -0
- package/src/components/Carousel/index.ts +5 -0
- package/src/components/Clipboard/CopyButton.tsx +11 -12
- 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 +165 -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 +68 -0
- package/src/components/Dialog/AlertDialog.tsx +212 -0
- package/src/components/Dialog/Dialog.stories.tsx +177 -0
- package/src/components/Dialog/Dialog.theme.ts +61 -0
- package/src/components/Dialog/Dialog.tsx +314 -0
- 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 +143 -0
- package/src/components/Icon/Icon.theme.ts +27 -0
- package/src/components/Icon/Icon.tsx +15 -4
- package/src/components/Image/Image.stories.tsx +86 -0
- package/src/components/Image/Image.tsx +246 -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 +241 -75
- package/src/components/Input/SegmentedInput.tsx +453 -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/{Lists → List}/List.stories.tsx +31 -35
- package/src/components/List/List.theme.ts +47 -0
- package/src/components/{Lists → List}/List.tsx +18 -22
- package/src/components/{Lists → List}/ListDropIndicator.tsx +7 -8
- package/src/components/{Lists → List}/Tree.stories.tsx +6 -7
- package/src/components/{Lists → List}/Tree.tsx +0 -1
- package/src/components/{Lists → List}/TreeDropIndicator.tsx +6 -6
- package/src/components/{Lists → List}/Treegrid.stories.tsx +29 -30
- package/src/components/List/Treegrid.theme.ts +35 -0
- package/src/components/{Lists → List}/Treegrid.tsx +23 -29
- package/src/components/Main/Main.stories.tsx +41 -24
- package/src/components/Main/Main.theme.ts +29 -0
- package/src/components/Main/Main.tsx +156 -98
- 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 +178 -0
- package/src/components/MediaPlayer/index.ts +5 -0
- package/src/components/{Menus → Menu}/ContextMenu.stories.tsx +2 -3
- package/src/components/{Menus → Menu}/ContextMenu.tsx +9 -33
- package/src/components/{Menus → Menu}/DropdownMenu.stories.tsx +3 -4
- package/src/components/{Menus → Menu}/DropdownMenu.tsx +152 -125
- package/src/components/Menu/Menu.theme.ts +48 -0
- package/src/components/Message/Message.stories.tsx +27 -13
- package/src/components/Message/Message.theme.ts +39 -0
- package/src/components/Message/Message.tsx +60 -34
- package/src/components/Panel/Panel.stories.tsx +67 -0
- package/src/components/Panel/Panel.theme.ts +42 -0
- package/src/components/Panel/Panel.tsx +121 -0
- package/src/components/Panel/index.ts +5 -0
- package/src/components/Popover/Popover.stories.tsx +8 -9
- package/src/components/Popover/Popover.theme.ts +40 -0
- package/src/components/Popover/Popover.tsx +121 -99
- package/src/components/ScrollArea/ScrollArea.stories.tsx +221 -36
- package/src/components/ScrollArea/ScrollArea.theme.ts +104 -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 +91 -0
- package/src/components/ScrollContainer/ScrollContainer.tsx +347 -0
- package/src/components/ScrollContainer/index.ts +5 -0
- package/src/components/Select/Select.stories.tsx +8 -9
- package/src/components/Select/Select.theme.ts +55 -0
- package/src/components/Select/Select.tsx +37 -37
- 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 +3 -4
- package/src/components/Toast/Toast.theme.ts +52 -0
- package/src/components/Toast/Toast.tsx +24 -43
- package/src/components/Toolbar/Toolbar.stories.tsx +4 -7
- package/src/components/Toolbar/Toolbar.theme.ts +36 -0
- package/src/components/Toolbar/Toolbar.tsx +239 -24
- package/src/components/Tooltip/Tooltip.stories.tsx +21 -20
- 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 +18 -10
- 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 +17 -42
- 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/index.ts +1 -1
- package/src/testing/decorators/withLayout.tsx +32 -21
- package/src/testing/decorators/withLayoutVariants.tsx +48 -0
- 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 +32 -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-24AWTFTZ.mjs +0 -4521
- package/dist/lib/browser/chunk-24AWTFTZ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-MPRFBTTQ.mjs +0 -4523
- package/dist/lib/node-esm/chunk-MPRFBTTQ.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/Buttons/Button.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/Button.stories.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/IconButton.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/IconButton.stories.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/Toggle.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/Toggle.stories.d.ts +0 -13
- package/dist/types/src/components/Buttons/Toggle.stories.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/ToggleGroup.d.ts +0 -27
- package/dist/types/src/components/Buttons/ToggleGroup.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/ToggleGroup.stories.d.ts.map +0 -1
- package/dist/types/src/components/Buttons/index.d.ts.map +0 -1
- package/dist/types/src/components/DensityProvider/index.d.ts.map +0 -1
- package/dist/types/src/components/Dialogs/AlertDialog.d.ts +0 -31
- package/dist/types/src/components/Dialogs/AlertDialog.d.ts.map +0 -1
- package/dist/types/src/components/Dialogs/AlertDialog.stories.d.ts.map +0 -1
- package/dist/types/src/components/Dialogs/Dialog.d.ts +0 -31
- package/dist/types/src/components/Dialogs/Dialog.d.ts.map +0 -1
- package/dist/types/src/components/Dialogs/Dialog.stories.d.ts +0 -25
- package/dist/types/src/components/Dialogs/Dialog.stories.d.ts.map +0 -1
- package/dist/types/src/components/Dialogs/index.d.ts.map +0 -1
- package/dist/types/src/components/ElevationProvider/index.d.ts.map +0 -1
- package/dist/types/src/components/Lists/List.d.ts.map +0 -1
- package/dist/types/src/components/Lists/List.stories.d.ts.map +0 -1
- package/dist/types/src/components/Lists/ListDropIndicator.d.ts.map +0 -1
- package/dist/types/src/components/Lists/Tree.d.ts.map +0 -1
- package/dist/types/src/components/Lists/Tree.stories.d.ts.map +0 -1
- package/dist/types/src/components/Lists/TreeDropIndicator.d.ts.map +0 -1
- package/dist/types/src/components/Lists/Treegrid.d.ts.map +0 -1
- package/dist/types/src/components/Lists/Treegrid.stories.d.ts.map +0 -1
- package/dist/types/src/components/Lists/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 -113
- 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/testing/decorators/withSurfaceVariantsLayout.d.ts +0 -12
- package/dist/types/src/testing/decorators/withSurfaceVariantsLayout.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/Buttons/IconButton.stories.tsx +0 -42
- package/src/components/Dialogs/AlertDialog.stories.tsx +0 -69
- package/src/components/Dialogs/AlertDialog.tsx +0 -172
- package/src/components/Dialogs/Dialog.stories.tsx +0 -67
- package/src/components/Dialogs/Dialog.tsx +0 -159
- package/src/components/ThemeProvider/index.ts +0 -8
- package/src/testing/decorators/withSurfaceVariantsLayout.tsx +0 -51
- 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/{Buttons → Button}/index.d.ts +0 -0
- /package/dist/types/src/components/{Dialogs → Dialog}/AlertDialog.stories.d.ts +0 -0
- /package/dist/types/src/components/{Dialogs → Dialog}/index.d.ts +0 -0
- /package/dist/types/src/components/{Lists → List}/ListDropIndicator.d.ts +0 -0
- /package/dist/types/src/components/{Lists → List}/Tree.stories.d.ts +0 -0
- /package/dist/types/src/components/{Lists → List}/TreeDropIndicator.d.ts +0 -0
- /package/dist/types/src/components/{Lists → List}/Treegrid.stories.d.ts +0 -0
- /package/dist/types/src/components/{Lists → List}/index.d.ts +0 -0
- /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/{Buttons → Button}/index.ts +0 -0
- /package/src/components/{Dialogs → Dialog}/index.ts +0 -0
- /package/src/components/{Lists → List}/index.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
|
@@ -5,31 +5,37 @@
|
|
|
5
5
|
import { type Meta, type StoryObj } from '@storybook/react-vite';
|
|
6
6
|
import React from 'react';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { random } from '@dxos/random';
|
|
9
|
+
import { type MessageValence } from '@dxos/ui-types';
|
|
9
10
|
|
|
10
11
|
import { withTheme } from '../../testing';
|
|
12
|
+
import { Message } from './Message';
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
random.seed(123);
|
|
13
15
|
|
|
14
|
-
type
|
|
16
|
+
type DefaultStoryProps = {
|
|
15
17
|
valence: MessageValence;
|
|
16
18
|
title: string;
|
|
17
19
|
body: string;
|
|
18
20
|
};
|
|
19
21
|
|
|
20
|
-
const DefaultStory = ({ valence, title, body }:
|
|
21
|
-
<
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
const DefaultStory = ({ valence, title, body }: DefaultStoryProps) => (
|
|
23
|
+
<div className='w-[30rem]'>
|
|
24
|
+
<Message.Root valence={valence}>
|
|
25
|
+
{title && <Message.Title onClose={() => console.log('close')}>{title}</Message.Title>}
|
|
26
|
+
{body && <Message.Content>{body}</Message.Content>}
|
|
27
|
+
</Message.Root>
|
|
28
|
+
</div>
|
|
25
29
|
);
|
|
26
30
|
|
|
27
31
|
const meta = {
|
|
28
|
-
title: 'ui/react-ui-core/
|
|
29
|
-
component:
|
|
32
|
+
title: 'ui/react-ui-core/components/Message',
|
|
33
|
+
component: Message.Root as any,
|
|
30
34
|
render: DefaultStory,
|
|
31
|
-
decorators: [withTheme],
|
|
32
|
-
parameters: {
|
|
35
|
+
decorators: [withTheme()],
|
|
36
|
+
parameters: {
|
|
37
|
+
layout: 'centered',
|
|
38
|
+
},
|
|
33
39
|
argTypes: {
|
|
34
40
|
valence: {
|
|
35
41
|
control: 'select',
|
|
@@ -46,6 +52,14 @@ export const Default: Story = {
|
|
|
46
52
|
args: {
|
|
47
53
|
valence: 'neutral',
|
|
48
54
|
title: 'Alert title',
|
|
49
|
-
body:
|
|
55
|
+
body: random.lorem.paragraphs(1),
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
export const Error: Story = {
|
|
60
|
+
args: {
|
|
61
|
+
valence: 'error',
|
|
62
|
+
title: 'Error title',
|
|
63
|
+
body: random.lorem.paragraphs(1),
|
|
50
64
|
},
|
|
51
65
|
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2023 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { mx, messageValence } from '@dxos/ui-theme';
|
|
6
|
+
import { type ComponentFunction, type Elevation, type MessageValence, type Theme } from '@dxos/ui-types';
|
|
7
|
+
|
|
8
|
+
export type MessageStyleProps = {
|
|
9
|
+
valence?: MessageValence;
|
|
10
|
+
elevation?: Elevation;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const root: ComponentFunction<MessageStyleProps> = ({ valence }, etc) => {
|
|
14
|
+
return mx('grid grid-cols-[2rem_1fr_2rem] p-1 rounded-sm', messageValence(valence), etc);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const header: ComponentFunction<MessageStyleProps> = (_, etc) => {
|
|
18
|
+
return mx('col-span-full grid grid-cols-subgrid items-center', etc);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const title: ComponentFunction<MessageStyleProps> = (_, etc) => {
|
|
22
|
+
return mx('col-start-2 overflow-hidden truncate', etc);
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const icon: ComponentFunction<MessageStyleProps> = (_, etc) => {
|
|
26
|
+
return mx('col-start-1 grid place-items-center', etc);
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const content: ComponentFunction<MessageStyleProps> = (_, etc) => {
|
|
30
|
+
return mx('col-start-2 grid grid-cols-subgrid inline first:font-medium', etc);
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export const messageTheme: Theme<MessageStyleProps> = {
|
|
34
|
+
root,
|
|
35
|
+
header,
|
|
36
|
+
icon,
|
|
37
|
+
title,
|
|
38
|
+
content,
|
|
39
|
+
};
|
|
@@ -6,12 +6,16 @@ import { createContext } from '@radix-ui/react-context';
|
|
|
6
6
|
import { Primitive } from '@radix-ui/react-primitive';
|
|
7
7
|
import { Slot } from '@radix-ui/react-slot';
|
|
8
8
|
import React, { type ComponentPropsWithRef, forwardRef } from 'react';
|
|
9
|
+
import { useTranslation } from 'react-i18next';
|
|
9
10
|
|
|
10
11
|
import { useId } from '@dxos/react-hooks';
|
|
11
|
-
import { type Elevation, type MessageValence } from '@dxos/
|
|
12
|
+
import { type Elevation, type MessageValence } from '@dxos/ui-types';
|
|
13
|
+
|
|
14
|
+
import { translationKey } from '#translations';
|
|
12
15
|
|
|
13
16
|
import { useElevationContext, useThemeContext } from '../../hooks';
|
|
14
17
|
import { type ThemedClassName } from '../../util';
|
|
18
|
+
import { IconButton } from '../Button';
|
|
15
19
|
import { Icon } from '../Icon';
|
|
16
20
|
|
|
17
21
|
const messageIcons: Record<MessageValence, string> = {
|
|
@@ -31,9 +35,15 @@ type MessageRootProps = ThemedClassName<ComponentPropsWithRef<typeof Primitive.d
|
|
|
31
35
|
};
|
|
32
36
|
|
|
33
37
|
type MessageContextValue = { titleId?: string; descriptionId: string; valence: MessageValence };
|
|
38
|
+
|
|
34
39
|
const MESSAGE_NAME = 'Message';
|
|
40
|
+
|
|
35
41
|
const [MessageProvider, useMessageContext] = createContext<MessageContextValue>(MESSAGE_NAME);
|
|
36
42
|
|
|
43
|
+
//
|
|
44
|
+
// Root
|
|
45
|
+
//
|
|
46
|
+
|
|
37
47
|
const MessageRoot = forwardRef<HTMLDivElement, MessageRootProps>(
|
|
38
48
|
(
|
|
39
49
|
{
|
|
@@ -52,19 +62,20 @@ const MessageRoot = forwardRef<HTMLDivElement, MessageRootProps>(
|
|
|
52
62
|
const titleId = useId('message__title', propsTitleId);
|
|
53
63
|
const descriptionId = useId('message__description', propsDescriptionId);
|
|
54
64
|
const elevation = useElevationContext(propsElevation);
|
|
55
|
-
const
|
|
65
|
+
const Comp = asChild ? Slot : Primitive.div;
|
|
66
|
+
|
|
56
67
|
return (
|
|
57
68
|
<MessageProvider {...{ titleId, descriptionId, valence }}>
|
|
58
|
-
<
|
|
69
|
+
<Comp
|
|
59
70
|
role={valence === 'neutral' ? 'paragraph' : 'alert'}
|
|
60
71
|
{...props}
|
|
61
|
-
className={tx('message.root',
|
|
72
|
+
className={tx('message.root', { valence, elevation }, classNames)}
|
|
62
73
|
aria-labelledby={titleId}
|
|
63
74
|
aria-describedby={descriptionId}
|
|
64
75
|
ref={forwardedRef}
|
|
65
76
|
>
|
|
66
77
|
{children}
|
|
67
|
-
</
|
|
78
|
+
</Comp>
|
|
68
79
|
</MessageProvider>
|
|
69
80
|
);
|
|
70
81
|
},
|
|
@@ -72,67 +83,82 @@ const MessageRoot = forwardRef<HTMLDivElement, MessageRootProps>(
|
|
|
72
83
|
|
|
73
84
|
MessageRoot.displayName = MESSAGE_NAME;
|
|
74
85
|
|
|
86
|
+
//
|
|
87
|
+
// Title
|
|
88
|
+
//
|
|
89
|
+
|
|
75
90
|
type MessageTitleProps = Omit<ThemedClassName<ComponentPropsWithRef<typeof Primitive.h2>>, 'id'> & {
|
|
76
|
-
asChild?: boolean;
|
|
77
91
|
icon?: string;
|
|
92
|
+
onClose?: () => void;
|
|
78
93
|
};
|
|
79
94
|
|
|
80
|
-
const MESSAGE_TITLE_NAME = '
|
|
95
|
+
const MESSAGE_TITLE_NAME = 'Message.Title';
|
|
81
96
|
|
|
82
97
|
const MessageTitle = forwardRef<HTMLHeadingElement, MessageTitleProps>(
|
|
83
|
-
({
|
|
98
|
+
({ classNames, children, icon: iconProp, onClose }, forwardedRef) => {
|
|
99
|
+
const { t } = useTranslation(translationKey);
|
|
84
100
|
const { tx } = useThemeContext();
|
|
85
101
|
const { titleId, valence } = useMessageContext(MESSAGE_TITLE_NAME);
|
|
86
|
-
const
|
|
102
|
+
const icon = iconProp ?? messageIcons[valence];
|
|
87
103
|
return (
|
|
88
|
-
<
|
|
89
|
-
{
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
{
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
104
|
+
<div className={tx('message.header', {}, classNames)} id={titleId} ref={forwardedRef}>
|
|
105
|
+
{icon && (
|
|
106
|
+
<div className={tx('message.icon', { valence })}>
|
|
107
|
+
<Icon icon={icon} />
|
|
108
|
+
</div>
|
|
109
|
+
)}
|
|
110
|
+
<h2 className={tx('message.title', {}, classNames)}>{children}</h2>
|
|
111
|
+
{onClose && (
|
|
112
|
+
<IconButton
|
|
113
|
+
variant='ghost'
|
|
114
|
+
icon='ph--x--regular'
|
|
115
|
+
iconOnly
|
|
116
|
+
label={t('toolbar-close.label')}
|
|
117
|
+
onClick={onClose}
|
|
99
118
|
/>
|
|
100
119
|
)}
|
|
101
|
-
|
|
102
|
-
</Root>
|
|
120
|
+
</div>
|
|
103
121
|
);
|
|
104
122
|
},
|
|
105
123
|
);
|
|
106
124
|
|
|
107
125
|
MessageTitle.displayName = MESSAGE_TITLE_NAME;
|
|
108
126
|
|
|
127
|
+
//
|
|
128
|
+
// Content
|
|
129
|
+
//
|
|
130
|
+
|
|
109
131
|
type MessageContentProps = Omit<ThemedClassName<ComponentPropsWithRef<typeof Primitive.h2>>, 'id'> & {
|
|
110
132
|
asChild?: boolean;
|
|
111
133
|
};
|
|
112
134
|
|
|
113
|
-
const
|
|
135
|
+
const MESSAGE_CONTENT_NAME = 'Message.Content';
|
|
114
136
|
|
|
115
137
|
const MessageContent = forwardRef<HTMLParagraphElement, MessageContentProps>(
|
|
116
138
|
({ asChild, classNames, children, ...props }, forwardedRef) => {
|
|
117
139
|
const { tx } = useThemeContext();
|
|
118
|
-
const { descriptionId } = useMessageContext(
|
|
119
|
-
const
|
|
140
|
+
const { descriptionId } = useMessageContext(MESSAGE_CONTENT_NAME);
|
|
141
|
+
const Comp = asChild ? Slot : Primitive.p;
|
|
120
142
|
return (
|
|
121
|
-
<
|
|
122
|
-
{...props}
|
|
123
|
-
className={tx('message.content', 'message__content', {}, classNames)}
|
|
124
|
-
id={descriptionId}
|
|
125
|
-
ref={forwardedRef}
|
|
126
|
-
>
|
|
143
|
+
<Comp {...props} className={tx('message.content', {}, classNames)} id={descriptionId} ref={forwardedRef}>
|
|
127
144
|
{children}
|
|
128
|
-
</
|
|
145
|
+
</Comp>
|
|
129
146
|
);
|
|
130
147
|
},
|
|
131
148
|
);
|
|
132
149
|
|
|
133
|
-
MessageContent.displayName =
|
|
150
|
+
MessageContent.displayName = MESSAGE_CONTENT_NAME;
|
|
151
|
+
|
|
152
|
+
//
|
|
153
|
+
// Message
|
|
154
|
+
//
|
|
155
|
+
|
|
156
|
+
export const Message = {
|
|
157
|
+
Root: MessageRoot,
|
|
158
|
+
Title: MessageTitle,
|
|
159
|
+
Content: MessageContent,
|
|
160
|
+
};
|
|
134
161
|
|
|
135
|
-
export const Message = { Root: MessageRoot, Title: MessageTitle, Content: MessageContent };
|
|
136
162
|
export const Callout = Message;
|
|
137
163
|
|
|
138
164
|
export type { MessageRootProps, MessageTitleProps, MessageContentProps };
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { type Meta, type StoryObj } from '@storybook/react-vite';
|
|
6
|
+
import React from 'react';
|
|
7
|
+
|
|
8
|
+
import { Input, ScrollArea, ScrollAreaRootProps, Toolbar } from '../../components';
|
|
9
|
+
import { withLayout, withTheme } from '../../testing';
|
|
10
|
+
import { composable, composableProps } from '../../util';
|
|
11
|
+
import { Panel } from './Panel';
|
|
12
|
+
|
|
13
|
+
const List = composable<HTMLDivElement, ScrollAreaRootProps>((props, forwardedRef) => {
|
|
14
|
+
return (
|
|
15
|
+
<ScrollArea.Root centered {...composableProps(props, { role: 'list' })} ref={forwardedRef}>
|
|
16
|
+
<ScrollArea.Viewport>
|
|
17
|
+
{Array.from({ length: 100 }).map((_, i) => (
|
|
18
|
+
<div key={i} role='listitem' className='p-1 hover:bg-hover-surface'>
|
|
19
|
+
Item {i}
|
|
20
|
+
</div>
|
|
21
|
+
))}
|
|
22
|
+
</ScrollArea.Viewport>
|
|
23
|
+
</ScrollArea.Root>
|
|
24
|
+
);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
const DefaultStory = () => {
|
|
28
|
+
return (
|
|
29
|
+
<Panel.Root className='dx-document'>
|
|
30
|
+
<Panel.Toolbar asChild>
|
|
31
|
+
<Toolbar.Root classNames='gap-2'>
|
|
32
|
+
<Toolbar.IconButton icon='ph--plus--regular' variant='primary' label='Add' />
|
|
33
|
+
<Input.Root>
|
|
34
|
+
<Input.TextInput placeholder='Search' />
|
|
35
|
+
</Input.Root>
|
|
36
|
+
<Toolbar.IconButton icon='ph--dots-three-vertical--regular' iconOnly label='Menu' />
|
|
37
|
+
</Toolbar.Root>
|
|
38
|
+
</Panel.Toolbar>
|
|
39
|
+
|
|
40
|
+
<Panel.Content asChild>
|
|
41
|
+
<List />
|
|
42
|
+
</Panel.Content>
|
|
43
|
+
|
|
44
|
+
<Panel.Statusbar asChild>
|
|
45
|
+
<Toolbar.Root classNames='justify-between'>
|
|
46
|
+
<Toolbar.IconButton variant='ghost' icon='ph--house--regular' iconOnly label='Add' />
|
|
47
|
+
<Toolbar.IconButton variant='ghost' icon='ph--alarm--regular' iconOnly label='Status' />
|
|
48
|
+
</Toolbar.Root>
|
|
49
|
+
</Panel.Statusbar>
|
|
50
|
+
</Panel.Root>
|
|
51
|
+
);
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
const meta: Meta = {
|
|
55
|
+
title: 'ui/react-ui-core/components/Panel',
|
|
56
|
+
render: DefaultStory,
|
|
57
|
+
decorators: [withTheme(), withLayout({ layout: 'fullscreen' })],
|
|
58
|
+
parameters: {
|
|
59
|
+
layout: 'fullscreen',
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export default meta;
|
|
64
|
+
|
|
65
|
+
type Story = StoryObj<typeof meta>;
|
|
66
|
+
|
|
67
|
+
export const Default: Story = {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2026 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { mx } from '@dxos/ui-theme';
|
|
6
|
+
import { type ComponentFunction } from '@dxos/ui-types';
|
|
7
|
+
|
|
8
|
+
type Size = 'lg' | 'md' | 'sm';
|
|
9
|
+
|
|
10
|
+
export type PanelStyleProps = {
|
|
11
|
+
size?: Size;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const sizes: Record<Size, string> = {
|
|
15
|
+
lg: 'h-(--dx-topbar-size)',
|
|
16
|
+
md: 'h-(--dx-toolbar-size)',
|
|
17
|
+
sm: 'h-(--dx-statusbar-size)',
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const root: ComponentFunction<PanelStyleProps> = (_, ...etc) =>
|
|
21
|
+
mx(
|
|
22
|
+
// prettier-ignore
|
|
23
|
+
'dx-container grid grid-cols-[100%] overflow-hidden',
|
|
24
|
+
// Add uncategorized children to content slot.
|
|
25
|
+
'[&>*:not([data-slot])]:[grid-area:content]',
|
|
26
|
+
...etc,
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
const toolbar: ComponentFunction<PanelStyleProps> = ({ size = 'md' }, ...etc) =>
|
|
30
|
+
mx('[grid-area:toolbar]', 'shrink-0', sizes[size], ...etc);
|
|
31
|
+
|
|
32
|
+
const content: ComponentFunction<PanelStyleProps> = (_, ...etc) => mx('[grid-area:content] min-h-0', ...etc);
|
|
33
|
+
|
|
34
|
+
const statusbar: ComponentFunction<PanelStyleProps> = ({ size = 'md' }, ...etc) =>
|
|
35
|
+
mx('[grid-area:statusbar]', 'shrink-0', sizes[size], ...etc);
|
|
36
|
+
|
|
37
|
+
export const panelTheme = {
|
|
38
|
+
root,
|
|
39
|
+
toolbar,
|
|
40
|
+
content,
|
|
41
|
+
statusbar,
|
|
42
|
+
};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2026 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { Primitive } from '@radix-ui/react-primitive';
|
|
6
|
+
import { Slot } from '@radix-ui/react-slot';
|
|
7
|
+
import React, { type CSSProperties } from 'react';
|
|
8
|
+
|
|
9
|
+
import { type SlottableProps } from '@dxos/ui-types';
|
|
10
|
+
|
|
11
|
+
import { useThemeContext } from '../../hooks';
|
|
12
|
+
import { PanelStyleProps } from '../../theme';
|
|
13
|
+
import { composableProps, slottable } from '../../util';
|
|
14
|
+
|
|
15
|
+
//
|
|
16
|
+
// Root
|
|
17
|
+
//
|
|
18
|
+
|
|
19
|
+
const GRID_TEMPLATE_ROWS = 'auto 1fr auto';
|
|
20
|
+
const GRID_TEMPLATE_AREAS = '"toolbar" "content" "statusbar"';
|
|
21
|
+
|
|
22
|
+
type PanelRootProps = SlottableProps<{ style?: CSSProperties }>;
|
|
23
|
+
|
|
24
|
+
const PanelRoot = slottable<HTMLDivElement, { style?: CSSProperties }>(
|
|
25
|
+
({ children, asChild, role, style, ...props }, forwardedRef) => {
|
|
26
|
+
const { className, ...rest } = composableProps(props);
|
|
27
|
+
const Comp = asChild ? Slot : Primitive.div;
|
|
28
|
+
const { tx } = useThemeContext();
|
|
29
|
+
return (
|
|
30
|
+
<Comp
|
|
31
|
+
{...rest}
|
|
32
|
+
role={role ?? 'none'}
|
|
33
|
+
style={{
|
|
34
|
+
gridTemplateRows: GRID_TEMPLATE_ROWS,
|
|
35
|
+
gridTemplateAreas: GRID_TEMPLATE_AREAS,
|
|
36
|
+
...style,
|
|
37
|
+
}}
|
|
38
|
+
className={tx('panel.root', {}, className)}
|
|
39
|
+
ref={forwardedRef}
|
|
40
|
+
>
|
|
41
|
+
{children}
|
|
42
|
+
</Comp>
|
|
43
|
+
);
|
|
44
|
+
},
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
PanelRoot.displayName = 'Panel.Root';
|
|
48
|
+
|
|
49
|
+
//
|
|
50
|
+
// Toolbar
|
|
51
|
+
//
|
|
52
|
+
|
|
53
|
+
type PanelToolbarProps = SlottableProps & Pick<PanelStyleProps, 'size'>;
|
|
54
|
+
|
|
55
|
+
const PanelToolbar = slottable<HTMLDivElement, Pick<PanelStyleProps, 'size'>>(
|
|
56
|
+
({ children, asChild, size, ...props }, forwardedRef) => {
|
|
57
|
+
const { className, ...rest } = composableProps(props);
|
|
58
|
+
const Comp = asChild ? Slot : Primitive.div;
|
|
59
|
+
const { tx } = useThemeContext();
|
|
60
|
+
return (
|
|
61
|
+
<Comp {...rest} data-slot='toolbar' className={tx('panel.toolbar', { size }, className)} ref={forwardedRef}>
|
|
62
|
+
{children}
|
|
63
|
+
</Comp>
|
|
64
|
+
);
|
|
65
|
+
},
|
|
66
|
+
);
|
|
67
|
+
|
|
68
|
+
PanelToolbar.displayName = 'Panel.Toolbar';
|
|
69
|
+
|
|
70
|
+
//
|
|
71
|
+
// Content
|
|
72
|
+
//
|
|
73
|
+
|
|
74
|
+
type PanelContentProps = SlottableProps;
|
|
75
|
+
|
|
76
|
+
const PanelContent = slottable<HTMLDivElement>(({ children, asChild, ...props }, forwardedRef) => {
|
|
77
|
+
const { className, ...rest } = composableProps(props);
|
|
78
|
+
const Comp = asChild ? Slot : Primitive.div;
|
|
79
|
+
const { tx } = useThemeContext();
|
|
80
|
+
return (
|
|
81
|
+
<Comp {...rest} data-slot='content' className={tx('panel.content', {}, className)} ref={forwardedRef}>
|
|
82
|
+
{children}
|
|
83
|
+
</Comp>
|
|
84
|
+
);
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
PanelContent.displayName = 'Panel.Content';
|
|
88
|
+
|
|
89
|
+
//
|
|
90
|
+
// Statusbar
|
|
91
|
+
//
|
|
92
|
+
|
|
93
|
+
type PanelStatusbarProps = SlottableProps & Pick<PanelStyleProps, 'size'>;
|
|
94
|
+
|
|
95
|
+
const PanelStatusbar = slottable<HTMLDivElement, Pick<PanelStyleProps, 'size'>>(
|
|
96
|
+
({ children, asChild, size, ...props }, forwardedRef) => {
|
|
97
|
+
const { className, ...rest } = composableProps(props);
|
|
98
|
+
const Comp = asChild ? Slot : Primitive.div;
|
|
99
|
+
const { tx } = useThemeContext();
|
|
100
|
+
return (
|
|
101
|
+
<Comp {...rest} data-slot='statusbar' className={tx('panel.statusbar', { size }, className)} ref={forwardedRef}>
|
|
102
|
+
{children}
|
|
103
|
+
</Comp>
|
|
104
|
+
);
|
|
105
|
+
},
|
|
106
|
+
);
|
|
107
|
+
|
|
108
|
+
PanelStatusbar.displayName = 'Panel.Statusbar';
|
|
109
|
+
|
|
110
|
+
//
|
|
111
|
+
// Panel
|
|
112
|
+
//
|
|
113
|
+
|
|
114
|
+
export const Panel = {
|
|
115
|
+
Root: PanelRoot,
|
|
116
|
+
Toolbar: PanelToolbar,
|
|
117
|
+
Content: PanelContent,
|
|
118
|
+
Statusbar: PanelStatusbar,
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
export type { PanelRootProps, PanelToolbarProps, PanelContentProps, PanelStatusbarProps };
|
|
@@ -5,14 +5,13 @@
|
|
|
5
5
|
import { type Meta, type StoryObj } from '@storybook/react-vite';
|
|
6
6
|
import React, { type PropsWithChildren, type ReactNode, useRef, useState } from 'react';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { random } from '@dxos/random';
|
|
9
9
|
|
|
10
10
|
import { withTheme } from '../../testing';
|
|
11
|
-
import { Button } from '../
|
|
12
|
-
|
|
11
|
+
import { Button } from '../Button';
|
|
13
12
|
import { Popover } from './Popover';
|
|
14
13
|
|
|
15
|
-
|
|
14
|
+
random.seed(1234);
|
|
16
15
|
|
|
17
16
|
const DefaultStory = ({ openTrigger, children }: PropsWithChildren<{ openTrigger: ReactNode }>) => {
|
|
18
17
|
return (
|
|
@@ -20,7 +19,7 @@ const DefaultStory = ({ openTrigger, children }: PropsWithChildren<{ openTrigger
|
|
|
20
19
|
<Popover.Trigger asChild>{openTrigger}</Popover.Trigger>
|
|
21
20
|
<Popover.Content>
|
|
22
21
|
<Popover.Viewport>
|
|
23
|
-
<p className='
|
|
22
|
+
<p className='px-2 py-1 min-w-[18rem] max-w-[38rem]'>{children}</p>
|
|
24
23
|
</Popover.Viewport>
|
|
25
24
|
<Popover.Arrow />
|
|
26
25
|
</Popover.Content>
|
|
@@ -29,10 +28,10 @@ const DefaultStory = ({ openTrigger, children }: PropsWithChildren<{ openTrigger
|
|
|
29
28
|
};
|
|
30
29
|
|
|
31
30
|
const meta = {
|
|
32
|
-
title: 'ui/react-ui-core/Popover',
|
|
31
|
+
title: 'ui/react-ui-core/components/Popover',
|
|
33
32
|
component: Popover.Root,
|
|
34
33
|
render: DefaultStory,
|
|
35
|
-
decorators: [withTheme],
|
|
34
|
+
decorators: [withTheme()],
|
|
36
35
|
} satisfies Meta<typeof DefaultStory>;
|
|
37
36
|
|
|
38
37
|
export default meta;
|
|
@@ -42,7 +41,7 @@ type Story = StoryObj<typeof meta>;
|
|
|
42
41
|
export const Default: Story = {
|
|
43
42
|
args: {
|
|
44
43
|
openTrigger: <Button>Open popover</Button>,
|
|
45
|
-
children:
|
|
44
|
+
children: random.lorem.paragraphs(3),
|
|
46
45
|
},
|
|
47
46
|
};
|
|
48
47
|
|
|
@@ -59,7 +58,7 @@ export const VirtualTrigger = {
|
|
|
59
58
|
<Popover.VirtualTrigger virtualRef={buttonRef} />
|
|
60
59
|
<Popover.Content>
|
|
61
60
|
<Popover.Viewport>
|
|
62
|
-
<p className='
|
|
61
|
+
<p className='px-2 py-1 min-w-[18rem] max-w-[38rem]'>{random.lorem.paragraphs(3)}</p>
|
|
63
62
|
</Popover.Viewport>
|
|
64
63
|
<Popover.Arrow />
|
|
65
64
|
</Popover.Content>
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2023 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { mx, surfaceShadow, surfaceZIndex } from '@dxos/ui-theme';
|
|
6
|
+
import { type ComponentFunction, type Elevation, type Theme } from '@dxos/ui-types';
|
|
7
|
+
|
|
8
|
+
export type PopoverStyleProps = Partial<{
|
|
9
|
+
constrainBlock: boolean;
|
|
10
|
+
constrainInline: boolean;
|
|
11
|
+
elevation: Elevation;
|
|
12
|
+
}>;
|
|
13
|
+
|
|
14
|
+
const content: ComponentFunction<PopoverStyleProps> = ({ elevation }, ...etc) =>
|
|
15
|
+
mx(
|
|
16
|
+
'dx-modal-surface border border-separator rounded-sm',
|
|
17
|
+
surfaceShadow({ elevation: 'positioned' }),
|
|
18
|
+
surfaceZIndex({ elevation, level: 'menu' }),
|
|
19
|
+
'dx-focus-ring',
|
|
20
|
+
...etc,
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
const viewport: ComponentFunction<PopoverStyleProps> = ({ constrainBlock, constrainInline }, ...etc) =>
|
|
24
|
+
mx(
|
|
25
|
+
'grid grid-rows-[1fr] min-h-0 min-w-popover-min-width',
|
|
26
|
+
(constrainBlock || constrainInline) && 'overflow-hidden',
|
|
27
|
+
constrainBlock && 'max-h-(--radix-popover-content-available-height)',
|
|
28
|
+
constrainBlock &&
|
|
29
|
+
'max-h-[min(var(--radix-popover-content-available-height),calc(100dvh-var(--spacing-screen-border)*2))]',
|
|
30
|
+
constrainInline && 'max-w-(--radix-popover-content-available-width)',
|
|
31
|
+
...etc,
|
|
32
|
+
);
|
|
33
|
+
|
|
34
|
+
const arrow: ComponentFunction<PopoverStyleProps> = (_props, ...etc) => mx('fill-separator', ...etc);
|
|
35
|
+
|
|
36
|
+
export const popoverTheme: Theme<PopoverStyleProps> = {
|
|
37
|
+
content,
|
|
38
|
+
viewport,
|
|
39
|
+
arrow,
|
|
40
|
+
};
|