@d4gger/design-system 3.0.0 → 4.0.0
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/README.md +19 -0
- package/dist/{components/controlGroup/ControlGroup.cjs → _internal/floatingLayer.cjs} +11 -26
- package/dist/_internal/floatingLayer.cjs.map +7 -0
- package/dist/_internal/floatingLayer.d.cts +28 -0
- package/dist/_internal/floatingLayer.d.cts.map +1 -0
- package/dist/_internal/floatingLayer.d.mts +28 -0
- package/dist/_internal/floatingLayer.d.mts.map +1 -0
- package/dist/_internal/floatingLayer.d.ts +28 -0
- package/dist/_internal/floatingLayer.d.ts.map +1 -0
- package/dist/_internal/floatingLayer.js +11 -0
- package/dist/_internal/floatingLayer.js.map +7 -0
- package/dist/components/accordion.css +9 -2
- package/dist/components/alert/Alert.cjs +11 -7
- package/dist/components/alert/Alert.cjs.map +2 -2
- package/dist/components/alert/Alert.d.cts.map +1 -1
- package/dist/components/alert/Alert.d.mts.map +1 -1
- package/dist/components/alert/Alert.d.ts.map +1 -1
- package/dist/components/alert/Alert.js +12 -8
- package/dist/components/alert/Alert.js.map +2 -2
- package/dist/components/alert.css +13 -0
- package/dist/components/article-nodes.css +16 -1
- package/dist/components/articleNodes/ArticleNodes.cjs +46 -5
- package/dist/components/articleNodes/ArticleNodes.cjs.map +2 -2
- package/dist/components/articleNodes/ArticleNodes.d.cts +7 -3
- package/dist/components/articleNodes/ArticleNodes.d.cts.map +1 -1
- package/dist/components/articleNodes/ArticleNodes.d.mts +7 -3
- package/dist/components/articleNodes/ArticleNodes.d.mts.map +1 -1
- package/dist/components/articleNodes/ArticleNodes.d.ts +7 -3
- package/dist/components/articleNodes/ArticleNodes.d.ts.map +1 -1
- package/dist/components/articleNodes/ArticleNodes.js +46 -5
- package/dist/components/articleNodes/ArticleNodes.js.map +2 -2
- package/dist/components/articleNodes/articleExtensions.cjs +21 -4
- package/dist/components/articleNodes/articleExtensions.cjs.map +2 -2
- package/dist/components/articleNodes/articleExtensions.d.cts +8 -2
- package/dist/components/articleNodes/articleExtensions.d.cts.map +1 -1
- package/dist/components/articleNodes/articleExtensions.d.mts +8 -2
- package/dist/components/articleNodes/articleExtensions.d.mts.map +1 -1
- package/dist/components/articleNodes/articleExtensions.d.ts +8 -2
- package/dist/components/articleNodes/articleExtensions.d.ts.map +1 -1
- package/dist/components/articleNodes/articleExtensions.js +21 -4
- package/dist/components/articleNodes/articleExtensions.js.map +2 -2
- package/dist/components/articleNodes/articleNodeViews.cjs +154 -0
- package/dist/components/articleNodes/articleNodeViews.cjs.map +7 -0
- package/dist/components/articleNodes/articleNodeViews.d.cts +3 -0
- package/dist/components/articleNodes/articleNodeViews.d.cts.map +1 -0
- package/dist/components/articleNodes/articleNodeViews.d.mts +3 -0
- package/dist/components/articleNodes/articleNodeViews.d.mts.map +1 -0
- package/dist/components/articleNodes/articleNodeViews.d.ts +3 -0
- package/dist/components/articleNodes/articleNodeViews.d.ts.map +1 -0
- package/dist/components/articleNodes/articleNodeViews.js +124 -0
- package/dist/components/articleNodes/articleNodeViews.js.map +7 -0
- package/dist/components/articleNodes/articleNodes.props.cjs.map +1 -1
- package/dist/components/articleNodes/articleNodes.props.d.cts +25 -2
- package/dist/components/articleNodes/articleNodes.props.d.cts.map +1 -1
- package/dist/components/articleNodes/articleNodes.props.d.mts +25 -2
- package/dist/components/articleNodes/articleNodes.props.d.mts.map +1 -1
- package/dist/components/articleNodes/articleNodes.props.d.ts +25 -2
- package/dist/components/articleNodes/articleNodes.props.d.ts.map +1 -1
- package/dist/components/banner/Banner.cjs +105 -0
- package/dist/components/banner/Banner.cjs.map +7 -0
- package/dist/components/banner/Banner.d.cts +27 -0
- package/dist/components/banner/Banner.d.cts.map +1 -0
- package/dist/components/banner/Banner.d.mts +27 -0
- package/dist/components/banner/Banner.d.mts.map +1 -0
- package/dist/components/banner/Banner.d.ts +27 -0
- package/dist/components/banner/Banner.d.ts.map +1 -0
- package/dist/components/banner/Banner.js +80 -0
- package/dist/components/banner/Banner.js.map +7 -0
- package/dist/components/{controlGroup/controlGroup.props.cjs → banner/banner.props.cjs} +23 -16
- package/dist/components/banner/banner.props.cjs.map +7 -0
- package/dist/components/banner/banner.props.d.cts +32 -0
- package/dist/components/banner/banner.props.d.cts.map +1 -0
- package/dist/components/banner/banner.props.d.mts +32 -0
- package/dist/components/banner/banner.props.d.mts.map +1 -0
- package/dist/components/banner/banner.props.d.ts +32 -0
- package/dist/components/banner/banner.props.d.ts.map +1 -0
- package/dist/components/banner/banner.props.js +27 -0
- package/dist/components/banner/banner.props.js.map +7 -0
- package/dist/components/banner.css +61 -0
- package/dist/components/blockquote.css +7 -4
- package/dist/components/bottom-dock.css +132 -0
- package/dist/components/bottomDock/BottomDock.cjs +140 -0
- package/dist/components/bottomDock/BottomDock.cjs.map +7 -0
- package/dist/components/bottomDock/BottomDock.d.cts +25 -0
- package/dist/components/bottomDock/BottomDock.d.cts.map +1 -0
- package/dist/components/bottomDock/BottomDock.d.mts +25 -0
- package/dist/components/bottomDock/BottomDock.d.mts.map +1 -0
- package/dist/components/bottomDock/BottomDock.d.ts +25 -0
- package/dist/components/bottomDock/BottomDock.d.ts.map +1 -0
- package/dist/components/bottomDock/BottomDock.js +110 -0
- package/dist/components/bottomDock/BottomDock.js.map +7 -0
- package/dist/components/bottomDock/bottomDock.props.cjs +49 -0
- package/dist/components/bottomDock/bottomDock.props.cjs.map +7 -0
- package/dist/components/bottomDock/bottomDock.props.d.cts +29 -0
- package/dist/components/bottomDock/bottomDock.props.d.cts.map +1 -0
- package/dist/components/bottomDock/bottomDock.props.d.mts +29 -0
- package/dist/components/bottomDock/bottomDock.props.d.mts.map +1 -0
- package/dist/components/bottomDock/bottomDock.props.d.ts +29 -0
- package/dist/components/bottomDock/bottomDock.props.d.ts.map +1 -0
- package/dist/components/bottomDock/bottomDock.props.js +29 -0
- package/dist/components/bottomDock/bottomDock.props.js.map +7 -0
- package/dist/components/breadcrumb.css +24 -3
- package/dist/components/button-group.css +25 -0
- package/dist/components/button.css +9 -0
- package/dist/components/callout.css +20 -7
- package/dist/components/card.css +11 -0
- package/dist/components/carousel/Carousel.cjs +109 -39
- package/dist/components/carousel/Carousel.cjs.map +3 -3
- package/dist/components/carousel/Carousel.d.cts.map +1 -1
- package/dist/components/carousel/Carousel.d.mts.map +1 -1
- package/dist/components/carousel/Carousel.d.ts.map +1 -1
- package/dist/components/carousel/Carousel.js +111 -41
- package/dist/components/carousel/Carousel.js.map +3 -3
- package/dist/components/carousel.css +93 -26
- package/dist/components/chart/Chart.cjs +61 -11
- package/dist/components/chart/Chart.cjs.map +2 -2
- package/dist/components/chart/Chart.d.cts.map +1 -1
- package/dist/components/chart/Chart.d.mts.map +1 -1
- package/dist/components/chart/Chart.d.ts.map +1 -1
- package/dist/components/chart/Chart.js +62 -11
- package/dist/components/chart/Chart.js.map +2 -2
- package/dist/components/chart.css +10 -1
- package/dist/components/checkbox.css +14 -0
- package/dist/components/code.css +29 -13
- package/dist/components/collapsible/Collapsible.cjs +4 -0
- package/dist/components/collapsible/Collapsible.cjs.map +2 -2
- package/dist/components/collapsible/Collapsible.d.cts.map +1 -1
- package/dist/components/collapsible/Collapsible.d.mts.map +1 -1
- package/dist/components/collapsible/Collapsible.d.ts.map +1 -1
- package/dist/components/collapsible/Collapsible.js +4 -0
- package/dist/components/collapsible/Collapsible.js.map +2 -2
- package/dist/components/collapsible.css +10 -1
- package/dist/components/combobox/Combobox.cjs +3 -1
- package/dist/components/combobox/Combobox.cjs.map +2 -2
- package/dist/components/combobox/Combobox.d.cts.map +1 -1
- package/dist/components/combobox/Combobox.d.mts.map +1 -1
- package/dist/components/combobox/Combobox.d.ts.map +1 -1
- package/dist/components/combobox/Combobox.js +3 -1
- package/dist/components/combobox/Combobox.js.map +2 -2
- package/dist/components/combobox.css +5 -1
- package/dist/components/command/Command.cjs +1 -1
- package/dist/components/command/Command.cjs.map +2 -2
- package/dist/components/command/Command.js +1 -1
- package/dist/components/command/Command.js.map +2 -2
- package/dist/components/command.css +0 -2
- package/dist/components/comment-thread.css +15 -7
- package/dist/components/commentThread/CommentThread.cjs +45 -17
- package/dist/components/commentThread/CommentThread.cjs.map +2 -2
- package/dist/components/commentThread/CommentThread.d.cts +6 -6
- package/dist/components/commentThread/CommentThread.d.cts.map +1 -1
- package/dist/components/commentThread/CommentThread.d.mts +6 -6
- package/dist/components/commentThread/CommentThread.d.mts.map +1 -1
- package/dist/components/commentThread/CommentThread.d.ts +6 -6
- package/dist/components/commentThread/CommentThread.d.ts.map +1 -1
- package/dist/components/commentThread/CommentThread.js +45 -17
- package/dist/components/commentThread/CommentThread.js.map +2 -2
- package/dist/components/commentThread/commentThread.props.cjs.map +1 -1
- package/dist/components/commentThread/commentThread.props.d.cts +24 -0
- package/dist/components/commentThread/commentThread.props.d.cts.map +1 -1
- package/dist/components/commentThread/commentThread.props.d.mts +24 -0
- package/dist/components/commentThread/commentThread.props.d.mts.map +1 -1
- package/dist/components/commentThread/commentThread.props.d.ts +24 -0
- package/dist/components/commentThread/commentThread.props.d.ts.map +1 -1
- package/dist/components/config-drawer.css +7 -3
- package/dist/components/configDrawer/ConfigDrawer.cjs +1 -1
- package/dist/components/configDrawer/ConfigDrawer.cjs.map +2 -2
- package/dist/components/configDrawer/ConfigDrawer.js +1 -1
- package/dist/components/configDrawer/ConfigDrawer.js.map +2 -2
- package/dist/components/context-menu.css +4 -2
- package/dist/components/contextMenu/ContextMenu.cjs +37 -6
- package/dist/components/contextMenu/ContextMenu.cjs.map +2 -2
- package/dist/components/contextMenu/ContextMenu.d.cts +1 -1
- package/dist/components/contextMenu/ContextMenu.d.cts.map +1 -1
- package/dist/components/contextMenu/ContextMenu.d.mts +1 -1
- package/dist/components/contextMenu/ContextMenu.d.mts.map +1 -1
- package/dist/components/contextMenu/ContextMenu.d.ts +1 -1
- package/dist/components/contextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/components/contextMenu/ContextMenu.js +37 -6
- package/dist/components/contextMenu/ContextMenu.js.map +2 -2
- package/dist/components/copy-field.css +18 -0
- package/dist/components/copyField/CopyField.cjs +3 -3
- package/dist/components/copyField/CopyField.cjs.map +2 -2
- package/dist/components/copyField/CopyField.d.cts.map +1 -1
- package/dist/components/copyField/CopyField.d.mts.map +1 -1
- package/dist/components/copyField/CopyField.d.ts.map +1 -1
- package/dist/components/copyField/CopyField.js +3 -3
- package/dist/components/copyField/CopyField.js.map +2 -2
- package/dist/components/data-list.css +19 -4
- package/dist/components/data-table.css +190 -0
- package/dist/components/dataTable/DataTable.cjs +193 -68
- package/dist/components/dataTable/DataTable.cjs.map +3 -3
- package/dist/components/dataTable/DataTable.d.cts +29 -1
- package/dist/components/dataTable/DataTable.d.cts.map +1 -1
- package/dist/components/dataTable/DataTable.d.mts +29 -1
- package/dist/components/dataTable/DataTable.d.mts.map +1 -1
- package/dist/components/dataTable/DataTable.d.ts +29 -1
- package/dist/components/dataTable/DataTable.d.ts.map +1 -1
- package/dist/components/dataTable/DataTable.js +193 -68
- package/dist/components/dataTable/DataTable.js.map +2 -2
- package/dist/components/dataTable/DataTableContext.cjs +41 -0
- package/dist/components/dataTable/DataTableContext.cjs.map +7 -0
- package/dist/components/dataTable/DataTableContext.d.cts +23 -0
- package/dist/components/dataTable/DataTableContext.d.cts.map +1 -0
- package/dist/components/dataTable/DataTableContext.d.mts +23 -0
- package/dist/components/dataTable/DataTableContext.d.mts.map +1 -0
- package/dist/components/dataTable/DataTableContext.d.ts +23 -0
- package/dist/components/dataTable/DataTableContext.d.ts.map +1 -0
- package/dist/components/dataTable/DataTableContext.js +11 -0
- package/dist/components/dataTable/DataTableContext.js.map +7 -0
- package/dist/components/dataTable/DataTablePagination.cjs +72 -47
- package/dist/components/dataTable/DataTablePagination.cjs.map +2 -2
- package/dist/components/dataTable/DataTablePagination.d.cts +5 -1
- package/dist/components/dataTable/DataTablePagination.d.cts.map +1 -1
- package/dist/components/dataTable/DataTablePagination.d.mts +5 -1
- package/dist/components/dataTable/DataTablePagination.d.mts.map +1 -1
- package/dist/components/dataTable/DataTablePagination.d.ts +5 -1
- package/dist/components/dataTable/DataTablePagination.d.ts.map +1 -1
- package/dist/components/dataTable/DataTablePagination.js +75 -47
- package/dist/components/dataTable/DataTablePagination.js.map +2 -2
- package/dist/components/dataTable/DataTableToolbar.cjs +122 -93
- package/dist/components/dataTable/DataTableToolbar.cjs.map +2 -2
- package/dist/components/dataTable/DataTableToolbar.d.cts +6 -5
- package/dist/components/dataTable/DataTableToolbar.d.cts.map +1 -1
- package/dist/components/dataTable/DataTableToolbar.d.mts +6 -5
- package/dist/components/dataTable/DataTableToolbar.d.mts.map +1 -1
- package/dist/components/dataTable/DataTableToolbar.d.ts +6 -5
- package/dist/components/dataTable/DataTableToolbar.d.ts.map +1 -1
- package/dist/components/dataTable/DataTableToolbar.js +123 -94
- package/dist/components/dataTable/DataTableToolbar.js.map +2 -2
- package/dist/components/dataTable/dataTable.export.cjs +83 -0
- package/dist/components/dataTable/dataTable.export.cjs.map +7 -0
- package/dist/components/dataTable/dataTable.export.d.cts +11 -0
- package/dist/components/dataTable/dataTable.export.d.cts.map +1 -0
- package/dist/components/dataTable/dataTable.export.d.mts +11 -0
- package/dist/components/dataTable/dataTable.export.d.mts.map +1 -0
- package/dist/components/dataTable/dataTable.export.d.ts +11 -0
- package/dist/components/dataTable/dataTable.export.d.ts.map +1 -0
- package/dist/components/dataTable/dataTable.export.js +63 -0
- package/dist/components/dataTable/dataTable.export.js.map +7 -0
- package/dist/components/dataTable/dataTable.props.cjs +23 -1
- package/dist/components/dataTable/dataTable.props.cjs.map +2 -2
- package/dist/components/dataTable/dataTable.props.d.cts +21 -1
- package/dist/components/dataTable/dataTable.props.d.cts.map +1 -1
- package/dist/components/dataTable/dataTable.props.d.mts +21 -1
- package/dist/components/dataTable/dataTable.props.d.mts.map +1 -1
- package/dist/components/dataTable/dataTable.props.d.ts +21 -1
- package/dist/components/dataTable/dataTable.props.d.ts.map +1 -1
- package/dist/components/dataTable/dataTable.props.js +23 -1
- package/dist/components/dataTable/dataTable.props.js.map +2 -2
- package/dist/components/dialog/Dialog.cjs +2 -1
- package/dist/components/dialog/Dialog.cjs.map +2 -2
- package/dist/components/dialog/Dialog.d.cts.map +1 -1
- package/dist/components/dialog/Dialog.d.mts.map +1 -1
- package/dist/components/dialog/Dialog.d.ts.map +1 -1
- package/dist/components/dialog/Dialog.js +2 -1
- package/dist/components/dialog/Dialog.js.map +2 -2
- package/dist/components/drawer.css +23 -6
- package/dist/components/dropdown-menu.css +1 -1
- package/dist/components/dropdownMenu/DropdownMenu.cjs +10 -5
- package/dist/components/dropdownMenu/DropdownMenu.cjs.map +2 -2
- package/dist/components/dropdownMenu/DropdownMenu.d.cts.map +1 -1
- package/dist/components/dropdownMenu/DropdownMenu.d.mts.map +1 -1
- package/dist/components/dropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/components/dropdownMenu/DropdownMenu.js +10 -5
- package/dist/components/dropdownMenu/DropdownMenu.js.map +2 -2
- package/dist/components/empty-state.css +5 -0
- package/dist/components/file-upload.css +36 -9
- package/dist/components/fileUpload/FileUpload.cjs +10 -1
- package/dist/components/fileUpload/FileUpload.cjs.map +2 -2
- package/dist/components/fileUpload/FileUpload.d.cts +1 -0
- package/dist/components/fileUpload/FileUpload.d.cts.map +1 -1
- package/dist/components/fileUpload/FileUpload.d.mts +1 -0
- package/dist/components/fileUpload/FileUpload.d.mts.map +1 -1
- package/dist/components/fileUpload/FileUpload.d.ts +1 -0
- package/dist/components/fileUpload/FileUpload.d.ts.map +1 -1
- package/dist/components/fileUpload/FileUpload.js +10 -1
- package/dist/components/fileUpload/FileUpload.js.map +2 -2
- package/dist/components/filter-bar.css +380 -8
- package/dist/components/filterBar/FilterBar.cjs +630 -1
- package/dist/components/filterBar/FilterBar.cjs.map +2 -2
- package/dist/components/filterBar/FilterBar.d.cts +132 -2
- package/dist/components/filterBar/FilterBar.d.cts.map +1 -1
- package/dist/components/filterBar/FilterBar.d.mts +132 -2
- package/dist/components/filterBar/FilterBar.d.mts.map +1 -1
- package/dist/components/filterBar/FilterBar.d.ts +132 -2
- package/dist/components/filterBar/FilterBar.d.ts.map +1 -1
- package/dist/components/filterBar/FilterBar.js +631 -2
- package/dist/components/filterBar/FilterBar.js.map +2 -2
- package/dist/components/floating-panel.css +50 -19
- package/dist/components/floatingPanel/FloatingPanel.cjs +156 -58
- package/dist/components/floatingPanel/FloatingPanel.cjs.map +2 -2
- package/dist/components/floatingPanel/FloatingPanel.d.cts.map +1 -1
- package/dist/components/floatingPanel/FloatingPanel.d.mts.map +1 -1
- package/dist/components/floatingPanel/FloatingPanel.d.ts.map +1 -1
- package/dist/components/floatingPanel/FloatingPanel.js +156 -58
- package/dist/components/floatingPanel/FloatingPanel.js.map +2 -2
- package/dist/components/fontProvider/FontProvider.cjs +1 -1
- package/dist/components/fontProvider/FontProvider.cjs.map +1 -1
- package/dist/components/fontProvider/FontProvider.js +1 -1
- package/dist/components/fontProvider/FontProvider.js.map +1 -1
- package/dist/components/grid/Grid.cjs +24 -35
- package/dist/components/grid/Grid.cjs.map +2 -2
- package/dist/components/grid/Grid.d.cts.map +1 -1
- package/dist/components/grid/Grid.d.mts.map +1 -1
- package/dist/components/grid/Grid.d.ts.map +1 -1
- package/dist/components/grid/Grid.js +24 -35
- package/dist/components/grid/Grid.js.map +2 -2
- package/dist/components/heading/Heading.cjs +1 -8
- package/dist/components/heading/Heading.cjs.map +2 -2
- package/dist/components/heading/Heading.d.cts.map +1 -1
- package/dist/components/heading/Heading.d.mts.map +1 -1
- package/dist/components/heading/Heading.d.ts.map +1 -1
- package/dist/components/heading/Heading.js +1 -8
- package/dist/components/heading/Heading.js.map +2 -2
- package/dist/components/heading/heading.props.cjs +9 -9
- package/dist/components/heading/heading.props.cjs.map +2 -2
- package/dist/components/heading/heading.props.d.cts +42 -43
- package/dist/components/heading/heading.props.d.cts.map +1 -1
- package/dist/components/heading/heading.props.d.mts +42 -43
- package/dist/components/heading/heading.props.d.mts.map +1 -1
- package/dist/components/heading/heading.props.d.ts +42 -43
- package/dist/components/heading/heading.props.d.ts.map +1 -1
- package/dist/components/heading/heading.props.js +9 -9
- package/dist/components/heading/heading.props.js.map +2 -2
- package/dist/components/heading.css +127 -104
- package/dist/components/hover-card.css +5 -2
- package/dist/components/icon/Icon.cjs +28 -2
- package/dist/components/icon/Icon.cjs.map +2 -2
- package/dist/components/icon/Icon.d.cts +33 -1
- package/dist/components/icon/Icon.d.cts.map +1 -1
- package/dist/components/icon/Icon.d.mts +33 -1
- package/dist/components/icon/Icon.d.mts.map +1 -1
- package/dist/components/icon/Icon.d.ts +33 -1
- package/dist/components/icon/Icon.d.ts.map +1 -1
- package/dist/components/icon/Icon.js +37 -2
- package/dist/components/icon/Icon.js.map +2 -2
- package/dist/components/icon/icons.cjs +18 -0
- package/dist/components/icon/icons.cjs.map +2 -2
- package/dist/components/icon/icons.d.cts +45 -0
- package/dist/components/icon/icons.d.cts.map +1 -1
- package/dist/components/icon/icons.d.mts +45 -0
- package/dist/components/icon/icons.d.mts.map +1 -1
- package/dist/components/icon/icons.d.ts +45 -0
- package/dist/components/icon/icons.d.ts.map +1 -1
- package/dist/components/icon/icons.js +18 -0
- package/dist/components/icon/icons.js.map +2 -2
- package/dist/components/icon-button.css +29 -0
- package/dist/components/index.cjs +2 -1
- package/dist/components/index.cjs.map +2 -2
- package/dist/components/index.d.cts +2 -1
- package/dist/components/index.d.cts.map +1 -1
- package/dist/components/index.d.mts +2 -1
- package/dist/components/index.d.mts.map +1 -1
- package/dist/components/index.d.ts +2 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +2 -1
- package/dist/components/index.js.map +2 -2
- package/dist/components/item/Item.cjs +1 -1
- package/dist/components/item/Item.cjs.map +2 -2
- package/dist/components/item/Item.js +1 -1
- package/dist/components/item/Item.js.map +2 -2
- package/dist/components/item.css +12 -1
- package/dist/components/label.css +3 -0
- package/dist/components/link.css +33 -97
- package/dist/components/marquee/Marquee.cjs +1 -1
- package/dist/components/marquee/Marquee.cjs.map +2 -2
- package/dist/components/marquee/Marquee.js +1 -1
- package/dist/components/marquee/Marquee.js.map +2 -2
- package/dist/components/marquee.css +6 -0
- package/dist/components/menu/Menu.cjs +3 -1
- package/dist/components/menu/Menu.cjs.map +2 -2
- package/dist/components/menu/Menu.d.cts.map +1 -1
- package/dist/components/menu/Menu.d.mts.map +1 -1
- package/dist/components/menu/Menu.d.ts.map +1 -1
- package/dist/components/menu/Menu.js +3 -1
- package/dist/components/menu/Menu.js.map +2 -2
- package/dist/components/menubar.css +1 -1
- package/dist/components/metric.css +5 -0
- package/dist/components/notification-center.css +49 -9
- package/dist/components/notificationCenter/NotificationCenter.cjs +21 -16
- package/dist/components/notificationCenter/NotificationCenter.cjs.map +2 -2
- package/dist/components/notificationCenter/NotificationCenter.d.cts.map +1 -1
- package/dist/components/notificationCenter/NotificationCenter.d.mts.map +1 -1
- package/dist/components/notificationCenter/NotificationCenter.d.ts.map +1 -1
- package/dist/components/notificationCenter/NotificationCenter.js +22 -17
- package/dist/components/notificationCenter/NotificationCenter.js.map +2 -2
- package/dist/components/pagination/Pagination.cjs +143 -17
- package/dist/components/pagination/Pagination.cjs.map +2 -2
- package/dist/components/pagination/Pagination.d.cts +64 -4
- package/dist/components/pagination/Pagination.d.cts.map +1 -1
- package/dist/components/pagination/Pagination.d.mts +64 -4
- package/dist/components/pagination/Pagination.d.mts.map +1 -1
- package/dist/components/pagination/Pagination.d.ts +64 -4
- package/dist/components/pagination/Pagination.d.ts.map +1 -1
- package/dist/components/pagination/Pagination.js +143 -17
- package/dist/components/pagination/Pagination.js.map +2 -2
- package/dist/components/pagination.css +50 -8
- package/dist/components/phoneInput/PhoneInput.cjs +18 -13
- package/dist/components/phoneInput/PhoneInput.cjs.map +2 -2
- package/dist/components/phoneInput/PhoneInput.d.cts.map +1 -1
- package/dist/components/phoneInput/PhoneInput.d.mts.map +1 -1
- package/dist/components/phoneInput/PhoneInput.d.ts.map +1 -1
- package/dist/components/phoneInput/PhoneInput.js +19 -14
- package/dist/components/phoneInput/PhoneInput.js.map +2 -2
- package/dist/components/pills/Pills.cjs +1 -1
- package/dist/components/pills/Pills.cjs.map +2 -2
- package/dist/components/pills/Pills.js +2 -2
- package/dist/components/pills/Pills.js.map +2 -2
- package/dist/components/pills.css +6 -0
- package/dist/components/popover/Popover.cjs +2 -1
- package/dist/components/popover/Popover.cjs.map +2 -2
- package/dist/components/popover/Popover.d.cts.map +1 -1
- package/dist/components/popover/Popover.d.mts.map +1 -1
- package/dist/components/popover/Popover.d.ts.map +1 -1
- package/dist/components/popover/Popover.js +2 -1
- package/dist/components/popover/Popover.js.map +2 -2
- package/dist/components/popover.css +45 -6
- package/dist/components/prose.css +4 -4
- package/dist/components/qr-code.css +10 -17
- package/dist/components/qrCode/QrCode.cjs +14 -11
- package/dist/components/qrCode/QrCode.cjs.map +2 -2
- package/dist/components/qrCode/QrCode.d.cts.map +1 -1
- package/dist/components/qrCode/QrCode.d.mts.map +1 -1
- package/dist/components/qrCode/QrCode.d.ts.map +1 -1
- package/dist/components/qrCode/QrCode.js +14 -11
- package/dist/components/qrCode/QrCode.js.map +2 -2
- package/dist/components/radio-group.css +19 -0
- package/dist/components/radioGroup/RadioGroup.cjs +3 -2
- package/dist/components/radioGroup/RadioGroup.cjs.map +2 -2
- package/dist/components/radioGroup/RadioGroup.d.cts.map +1 -1
- package/dist/components/radioGroup/RadioGroup.d.mts.map +1 -1
- package/dist/components/radioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/radioGroup/RadioGroup.js +3 -2
- package/dist/components/radioGroup/RadioGroup.js.map +2 -2
- package/dist/components/radioGroup/radioGroup.props.cjs +1 -1
- package/dist/components/radioGroup/radioGroup.props.cjs.map +2 -2
- package/dist/components/radioGroup/radioGroup.props.d.cts +1 -1
- package/dist/components/radioGroup/radioGroup.props.d.mts +1 -1
- package/dist/components/radioGroup/radioGroup.props.d.ts +1 -1
- package/dist/components/radioGroup/radioGroup.props.js +1 -1
- package/dist/components/radioGroup/radioGroup.props.js.map +2 -2
- package/dist/components/rating.css +12 -0
- package/dist/components/resizable.css +20 -4
- package/dist/components/result.css +2 -1
- package/dist/components/rich-text-editor.css +50 -14
- package/dist/components/richTextEditor/EditorTools.cjs +226 -0
- package/dist/components/richTextEditor/EditorTools.cjs.map +7 -0
- package/dist/components/richTextEditor/EditorTools.d.cts +22 -0
- package/dist/components/richTextEditor/EditorTools.d.cts.map +1 -0
- package/dist/components/richTextEditor/EditorTools.d.mts +22 -0
- package/dist/components/richTextEditor/EditorTools.d.mts.map +1 -0
- package/dist/components/richTextEditor/EditorTools.d.ts +22 -0
- package/dist/components/richTextEditor/EditorTools.d.ts.map +1 -0
- package/dist/components/richTextEditor/EditorTools.js +196 -0
- package/dist/components/richTextEditor/EditorTools.js.map +7 -0
- package/dist/components/richTextEditor/MentionSuggestions.cjs +96 -0
- package/dist/components/richTextEditor/MentionSuggestions.cjs.map +7 -0
- package/dist/components/richTextEditor/MentionSuggestions.d.cts +7 -0
- package/dist/components/richTextEditor/MentionSuggestions.d.cts.map +1 -0
- package/dist/components/richTextEditor/MentionSuggestions.d.mts +7 -0
- package/dist/components/richTextEditor/MentionSuggestions.d.mts.map +1 -0
- package/dist/components/richTextEditor/MentionSuggestions.d.ts +7 -0
- package/dist/components/richTextEditor/MentionSuggestions.d.ts.map +1 -0
- package/dist/components/richTextEditor/MentionSuggestions.js +66 -0
- package/dist/components/richTextEditor/MentionSuggestions.js.map +7 -0
- package/dist/components/richTextEditor/RichTextEditor.cjs +63 -208
- package/dist/components/richTextEditor/RichTextEditor.cjs.map +3 -3
- package/dist/components/richTextEditor/RichTextEditor.d.cts +17 -7
- package/dist/components/richTextEditor/RichTextEditor.d.cts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.d.mts +17 -7
- package/dist/components/richTextEditor/RichTextEditor.d.mts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.d.ts +17 -7
- package/dist/components/richTextEditor/RichTextEditor.d.ts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.js +63 -208
- package/dist/components/richTextEditor/RichTextEditor.js.map +3 -3
- package/dist/components/richTextEditor/editorTokens.cjs +75 -0
- package/dist/components/richTextEditor/editorTokens.cjs.map +7 -0
- package/dist/components/richTextEditor/editorTokens.d.cts +21 -0
- package/dist/components/richTextEditor/editorTokens.d.cts.map +1 -0
- package/dist/components/richTextEditor/editorTokens.d.mts +21 -0
- package/dist/components/richTextEditor/editorTokens.d.mts.map +1 -0
- package/dist/components/richTextEditor/editorTokens.d.ts +21 -0
- package/dist/components/richTextEditor/editorTokens.d.ts.map +1 -0
- package/dist/components/richTextEditor/editorTokens.js +55 -0
- package/dist/components/richTextEditor/editorTokens.js.map +7 -0
- package/dist/components/scroll-area.css +12 -0
- package/dist/components/scrollArea/ScrollArea.cjs +12 -1
- package/dist/components/scrollArea/ScrollArea.cjs.map +2 -2
- package/dist/components/scrollArea/ScrollArea.d.cts.map +1 -1
- package/dist/components/scrollArea/ScrollArea.d.mts.map +1 -1
- package/dist/components/scrollArea/ScrollArea.d.ts.map +1 -1
- package/dist/components/scrollArea/ScrollArea.js +12 -1
- package/dist/components/scrollArea/ScrollArea.js.map +2 -2
- package/dist/components/segmented-control.css +80 -4
- package/dist/components/segmentedControl/SegmentedControl.cjs +18 -5
- package/dist/components/segmentedControl/SegmentedControl.cjs.map +2 -2
- package/dist/components/segmentedControl/SegmentedControl.d.cts.map +1 -1
- package/dist/components/segmentedControl/SegmentedControl.d.mts.map +1 -1
- package/dist/components/segmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/segmentedControl/SegmentedControl.js +18 -5
- package/dist/components/segmentedControl/SegmentedControl.js.map +2 -2
- package/dist/components/segmentedControl/segmentedControl.props.cjs +10 -0
- package/dist/components/segmentedControl/segmentedControl.props.cjs.map +2 -2
- package/dist/components/segmentedControl/segmentedControl.props.d.cts +9 -0
- package/dist/components/segmentedControl/segmentedControl.props.d.cts.map +1 -1
- package/dist/components/segmentedControl/segmentedControl.props.d.mts +9 -0
- package/dist/components/segmentedControl/segmentedControl.props.d.mts.map +1 -1
- package/dist/components/segmentedControl/segmentedControl.props.d.ts +9 -0
- package/dist/components/segmentedControl/segmentedControl.props.d.ts.map +1 -1
- package/dist/components/segmentedControl/segmentedControl.props.js +10 -0
- package/dist/components/segmentedControl/segmentedControl.props.js.map +2 -2
- package/dist/components/select/Select.cjs +3 -1
- package/dist/components/select/Select.cjs.map +2 -2
- package/dist/components/select/Select.d.cts.map +1 -1
- package/dist/components/select/Select.d.mts.map +1 -1
- package/dist/components/select/Select.d.ts.map +1 -1
- package/dist/components/select/Select.js +3 -1
- package/dist/components/select/Select.js.map +2 -2
- package/dist/components/select.css +1 -1
- package/dist/components/separator.css +3 -9
- package/dist/components/sidebar/Sidebar.cjs +12 -4
- package/dist/components/sidebar/Sidebar.cjs.map +2 -2
- package/dist/components/sidebar/Sidebar.d.cts +4 -1
- package/dist/components/sidebar/Sidebar.d.cts.map +1 -1
- package/dist/components/sidebar/Sidebar.d.mts +4 -1
- package/dist/components/sidebar/Sidebar.d.mts.map +1 -1
- package/dist/components/sidebar/Sidebar.d.ts +4 -1
- package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
- package/dist/components/sidebar/Sidebar.js +12 -4
- package/dist/components/sidebar/Sidebar.js.map +2 -2
- package/dist/components/sidebar/sidebar.props.cjs +8 -1
- package/dist/components/sidebar/sidebar.props.cjs.map +2 -2
- package/dist/components/sidebar/sidebar.props.d.cts +9 -1
- package/dist/components/sidebar/sidebar.props.d.cts.map +1 -1
- package/dist/components/sidebar/sidebar.props.d.mts +9 -1
- package/dist/components/sidebar/sidebar.props.d.mts.map +1 -1
- package/dist/components/sidebar/sidebar.props.d.ts +9 -1
- package/dist/components/sidebar/sidebar.props.d.ts.map +1 -1
- package/dist/components/sidebar/sidebar.props.js +8 -1
- package/dist/components/sidebar/sidebar.props.js.map +2 -2
- package/dist/components/sidebar.css +28 -0
- package/dist/components/sonner.css +79 -17
- package/dist/components/sortableList/SortableList.cjs +8 -2
- package/dist/components/sortableList/SortableList.cjs.map +2 -2
- package/dist/components/sortableList/SortableList.d.cts.map +1 -1
- package/dist/components/sortableList/SortableList.d.mts.map +1 -1
- package/dist/components/sortableList/SortableList.d.ts.map +1 -1
- package/dist/components/sortableList/SortableList.js +8 -2
- package/dist/components/sortableList/SortableList.js.map +2 -2
- package/dist/components/stat-card.css +2 -0
- package/dist/components/stepper.css +23 -12
- package/dist/components/tab-nav.css +25 -13
- package/dist/components/tabNav/TabNav.cjs +1 -4
- package/dist/components/tabNav/TabNav.cjs.map +2 -2
- package/dist/components/tabNav/TabNav.d.cts.map +1 -1
- package/dist/components/tabNav/TabNav.d.mts.map +1 -1
- package/dist/components/tabNav/TabNav.d.ts.map +1 -1
- package/dist/components/tabNav/TabNav.js +1 -4
- package/dist/components/tabNav/TabNav.js.map +2 -2
- package/dist/components/table/Table.cjs +3 -2
- package/dist/components/table/Table.cjs.map +2 -2
- package/dist/components/table/Table.d.cts.map +1 -1
- package/dist/components/table/Table.d.mts.map +1 -1
- package/dist/components/table/Table.d.ts.map +1 -1
- package/dist/components/table/Table.js +3 -2
- package/dist/components/table/Table.js.map +2 -2
- package/dist/components/table/table.props.cjs +6 -0
- package/dist/components/table/table.props.cjs.map +2 -2
- package/dist/components/table/table.props.d.cts +5 -0
- package/dist/components/table/table.props.d.cts.map +1 -1
- package/dist/components/table/table.props.d.mts +5 -0
- package/dist/components/table/table.props.d.mts.map +1 -1
- package/dist/components/table/table.props.d.ts +5 -0
- package/dist/components/table/table.props.d.ts.map +1 -1
- package/dist/components/table/table.props.js +6 -0
- package/dist/components/table/table.props.js.map +2 -2
- package/dist/components/table-of-contents.css +12 -2
- package/dist/components/table.css +20 -13
- package/dist/components/tableOfContents/TableOfContents.cjs +11 -4
- package/dist/components/tableOfContents/TableOfContents.cjs.map +2 -2
- package/dist/components/tableOfContents/TableOfContents.d.cts.map +1 -1
- package/dist/components/tableOfContents/TableOfContents.d.mts.map +1 -1
- package/dist/components/tableOfContents/TableOfContents.d.ts.map +1 -1
- package/dist/components/tableOfContents/TableOfContents.js +11 -4
- package/dist/components/tableOfContents/TableOfContents.js.map +2 -2
- package/dist/components/tabs/Tabs.cjs +39 -54
- package/dist/components/tabs/Tabs.cjs.map +2 -2
- package/dist/components/tabs/Tabs.d.cts.map +1 -1
- package/dist/components/tabs/Tabs.d.mts.map +1 -1
- package/dist/components/tabs/Tabs.d.ts.map +1 -1
- package/dist/components/tabs/Tabs.js +39 -54
- package/dist/components/tabs/Tabs.js.map +2 -2
- package/dist/components/tabs.css +62 -7
- package/dist/components/text/text.props.cjs +9 -9
- package/dist/components/text/text.props.cjs.map +2 -2
- package/dist/components/text/text.props.d.cts +42 -43
- package/dist/components/text/text.props.d.cts.map +1 -1
- package/dist/components/text/text.props.d.mts +42 -43
- package/dist/components/text/text.props.d.mts.map +1 -1
- package/dist/components/text/text.props.d.ts +42 -43
- package/dist/components/text/text.props.d.ts.map +1 -1
- package/dist/components/text/text.props.js +9 -9
- package/dist/components/text/text.props.js.map +2 -2
- package/dist/components/text/typography.props.cjs +32 -0
- package/dist/components/text/typography.props.cjs.map +7 -0
- package/dist/components/text/typography.props.d.cts +3 -0
- package/dist/components/text/typography.props.d.cts.map +1 -0
- package/dist/components/text/typography.props.d.mts +3 -0
- package/dist/components/text/typography.props.d.mts.map +1 -0
- package/dist/components/text/typography.props.d.ts +3 -0
- package/dist/components/text/typography.props.d.ts.map +1 -0
- package/dist/components/text/typography.props.js +12 -0
- package/dist/components/text/typography.props.js.map +7 -0
- package/dist/components/text-field.css +1 -0
- package/dist/components/text.css +41 -6
- package/dist/components/theme-panel.css +6 -0
- package/dist/components/timeline.css +54 -18
- package/dist/components/toast/Toast.cjs +3 -1
- package/dist/components/toast/Toast.cjs.map +2 -2
- package/dist/components/toast/Toast.d.cts.map +1 -1
- package/dist/components/toast/Toast.d.mts.map +1 -1
- package/dist/components/toast/Toast.d.ts.map +1 -1
- package/dist/components/toast/Toast.js +3 -1
- package/dist/components/toast/Toast.js.map +2 -2
- package/dist/components/toast.css +50 -18
- package/dist/components/toggle-group.css +5 -0
- package/dist/components/toggle-tip.css +58 -9
- package/dist/components/toggleTip/ToggleTip.cjs +9 -5
- package/dist/components/toggleTip/ToggleTip.cjs.map +2 -2
- package/dist/components/toggleTip/ToggleTip.d.cts.map +1 -1
- package/dist/components/toggleTip/ToggleTip.d.mts.map +1 -1
- package/dist/components/toggleTip/ToggleTip.d.ts.map +1 -1
- package/dist/components/toggleTip/ToggleTip.js +9 -5
- package/dist/components/toggleTip/ToggleTip.js.map +2 -2
- package/dist/components/toolbar/Toolbar.cjs +10 -7
- package/dist/components/toolbar/Toolbar.cjs.map +2 -2
- package/dist/components/toolbar/Toolbar.js +10 -7
- package/dist/components/toolbar/Toolbar.js.map +2 -2
- package/dist/components/toolbar.css +58 -4
- package/dist/components/tooltip.css +9 -5
- package/dist/components/tree-view.css +17 -3
- package/dist/components/treeView/TreeView.cjs +76 -21
- package/dist/components/treeView/TreeView.cjs.map +2 -2
- package/dist/components/treeView/TreeView.d.cts.map +1 -1
- package/dist/components/treeView/TreeView.d.mts.map +1 -1
- package/dist/components/treeView/TreeView.d.ts.map +1 -1
- package/dist/components/treeView/TreeView.js +76 -21
- package/dist/components/treeView/TreeView.js.map +2 -2
- package/dist/components.css +2 -2
- package/dist/docs/README.md +2 -1
- package/dist/docs/component-contract.md +7 -6
- package/dist/docs/component-index.json +17 -9
- package/dist/docs/components/accordion.md +5 -36
- package/dist/docs/components/alert.md +17 -10
- package/dist/docs/components/article-nodes.md +59 -2
- package/dist/docs/components/aspect-ratio.md +3 -26
- package/dist/docs/components/banner.md +152 -0
- package/dist/docs/components/blockquote.md +15 -14
- package/dist/docs/components/bottom-dock.md +146 -0
- package/dist/docs/components/box.md +3 -34
- package/dist/docs/components/breadcrumb.md +13 -8
- package/dist/docs/components/button-group.md +4 -3
- package/dist/docs/components/button.md +2 -2
- package/dist/docs/components/callout.md +18 -7
- package/dist/docs/components/card.md +10 -2
- package/dist/docs/components/carousel.md +55 -32
- package/dist/docs/components/chart.md +25 -7
- package/dist/docs/components/checkbox.md +4 -0
- package/dist/docs/components/code.md +33 -220
- package/dist/docs/components/collapsible.md +11 -35
- package/dist/docs/components/combobox.md +3 -1
- package/dist/docs/components/command.md +4 -2
- package/dist/docs/components/comment-thread.md +51 -1
- package/dist/docs/components/config-drawer.md +72 -171
- package/dist/docs/components/container.md +2 -0
- package/dist/docs/components/context-menu.md +19 -5
- package/dist/docs/components/copy-field.md +2 -2
- package/dist/docs/components/data-list.md +15 -3
- package/dist/docs/components/data-table.md +98 -17
- package/dist/docs/components/dialog.md +7 -1
- package/dist/docs/components/drawer.md +17 -6
- package/dist/docs/components/dropdown-menu.md +13 -3
- package/dist/docs/components/em.md +1 -1
- package/dist/docs/components/empty-state.md +3 -1
- package/dist/docs/components/file-upload.md +14 -7
- package/dist/docs/components/filter-bar.md +193 -8
- package/dist/docs/components/floating-panel.md +79 -285
- package/dist/docs/components/form.md +4 -0
- package/dist/docs/components/grid.md +11 -60
- package/dist/docs/components/heading.md +35 -32
- package/dist/docs/components/hover-card.md +9 -1
- package/dist/docs/components/icon-button.md +4 -1
- package/dist/docs/components/item.md +18 -13
- package/dist/docs/components/kbd.md +2 -0
- package/dist/docs/components/label.md +11 -9
- package/dist/docs/components/link.md +31 -209
- package/dist/docs/components/marquee.md +2 -2
- package/dist/docs/components/menu.md +4 -1
- package/dist/docs/components/metric.md +4 -1
- package/dist/docs/components/notification-center.md +24 -14
- package/dist/docs/components/page-header.md +2 -0
- package/dist/docs/components/pagination.md +92 -17
- package/dist/docs/components/pills.md +13 -4
- package/dist/docs/components/popover.md +12 -3
- package/dist/docs/components/prose.md +14 -1
- package/dist/docs/components/qr-code.md +25 -24
- package/dist/docs/components/quote.md +9 -4
- package/dist/docs/components/radio-group.md +5 -2
- package/dist/docs/components/rating.md +2 -0
- package/dist/docs/components/resizable.md +26 -18
- package/dist/docs/components/result.md +6 -0
- package/dist/docs/components/rich-text-editor.md +68 -18
- package/dist/docs/components/scroll-area.md +17 -9
- package/dist/docs/components/section.md +3 -38
- package/dist/docs/components/segmented-control.md +8 -3
- package/dist/docs/components/segmented-meter.md +9 -0
- package/dist/docs/components/select.md +3 -2
- package/dist/docs/components/separator.md +10 -46
- package/dist/docs/components/sidebar.md +20 -4
- package/dist/docs/components/sonner.md +26 -17
- package/dist/docs/components/sortable-list.md +2 -0
- package/dist/docs/components/stat-card.md +5 -4
- package/dist/docs/components/stepper.md +8 -32
- package/dist/docs/components/strong.md +1 -1
- package/dist/docs/components/tab-nav.md +33 -96
- package/dist/docs/components/table-of-contents.md +8 -2
- package/dist/docs/components/table.md +14 -5
- package/dist/docs/components/tabs.md +19 -50
- package/dist/docs/components/tag.md +4 -2
- package/dist/docs/components/text-field.md +1 -0
- package/dist/docs/components/text.md +34 -28
- package/dist/docs/components/theme-panel.md +3 -28
- package/dist/docs/components/theme.md +7 -3
- package/dist/docs/components/timeline.md +9 -5
- package/dist/docs/components/toast.md +28 -14
- package/dist/docs/components/toggle-group.md +2 -1
- package/dist/docs/components/toggle-tip.md +58 -241
- package/dist/docs/components/toolbar.md +16 -39
- package/dist/docs/components/tooltip.md +13 -7
- package/dist/docs/components/tree-view.md +22 -55
- package/dist/fonts.css +1 -1
- package/dist/generated/tokens.cjs +2 -1
- package/dist/generated/tokens.cjs.map +2 -2
- package/dist/generated/tokens.d.cts.map +1 -1
- package/dist/generated/tokens.d.mts.map +1 -1
- package/dist/generated/tokens.d.ts.map +1 -1
- package/dist/generated/tokens.js +2 -1
- package/dist/generated/tokens.js.map +2 -2
- package/dist/motion.css +18 -3
- package/dist/styles.css +3045 -1756
- package/dist/tokens.css +349 -361
- package/package.json +1 -1
- package/dist/components/control-group.css +0 -142
- package/dist/components/controlGroup/ControlGroup.cjs.map +0 -7
- package/dist/components/controlGroup/ControlGroup.d.cts +0 -16
- package/dist/components/controlGroup/ControlGroup.d.cts.map +0 -1
- package/dist/components/controlGroup/ControlGroup.d.mts +0 -16
- package/dist/components/controlGroup/ControlGroup.d.mts.map +0 -1
- package/dist/components/controlGroup/ControlGroup.d.ts +0 -16
- package/dist/components/controlGroup/ControlGroup.d.ts.map +0 -1
- package/dist/components/controlGroup/ControlGroup.js +0 -26
- package/dist/components/controlGroup/ControlGroup.js.map +0 -7
- package/dist/components/controlGroup/controlGroup.props.cjs.map +0 -7
- package/dist/components/controlGroup/controlGroup.props.d.cts +0 -18
- package/dist/components/controlGroup/controlGroup.props.d.cts.map +0 -1
- package/dist/components/controlGroup/controlGroup.props.d.mts +0 -18
- package/dist/components/controlGroup/controlGroup.props.d.mts.map +0 -1
- package/dist/components/controlGroup/controlGroup.props.d.ts +0 -18
- package/dist/components/controlGroup/controlGroup.props.d.ts.map +0 -1
- package/dist/components/controlGroup/controlGroup.props.js +0 -20
- package/dist/components/controlGroup/controlGroup.props.js.map +0 -7
- package/dist/docs/components/control-group.md +0 -261
|
@@ -4,7 +4,7 @@ status: canonical
|
|
|
4
4
|
category: Foundations
|
|
5
5
|
archetype: composite
|
|
6
6
|
depends_on:
|
|
7
|
-
-
|
|
7
|
+
- Drawer
|
|
8
8
|
- IconButton
|
|
9
9
|
- Icon
|
|
10
10
|
- SegmentedControl
|
|
@@ -18,205 +18,106 @@ depends_on:
|
|
|
18
18
|
|
|
19
19
|
# ConfigDrawer
|
|
20
20
|
|
|
21
|
-
>
|
|
21
|
+
> Source of truth: package source; this spec mirrors its public contract.
|
|
22
22
|
|
|
23
23
|
## Purpose
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
One preferences drawer inside ThemeProvider, exposing Theme, Accent, Gray,
|
|
26
|
+
Radius, Density, Scaling and Panel BG. Values and persistence belong to
|
|
27
|
+
ThemeProvider; the drawer supplies their controls. Default side is right.
|
|
26
28
|
|
|
27
29
|
## Anatomy & slots
|
|
28
30
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|---|---|---|---|
|
|
35
|
-
| Trigger | `Sheet.Trigger` rendered as `IconButton` (default) or consumer-supplied `trigger` | `dsx-config-drawer__trigger` (class is added when the default trigger renders) | Default trigger is an `IconButton variant="ghost" size="md"` with `aria-label="Open preferences"` and a `settings` `Icon` (size `md`). Consumers can pass a `trigger` prop to replace the default. |
|
|
36
|
-
| Header | `Sheet.Header` + `Sheet.Title` | (inherits `Sheet` styles) | "Preferences" title. |
|
|
37
|
-
| Body | `Flex direction="column" gap="lg"` | `dsx-config-drawer__body` | Scrollable column of `SettingRow` + `Separator` regions. |
|
|
38
|
-
| SettingRow | `Flex direction="row" justify="between" align="center" gap="md"` | `dsx-config-drawer__row` | A label / description / control triplet. The label is a `Label` element; the description (when present) is a `Text variant="label-small" tone="muted"`; the control is whatever the consumer passes as `children`. |
|
|
39
|
-
| SettingRow info | `Flex direction="column" gap="1"` | `dsx-config-drawer__row-info` | The left column of the row, containing the `Label` and the description. |
|
|
40
|
-
| SettingRow control wrapper | `<div>` | `dsx-config-drawer__row-control` | The right column of the row, wrapping the control. |
|
|
41
|
-
| Accent preview swatch | `<span aria-hidden="true">` | `dsx-config-drawer__accent-swatch` + `data-tier` | Non-interactive preview of each accent tier. It does not write `data-accent-color`, because the swatch represents a color value rather than consuming theme scope. |
|
|
42
|
-
| Scaling input (specific) | `NumberInput` | `dsx-config-drawer__scaling-input` | The scaling control. Sized to `7ch` so the percentage fits without breaking the row rhythm. |
|
|
43
|
-
|
|
44
|
-
**Internal layout:**
|
|
45
|
-
|
|
46
|
-
- The default trigger is a ghost `IconButton` with a `settings` icon. Passing the `trigger` prop replaces it entirely.
|
|
47
|
-
- The body is a single scrollable column. Each `SettingRow` is a `flex-direction: row` with `justify-content: space-between`, so the label and control sit on opposite ends of the row.
|
|
48
|
-
- The six default rows (Theme, Accent, Gray, Radius, Density, Scaling) are separated by `Separator` components from the package. The order is fixed and reflects the dependency direction: appearance first, then accent, then gray, then radius, then density, then scaling.
|
|
49
|
-
- Each row's control is a `SegmentedControl` (for the categorical tokens) or a `NumberInput` (for the scaling percentage). The control is wrapped in a `<div class="dsx-config-drawer__row-control">` so it stays right-aligned without leaking the `gap` into the control itself.
|
|
31
|
+
Flat export composing lazily loaded Drawer, Trigger, Content, Header, Title and
|
|
32
|
+
Description. No ConfigDrawer compound slots. Default trigger is an inline ghost
|
|
33
|
+
IconButton size md, named “Open preferences”, with settings Icon. The host owns
|
|
34
|
+
positioning. Title is “Preferences”; VisuallyHidden wraps the DrawerDescription.
|
|
35
|
+
Body composes Flex, Label, Text, SegmentedControl, NumberInput and Separator.
|
|
50
36
|
|
|
51
37
|
## Props contract
|
|
52
38
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
|
56
|
-
|
|
57
|
-
|
|
|
58
|
-
|
|
|
59
|
-
|
|
|
60
|
-
|
|
|
61
|
-
|
|
62
|
-
The root does not accept `asChild` directly; consumers can swap the host element by passing a `trigger` or by wrapping the rendered output themselves. The internal `Sheet.Content` is locked to `side="right"`; left-side drawers are out of scope for this component.
|
|
63
|
-
|
|
64
|
-
**SettingRow props (internal, not exported):**
|
|
65
|
-
|
|
66
|
-
| Prop | Type | Default | Required | Description | Responsive |
|
|
67
|
-
|---|---|---|---|---|---|
|
|
68
|
-
| `label` | `string` | (none) | **yes** | The label rendered as a `Label` element on the left. | no |
|
|
69
|
-
| `description` | `string` | `undefined` | no | Optional helper text rendered under the label as a muted `Text`. | no |
|
|
70
|
-
| `children` | `ReactNode` | (none) | **yes** | The control rendered on the right (typically a `SegmentedControl` or `NumberInput`). | no |
|
|
71
|
-
|
|
72
|
-
`SettingRow` is an internal helper; consumers do not compose their own rows. The six default rows are wired inside the component.
|
|
73
|
-
|
|
74
|
-
## CSS class contract
|
|
75
|
-
|
|
76
|
-
**Root class:** none at the component level. The component composes `Sheet` (which owns the panel chrome) and the `dsx-config-drawer__*` classes below.
|
|
39
|
+
| Prop | Type | Default | Description | Responsive |
|
|
40
|
+
|---|---|---|---|---|
|
|
41
|
+
| open | boolean | undefined | Controlled open state. | no |
|
|
42
|
+
| onOpenChange | (open: boolean) => void | undefined | Open-state callback. | no |
|
|
43
|
+
| defaultOpen | boolean | false | Uncontrolled initial state. | no |
|
|
44
|
+
| trigger | ReactNode | inline IconButton | Custom trigger via DrawerTrigger asChild. | no |
|
|
45
|
+
| side | top / right / bottom / left | right | Passed to Drawer direction. | no |
|
|
46
|
+
| children | ReactNode | undefined | Host content after built-in rows. | no |
|
|
77
47
|
|
|
78
|
-
|
|
48
|
+
Categorical controls are SegmentedControl type single, size sm:
|
|
79
49
|
|
|
80
|
-
|
|
|
50
|
+
| Row | Accessible name | Choices |
|
|
81
51
|
|---|---|---|
|
|
82
|
-
|
|
|
83
|
-
|
|
|
84
|
-
|
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
52
|
+
| Theme | Theme mode | Light / Dark / System |
|
|
53
|
+
| Accent | Accent color | Rift / Warp / Ray / Astral / Spark |
|
|
54
|
+
| Gray | Gray color | Auto / Neutral |
|
|
55
|
+
| Radius | Border radius | None / Small / Medium / Large / Full |
|
|
56
|
+
| Density | Density | Comfortable / Compact |
|
|
57
|
+
| Scaling | Scaling percentage | NumberInput, 90–110%, rounded to steps of 5 |
|
|
58
|
+
| Panel BG | Panel background | Translucent / Solid |
|
|
89
59
|
|
|
90
|
-
|
|
60
|
+
SettingRow is internal: label, optional description, children. Visible labels
|
|
61
|
+
are visual cues; each control has its own programmatic name.
|
|
91
62
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
**Reduced motion:**
|
|
63
|
+
## CSS class contract
|
|
95
64
|
|
|
96
|
-
|
|
65
|
+
| Region | Class |
|
|
66
|
+
|---|---|
|
|
67
|
+
| Body | dsx-config-drawer__body |
|
|
68
|
+
| Row | dsx-config-drawer__row |
|
|
69
|
+
| Information | dsx-config-drawer__row-info |
|
|
70
|
+
| Control | dsx-config-drawer__row-control |
|
|
71
|
+
| Swatch | dsx-config-drawer__accent-swatch |
|
|
72
|
+
| Scaling | dsx-config-drawer__scaling-input |
|
|
73
|
+
|
|
74
|
+
Rows always wrap. Information has min-width 0; controls have min-width 0 and
|
|
75
|
+
max-width 100%. Long categorical groups retain SegmentedControl's own horizontal
|
|
76
|
+
scrolling, including keyboard reveal. Drawer bounds and vertical scrolling use
|
|
77
|
+
the shared Drawer contract. No package width breakpoints.
|
|
97
78
|
|
|
98
79
|
## Token mapping
|
|
99
80
|
|
|
100
|
-
|
|
81
|
+
| Property | Token |
|
|
82
|
+
|---|---|
|
|
83
|
+
| Body gap / padding | --dsx-space-lg / --dsx-space-md |
|
|
84
|
+
| Row gap / minimum height | --dsx-space-md / --dsx-size-lg |
|
|
85
|
+
| Information gap | --dsx-space-2xs |
|
|
86
|
+
| Swatch size / gap / radius | --dsx-space-sm / --dsx-space-xs / --dsx-radius-full |
|
|
87
|
+
| Swatch fill | --dsx-color-accent-{rift,warp,ray,astral,spark}-9 |
|
|
88
|
+
| Scaling width | 7ch |
|
|
101
89
|
|
|
102
|
-
|
|
103
|
-
|---|---|---|
|
|
104
|
-
| Body gap | `var(--dsx-space-lg)` | Vertical gap between rows |
|
|
105
|
-
| Body padding | `var(--dsx-space-md) 0` | Vertical padding around the body |
|
|
106
|
-
| Body overflow | `auto` | Vertical scroll when content overflows |
|
|
107
|
-
| Row min-height | `var(--dsx-size-lg)` | Min hit target |
|
|
108
|
-
| Row gap | `var(--dsx-space-md)` | Horizontal gap between info and control |
|
|
109
|
-
| Row info gap | `var(--dsx-space-2xs)` | Vertical gap inside the info column |
|
|
110
|
-
| Accent preview size | `var(--dsx-space-sm)` | Square preview swatch dimensions |
|
|
111
|
-
| Accent preview spacing | `var(--dsx-space-xs)` | Gap between the preview and tier label |
|
|
112
|
-
| Accent preview radius | `var(--dsx-radius-full)` | Circular preview shape |
|
|
113
|
-
| Accent preview fill | `var(--dsx-runtime-accent-{rift,warp,ray}-9)` | Exact value represented by each theme choice |
|
|
114
|
-
| Scaling input width | `7ch` | Fixed width for the percentage `NumberInput` |
|
|
115
|
-
|
|
116
|
-
The default trigger is an `IconButton`; its visual contract is owned by `IconButton`. The row labels use the `Label` component; their visual contract is owned by `Label`. The segmented controls use the `SegmentedControl` component; their visual contract is owned by `SegmentedControl`.
|
|
90
|
+
Controls, separators and panel chrome retain their own component token contracts.
|
|
117
91
|
|
|
118
92
|
## Motion contract
|
|
119
93
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
| Sheet open / close | inherited from `Sheet` (`MOTION_TRANSITIONS.sheet`) | sheet preset | reduced |
|
|
94
|
+
Inherited Drawer motion uses MOTION_TRANSITIONS.drawer and reduced fallback.
|
|
95
|
+
ConfigDrawer adds no animation.
|
|
123
96
|
|
|
124
|
-
|
|
97
|
+
Rows explicitly compose Flex with wrap="wrap". Row descriptions use a
|
|
98
|
+
max-content flex basis so they retain readable width when the controls wrap. Controls keep their natural width
|
|
99
|
+
within a 100% cap, move below the row description when needed and retain the
|
|
100
|
+
existing SegmentedControl scroll behavior for long choice rails.
|
|
125
101
|
|
|
126
102
|
## Accessibility
|
|
127
103
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
**Keyboard:**
|
|
135
|
-
|
|
136
|
-
| Key | Action |
|
|
137
|
-
|---|---|
|
|
138
|
-
| `Tab` | Moves focus through the trigger, the segmented controls, the scaling input, and the sheet close affordance. |
|
|
139
|
-
| `ArrowLeft` / `ArrowRight` | Navigates within a `SegmentedControl` (radiogroup semantics). |
|
|
140
|
-
| `Enter` / `Space` | Activates the focused segmented option or input. |
|
|
141
|
-
| `Escape` | Closes the `Sheet` and returns focus to the trigger. |
|
|
142
|
-
|
|
143
|
-
**Focus:**
|
|
144
|
-
|
|
145
|
-
- The `Sheet` is a modal: focus is trapped inside the drawer while it is open and returned to the trigger on close.
|
|
146
|
-
- Each `SegmentedControl` is a roving-focus radiogroup: arrow keys move between options; the focused option gets a visible ring.
|
|
147
|
-
- The `NumberInput` exposes the standard textbox focus ring.
|
|
148
|
-
|
|
149
|
-
**Reduced motion:**
|
|
150
|
-
|
|
151
|
-
- Open / close transitions respect `prefers-reduced-motion` through the standard `Sheet` motion contract.
|
|
152
|
-
|
|
153
|
-
**Color and meaning:**
|
|
154
|
-
|
|
155
|
-
- The selected `SegmentedControl` option tracks `--dsx-color-primary`. The control itself does not impose additional color cues.
|
|
156
|
-
- The scaling `NumberInput` is a standard numeric entry; no color meaning.
|
|
157
|
-
|
|
158
|
-
**Naming:**
|
|
159
|
-
|
|
160
|
-
- Each `SegmentedControl` and the `NumberInput` carry an `aria-label` ("Theme mode", "Accent color", "Gray color", "Border radius", "Density", "Scaling percentage"). The visual `Label` repeats the same string so sighted and screen-reader users get the same word.
|
|
161
|
-
- The drawer title is "Preferences".
|
|
104
|
+
Drawer supplies modal dialog semantics, title/description, focus trapping and
|
|
105
|
+
Escape dismissal with focus return. SegmentedControl supplies single selection
|
|
106
|
+
and roving keyboard navigation; NumberInput supplies numeric entry. Enter/Space
|
|
107
|
+
activate the trigger. The playground's draggable trigger separately preserves
|
|
108
|
+
keyboard activation and suppresses clicks after pointer dragging.
|
|
162
109
|
|
|
163
110
|
## Playground demo spec
|
|
164
111
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
**State story:**
|
|
172
|
-
|
|
173
|
-
- Renders the drawer with `defaultOpen` and confirms the six rows appear with the correct default selections (`System`, `Rift`, `Auto`, `Medium`, `Comfortable`, `100`).
|
|
174
|
-
- Renders the drawer with `open` (controlled) and confirms the same.
|
|
175
|
-
- Renders a custom `trigger` and confirms the custom trigger is rendered when the drawer is closed.
|
|
176
|
-
|
|
177
|
-
**Composition story:**
|
|
178
|
-
|
|
179
|
-
- The component owns its own composition. The composition story is the default render: header + six rows + separators.
|
|
180
|
-
|
|
181
|
-
**Token story:**
|
|
182
|
-
|
|
183
|
-
- Renders the default drawer inside a `Theme` wrapper with `accentColor="warp"` and `accentColor="ray"`. Asserts the active segmented option tracks `--dsx-color-primary` while each accent preview continues to show the exact tier it represents.
|
|
184
|
-
|
|
185
|
-
**A11y story:**
|
|
186
|
-
|
|
187
|
-
- Uses `vitest-axe` against the rendered default story with the `aria-allowed-attr` rule disabled (the `SegmentedControl` ships a non-standard `variant` attribute on `role="group"`). Asserts no other axe violations.
|
|
188
|
-
|
|
189
|
-
**Props exposed in the playground controls:**
|
|
190
|
-
|
|
191
|
-
The playground registry for `config-drawer` does not expose prop controls. The component is mounted live at the app root; the registry render explains that placement and notes the `trigger` prop.
|
|
112
|
+
The registry explains usage and lists all seven rows. The live example is the
|
|
113
|
+
single app-root drawer opened with the bottom-right gear; that host uses side
|
|
114
|
+
bottom. Test Light/Dark, every accent, gray palettes, radius, density, scaling
|
|
115
|
+
and panel background at 1280/390/320, including the last row after scrolling.
|
|
116
|
+
No duplicate drawer is mounted just to obtain a screenshot.
|
|
192
117
|
|
|
193
118
|
## Wiring notes
|
|
194
119
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
- `Icon` (`src/components/icon/Icon`): the default `settings` icon.
|
|
200
|
-
- `Label` (`src/components/label/Label`): the row label.
|
|
201
|
-
- `Text` (`src/components/text/Text`): the row description.
|
|
202
|
-
- `Flex` (`src/layout/Flex`): the row layout and the body layout.
|
|
203
|
-
- `SegmentedControl` (`src/components/segmentedControl/SegmentedControl`): the categorical token pickers. The drawer uses `type="single"` and `size="sm"`.
|
|
204
|
-
- `Separator` (`src/components/separator/Separator`): the row separators.
|
|
205
|
-
- `NumberInput` (`src/components/numberInput/NumberInput`): the scaling percentage input, clamped to the 90 to 110 range in 5% steps.
|
|
206
|
-
- `ThemeProvider` (`src/components/themeProvider/ThemeProvider`): the drawer reads and writes the active theme through `useTheme()`. The drawer must be rendered inside a `ThemeProvider` tree.
|
|
207
|
-
|
|
208
|
-
**Used by:**
|
|
209
|
-
|
|
210
|
-
- The playground's app shell mounts a single `ConfigDrawer` alongside `ThemeProvider` so every page can toggle the theme without a dedicated settings route.
|
|
211
|
-
- App-level settings surfaces and onboarding flows.
|
|
212
|
-
|
|
213
|
-
**State boundaries:**
|
|
214
|
-
|
|
215
|
-
- Owned by ConfigDrawer: the six default rows, their order, the accent previews, and the `SettingRow` layout.
|
|
216
|
-
- Owned by the consumer: the placement of the drawer, the custom `trigger` (if any), the controlled `open` / `onOpenChange` (if any), and the surrounding `ThemeProvider`.
|
|
217
|
-
- Owned by `useTheme()`: every categorical selection (`theme`, `accentColor`, `grayColor`, `radius`, `density`, `scaling`) is read from and written to the active `ThemeProvider` context. The drawer does not own the value; it surfaces the control.
|
|
218
|
-
|
|
219
|
-
**Boundary rules:**
|
|
220
|
-
|
|
221
|
-
- App-owned data: the placement of the drawer, the controlled open state, the custom trigger, and the surrounding `ThemeProvider`.
|
|
222
|
-
- DS-owned visuals: token bindings, slot classes, the `Sheet` panel chrome, the segmented control semantics, the `NumberInput` clamping, and the row layout.
|
|
120
|
+
Drawer owns the portal, bounds and focus. ThemeProvider owns selections,
|
|
121
|
+
persistence and system mode. The host owns placement, custom trigger, side,
|
|
122
|
+
controlled open state and optional children. ConfigDrawer owns fixed row order,
|
|
123
|
+
swatches and the numeric scaling clamp. ThemePanel remains the read-only inspector.
|
|
@@ -153,6 +153,8 @@ Container has no motion. The motion section is intentionally empty.
|
|
|
153
153
|
|
|
154
154
|
## Playground demo spec
|
|
155
155
|
|
|
156
|
+
The default container retains its 1080px cap; size 1 and wide show 420px and 1200px caps respectively.
|
|
157
|
+
|
|
156
158
|
**Default story:**
|
|
157
159
|
|
|
158
160
|
- Renders `Container` with no extra props and a child node. Asserts the root classes are `dsx-container` and `dsx-box` (the `dsx-flex` class is conditional — it is only written when a flex layout prop such as `direction`, `align`, `justify`, `gap`, or `wrap` is set), the host element is a `div`, and `--dsx-container-max-width` resolves to `1080px`.
|
|
@@ -33,13 +33,13 @@ An object-scoped right-click action menu. The DS `ContextMenu` wraps `@radix-ui/
|
|
|
33
33
|
| `ContextMenu.Label` | Radix `ContextMenu.Label` | `dsx-context-menu__label` | Non-interactive section label. |
|
|
34
34
|
| `ContextMenu.Separator` | Radix `ContextMenu.Separator` (via `MenuSeparator`) | `dsx-context-menu__separator` | Visual divider. |
|
|
35
35
|
| `ContextMenu.Group` | Radix `ContextMenu.Group` | (no class) | Groups items semantically. |
|
|
36
|
-
| `ContextMenu.Sub` | Radix `ContextMenu.Sub` | (no class) | Submenu owner. |
|
|
36
|
+
| `ContextMenu.Sub` | Radix `ContextMenu.Sub` + `ContextMenuSubOpenContext` | (no class) | Submenu owner; mirrors controlled/uncontrolled state into SubContent. |
|
|
37
37
|
| `ContextMenu.RadioGroup` | Radix `ContextMenu.RadioGroup` | (no class) | Radio selection owner. |
|
|
38
38
|
| `ContextMenu.Portal` | Radix `ContextMenu.Portal` (via `MenuPortal`) | (no class) | Portal wrapper. |
|
|
39
39
|
| `ContextMenu.CheckboxItem` | Radix `ContextMenu.CheckboxItem` | `dsx-context-menu__item` + `dsx-context-menu__item-indicator` | Checkbox row. Renders `check` or `minus` indicator. |
|
|
40
40
|
| `ContextMenu.RadioItem` | Radix `ContextMenu.RadioItem` | `dsx-context-menu__item` + `dsx-context-menu__item-indicator` + `dsx-context-menu__radio-dot` | Radio row. |
|
|
41
41
|
| `ContextMenu.SubTrigger` | Radix `ContextMenu.SubTrigger` | `dsx-context-menu__item` + `dsx-context-menu__sub-trigger` + optional `data-inset` + `chevron-right` | Row that opens the sub-content. |
|
|
42
|
-
| `ContextMenu.SubContent` | Radix `ContextMenu.SubContent` inside `MenuContent`
|
|
42
|
+
| `ContextMenu.SubContent` | Radix `ContextMenu.SubContent` inside portalled `MenuContent` | `dsx-context-menu__content` | The submenu panel follows Sub's open state outside the parent's clip box. Explicit `forceMount` is preserved. |
|
|
43
43
|
| `ContextMenu.Shortcut` | `<span>` (or `Slot` child when `asChild`) | `dsx-context-menu__shortcut` | Keyboard hint rendered on the right. |
|
|
44
44
|
|
|
45
45
|
The roster's `Parent / Slots` column lists `ContextMenu.Root`, `ContextMenu.Trigger`, `ContextMenu.Content`, `ContextMenu.Label`, `ContextMenu.Separator`, `ContextMenu.Item`, `ContextMenu.Group`. The source exports the full Radix part set through `Object.assign`, including `Sub`, `RadioGroup`, `Portal`, `CheckboxItem`, `RadioItem`, `SubTrigger`, `SubContent`, and `Shortcut`. The spec records the full set so the public surface is unambiguous.
|
|
@@ -69,7 +69,7 @@ The roster's `Parent / Slots` column lists `ContextMenu.Root`, `ContextMenu.Trig
|
|
|
69
69
|
|
|
70
70
|
### `ContextMenu.Trigger`, `ContextMenu.Label`, `ContextMenu.Separator`, `ContextMenu.Group`, `ContextMenu.Sub`, `ContextMenu.RadioGroup`, `ContextMenu.Portal`, `ContextMenu.CheckboxItem`, `ContextMenu.RadioItem`, `ContextMenu.SubTrigger`, `ContextMenu.SubContent`
|
|
71
71
|
|
|
72
|
-
These
|
|
72
|
+
These preserve the corresponding Radix props. `ContextMenu.Trigger` accepts standard Radix trigger props and adds the keyboard opening path below. `ContextMenu.Label` and `ContextMenu.Group` accept standard Radix props. `ContextMenu.Sub` preserves controlled `open`, uncontrolled `defaultOpen` and `onOpenChange`. `ContextMenu.SubContent` preserves Radix positioning and `forceMount` props and renders through a theme-preserving portal.
|
|
73
73
|
|
|
74
74
|
### `ContextMenu.Item`
|
|
75
75
|
|
|
@@ -194,13 +194,13 @@ Rules:
|
|
|
194
194
|
- `ContextMenu.Item` is `role="menuitem"`. `ContextMenu.CheckboxItem` is `role="menuitemcheckbox"`; `ContextMenu.RadioItem` is `role="menuitemradio"`. `ContextMenu.SubTrigger` is `role="menuitem"` with `aria-haspopup="menu"`.
|
|
195
195
|
- `ContextMenu.Label` is `role="presentation"` for non-interactive section labels (Radix default).
|
|
196
196
|
- `ContextMenu.Separator` is `role="separator"`.
|
|
197
|
-
- `ContextMenu.Trigger`
|
|
197
|
+
- `ContextMenu.Trigger` captures right-click and touch long-press. A custom non-interactive host must supply `tabIndex={0}` for keyboard opening. The wrapper forwards the Radix trigger props and ref. Essential touch actions should also have an explicit button/menu composition; long-press alone is not discoverable.
|
|
198
198
|
|
|
199
199
|
**Keyboard:**
|
|
200
200
|
|
|
201
201
|
| Key | Action |
|
|
202
202
|
|---|---|
|
|
203
|
-
| `Shift+F10`, context-menu key | Opens the context
|
|
203
|
+
| `Shift+F10`, context-menu key | Opens the menu at the focused trigger's center. The wrapper supplies the context event consistently across browsers; a consumer-cancelled key handler is respected. |
|
|
204
204
|
| `ArrowDown`, `ArrowUp` | Moves through items. |
|
|
205
205
|
| `Enter`, `Space` | Activates the focused item. |
|
|
206
206
|
| `Escape` | Closes the menu. |
|
|
@@ -282,3 +282,17 @@ Rules:
|
|
|
282
282
|
|
|
283
283
|
- App-owned data: the command set, the disabled reasons, the right-click target, and the keyboard shortcut strings.
|
|
284
284
|
- DS-owned visuals: the `dsx-context-menu__*` slot classes, the token bindings, the data-attribute contract, and the open / close animation.
|
|
285
|
+
|
|
286
|
+
## Reconciliation stories
|
|
287
|
+
|
|
288
|
+
`Sub` preserves Radix's controlled `open`, uncontrolled `defaultOpen`, and
|
|
289
|
+
`onOpenChange` contract. `SubContent` follows that state and renders in its own
|
|
290
|
+
theme-preserving portal, outside the root's scroll/clip box. Closed submenus
|
|
291
|
+
are unmounted unless the consumer explicitly requests `forceMount`; they do not
|
|
292
|
+
leave inaccessible menu items behind the parent surface.
|
|
293
|
+
|
|
294
|
+
The panel's usual minimum width is capped by Radix's available width. A submenu
|
|
295
|
+
can become narrower when neither side has room for the usual menu width; labels
|
|
296
|
+
wrap rather than painting off the viewport. No viewport breakpoint is involved.
|
|
297
|
+
|
|
298
|
+
The live example uses a real Project actions button for explicit activation, right-click and keyboard opening. It demonstrates selection feedback, a disabled item, a controlled checkbox and radio group, a submenu and a destructive action. Shortcut hints are labels; item callbacks own the action.
|
|
@@ -42,7 +42,7 @@ Root `dsx-copy-field`; value input `dsx-copy-field__input`; action `dsx-copy-fie
|
|
|
42
42
|
|
|
43
43
|
## Token mapping
|
|
44
44
|
|
|
45
|
-
CopyField paints no new colors. Its only local sizing uses `var(--dsx-copy-field-action-min-width)` and spacing inherited from Field/InputGroup.
|
|
45
|
+
CopyField paints no new colors. Its only local sizing uses `var(--dsx-copy-field-action-min-width)` and spacing inherited from Field/InputGroup. The copy action is a direct InputGroup child: join, radii, and height are group-owned, and it inherits the field-shell outline token (`--dsx-boundary-control-color`) at rest and hover, so the group reads as one frame. The read-only value half invites no hover: shell keeps its resting border/background under hover, cursor stays default.
|
|
46
46
|
|
|
47
47
|
## Motion contract
|
|
48
48
|
|
|
@@ -54,7 +54,7 @@ The label is connected with generated IDs. The input is read-only rather than di
|
|
|
54
54
|
|
|
55
55
|
## Playground demo spec
|
|
56
56
|
|
|
57
|
-
Show default, all sizes, disabled, with/without description, full composition, clipboard success, light/dark
|
|
57
|
+
Show default, all sizes, disabled, with/without description, full composition, clipboard success, light/dark. Theme/accent switching belongs to the config drawer — no per-component theme/accent stories. Test clipboard success/failure and `vitest-axe`.
|
|
58
58
|
|
|
59
59
|
## Wiring notes
|
|
60
60
|
|
|
@@ -9,6 +9,8 @@ depends_on:
|
|
|
9
9
|
|
|
10
10
|
# DataList
|
|
11
11
|
|
|
12
|
+
Content regions use an intrinsic `8rem` flex basis, so sibling label/value regions wrap as readable blocks when they cannot fit together. The consumer can override the basis through ordinary style composition for a compact media row. No viewport breakpoint selects the arrangement.
|
|
13
|
+
|
|
12
14
|
> Consumer note: this document describes public intent and contracts; the package TypeScript declarations are the exact API.
|
|
13
15
|
|
|
14
16
|
## Purpose
|
|
@@ -47,7 +49,7 @@ A structured list surface for metadata, attributes, or settings rows that render
|
|
|
47
49
|
| Prop | Type | Default | Required | Description | Responsive |
|
|
48
50
|
|---|---|---|---|---|---|
|
|
49
51
|
| `variant` | `'default' \| 'outline' \| 'muted'` | `'default'` | no | Item surface treatment; writes `data-variant`. | no |
|
|
50
|
-
| `size` | `'xs' \| 'sm' \| 'md' \| 'lg'` | `'md'` | no | Item min-height; writes `data-size`. | no |
|
|
52
|
+
| `size` | `'xs' \| 'sm' \| 'md' \| 'lg'` | `'md'` | no | Item min-height and vertical padding; writes `data-size`. | no |
|
|
51
53
|
| `interactive` | `boolean` | `false` | no | When `true`, adds pointer cursor and hover styles; writes `data-interactive="true"`. | no |
|
|
52
54
|
| `text` | `React.ReactNode` | `undefined` | no | Structured primary text content. | no |
|
|
53
55
|
| `metadata` | `React.ReactNode` | `undefined` | no | Structured secondary text content. | no |
|
|
@@ -68,7 +70,9 @@ Rules:
|
|
|
68
70
|
- `listType` and `asChild` on Root are wired through `extractProps`.
|
|
69
71
|
- `variant`, `size`, and `interactive` on Item are wired through `extractProps`.
|
|
70
72
|
- When `text`, `metadata`, `icon`, or `badge` props are provided on Item, the component renders structured content automatically. Otherwise, `children` are rendered directly.
|
|
71
|
-
- Ordered lists use a CSS counter (`dsx-data-list-counter`) for markers; unordered lists use a
|
|
73
|
+
- Ordered lists use a CSS counter (`dsx-data-list-counter`) for markers; unordered lists use a drawn dot (see below).
|
|
74
|
+
- Item body wraps intrinsically and centers its slots vertically; `Media` keeps top alignment (`align-self: flex-start`) so icons/avatars anchor against multi-line text while text, badge, marker, and actions share one center line.
|
|
75
|
+
- The unordered marker is a drawn dot (radial fill at a fixed fraction of the marker box), so it scales with item size for free; ordered numerals stay text (counter) at natural size. A text bullet glyph was tried and rejected: growing `font-size` compounds (the box's `em` resolves against the pseudo-element's own font-size), and the glyph renders font-dependent small.
|
|
72
76
|
|
|
73
77
|
## CSS class contract
|
|
74
78
|
|
|
@@ -107,6 +111,8 @@ Rules:
|
|
|
107
111
|
|
|
108
112
|
- The component does not write `@media` rules. Size and variant are single-value only.
|
|
109
113
|
|
|
114
|
+
- Primary and secondary text use `overflow-wrap: anywhere` so emails and identifiers stay inside their content column at narrow widths. The centered slot alignment and top-anchored media remain unchanged.
|
|
115
|
+
|
|
110
116
|
**Reduced motion:**
|
|
111
117
|
|
|
112
118
|
- Item body transitions use `var(--dsx-motion-duration-fast)` and `var(--dsx-motion-easing-standard)` for background-color, box-shadow, and color. No explicit `prefers-reduced-motion` gate in the CSS.
|
|
@@ -198,7 +204,7 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
|
|
|
198
204
|
|
|
199
205
|
**Composition story:**
|
|
200
206
|
|
|
201
|
-
- Renders items using children-based composition with `DataList.Media`, `DataList.Content`, `DataList.Text`, `DataList.Metadata`, `DataList.Badge`, and `DataList.Actions` slots all populated.
|
|
207
|
+
- Renders items using children-based composition with `DataList.Media`, `DataList.Content`, `DataList.Text`, `DataList.Metadata`, `DataList.Badge`, and `DataList.Actions` slots all populated. The profile example includes a working CopyButton for its email; a consumer-owned content basis keeps media and content together at narrow widths.
|
|
202
208
|
|
|
203
209
|
**Token story:**
|
|
204
210
|
|
|
@@ -236,3 +242,9 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
|
|
|
236
242
|
|
|
237
243
|
- App-owned data: the list items, the item content, the action handlers, and the host element when `asChild` is set.
|
|
238
244
|
- DS-owned visuals: token bindings, the `dsx-data-list` root class, the slot classes, and the `data-*` attribute contract.
|
|
245
|
+
|
|
246
|
+
## Maintainer follow-up, 2026-10-03
|
|
247
|
+
|
|
248
|
+
DataList represents ordered/unordered entries, not a semantic description list. The roster keeps Description List as a separate candidate. Playground examples show one primary text and subordinate metadata inside one Content slot per entry, with meaningful team and connection-priority lists. Two equal Content siblings are not the default example. The media/badge/action composition remains available.
|
|
249
|
+
|
|
250
|
+
Item vertical padding scales with xs/sm/md/lg through space-xs/sm/md/lg, so identical content reveals actual density differences instead of masking the minimum-height scale.
|