@d4gger/design-system 3.0.0 → 3.0.1
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/{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/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 +60 -0
- package/dist/components/button-group.css +25 -0
- package/dist/components/button.css +9 -0
- package/dist/components/card.css +3 -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/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/context-menu.css +1 -1
- 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/dropdown-menu.css +1 -1
- package/dist/components/empty-state.css +5 -0
- 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 +1 -1
- 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/icon/Icon.cjs +25 -2
- package/dist/components/icon/Icon.cjs.map +2 -2
- package/dist/components/icon/Icon.d.cts +29 -1
- package/dist/components/icon/Icon.d.cts.map +1 -1
- package/dist/components/icon/Icon.d.mts +29 -1
- package/dist/components/icon/Icon.d.mts.map +1 -1
- package/dist/components/icon/Icon.d.ts +29 -1
- package/dist/components/icon/Icon.d.ts.map +1 -1
- package/dist/components/icon/Icon.js +33 -2
- package/dist/components/icon/Icon.js.map +2 -2
- package/dist/components/icon/icons.cjs +16 -0
- package/dist/components/icon/icons.cjs.map +2 -2
- package/dist/components/icon/icons.d.cts +40 -0
- package/dist/components/icon/icons.d.cts.map +1 -1
- package/dist/components/icon/icons.d.mts +40 -0
- package/dist/components/icon/icons.d.mts.map +1 -1
- package/dist/components/icon/icons.d.ts +40 -0
- package/dist/components/icon/icons.d.ts.map +1 -1
- package/dist/components/icon/icons.js +16 -0
- package/dist/components/icon/icons.js.map +2 -2
- package/dist/components/icon-button.css +29 -0
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.cjs.map +2 -2
- package/dist/components/index.d.cts +1 -1
- package/dist/components/index.d.cts.map +1 -1
- package/dist/components/index.d.mts +1 -1
- package/dist/components/index.d.mts.map +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- 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/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/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/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/prose.css +1 -1
- package/dist/components/qr-code.css +5 -15
- 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/result.css +2 -1
- package/dist/components/richTextEditor/RichTextEditor.cjs +11 -3
- package/dist/components/richTextEditor/RichTextEditor.cjs.map +2 -2
- package/dist/components/richTextEditor/RichTextEditor.d.cts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.d.mts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.d.ts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.js +11 -3
- package/dist/components/richTextEditor/RichTextEditor.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/sonner.css +1 -1
- 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/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.css +20 -13
- package/dist/components/tabs.css +10 -0
- package/dist/components/timeline.css +54 -18
- package/dist/components/toast.css +33 -1
- package/dist/components/toggle-group.css +5 -0
- package/dist/components.css +1 -2
- package/dist/docs/README.md +1 -1
- package/dist/docs/component-contract.md +4 -4
- package/dist/docs/component-index.json +9 -9
- package/dist/docs/components/banner.md +152 -0
- package/dist/docs/components/button-group.md +4 -3
- package/dist/docs/components/button.md +2 -2
- package/dist/docs/components/card.md +1 -0
- 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/combobox.md +3 -1
- package/dist/docs/components/command.md +2 -2
- 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 +4 -0
- package/dist/docs/components/dropdown-menu.md +2 -1
- package/dist/docs/components/empty-state.md +3 -1
- package/dist/docs/components/file-upload.md +1 -0
- package/dist/docs/components/filter-bar.md +193 -8
- package/dist/docs/components/floating-panel.md +8 -8
- package/dist/docs/components/icon-button.md +4 -1
- package/dist/docs/components/item.md +18 -13
- 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/pagination.md +88 -17
- package/dist/docs/components/pills.md +1 -1
- package/dist/docs/components/popover.md +2 -0
- package/dist/docs/components/prose.md +5 -1
- package/dist/docs/components/qr-code.md +14 -13
- package/dist/docs/components/radio-group.md +5 -2
- package/dist/docs/components/rating.md +2 -0
- package/dist/docs/components/result.md +6 -0
- package/dist/docs/components/segmented-control.md +7 -2
- package/dist/docs/components/select.md +3 -2
- package/dist/docs/components/sidebar.md +3 -1
- package/dist/docs/components/sonner.md +1 -1
- package/dist/docs/components/sortable-list.md +2 -0
- package/dist/docs/components/stat-card.md +5 -4
- package/dist/docs/components/stepper.md +1 -0
- package/dist/docs/components/table.md +14 -5
- package/dist/docs/components/tag.md +4 -2
- package/dist/docs/components/timeline.md +9 -5
- package/dist/docs/components/toast.md +1 -1
- package/dist/docs/components/toggle-group.md +2 -1
- package/dist/fonts.css +1 -1
- package/dist/generated/tokens.cjs +1 -1
- package/dist/generated/tokens.cjs.map +1 -1
- package/dist/generated/tokens.js +1 -1
- package/dist/generated/tokens.js.map +1 -1
- package/dist/motion.css +18 -3
- package/dist/styles.css +1249 -292
- package/dist/tokens.css +21 -15
- 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
|
@@ -9,8 +9,12 @@ type DataTablePaginationProps = {
|
|
|
9
9
|
onPageSizeChange?: (pageSize: number) => void;
|
|
10
10
|
className?: string;
|
|
11
11
|
siblingCount?: number;
|
|
12
|
+
align?: 'start' | 'center' | 'end';
|
|
13
|
+
showFirstLast?: boolean;
|
|
14
|
+
showPageInput?: boolean;
|
|
15
|
+
dense?: boolean;
|
|
12
16
|
};
|
|
13
|
-
declare function DataTablePagination({ page: controlledPage, defaultPage, pageSize: controlledPageSize, defaultPageSize, pageSizeOptions, total, onPageChange, onPageSizeChange, className, }: DataTablePaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
declare function DataTablePagination({ page: controlledPage, defaultPage, pageSize: controlledPageSize, defaultPageSize, pageSizeOptions, total, onPageChange, onPageSizeChange, className, align, showFirstLast, showPageInput, dense, }: DataTablePaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
14
18
|
declare namespace DataTablePagination {
|
|
15
19
|
var displayName: string;
|
|
16
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTablePagination.d.mts","sourceRoot":"","sources":["../../../src/components/dataTable/DataTablePagination.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DataTablePagination.d.mts","sourceRoot":"","sources":["../../../src/components/dataTable/DataTablePagination.tsx"],"names":[],"mappings":"AA6BA,KAAK,wBAAwB,GAAG;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;IAClC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAQD,iBAAS,mBAAmB,CAAC,EAC3B,IAAI,EAAE,cAAc,EACpB,WAAe,EACf,QAAQ,EAAE,kBAAkB,EAC5B,eAAoB,EACpB,eAAmC,EACnC,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,aAAqB,EACrB,aAAqB,EACrB,KAAa,GACd,EAAE,wBAAwB,2CAqI1B;kBAnJQ,mBAAmB;;;AAsJ5B,OAAO,EAAE,mBAAmB,EAAE,CAAA;AAC9B,YAAY,EAAE,wBAAwB,EAAE,CAAA"}
|
|
@@ -9,8 +9,12 @@ type DataTablePaginationProps = {
|
|
|
9
9
|
onPageSizeChange?: (pageSize: number) => void;
|
|
10
10
|
className?: string;
|
|
11
11
|
siblingCount?: number;
|
|
12
|
+
align?: 'start' | 'center' | 'end';
|
|
13
|
+
showFirstLast?: boolean;
|
|
14
|
+
showPageInput?: boolean;
|
|
15
|
+
dense?: boolean;
|
|
12
16
|
};
|
|
13
|
-
declare function DataTablePagination({ page: controlledPage, defaultPage, pageSize: controlledPageSize, defaultPageSize, pageSizeOptions, total, onPageChange, onPageSizeChange, className, }: DataTablePaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
declare function DataTablePagination({ page: controlledPage, defaultPage, pageSize: controlledPageSize, defaultPageSize, pageSizeOptions, total, onPageChange, onPageSizeChange, className, align, showFirstLast, showPageInput, dense, }: DataTablePaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
14
18
|
declare namespace DataTablePagination {
|
|
15
19
|
var displayName: string;
|
|
16
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTablePagination.d.ts","sourceRoot":"","sources":["../../../src/components/dataTable/DataTablePagination.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DataTablePagination.d.ts","sourceRoot":"","sources":["../../../src/components/dataTable/DataTablePagination.tsx"],"names":[],"mappings":"AA6BA,KAAK,wBAAwB,GAAG;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;IAClC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAQD,iBAAS,mBAAmB,CAAC,EAC3B,IAAI,EAAE,cAAc,EACpB,WAAe,EACf,QAAQ,EAAE,kBAAkB,EAC5B,eAAoB,EACpB,eAAmC,EACnC,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,aAAqB,EACrB,aAAqB,EACrB,KAAa,GACd,EAAE,wBAAwB,2CAqI1B;kBAnJQ,mBAAmB;;;AAsJ5B,OAAO,EAAE,mBAAmB,EAAE,CAAA;AAC9B,YAAY,EAAE,wBAAwB,EAAE,CAAA"}
|
|
@@ -6,9 +6,12 @@ import {
|
|
|
6
6
|
Pagination,
|
|
7
7
|
PaginationContent,
|
|
8
8
|
PaginationEllipsis,
|
|
9
|
+
PaginationFirst,
|
|
9
10
|
PaginationItem,
|
|
11
|
+
PaginationLast,
|
|
10
12
|
PaginationLink,
|
|
11
13
|
PaginationNext,
|
|
14
|
+
PaginationPageInput,
|
|
12
15
|
PaginationPageSize,
|
|
13
16
|
PaginationPrevious
|
|
14
17
|
} from "../pagination/Pagination.js";
|
|
@@ -17,32 +20,29 @@ const DATA_TABLE_PAGINATION_STYLE = {
|
|
|
17
20
|
display: "flex",
|
|
18
21
|
alignItems: "center",
|
|
19
22
|
justifyContent: "space-between",
|
|
23
|
+
flexWrap: "wrap",
|
|
20
24
|
padding: "var(--dsx-space-sm) var(--dsx-space-md)",
|
|
21
25
|
gap: "var(--dsx-space-sm)"
|
|
22
26
|
};
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
fontSize: "var(--dsx-font-size-xs)",
|
|
28
|
-
color: "var(--dsx-color-on-surface-variant)",
|
|
29
|
-
whiteSpace: "nowrap"
|
|
30
|
-
};
|
|
31
|
-
const DATA_TABLE_PAGINATION_CONTROLS_STYLE = {
|
|
32
|
-
display: "flex",
|
|
33
|
-
alignItems: "center",
|
|
34
|
-
gap: "var(--dsx-space-xs)"
|
|
27
|
+
const DATA_TABLE_PAGINATION_JUSTIFY_BY_ALIGN = {
|
|
28
|
+
start: "flex-start",
|
|
29
|
+
center: "center",
|
|
30
|
+
end: "flex-end"
|
|
35
31
|
};
|
|
36
32
|
function DataTablePagination({
|
|
37
33
|
page: controlledPage,
|
|
38
34
|
defaultPage = 1,
|
|
39
35
|
pageSize: controlledPageSize,
|
|
40
36
|
defaultPageSize = 10,
|
|
41
|
-
pageSizeOptions = [
|
|
37
|
+
pageSizeOptions = [10, 25, 50, 100],
|
|
42
38
|
total,
|
|
43
39
|
onPageChange,
|
|
44
40
|
onPageSizeChange,
|
|
45
|
-
className
|
|
41
|
+
className,
|
|
42
|
+
align,
|
|
43
|
+
showFirstLast = false,
|
|
44
|
+
showPageInput = false,
|
|
45
|
+
dense = false
|
|
46
46
|
}) {
|
|
47
47
|
const [internalPage, setInternalPage] = React.useState(defaultPage);
|
|
48
48
|
const [internalPageSize, setInternalPageSize] = React.useState(defaultPageSize);
|
|
@@ -79,18 +79,73 @@ function DataTablePagination({
|
|
|
79
79
|
setInternalPage(newPage);
|
|
80
80
|
}
|
|
81
81
|
onPageSizeChange?.(newPageSize);
|
|
82
|
-
onPageChange?.(newPage);
|
|
83
82
|
}
|
|
84
83
|
const pageNumbers = buildPageNumbers(safePage, totalPages);
|
|
85
84
|
return /* @__PURE__ */ jsxs(
|
|
86
85
|
"div",
|
|
87
86
|
{
|
|
88
87
|
className: classNames("dsx-data-table-pagination", className),
|
|
89
|
-
style: DATA_TABLE_PAGINATION_STYLE,
|
|
88
|
+
style: align ? { ...DATA_TABLE_PAGINATION_STYLE, justifyContent: DATA_TABLE_PAGINATION_JUSTIFY_BY_ALIGN[align] } : DATA_TABLE_PAGINATION_STYLE,
|
|
90
89
|
children: [
|
|
91
|
-
/* @__PURE__ */
|
|
92
|
-
|
|
93
|
-
/* @__PURE__ */ jsx(
|
|
90
|
+
/* @__PURE__ */ jsx("div", { className: "dsx-data-table-pagination__info", role: "status", "aria-live": "polite", children: total > 0 ? `${startRow}\u2013${endRow} of ${total}` : "0 rows" }),
|
|
91
|
+
/* @__PURE__ */ jsxs("div", { className: "dsx-data-table-pagination__navigation", children: [
|
|
92
|
+
/* @__PURE__ */ jsx(Pagination, { "aria-label": "Table pagination", children: /* @__PURE__ */ jsxs(PaginationContent, { children: [
|
|
93
|
+
showFirstLast ? /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
94
|
+
PaginationFirst,
|
|
95
|
+
{
|
|
96
|
+
disabled: safePage <= 1,
|
|
97
|
+
onClick: () => handlePageChange(1)
|
|
98
|
+
}
|
|
99
|
+
) }) : null,
|
|
100
|
+
/* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
101
|
+
PaginationPrevious,
|
|
102
|
+
{
|
|
103
|
+
disabled: safePage <= 1,
|
|
104
|
+
onClick: () => handlePageChange(safePage - 1)
|
|
105
|
+
}
|
|
106
|
+
) }),
|
|
107
|
+
pageNumbers.map(
|
|
108
|
+
(pageOrEllipsis, index) => pageOrEllipsis === "ellipsis" ? /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationEllipsis, {}) }, `ellipsis-${index}`) : /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
109
|
+
PaginationLink,
|
|
110
|
+
{
|
|
111
|
+
active: safePage === pageOrEllipsis,
|
|
112
|
+
onClick: () => handlePageChange(pageOrEllipsis),
|
|
113
|
+
"aria-label": `Page ${pageOrEllipsis}`,
|
|
114
|
+
children: pageOrEllipsis
|
|
115
|
+
}
|
|
116
|
+
) }, pageOrEllipsis)
|
|
117
|
+
),
|
|
118
|
+
/* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
119
|
+
PaginationNext,
|
|
120
|
+
{
|
|
121
|
+
disabled: safePage >= totalPages,
|
|
122
|
+
onClick: () => handlePageChange(safePage + 1)
|
|
123
|
+
}
|
|
124
|
+
) }),
|
|
125
|
+
showFirstLast ? /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
126
|
+
PaginationLast,
|
|
127
|
+
{
|
|
128
|
+
disabled: safePage >= totalPages,
|
|
129
|
+
onClick: () => handlePageChange(totalPages)
|
|
130
|
+
}
|
|
131
|
+
) }) : null
|
|
132
|
+
] }) }),
|
|
133
|
+
!showPageInput && !dense ? /* @__PURE__ */ jsxs("span", { className: "dsx-data-table-pagination__page-status", children: [
|
|
134
|
+
"Page ",
|
|
135
|
+
safePage,
|
|
136
|
+
" of ",
|
|
137
|
+
totalPages
|
|
138
|
+
] }) : null,
|
|
139
|
+
showPageInput ? /* @__PURE__ */ jsx(
|
|
140
|
+
PaginationPageInput,
|
|
141
|
+
{
|
|
142
|
+
page: safePage,
|
|
143
|
+
totalPages,
|
|
144
|
+
onPageChange: handlePageChange
|
|
145
|
+
}
|
|
146
|
+
) : null
|
|
147
|
+
] }),
|
|
148
|
+
!dense ? /* @__PURE__ */ jsxs("div", { className: "dsx-data-table-pagination__page-size", children: [
|
|
94
149
|
/* @__PURE__ */ jsx("span", { children: "Rows per page:" }),
|
|
95
150
|
/* @__PURE__ */ jsx(
|
|
96
151
|
PaginationPageSize,
|
|
@@ -101,34 +156,7 @@ function DataTablePagination({
|
|
|
101
156
|
"aria-label": "Rows per page"
|
|
102
157
|
}
|
|
103
158
|
)
|
|
104
|
-
] })
|
|
105
|
-
/* @__PURE__ */ jsx("div", { style: DATA_TABLE_PAGINATION_CONTROLS_STYLE, children: /* @__PURE__ */ jsx(Pagination, { children: /* @__PURE__ */ jsxs(PaginationContent, { children: [
|
|
106
|
-
/* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
107
|
-
PaginationPrevious,
|
|
108
|
-
{
|
|
109
|
-
disabled: safePage <= 1,
|
|
110
|
-
onClick: () => handlePageChange(safePage - 1)
|
|
111
|
-
}
|
|
112
|
-
) }),
|
|
113
|
-
pageNumbers.map(
|
|
114
|
-
(pageOrEllipsis, index) => pageOrEllipsis === "ellipsis" ? /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationEllipsis, {}) }, `ellipsis-${index}`) : /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
115
|
-
PaginationLink,
|
|
116
|
-
{
|
|
117
|
-
active: safePage === pageOrEllipsis,
|
|
118
|
-
onClick: () => handlePageChange(pageOrEllipsis),
|
|
119
|
-
"aria-label": `Page ${pageOrEllipsis}`,
|
|
120
|
-
children: pageOrEllipsis
|
|
121
|
-
}
|
|
122
|
-
) }, pageOrEllipsis)
|
|
123
|
-
),
|
|
124
|
-
/* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
|
|
125
|
-
PaginationNext,
|
|
126
|
-
{
|
|
127
|
-
disabled: safePage >= totalPages,
|
|
128
|
-
onClick: () => handlePageChange(safePage + 1)
|
|
129
|
-
}
|
|
130
|
-
) })
|
|
131
|
-
] }) }) })
|
|
159
|
+
] }) : null
|
|
132
160
|
]
|
|
133
161
|
}
|
|
134
162
|
);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/dataTable/DataTablePagination.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\n\nimport {\n buildPageNumbers,\n Pagination,\n PaginationContent,\n PaginationEllipsis,\n PaginationItem,\n PaginationLink,\n PaginationNext,\n PaginationPageSize,\n PaginationPrevious,\n} from '../pagination/Pagination'\n\nconst DATA_TABLE_PAGINATION_STYLE: React.CSSProperties = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n
|
|
5
|
-
"mappings": ";AAEA,YAAY,WAAW;AACvB,OAAO,gBAAgB;AAEvB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,
|
|
4
|
+
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\n\nimport {\n buildPageNumbers,\n Pagination,\n PaginationContent,\n PaginationEllipsis,\n PaginationFirst,\n PaginationItem,\n PaginationLast,\n PaginationLink,\n PaginationNext,\n PaginationPageInput,\n PaginationPageSize,\n PaginationPrevious,\n} from '../pagination/Pagination'\n\nconst DATA_TABLE_PAGINATION_STYLE: React.CSSProperties = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n flexWrap: 'wrap',\n padding: 'var(--dsx-space-sm) var(--dsx-space-md)',\n gap: 'var(--dsx-space-sm)',\n}\n\ntype DataTablePaginationProps = {\n page?: number\n defaultPage?: number\n pageSize?: number\n defaultPageSize?: number\n pageSizeOptions?: number[]\n total: number\n onPageChange?: (page: number) => void\n onPageSizeChange?: (pageSize: number) => void\n className?: string\n siblingCount?: number\n align?: 'start' | 'center' | 'end'\n showFirstLast?: boolean\n showPageInput?: boolean\n dense?: boolean\n}\n\nconst DATA_TABLE_PAGINATION_JUSTIFY_BY_ALIGN = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n} as const\n\nfunction DataTablePagination({\n page: controlledPage,\n defaultPage = 1,\n pageSize: controlledPageSize,\n defaultPageSize = 10,\n pageSizeOptions = [10, 25, 50, 100],\n total,\n onPageChange,\n onPageSizeChange,\n className,\n align,\n showFirstLast = false,\n showPageInput = false,\n dense = false,\n}: DataTablePaginationProps) {\n const [internalPage, setInternalPage] = React.useState(defaultPage)\n const [internalPageSize, setInternalPageSize] = React.useState(defaultPageSize)\n\n const isPageControlled = controlledPage !== undefined\n const isPageSizeControlled = controlledPageSize !== undefined\n\n const currentPage = isPageControlled ? controlledPage : internalPage\n const currentPageSize = isPageSizeControlled ? controlledPageSize : internalPageSize\n\n const totalPages = Math.max(1, Math.ceil(total / currentPageSize))\n const safePage = Math.min(currentPage, totalPages)\n\n const startRow = (safePage - 1) * currentPageSize + 1\n const endRow = Math.min(safePage * currentPageSize, total)\n\n React.useEffect(() => {\n if (safePage !== currentPage) {\n if (!isPageControlled) {\n setInternalPage(safePage)\n }\n onPageChange?.(safePage)\n }\n }, [totalPages, safePage, currentPage, isPageControlled, onPageChange])\n\n function handlePageChange(newPage: number) {\n const clampedPage = Math.max(1, Math.min(newPage, totalPages))\n if (!isPageControlled) {\n setInternalPage(clampedPage)\n }\n onPageChange?.(clampedPage)\n }\n\n function handlePageSizeChange(newPageSize: number) {\n if (!isPageSizeControlled) {\n setInternalPageSize(newPageSize)\n }\n const newTotalPages = Math.max(1, Math.ceil(total / newPageSize))\n const newPage = Math.min(safePage, newTotalPages)\n if (!isPageControlled) {\n setInternalPage(newPage)\n }\n onPageSizeChange?.(newPageSize)\n }\n\n const pageNumbers = buildPageNumbers(safePage, totalPages)\n\n return (\n <div\n className={classNames('dsx-data-table-pagination', className)}\n style={align ? { ...DATA_TABLE_PAGINATION_STYLE, justifyContent: DATA_TABLE_PAGINATION_JUSTIFY_BY_ALIGN[align] } : DATA_TABLE_PAGINATION_STYLE}\n >\n <div className=\"dsx-data-table-pagination__info\" role=\"status\" aria-live=\"polite\">\n {total > 0 ? `${startRow}\u2013${endRow} of ${total}` : '0 rows'}\n </div>\n\n <div className=\"dsx-data-table-pagination__navigation\">\n <Pagination aria-label=\"Table pagination\">\n <PaginationContent>\n {showFirstLast ? (\n <PaginationItem>\n <PaginationFirst\n disabled={safePage <= 1}\n onClick={() => handlePageChange(1)}\n />\n </PaginationItem>\n ) : null}\n <PaginationItem>\n <PaginationPrevious\n disabled={safePage <= 1}\n onClick={() => handlePageChange(safePage - 1)}\n />\n </PaginationItem>\n\n {pageNumbers.map((pageOrEllipsis, index) =>\n pageOrEllipsis === 'ellipsis' ? (\n <PaginationItem key={`ellipsis-${index}`}>\n <PaginationEllipsis />\n </PaginationItem>\n ) : (\n <PaginationItem key={pageOrEllipsis}>\n <PaginationLink\n active={safePage === pageOrEllipsis}\n onClick={() => handlePageChange(pageOrEllipsis)}\n aria-label={`Page ${pageOrEllipsis}`}\n >\n {pageOrEllipsis}\n </PaginationLink>\n </PaginationItem>\n ),\n )}\n\n <PaginationItem>\n <PaginationNext\n disabled={safePage >= totalPages}\n onClick={() => handlePageChange(safePage + 1)}\n />\n </PaginationItem>\n {showFirstLast ? (\n <PaginationItem>\n <PaginationLast\n disabled={safePage >= totalPages}\n onClick={() => handlePageChange(totalPages)}\n />\n </PaginationItem>\n ) : null}\n </PaginationContent>\n </Pagination>\n {!showPageInput && !dense ? (\n <span className=\"dsx-data-table-pagination__page-status\">Page {safePage} of {totalPages}</span>\n ) : null}\n {showPageInput ? (\n <PaginationPageInput\n page={safePage}\n totalPages={totalPages}\n onPageChange={handlePageChange}\n />\n ) : null}\n </div>\n\n {!dense ? (\n <div className=\"dsx-data-table-pagination__page-size\">\n <span>Rows per page:</span>\n <PaginationPageSize\n value={currentPageSize}\n options={pageSizeOptions}\n onChange={handlePageSizeChange}\n aria-label=\"Rows per page\"\n />\n </div>\n ) : null}\n </div>\n )\n}\nDataTablePagination.displayName = 'DataTablePagination'\n\nexport { DataTablePagination }\nexport type { DataTablePaginationProps }\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -41,31 +41,30 @@ var import_classnames = __toESM(require("classnames"), 1);
|
|
|
41
41
|
var import_Badge = require("../badge/Badge");
|
|
42
42
|
var import_Button = require("../button/Button");
|
|
43
43
|
var import_DropdownMenu = require("../dropdownMenu/DropdownMenu");
|
|
44
|
+
var import_Icon = require("../icon/Icon");
|
|
44
45
|
var import_Input = require("../input/Input");
|
|
46
|
+
var import_DataTableContext = require("./DataTableContext");
|
|
47
|
+
var import_dataTable = require("./dataTable.export");
|
|
45
48
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
46
|
-
const DATA_TABLE_TOOLBAR_STYLE = {
|
|
47
|
-
display: "flex",
|
|
48
|
-
alignItems: "center",
|
|
49
|
-
flexWrap: "wrap",
|
|
50
|
-
gap: "var(--dsx-space-sm)",
|
|
51
|
-
padding: "var(--dsx-space-md)"
|
|
52
|
-
};
|
|
53
49
|
const DATA_TABLE_TOOLBAR_SEARCH_STYLE = {
|
|
54
|
-
|
|
55
|
-
minWidth: "160px"
|
|
50
|
+
width: "100%"
|
|
56
51
|
};
|
|
57
52
|
function DataTableToolbarSearch({
|
|
58
53
|
value,
|
|
59
|
-
defaultValue
|
|
54
|
+
defaultValue,
|
|
60
55
|
placeholder = "Search rows",
|
|
61
56
|
onChange
|
|
62
57
|
}) {
|
|
63
|
-
const
|
|
58
|
+
const table = (0, import_DataTableContext.useDataTableToolbarContext)();
|
|
59
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? "");
|
|
64
60
|
const isControlled = value !== void 0;
|
|
65
|
-
const
|
|
61
|
+
const usesTableState = !isControlled && defaultValue === void 0 && table !== null;
|
|
62
|
+
const currentValue = isControlled ? value : usesTableState ? table.query : internalValue;
|
|
66
63
|
function handleChange(event) {
|
|
67
64
|
const nextValue = event.currentTarget.value;
|
|
68
|
-
if (
|
|
65
|
+
if (usesTableState) {
|
|
66
|
+
table.onQueryChange(nextValue);
|
|
67
|
+
} else if (!isControlled) {
|
|
69
68
|
setInternalValue(nextValue);
|
|
70
69
|
}
|
|
71
70
|
onChange?.(nextValue);
|
|
@@ -74,6 +73,7 @@ function DataTableToolbarSearch({
|
|
|
74
73
|
import_Input.Input,
|
|
75
74
|
{
|
|
76
75
|
"aria-label": "Search table rows",
|
|
76
|
+
className: "dsx-data-table-toolbar__search",
|
|
77
77
|
density: "sm",
|
|
78
78
|
onChange: handleChange,
|
|
79
79
|
placeholder,
|
|
@@ -90,12 +90,24 @@ function DataTableToolbarColumnVisibility({
|
|
|
90
90
|
defaultVisibleColumnIds,
|
|
91
91
|
onVisibleColumnIdsChange
|
|
92
92
|
}) {
|
|
93
|
-
const
|
|
93
|
+
const table = (0, import_DataTableContext.useDataTableToolbarContext)();
|
|
94
|
+
const resolvedColumns = React.useMemo(
|
|
95
|
+
() => columns?.map((column) => ({ id: column.id, header: column.header })) ?? table?.columns.map((column) => ({ id: column.id, header: column.label })) ?? null,
|
|
96
|
+
[columns, table?.columns]
|
|
97
|
+
);
|
|
98
|
+
const allColumnIds = React.useMemo(
|
|
99
|
+
() => new Set(resolvedColumns?.map((column) => column.id) ?? []),
|
|
100
|
+
[resolvedColumns]
|
|
101
|
+
);
|
|
94
102
|
const [internalVisibleIds, setInternalVisibleIds] = React.useState(
|
|
95
103
|
() => defaultVisibleColumnIds ?? allColumnIds
|
|
96
104
|
);
|
|
97
|
-
|
|
98
|
-
|
|
105
|
+
if (!resolvedColumns) {
|
|
106
|
+
throw new Error("DataTable.Toolbar.ColumnVisibility requires columns or a parent DataTable.");
|
|
107
|
+
}
|
|
108
|
+
const usesTableState = visibleColumnIds === void 0 && defaultVisibleColumnIds === void 0 && table !== null;
|
|
109
|
+
const isControlled = visibleColumnIds !== void 0 || usesTableState;
|
|
110
|
+
const currentVisibleIds = visibleColumnIds ?? (usesTableState ? table.visibleColumnIds : internalVisibleIds);
|
|
99
111
|
const visibleCount = currentVisibleIds.size;
|
|
100
112
|
const totalCount = allColumnIds.size;
|
|
101
113
|
function handleToggle(columnId, checked) {
|
|
@@ -108,25 +120,40 @@ function DataTableToolbarColumnVisibility({
|
|
|
108
120
|
if (!isControlled) {
|
|
109
121
|
setInternalVisibleIds(nextIds);
|
|
110
122
|
}
|
|
123
|
+
if (usesTableState) {
|
|
124
|
+
table.onVisibleColumnIdsChange(nextIds);
|
|
125
|
+
}
|
|
111
126
|
onVisibleColumnIdsChange?.(nextIds);
|
|
112
127
|
}
|
|
113
128
|
function handleShowAll() {
|
|
114
129
|
if (!isControlled) {
|
|
115
130
|
setInternalVisibleIds(allColumnIds);
|
|
116
131
|
}
|
|
132
|
+
if (usesTableState) {
|
|
133
|
+
table.onVisibleColumnIdsChange(allColumnIds);
|
|
134
|
+
}
|
|
117
135
|
onVisibleColumnIdsChange?.(allColumnIds);
|
|
118
136
|
}
|
|
119
137
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_DropdownMenu.DropdownMenu, { children: [
|
|
120
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenu.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
"
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
138
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenu.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
139
|
+
import_Button.Button,
|
|
140
|
+
{
|
|
141
|
+
leadingIcon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.Icon, { "aria-hidden": "true", name: "list", size: "sm" }),
|
|
142
|
+
size: "sm",
|
|
143
|
+
trailingIcon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.Icon, { "aria-hidden": "true", name: "chevron-down", size: "sm" }),
|
|
144
|
+
variant: "outline",
|
|
145
|
+
children: [
|
|
146
|
+
"Columns",
|
|
147
|
+
visibleCount < totalCount && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_Badge.Badge, { size: "sm", variant: "primary", style: { marginLeft: "var(--dsx-space-xs)" }, children: [
|
|
148
|
+
visibleCount,
|
|
149
|
+
"/",
|
|
150
|
+
totalCount
|
|
151
|
+
] })
|
|
152
|
+
]
|
|
153
|
+
}
|
|
154
|
+
) }),
|
|
128
155
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_DropdownMenu.DropdownMenuContent, { align: "end", style: { minWidth: "200px", maxHeight: "320px", overflow: "auto" }, children: [
|
|
129
|
-
|
|
156
|
+
resolvedColumns.map((column) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
130
157
|
import_DropdownMenu.DropdownMenuCheckboxItem,
|
|
131
158
|
{
|
|
132
159
|
checked: currentVisibleIds.has(column.id),
|
|
@@ -143,41 +170,6 @@ function DataTableToolbarColumnVisibility({
|
|
|
143
170
|
] });
|
|
144
171
|
}
|
|
145
172
|
DataTableToolbarColumnVisibility.displayName = "DataTableToolbarColumnVisibility";
|
|
146
|
-
function stringifyCellValue(value) {
|
|
147
|
-
if (value == null) return "";
|
|
148
|
-
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") return String(value);
|
|
149
|
-
if (value instanceof Date) return value.toISOString();
|
|
150
|
-
if (Array.isArray(value)) return value.map(stringifyCellValue).join(" ");
|
|
151
|
-
if (typeof value === "object") return JSON.stringify(value);
|
|
152
|
-
return String(value);
|
|
153
|
-
}
|
|
154
|
-
function escapeCsvCell(value) {
|
|
155
|
-
if (value.includes(",") || value.includes('"') || value.includes("\n") || value.includes("\r")) {
|
|
156
|
-
return `"${value.replace(/"/g, '""')}"`;
|
|
157
|
-
}
|
|
158
|
-
return value;
|
|
159
|
-
}
|
|
160
|
-
function exportAsCsv(data, columns) {
|
|
161
|
-
const headers = columns.map((col) => escapeCsvCell(String(col.header)));
|
|
162
|
-
const rows = data.map(
|
|
163
|
-
(row) => columns.map((col) => {
|
|
164
|
-
const value = col.accessorKey ? row[col.accessorKey] : void 0;
|
|
165
|
-
return escapeCsvCell(stringifyCellValue(value));
|
|
166
|
-
}).join(",")
|
|
167
|
-
);
|
|
168
|
-
return [headers.join(","), ...rows].join("\n");
|
|
169
|
-
}
|
|
170
|
-
function exportAsJson(data, columns) {
|
|
171
|
-
const keys = columns.map((col) => col.accessorKey).filter((key) => key !== void 0);
|
|
172
|
-
const projected = data.map((row) => {
|
|
173
|
-
const result = {};
|
|
174
|
-
for (const key of keys) {
|
|
175
|
-
result[key] = row[key];
|
|
176
|
-
}
|
|
177
|
-
return result;
|
|
178
|
-
});
|
|
179
|
-
return JSON.stringify(projected, null, 2);
|
|
180
|
-
}
|
|
181
173
|
function DataTableToolbarExport({
|
|
182
174
|
data,
|
|
183
175
|
columns,
|
|
@@ -185,9 +177,10 @@ function DataTableToolbarExport({
|
|
|
185
177
|
filename = "table-export",
|
|
186
178
|
onExport
|
|
187
179
|
}) {
|
|
188
|
-
const
|
|
189
|
-
|
|
190
|
-
|
|
180
|
+
const table = (0, import_DataTableContext.useDataTableToolbarContext)();
|
|
181
|
+
const [progress, setProgress] = React.useState(null);
|
|
182
|
+
const rowCount = table?.filteredRowCount ?? data?.length;
|
|
183
|
+
function download(exportFormat, exportData) {
|
|
191
184
|
onExport?.(exportFormat, exportData);
|
|
192
185
|
const blob = new Blob([exportData], { type: exportFormat === "csv" ? "text/csv" : "application/json" });
|
|
193
186
|
const url = URL.createObjectURL(blob);
|
|
@@ -199,45 +192,81 @@ function DataTableToolbarExport({
|
|
|
199
192
|
document.body.removeChild(link);
|
|
200
193
|
URL.revokeObjectURL(url);
|
|
201
194
|
}
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
{
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
handleExport("csv");
|
|
212
|
-
},
|
|
213
|
-
children: "CSV"
|
|
195
|
+
async function handleExport(exportFormat) {
|
|
196
|
+
if (progress !== null) return;
|
|
197
|
+
if (data && columns) {
|
|
198
|
+
if (data.length > import_dataTable.EXPORT_PROGRESS_ROW_THRESHOLD) {
|
|
199
|
+
setProgress(0);
|
|
200
|
+
try {
|
|
201
|
+
download(exportFormat, await (0, import_dataTable.exportDataTableRowsProgressive)(exportFormat, data, columns, setProgress));
|
|
202
|
+
} finally {
|
|
203
|
+
setProgress(null);
|
|
214
204
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
205
|
+
} else {
|
|
206
|
+
download(exportFormat, (0, import_dataTable.exportDataTableRows)(exportFormat, data, columns));
|
|
207
|
+
}
|
|
208
|
+
} else if (table) {
|
|
209
|
+
if (table.filteredRowCount > import_dataTable.EXPORT_PROGRESS_ROW_THRESHOLD) {
|
|
210
|
+
setProgress(0);
|
|
211
|
+
try {
|
|
212
|
+
download(exportFormat, await table.exportRowsProgressive(exportFormat, setProgress));
|
|
213
|
+
} finally {
|
|
214
|
+
setProgress(null);
|
|
225
215
|
}
|
|
226
|
-
|
|
216
|
+
} else {
|
|
217
|
+
download(exportFormat, table.exportRows(exportFormat));
|
|
218
|
+
}
|
|
219
|
+
} else {
|
|
220
|
+
throw new Error("DataTable.Toolbar.Export requires data and columns or a parent DataTable.");
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
function formatLabel(exportFormat) {
|
|
224
|
+
const base = exportFormat === "json" ? "JSON file" : "CSV file";
|
|
225
|
+
return rowCount === void 0 ? base : `${base} \xB7 ${rowCount} rows`;
|
|
226
|
+
}
|
|
227
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_DropdownMenu.DropdownMenu, { children: [
|
|
228
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenu.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
229
|
+
import_Button.Button,
|
|
230
|
+
{
|
|
231
|
+
leadingIcon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.Icon, { "aria-hidden": "true", name: "download", size: "sm" }),
|
|
232
|
+
size: "sm",
|
|
233
|
+
trailingIcon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.Icon, { "aria-hidden": "true", name: "chevron-down", size: "sm" }),
|
|
234
|
+
variant: "outline",
|
|
235
|
+
disabled: progress !== null,
|
|
236
|
+
"aria-live": "polite",
|
|
237
|
+
children: progress !== null ? `Exporting ${progress}%` : "Export"
|
|
238
|
+
}
|
|
239
|
+
) }),
|
|
240
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_DropdownMenu.DropdownMenuContent, { align: "end", "aria-label": "Export format", children: [
|
|
241
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_DropdownMenu.DropdownMenuItem, { onSelect: () => void handleExport(format === "json" ? "json" : "csv"), children: [
|
|
242
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.Icon, { "aria-hidden": "true", name: "download", size: "sm" }),
|
|
243
|
+
formatLabel(format === "json" ? "json" : "csv")
|
|
244
|
+
] }),
|
|
245
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_DropdownMenu.DropdownMenuItem, { onSelect: () => void handleExport(format === "json" ? "csv" : "json"), children: [
|
|
246
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.Icon, { "aria-hidden": "true", name: "download", size: "sm" }),
|
|
247
|
+
formatLabel(format === "json" ? "csv" : "json")
|
|
248
|
+
] })
|
|
227
249
|
] })
|
|
228
250
|
] });
|
|
229
251
|
}
|
|
230
252
|
DataTableToolbarExport.displayName = "DataTableToolbarExport";
|
|
231
253
|
function DataTableToolbarRowCount({ total, filtered, selected }) {
|
|
232
|
-
const
|
|
233
|
-
|
|
254
|
+
const table = (0, import_DataTableContext.useDataTableToolbarContext)();
|
|
255
|
+
const resolvedTotal = total ?? table?.totalRowCount;
|
|
256
|
+
const resolvedFiltered = filtered ?? table?.filteredRowCount;
|
|
257
|
+
const resolvedSelected = selected ?? table?.selectedRowCount;
|
|
258
|
+
if (resolvedTotal === void 0) {
|
|
259
|
+
throw new Error("DataTable.Toolbar.RowCount requires total or a parent DataTable.");
|
|
260
|
+
}
|
|
261
|
+
const showFiltered = resolvedFiltered !== void 0 && resolvedFiltered !== resolvedTotal;
|
|
262
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "dsx-data-table-toolbar__row-count", children: [
|
|
234
263
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
235
|
-
showFiltered ? `${
|
|
264
|
+
showFiltered ? `${resolvedFiltered} of ${resolvedTotal}` : `${resolvedTotal}`,
|
|
236
265
|
" row",
|
|
237
|
-
|
|
266
|
+
resolvedTotal !== 1 ? "s" : ""
|
|
238
267
|
] }),
|
|
239
|
-
|
|
240
|
-
|
|
268
|
+
resolvedSelected !== void 0 && resolvedSelected > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_Badge.Badge, { size: "sm", variant: "primary", children: [
|
|
269
|
+
resolvedSelected,
|
|
241
270
|
" selected"
|
|
242
271
|
] })
|
|
243
272
|
] });
|
|
@@ -249,7 +278,7 @@ function DataTableToolbar({ className, children, style, ...restProps }) {
|
|
|
249
278
|
{
|
|
250
279
|
...restProps,
|
|
251
280
|
className: (0, import_classnames.default)("dsx-data-table-toolbar", className),
|
|
252
|
-
style
|
|
281
|
+
style,
|
|
253
282
|
children
|
|
254
283
|
}
|
|
255
284
|
);
|