@dxos/react-ui 0.8.4-main.9735255 → 0.8.4-main.9be5663bfe
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{chunk-CEKVHJ27.mjs → chunk-OCVRIJCH.mjs} +184 -110
- package/dist/lib/browser/chunk-OCVRIJCH.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +3025 -2078
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +73 -37
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/node-esm/{chunk-2NHEX4AD.mjs → chunk-QUD5P3RU.mjs} +184 -110
- package/dist/lib/node-esm/chunk-QUD5P3RU.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +3025 -2078
- 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 +73 -37
- package/dist/lib/node-esm/testing/index.mjs.map +4 -4
- 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/AvatarGroup.stories.d.ts.map +1 -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/Button/Button.d.ts +2 -2
- package/dist/types/src/components/Button/Button.d.ts.map +1 -1
- package/dist/types/src/components/Button/Button.stories.d.ts.map +1 -1
- package/dist/types/src/components/Button/IconButton.d.ts.map +1 -1
- package/dist/types/src/components/Button/IconButton.stories.d.ts +3 -0
- package/dist/types/src/components/Button/IconButton.stories.d.ts.map +1 -1
- 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 +6 -6
- package/dist/types/src/components/Button/ToggleGroup.d.ts.map +1 -1
- package/dist/types/src/components/Button/ToggleGroup.stories.d.ts.map +1 -1
- package/dist/types/src/components/Card/Card.d.ts +118 -0
- package/dist/types/src/components/Card/Card.d.ts.map +1 -0
- package/dist/types/src/components/Card/Card.stories.d.ts +21 -0
- package/dist/types/src/components/Card/Card.stories.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/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/Dialog/AlertDialog.d.ts +37 -19
- 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 +44 -22
- package/dist/types/src/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/types/src/components/Dialog/Dialog.stories.d.ts +6 -8
- package/dist/types/src/components/Dialog/Dialog.stories.d.ts.map +1 -1
- 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/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 +3 -0
- 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/Image/Image.d.ts +14 -0
- package/dist/types/src/components/Image/Image.d.ts.map +1 -0
- package/dist/types/src/components/Image/Image.stories.d.ts +33 -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 +4 -7
- package/dist/types/src/components/Input/Input.d.ts.map +1 -1
- package/dist/types/src/components/Input/Input.stories.d.ts +7 -7
- package/dist/types/src/components/Input/Input.stories.d.ts.map +1 -1
- package/dist/types/src/components/Link/Link.stories.d.ts.map +1 -1
- package/dist/types/src/components/List/List.d.ts +5 -3
- 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/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/Treegrid.d.ts +5 -9
- 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/Main/Main.d.ts +6 -32
- package/dist/types/src/components/Main/Main.d.ts.map +1 -1
- package/dist/types/src/components/Main/Main.stories.d.ts +1 -5
- package/dist/types/src/components/Main/Main.stories.d.ts.map +1 -1
- package/dist/types/src/components/Menu/ContextMenu.d.ts.map +1 -1
- package/dist/types/src/components/Menu/ContextMenu.stories.d.ts.map +1 -1
- package/dist/types/src/components/Menu/DropdownMenu.d.ts +51 -50
- package/dist/types/src/components/Menu/DropdownMenu.d.ts.map +1 -1
- package/dist/types/src/components/Menu/DropdownMenu.stories.d.ts +14 -1
- package/dist/types/src/components/Menu/DropdownMenu.stories.d.ts.map +1 -1
- package/dist/types/src/components/Message/Message.d.ts.map +1 -1
- package/dist/types/src/components/Message/Message.stories.d.ts +4 -5
- package/dist/types/src/components/Message/Message.stories.d.ts.map +1 -1
- package/dist/types/src/components/Popover/Popover.d.ts +32 -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/ScrollArea/ScrollArea.d.ts +26 -28
- package/dist/types/src/components/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts +54 -9
- package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts.map +1 -1
- package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts +34 -13
- package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts.map +1 -1
- package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts +9 -5
- package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts.map +1 -1
- 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/Separator/Separator.d.ts +3 -3
- package/dist/types/src/components/Separator/Separator.d.ts.map +1 -1
- 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/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 +34 -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/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/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/ThemeProvider/ThemeProvider.d.ts +2 -1
- package/dist/types/src/components/ThemeProvider/ThemeProvider.d.ts.map +1 -1
- package/dist/types/src/components/ThemeProvider/ThemeProvider.stories.d.ts +12 -0
- package/dist/types/src/components/ThemeProvider/ThemeProvider.stories.d.ts.map +1 -0
- package/dist/types/src/components/Toast/Toast.d.ts +15 -15
- 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/Toolbar/Toolbar.d.ts +30 -12
- 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/Tooltip/Tooltip.d.ts +9 -9
- 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/index.d.ts +9 -4
- 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 +1 -1
- package/dist/types/src/hooks/useDensityContext.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -0
- 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.map +1 -1
- package/dist/types/src/primitives/Column/Column.d.ts +35 -0
- package/dist/types/src/primitives/Column/Column.d.ts.map +1 -0
- package/dist/types/src/primitives/Column/Column.stories.d.ts +25 -0
- package/dist/types/src/primitives/Column/Column.stories.d.ts.map +1 -0
- package/dist/types/src/primitives/Column/index.d.ts +2 -0
- package/dist/types/src/primitives/Column/index.d.ts.map +1 -0
- 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/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/primitives/Panel/Panel.d.ts +35 -0
- package/dist/types/src/primitives/Panel/Panel.d.ts.map +1 -0
- package/dist/types/src/primitives/Panel/Panel.stories.d.ts +6 -0
- package/dist/types/src/primitives/Panel/Panel.stories.d.ts.map +1 -0
- package/dist/types/src/primitives/Panel/index.d.ts +2 -0
- package/dist/types/src/primitives/Panel/index.d.ts.map +1 -0
- package/dist/types/src/primitives/index.d.ts +6 -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 +1 -1
- package/dist/types/src/testing/decorators/withLayout.d.ts.map +1 -1
- package/dist/types/src/testing/decorators/withLayoutVariants.d.ts.map +1 -1
- package/dist/types/src/testing/decorators/withTheme.d.ts +3 -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/translations.d.ts +11 -0
- package/dist/types/src/translations.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 +27 -22
- package/src/components/Avatars/Avatar.stories.tsx +7 -9
- package/src/components/Avatars/Avatar.tsx +6 -14
- package/src/components/Avatars/AvatarGroup.stories.tsx +2 -3
- package/src/components/Breadcrumb/Breadcrumb.stories.tsx +3 -4
- package/src/components/Breadcrumb/Breadcrumb.tsx +11 -37
- package/src/components/Button/Button.stories.tsx +3 -4
- package/src/components/Button/Button.tsx +11 -25
- package/src/components/Button/IconButton.stories.tsx +8 -6
- package/src/components/Button/IconButton.tsx +2 -4
- 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/Card/Card.stories.tsx +151 -0
- package/src/components/Card/Card.tsx +492 -0
- package/src/components/Card/index.ts +5 -0
- package/src/components/Clipboard/CopyButton.tsx +4 -5
- package/src/components/Dialog/AlertDialog.stories.tsx +16 -17
- package/src/components/Dialog/AlertDialog.tsx +123 -82
- package/src/components/Dialog/Dialog.stories.tsx +100 -20
- package/src/components/Dialog/Dialog.tsx +113 -87
- package/src/components/ErrorFallback/ErrorFallback.stories.tsx +45 -0
- package/src/components/ErrorFallback/ErrorFallback.tsx +70 -0
- package/src/components/ErrorFallback/ErrorStack.tsx +114 -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.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.tsx +6 -2
- package/src/components/Image/Image.stories.tsx +86 -0
- package/src/components/Image/Image.tsx +223 -0
- package/src/components/Image/index.ts +5 -0
- package/src/components/Input/Input.stories.tsx +20 -40
- package/src/components/Input/Input.tsx +24 -69
- package/src/components/Link/Link.stories.tsx +2 -3
- package/src/components/Link/Link.tsx +2 -2
- package/src/components/List/List.stories.tsx +15 -23
- package/src/components/List/List.tsx +16 -20
- package/src/components/List/ListDropIndicator.tsx +7 -7
- package/src/components/List/Tree.stories.tsx +5 -6
- 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.tsx +23 -28
- package/src/components/Main/Main.stories.tsx +6 -96
- package/src/components/Main/Main.tsx +61 -212
- package/src/components/Menu/ContextMenu.stories.tsx +2 -3
- package/src/components/Menu/ContextMenu.tsx +9 -33
- package/src/components/Menu/DropdownMenu.stories.tsx +2 -3
- package/src/components/Menu/DropdownMenu.tsx +58 -52
- package/src/components/Message/Message.stories.tsx +26 -12
- package/src/components/Message/Message.tsx +14 -30
- package/src/components/Popover/Popover.stories.tsx +7 -8
- package/src/components/Popover/Popover.tsx +62 -59
- package/src/components/ScrollArea/ScrollArea.stories.tsx +214 -75
- package/src/components/ScrollArea/ScrollArea.tsx +85 -113
- package/src/components/ScrollArea/index.ts +1 -1
- package/src/components/ScrollContainer/ScrollContainer.stories.tsx +47 -26
- package/src/components/ScrollContainer/ScrollContainer.tsx +206 -92
- package/src/components/Select/Select.stories.tsx +7 -8
- package/src/components/Select/Select.tsx +11 -27
- package/src/components/Separator/Separator.tsx +5 -8
- package/src/components/Skeleton/Skeleton.stories.tsx +51 -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.tsx +127 -0
- package/src/components/Splitter/index.ts +5 -0
- package/src/components/Status/Status.stories.tsx +21 -18
- package/src/components/Status/Status.tsx +10 -7
- package/src/components/Tag/Tag.stories.tsx +4 -10
- package/src/components/Tag/Tag.tsx +2 -7
- package/src/components/ThemeProvider/ThemeProvider.stories.tsx +31 -0
- package/src/components/ThemeProvider/ThemeProvider.tsx +9 -7
- package/src/components/Toast/Toast.stories.tsx +2 -3
- package/src/components/Toast/Toast.tsx +22 -41
- package/src/components/Toolbar/Toolbar.stories.tsx +2 -3
- package/src/components/Toolbar/Toolbar.tsx +173 -26
- package/src/components/Tooltip/Tooltip.stories.tsx +20 -19
- package/src/components/Tooltip/Tooltip.tsx +18 -18
- package/src/components/index.ts +10 -5
- package/src/exemplars/generics.stories.tsx +41 -0
- package/src/exemplars/slot.stories.tsx +117 -0
- package/src/exemplars/tabster.stories.tsx +127 -0
- package/src/exemplars/virtualizer.stories.tsx +137 -0
- package/src/hooks/index.ts +1 -0
- package/src/hooks/useDensityContext.ts +2 -2
- package/src/index.ts +1 -0
- package/src/playground/Controls.stories.tsx +3 -10
- package/src/playground/Custom.stories.tsx +15 -18
- package/src/playground/Typography.stories.tsx +3 -3
- package/src/primitives/Column/AUDIT.md +354 -0
- package/src/primitives/Column/Column.stories.tsx +183 -0
- package/src/primitives/Column/Column.tsx +169 -0
- package/src/primitives/Column/index.ts +5 -0
- package/src/primitives/Container/Container.stories.tsx +29 -0
- package/src/primitives/Container/Container.tsx +19 -0
- package/src/primitives/Container/index.ts +5 -0
- package/src/primitives/Flex/Flex.stories.tsx +57 -0
- package/src/primitives/Flex/Flex.tsx +27 -0
- package/src/primitives/Flex/index.ts +5 -0
- package/src/primitives/Grid/Grid.stories.tsx +56 -0
- package/src/primitives/Grid/Grid.tsx +30 -0
- package/src/primitives/Grid/index.ts +5 -0
- package/src/primitives/Panel/Panel.stories.tsx +68 -0
- package/src/primitives/Panel/Panel.tsx +120 -0
- package/src/primitives/Panel/index.ts +5 -0
- package/src/primitives/index.ts +9 -0
- package/src/testing/Loading.tsx +47 -0
- package/src/testing/decorators/withLayout.tsx +21 -7
- package/src/testing/decorators/withLayoutVariants.tsx +18 -21
- package/src/testing/decorators/withTheme.tsx +24 -19
- package/src/testing/index.ts +2 -0
- package/src/translations.ts +19 -0
- package/src/util/usePx.ts +1 -0
- package/dist/lib/browser/chunk-CEKVHJ27.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2NHEX4AD.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/src/components/AnchoredOverflow/AnchoredOverflow.tsx +0 -59
- package/src/components/AnchoredOverflow/index.ts +0 -5
|
@@ -7,7 +7,6 @@ import React, { useRef, useState } from 'react';
|
|
|
7
7
|
|
|
8
8
|
import { withTheme } from '../../testing';
|
|
9
9
|
import { Button } from '../Button';
|
|
10
|
-
|
|
11
10
|
import { DropdownMenu } from './DropdownMenu';
|
|
12
11
|
|
|
13
12
|
const DefaultStory = () => {
|
|
@@ -92,10 +91,10 @@ const DefaultStory = () => {
|
|
|
92
91
|
};
|
|
93
92
|
|
|
94
93
|
const meta = {
|
|
95
|
-
title: 'ui/react-ui-core/DropdownMenu',
|
|
94
|
+
title: 'ui/react-ui-core/components/DropdownMenu',
|
|
96
95
|
component: DropdownMenu.Root,
|
|
97
96
|
render: DefaultStory,
|
|
98
|
-
decorators: [withTheme],
|
|
97
|
+
decorators: [withTheme()],
|
|
99
98
|
} satisfies Meta<typeof DefaultStory>;
|
|
100
99
|
|
|
101
100
|
export default meta;
|
|
@@ -17,9 +17,9 @@ import { useControllableState } from '@radix-ui/react-use-controllable-state';
|
|
|
17
17
|
import React, {
|
|
18
18
|
type ComponentPropsWithRef,
|
|
19
19
|
type ComponentPropsWithoutRef,
|
|
20
|
-
type
|
|
20
|
+
type ComponentRef,
|
|
21
21
|
type FC,
|
|
22
|
-
|
|
22
|
+
PropsWithChildren,
|
|
23
23
|
type ReactNode,
|
|
24
24
|
type RefObject,
|
|
25
25
|
forwardRef,
|
|
@@ -47,7 +47,7 @@ const useMenuScope: (scope?: Scope) => any = createMenuScope();
|
|
|
47
47
|
|
|
48
48
|
type DropdownMenuContextValue = {
|
|
49
49
|
triggerId: string;
|
|
50
|
-
triggerRef:
|
|
50
|
+
triggerRef: RefObject<HTMLButtonElement | null>;
|
|
51
51
|
contentId: string;
|
|
52
52
|
open: boolean;
|
|
53
53
|
onOpenChange(open: boolean): void;
|
|
@@ -58,17 +58,23 @@ type DropdownMenuContextValue = {
|
|
|
58
58
|
const [DropdownMenuProvider, useDropdownMenuContext] =
|
|
59
59
|
createDropdownMenuContext<DropdownMenuContextValue>(DROPDOWN_MENU_NAME);
|
|
60
60
|
|
|
61
|
-
|
|
62
|
-
children?: ReactNode;
|
|
61
|
+
type DropdownMenuRootProps = PropsWithChildren<{
|
|
63
62
|
dir?: Direction;
|
|
63
|
+
modal?: boolean;
|
|
64
64
|
open?: boolean;
|
|
65
65
|
defaultOpen?: boolean;
|
|
66
66
|
onOpenChange?(open: boolean): void;
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
67
|
+
}>;
|
|
68
|
+
|
|
69
|
+
const DropdownMenuRoot = ({
|
|
70
|
+
__scopeDropdownMenu,
|
|
71
|
+
children,
|
|
72
|
+
dir,
|
|
73
|
+
modal = true,
|
|
74
|
+
open: openProp,
|
|
75
|
+
defaultOpen,
|
|
76
|
+
onOpenChange,
|
|
77
|
+
}: ScopedProps<DropdownMenuRootProps>) => {
|
|
72
78
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
73
79
|
const triggerRef = useRef<HTMLButtonElement | null>(null);
|
|
74
80
|
const [open = false, setOpen] = useControllableState({
|
|
@@ -81,14 +87,14 @@ const DropdownMenuRoot: FC<DropdownMenuRootProps> = (props: ScopedProps<Dropdown
|
|
|
81
87
|
<DropdownMenuProvider
|
|
82
88
|
scope={__scopeDropdownMenu}
|
|
83
89
|
triggerId={useId()}
|
|
84
|
-
triggerRef={triggerRef
|
|
90
|
+
triggerRef={triggerRef}
|
|
85
91
|
contentId={useId()}
|
|
86
92
|
open={open}
|
|
87
93
|
onOpenChange={setOpen}
|
|
88
94
|
onOpenToggle={useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen])}
|
|
89
95
|
modal={modal}
|
|
90
96
|
>
|
|
91
|
-
<MenuPrimitive.Root {...menuScope}
|
|
97
|
+
<MenuPrimitive.Root {...menuScope} dir={dir} modal={modal} open={open} onOpenChange={setOpen}>
|
|
92
98
|
{children}
|
|
93
99
|
</MenuPrimitive.Root>
|
|
94
100
|
</DropdownMenuProvider>
|
|
@@ -103,9 +109,9 @@ DropdownMenuRoot.displayName = DROPDOWN_MENU_NAME;
|
|
|
103
109
|
|
|
104
110
|
const TRIGGER_NAME = 'DropdownMenuTrigger';
|
|
105
111
|
|
|
106
|
-
type DropdownMenuTriggerElement =
|
|
112
|
+
type DropdownMenuTriggerElement = ComponentRef<typeof Primitive.button>;
|
|
107
113
|
type PrimitiveButtonProps = ComponentPropsWithoutRef<typeof Primitive.button>;
|
|
108
|
-
|
|
114
|
+
type DropdownMenuTriggerProps = PrimitiveButtonProps;
|
|
109
115
|
|
|
110
116
|
const DropdownMenuTrigger = forwardRef<DropdownMenuTriggerElement, DropdownMenuTriggerProps>(
|
|
111
117
|
(props: ScopedProps<DropdownMenuTriggerProps>, forwardedRef) => {
|
|
@@ -168,9 +174,9 @@ DropdownMenuTrigger.displayName = TRIGGER_NAME;
|
|
|
168
174
|
|
|
169
175
|
const VIRTUAL_TRIGGER_NAME = 'DropdownMenuVirtualTrigger';
|
|
170
176
|
|
|
171
|
-
|
|
177
|
+
type DropdownMenuVirtualTriggerProps = {
|
|
172
178
|
virtualRef: RefObject<DropdownMenuTriggerElement | null>;
|
|
173
|
-
}
|
|
179
|
+
};
|
|
174
180
|
|
|
175
181
|
const DropdownMenuVirtualTrigger = (props: ScopedProps<DropdownMenuVirtualTriggerProps>) => {
|
|
176
182
|
const { __scopeDropdownMenu, virtualRef } = props;
|
|
@@ -193,7 +199,7 @@ DropdownMenuVirtualTrigger.displayName = VIRTUAL_TRIGGER_NAME;
|
|
|
193
199
|
const PORTAL_NAME = 'DropdownMenuPortal';
|
|
194
200
|
|
|
195
201
|
type MenuPortalProps = ComponentPropsWithoutRef<typeof MenuPrimitive.Portal>;
|
|
196
|
-
|
|
202
|
+
type DropdownMenuPortalProps = MenuPortalProps;
|
|
197
203
|
|
|
198
204
|
const DropdownMenuPortal: FC<DropdownMenuPortalProps> = (props: ScopedProps<DropdownMenuPortalProps>) => {
|
|
199
205
|
const { __scopeDropdownMenu, ...portalProps } = props;
|
|
@@ -214,11 +220,11 @@ type DropdownMenuViewportProps = ThemedClassName<ComponentPropsWithRef<typeof Pr
|
|
|
214
220
|
const DropdownMenuViewport = forwardRef<HTMLDivElement, DropdownMenuViewportProps>(
|
|
215
221
|
({ classNames, asChild, children, ...props }, forwardedRef) => {
|
|
216
222
|
const { tx } = useThemeContext();
|
|
217
|
-
const
|
|
223
|
+
const Comp = asChild ? Slot : Primitive.div;
|
|
218
224
|
return (
|
|
219
|
-
<
|
|
225
|
+
<Comp {...props} className={tx('menu.viewport', {}, classNames)} ref={forwardedRef}>
|
|
220
226
|
{children}
|
|
221
|
-
</
|
|
227
|
+
</Comp>
|
|
222
228
|
);
|
|
223
229
|
},
|
|
224
230
|
);
|
|
@@ -229,9 +235,9 @@ const DropdownMenuViewport = forwardRef<HTMLDivElement, DropdownMenuViewportProp
|
|
|
229
235
|
|
|
230
236
|
const CONTENT_NAME = 'DropdownMenuContent';
|
|
231
237
|
|
|
232
|
-
type DropdownMenuContentElement =
|
|
238
|
+
type DropdownMenuContentElement = ComponentRef<typeof MenuPrimitive.Content>;
|
|
233
239
|
type MenuContentProps = ThemedClassName<ComponentPropsWithoutRef<typeof MenuPrimitive.Content>>;
|
|
234
|
-
|
|
240
|
+
type DropdownMenuContentProps = Omit<MenuContentProps, 'onEntryFocus'>;
|
|
235
241
|
|
|
236
242
|
const DropdownMenuContent = forwardRef<DropdownMenuContentElement, DropdownMenuContentProps>(
|
|
237
243
|
(props: ScopedProps<DropdownMenuContentProps>, forwardedRef) => {
|
|
@@ -283,7 +289,7 @@ const DropdownMenuContent = forwardRef<DropdownMenuContentElement, DropdownMenuC
|
|
|
283
289
|
}
|
|
284
290
|
})}
|
|
285
291
|
data-arrow-keys='up down'
|
|
286
|
-
className={tx('menu.content',
|
|
292
|
+
className={tx('menu.content', { elevation }, classNames)}
|
|
287
293
|
style={{
|
|
288
294
|
...props.style,
|
|
289
295
|
// re-namespace exposed content custom properties
|
|
@@ -308,9 +314,9 @@ DropdownMenuContent.displayName = CONTENT_NAME;
|
|
|
308
314
|
|
|
309
315
|
const GROUP_NAME = 'DropdownMenuGroup';
|
|
310
316
|
|
|
311
|
-
type DropdownMenuGroupElement =
|
|
317
|
+
type DropdownMenuGroupElement = ComponentRef<typeof MenuPrimitive.Group>;
|
|
312
318
|
type MenuGroupProps = ComponentPropsWithoutRef<typeof MenuPrimitive.Group>;
|
|
313
|
-
|
|
319
|
+
type DropdownMenuGroupProps = MenuGroupProps;
|
|
314
320
|
|
|
315
321
|
const DropdownMenuGroup = forwardRef<DropdownMenuGroupElement, DropdownMenuGroupProps>(
|
|
316
322
|
(props: ScopedProps<DropdownMenuGroupProps>, forwardedRef) => {
|
|
@@ -328,9 +334,9 @@ DropdownMenuGroup.displayName = GROUP_NAME;
|
|
|
328
334
|
|
|
329
335
|
const LABEL_NAME = 'DropdownMenuLabel';
|
|
330
336
|
|
|
331
|
-
type DropdownMenuLabelElement =
|
|
337
|
+
type DropdownMenuLabelElement = ComponentRef<typeof MenuPrimitive.Label>;
|
|
332
338
|
type MenuLabelProps = ThemedClassName<ComponentPropsWithoutRef<typeof MenuPrimitive.Label>>;
|
|
333
|
-
|
|
339
|
+
type DropdownMenuLabelProps = MenuLabelProps;
|
|
334
340
|
|
|
335
341
|
const DropdownMenuGroupLabel = forwardRef<DropdownMenuLabelElement, DropdownMenuLabelProps>(
|
|
336
342
|
(props: ScopedProps<DropdownMenuLabelProps>, forwardedRef) => {
|
|
@@ -341,7 +347,7 @@ const DropdownMenuGroupLabel = forwardRef<DropdownMenuLabelElement, DropdownMenu
|
|
|
341
347
|
<MenuPrimitive.Label
|
|
342
348
|
{...menuScope}
|
|
343
349
|
{...labelProps}
|
|
344
|
-
className={tx('menu.groupLabel',
|
|
350
|
+
className={tx('menu.groupLabel', {}, classNames)}
|
|
345
351
|
ref={forwardedRef}
|
|
346
352
|
/>
|
|
347
353
|
);
|
|
@@ -356,9 +362,9 @@ DropdownMenuGroupLabel.displayName = LABEL_NAME;
|
|
|
356
362
|
|
|
357
363
|
const ITEM_NAME = 'DropdownMenuItem';
|
|
358
364
|
|
|
359
|
-
type DropdownMenuItemElement =
|
|
365
|
+
type DropdownMenuItemElement = ComponentRef<typeof MenuPrimitive.Item>;
|
|
360
366
|
type MenuItemProps = ThemedClassName<ComponentPropsWithoutRef<typeof MenuPrimitive.Item>>;
|
|
361
|
-
|
|
367
|
+
type DropdownMenuItemProps = MenuItemProps;
|
|
362
368
|
|
|
363
369
|
const DropdownMenuItem = forwardRef<DropdownMenuItemElement, DropdownMenuItemProps>(
|
|
364
370
|
(props: ScopedProps<DropdownMenuItemProps>, forwardedRef) => {
|
|
@@ -369,7 +375,7 @@ const DropdownMenuItem = forwardRef<DropdownMenuItemElement, DropdownMenuItemPro
|
|
|
369
375
|
<MenuPrimitive.Item
|
|
370
376
|
{...menuScope}
|
|
371
377
|
{...itemProps}
|
|
372
|
-
className={tx('menu.item',
|
|
378
|
+
className={tx('menu.item', {}, classNames)}
|
|
373
379
|
ref={forwardedRef}
|
|
374
380
|
/>
|
|
375
381
|
);
|
|
@@ -384,9 +390,9 @@ DropdownMenuItem.displayName = ITEM_NAME;
|
|
|
384
390
|
|
|
385
391
|
const CHECKBOX_ITEM_NAME = 'DropdownMenuCheckboxItem';
|
|
386
392
|
|
|
387
|
-
type DropdownMenuCheckboxItemElement =
|
|
393
|
+
type DropdownMenuCheckboxItemElement = ComponentRef<typeof MenuPrimitive.CheckboxItem>;
|
|
388
394
|
type MenuCheckboxItemProps = ThemedClassName<ComponentPropsWithoutRef<typeof MenuPrimitive.CheckboxItem>>;
|
|
389
|
-
|
|
395
|
+
type DropdownMenuCheckboxItemProps = MenuCheckboxItemProps;
|
|
390
396
|
|
|
391
397
|
const DropdownMenuCheckboxItem = forwardRef<DropdownMenuCheckboxItemElement, DropdownMenuCheckboxItemProps>(
|
|
392
398
|
(props: ScopedProps<DropdownMenuCheckboxItemProps>, forwardedRef) => {
|
|
@@ -397,7 +403,7 @@ const DropdownMenuCheckboxItem = forwardRef<DropdownMenuCheckboxItemElement, Dro
|
|
|
397
403
|
<MenuPrimitive.CheckboxItem
|
|
398
404
|
{...menuScope}
|
|
399
405
|
{...checkboxItemProps}
|
|
400
|
-
className={tx('menu.item',
|
|
406
|
+
className={tx('menu.item', {}, classNames)}
|
|
401
407
|
ref={forwardedRef}
|
|
402
408
|
/>
|
|
403
409
|
);
|
|
@@ -412,9 +418,9 @@ DropdownMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
|
|
|
412
418
|
|
|
413
419
|
const RADIO_GROUP_NAME = 'DropdownMenuRadioGroup';
|
|
414
420
|
|
|
415
|
-
type DropdownMenuRadioGroupElement =
|
|
421
|
+
type DropdownMenuRadioGroupElement = ComponentRef<typeof MenuPrimitive.RadioGroup>;
|
|
416
422
|
type MenuRadioGroupProps = ComponentPropsWithoutRef<typeof MenuPrimitive.RadioGroup>;
|
|
417
|
-
|
|
423
|
+
type DropdownMenuRadioGroupProps = MenuRadioGroupProps;
|
|
418
424
|
|
|
419
425
|
const DropdownMenuRadioGroup = forwardRef<DropdownMenuRadioGroupElement, DropdownMenuRadioGroupProps>(
|
|
420
426
|
(props: ScopedProps<DropdownMenuRadioGroupProps>, forwardedRef) => {
|
|
@@ -432,7 +438,7 @@ DropdownMenuRadioGroup.displayName = RADIO_GROUP_NAME;
|
|
|
432
438
|
|
|
433
439
|
const RADIO_ITEM_NAME = 'DropdownMenuRadioItem';
|
|
434
440
|
|
|
435
|
-
type DropdownMenuRadioItemElement =
|
|
441
|
+
type DropdownMenuRadioItemElement = ComponentRef<typeof MenuPrimitive.RadioItem>;
|
|
436
442
|
type MenuRadioItemProps = ComponentPropsWithoutRef<typeof MenuPrimitive.RadioItem>;
|
|
437
443
|
type DropdownMenuRadioItemProps = ThemedClassName<MenuRadioItemProps>;
|
|
438
444
|
|
|
@@ -445,7 +451,7 @@ const DropdownMenuRadioItem = forwardRef<DropdownMenuRadioItemElement, DropdownM
|
|
|
445
451
|
<MenuPrimitive.Item
|
|
446
452
|
{...menuScope}
|
|
447
453
|
{...itemProps}
|
|
448
|
-
className={tx('menu.item',
|
|
454
|
+
className={tx('menu.item', {}, classNames)}
|
|
449
455
|
ref={forwardedRef}
|
|
450
456
|
/>
|
|
451
457
|
);
|
|
@@ -460,9 +466,9 @@ DropdownMenuRadioItem.displayName = RADIO_ITEM_NAME;
|
|
|
460
466
|
|
|
461
467
|
const INDICATOR_NAME = 'DropdownMenuItemIndicator';
|
|
462
468
|
|
|
463
|
-
type DropdownMenuItemIndicatorElement =
|
|
469
|
+
type DropdownMenuItemIndicatorElement = ComponentRef<typeof MenuPrimitive.ItemIndicator>;
|
|
464
470
|
type MenuItemIndicatorProps = ComponentPropsWithoutRef<typeof MenuPrimitive.ItemIndicator>;
|
|
465
|
-
|
|
471
|
+
type DropdownMenuItemIndicatorProps = MenuItemIndicatorProps;
|
|
466
472
|
|
|
467
473
|
const DropdownMenuItemIndicator = forwardRef<DropdownMenuItemIndicatorElement, DropdownMenuItemIndicatorProps>(
|
|
468
474
|
(props: ScopedProps<DropdownMenuItemIndicatorProps>, forwardedRef) => {
|
|
@@ -480,9 +486,9 @@ DropdownMenuItemIndicator.displayName = INDICATOR_NAME;
|
|
|
480
486
|
|
|
481
487
|
const SEPARATOR_NAME = 'DropdownMenuSeparator';
|
|
482
488
|
|
|
483
|
-
type DropdownMenuSeparatorElement =
|
|
489
|
+
type DropdownMenuSeparatorElement = ComponentRef<typeof MenuPrimitive.Separator>;
|
|
484
490
|
type MenuSeparatorProps = ThemedClassName<ComponentPropsWithoutRef<typeof MenuPrimitive.Separator>>;
|
|
485
|
-
|
|
491
|
+
type DropdownMenuSeparatorProps = MenuSeparatorProps;
|
|
486
492
|
|
|
487
493
|
const DropdownMenuSeparator = forwardRef<DropdownMenuSeparatorElement, DropdownMenuSeparatorProps>(
|
|
488
494
|
(props: ScopedProps<DropdownMenuSeparatorProps>, forwardedRef) => {
|
|
@@ -493,7 +499,7 @@ const DropdownMenuSeparator = forwardRef<DropdownMenuSeparatorElement, DropdownM
|
|
|
493
499
|
<MenuPrimitive.Separator
|
|
494
500
|
{...menuScope}
|
|
495
501
|
{...separatorProps}
|
|
496
|
-
className={tx('menu.separator',
|
|
502
|
+
className={tx('menu.separator', {}, classNames)}
|
|
497
503
|
ref={forwardedRef}
|
|
498
504
|
/>
|
|
499
505
|
);
|
|
@@ -508,9 +514,9 @@ DropdownMenuSeparator.displayName = SEPARATOR_NAME;
|
|
|
508
514
|
|
|
509
515
|
const ARROW_NAME = 'DropdownMenuArrow';
|
|
510
516
|
|
|
511
|
-
type DropdownMenuArrowElement =
|
|
517
|
+
type DropdownMenuArrowElement = ComponentRef<typeof MenuPrimitive.Arrow>;
|
|
512
518
|
type MenuArrowProps = ThemedClassName<ComponentPropsWithoutRef<typeof MenuPrimitive.Arrow>>;
|
|
513
|
-
|
|
519
|
+
type DropdownMenuArrowProps = MenuArrowProps;
|
|
514
520
|
|
|
515
521
|
const DropdownMenuArrow = forwardRef<DropdownMenuArrowElement, DropdownMenuArrowProps>(
|
|
516
522
|
(props: ScopedProps<DropdownMenuArrowProps>, forwardedRef) => {
|
|
@@ -521,7 +527,7 @@ const DropdownMenuArrow = forwardRef<DropdownMenuArrowElement, DropdownMenuArrow
|
|
|
521
527
|
<MenuPrimitive.Arrow
|
|
522
528
|
{...menuScope}
|
|
523
529
|
{...arrowProps}
|
|
524
|
-
className={tx('menu.arrow',
|
|
530
|
+
className={tx('menu.arrow', {}, classNames)}
|
|
525
531
|
ref={forwardedRef}
|
|
526
532
|
/>
|
|
527
533
|
);
|
|
@@ -534,12 +540,12 @@ DropdownMenuArrow.displayName = ARROW_NAME;
|
|
|
534
540
|
// DropdownMenuSub
|
|
535
541
|
//
|
|
536
542
|
|
|
537
|
-
|
|
543
|
+
type DropdownMenuSubProps = {
|
|
538
544
|
children?: ReactNode;
|
|
539
545
|
open?: boolean;
|
|
540
546
|
defaultOpen?: boolean;
|
|
541
547
|
onOpenChange?(open: boolean): void;
|
|
542
|
-
}
|
|
548
|
+
};
|
|
543
549
|
|
|
544
550
|
const DropdownMenuSub: FC<DropdownMenuSubProps> = (props: ScopedProps<DropdownMenuSubProps>) => {
|
|
545
551
|
const { __scopeDropdownMenu, children, open: openProp, onOpenChange, defaultOpen } = props;
|
|
@@ -563,9 +569,9 @@ const DropdownMenuSub: FC<DropdownMenuSubProps> = (props: ScopedProps<DropdownMe
|
|
|
563
569
|
|
|
564
570
|
const SUB_TRIGGER_NAME = 'DropdownMenuSubTrigger';
|
|
565
571
|
|
|
566
|
-
type DropdownMenuSubTriggerElement =
|
|
572
|
+
type DropdownMenuSubTriggerElement = ComponentRef<typeof MenuPrimitive.SubTrigger>;
|
|
567
573
|
type MenuSubTriggerProps = ComponentPropsWithoutRef<typeof MenuPrimitive.SubTrigger>;
|
|
568
|
-
|
|
574
|
+
type DropdownMenuSubTriggerProps = MenuSubTriggerProps;
|
|
569
575
|
|
|
570
576
|
const DropdownMenuSubTrigger = forwardRef<DropdownMenuSubTriggerElement, DropdownMenuSubTriggerProps>(
|
|
571
577
|
(props: ScopedProps<DropdownMenuSubTriggerProps>, forwardedRef) => {
|
|
@@ -583,9 +589,9 @@ DropdownMenuSubTrigger.displayName = SUB_TRIGGER_NAME;
|
|
|
583
589
|
|
|
584
590
|
const SUB_CONTENT_NAME = 'DropdownMenuSubContent';
|
|
585
591
|
|
|
586
|
-
type DropdownMenuSubContentElement =
|
|
592
|
+
type DropdownMenuSubContentElement = ComponentRef<typeof MenuPrimitive.Content>;
|
|
587
593
|
type MenuSubContentProps = ComponentPropsWithoutRef<typeof MenuPrimitive.SubContent>;
|
|
588
|
-
|
|
594
|
+
type DropdownMenuSubContentProps = MenuSubContentProps;
|
|
589
595
|
|
|
590
596
|
const DropdownMenuSubContent = forwardRef<DropdownMenuSubContentElement, DropdownMenuSubContentProps>(
|
|
591
597
|
(props: ScopedProps<DropdownMenuSubContentProps>, forwardedRef) => {
|
|
@@ -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 { random } from '@dxos/random';
|
|
8
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>{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
|
};
|
|
@@ -58,20 +58,20 @@ const MessageRoot = forwardRef<HTMLDivElement, MessageRootProps>(
|
|
|
58
58
|
const titleId = useId('message__title', propsTitleId);
|
|
59
59
|
const descriptionId = useId('message__description', propsDescriptionId);
|
|
60
60
|
const elevation = useElevationContext(propsElevation);
|
|
61
|
-
const
|
|
61
|
+
const Comp = asChild ? Slot : Primitive.div;
|
|
62
62
|
|
|
63
63
|
return (
|
|
64
64
|
<MessageProvider {...{ titleId, descriptionId, valence }}>
|
|
65
|
-
<
|
|
65
|
+
<Comp
|
|
66
66
|
role={valence === 'neutral' ? 'paragraph' : 'alert'}
|
|
67
67
|
{...props}
|
|
68
|
-
className={tx('message.root',
|
|
68
|
+
className={tx('message.root', { valence, elevation }, classNames)}
|
|
69
69
|
aria-labelledby={titleId}
|
|
70
70
|
aria-describedby={descriptionId}
|
|
71
71
|
ref={forwardedRef}
|
|
72
72
|
>
|
|
73
73
|
{children}
|
|
74
|
-
</
|
|
74
|
+
</Comp>
|
|
75
75
|
</MessageProvider>
|
|
76
76
|
);
|
|
77
77
|
},
|
|
@@ -91,27 +91,16 @@ type MessageTitleProps = Omit<ThemedClassName<ComponentPropsWithRef<typeof Primi
|
|
|
91
91
|
const MESSAGE_TITLE_NAME = 'MessageTitle';
|
|
92
92
|
|
|
93
93
|
const MessageTitle = forwardRef<HTMLHeadingElement, MessageTitleProps>(
|
|
94
|
-
({ asChild, classNames, children, icon, ...props }, forwardedRef) => {
|
|
94
|
+
({ asChild, classNames, children, icon: iconProp, ...props }, forwardedRef) => {
|
|
95
95
|
const { tx } = useThemeContext();
|
|
96
96
|
const { titleId, valence } = useMessageContext(MESSAGE_TITLE_NAME);
|
|
97
|
-
const
|
|
98
|
-
|
|
97
|
+
const Comp = asChild ? Slot : Primitive.h2;
|
|
98
|
+
const icon = iconProp ?? messageIcons[valence];
|
|
99
99
|
return (
|
|
100
|
-
<
|
|
101
|
-
{
|
|
102
|
-
className={tx('message.title',
|
|
103
|
-
|
|
104
|
-
ref={forwardedRef}
|
|
105
|
-
>
|
|
106
|
-
{!icon && valence === 'neutral' ? null : (
|
|
107
|
-
<Icon
|
|
108
|
-
size={5}
|
|
109
|
-
icon={icon ?? messageIcons[valence]}
|
|
110
|
-
classNames={tx('message.icon', 'message__icon', { valence })}
|
|
111
|
-
/>
|
|
112
|
-
)}
|
|
113
|
-
<span>{children}</span>
|
|
114
|
-
</Root>
|
|
100
|
+
<Comp {...props} className={tx('message.header', {}, classNames)} id={titleId} ref={forwardedRef}>
|
|
101
|
+
{!icon && valence === 'neutral' ? <div /> : <Icon icon={icon} classNames={tx('message.icon', { valence })} />}
|
|
102
|
+
<span className={tx('message.title', {}, classNames)}>{children}</span>
|
|
103
|
+
</Comp>
|
|
115
104
|
);
|
|
116
105
|
},
|
|
117
106
|
);
|
|
@@ -132,16 +121,11 @@ const MessageContent = forwardRef<HTMLParagraphElement, MessageContentProps>(
|
|
|
132
121
|
({ asChild, classNames, children, ...props }, forwardedRef) => {
|
|
133
122
|
const { tx } = useThemeContext();
|
|
134
123
|
const { descriptionId } = useMessageContext(MESSAGE_CONTENT_NAME);
|
|
135
|
-
const
|
|
124
|
+
const Comp = asChild ? Slot : Primitive.p;
|
|
136
125
|
return (
|
|
137
|
-
<
|
|
138
|
-
{...props}
|
|
139
|
-
className={tx('message.content', 'message__content', {}, classNames)}
|
|
140
|
-
id={descriptionId}
|
|
141
|
-
ref={forwardedRef}
|
|
142
|
-
>
|
|
126
|
+
<Comp {...props} className={tx('message.content', {}, classNames)} id={descriptionId} ref={forwardedRef}>
|
|
143
127
|
{children}
|
|
144
|
-
</
|
|
128
|
+
</Comp>
|
|
145
129
|
);
|
|
146
130
|
},
|
|
147
131
|
);
|
|
@@ -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
11
|
import { Button } from '../Button';
|
|
12
|
-
|
|
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>
|