@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
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/dataTable/DataTableToolbar.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\n\nimport { Badge } from '../badge/Badge'\nimport { Button } from '../button/Button'\nimport { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuSeparator, DropdownMenuTrigger } from '../dropdownMenu/DropdownMenu'\nimport { Input } from '../input/Input'\n\nimport type { DataTableColumn } from './DataTable'\n\nconst DATA_TABLE_TOOLBAR_STYLE: React.CSSProperties = {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n gap: 'var(--dsx-space-sm)',\n padding: 'var(--dsx-space-md)',\n}\n\nconst DATA_TABLE_TOOLBAR_SEARCH_STYLE: React.CSSProperties = {\n flex: '1 1 200px',\n minWidth: '160px',\n}\n\ntype DataTableToolbarSearchProps = {\n value?: string\n defaultValue?: string\n placeholder?: string\n onChange?: (value: string) => void\n}\n\nfunction DataTableToolbarSearch({\n value,\n defaultValue = '',\n placeholder = 'Search rows',\n onChange,\n}: DataTableToolbarSearchProps) {\n const [internalValue, setInternalValue] = React.useState(defaultValue)\n const isControlled = value !== undefined\n const currentValue = isControlled ? value : internalValue\n\n function handleChange(event: React.ChangeEvent<HTMLInputElement>) {\n const nextValue = event.currentTarget.value\n if (!isControlled) {\n setInternalValue(nextValue)\n }\n onChange?.(nextValue)\n }\n\n return (\n <Input\n aria-label=\"Search table rows\"\n density=\"sm\"\n onChange={handleChange}\n placeholder={placeholder}\n style={DATA_TABLE_TOOLBAR_SEARCH_STYLE}\n type=\"search\"\n value={currentValue}\n />\n )\n}\nDataTableToolbarSearch.displayName = 'DataTableToolbarSearch'\n\ntype DataTableToolbarColumnVisibilityProps<Row> = {\n columns: Array<DataTableColumn<Row>>\n visibleColumnIds?: Set<string>\n defaultVisibleColumnIds?: Set<string>\n onVisibleColumnIdsChange?: (visibleColumnIds: Set<string>) => void\n}\n\nfunction DataTableToolbarColumnVisibility<Row extends Record<string, unknown>>({\n columns,\n visibleColumnIds,\n defaultVisibleColumnIds,\n onVisibleColumnIdsChange,\n}: DataTableToolbarColumnVisibilityProps<Row>) {\n const allColumnIds = React.useMemo(() => new Set(columns.map((col) => col.id)), [columns])\n\n const [internalVisibleIds, setInternalVisibleIds] = React.useState<Set<string>>(\n () => defaultVisibleColumnIds ?? allColumnIds,\n )\n\n const isControlled = visibleColumnIds !== undefined\n const currentVisibleIds = isControlled ? visibleColumnIds : internalVisibleIds\n const visibleCount = currentVisibleIds.size\n const totalCount = allColumnIds.size\n\n function handleToggle(columnId: string, checked: boolean) {\n const nextIds = new Set(currentVisibleIds)\n if (checked) {\n nextIds.add(columnId)\n } else {\n nextIds.delete(columnId)\n }\n if (!isControlled) {\n setInternalVisibleIds(nextIds)\n }\n onVisibleColumnIdsChange?.(nextIds)\n }\n\n function handleShowAll() {\n if (!isControlled) {\n setInternalVisibleIds(allColumnIds)\n }\n onVisibleColumnIdsChange?.(allColumnIds)\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button size=\"sm\" variant=\"outline\" trailingIcon={<span aria-hidden=\"true\">\u25BE</span>}>\n Columns\n {visibleCount < totalCount && (\n <Badge size=\"sm\" variant=\"primary\" style={{ marginLeft: 'var(--dsx-space-xs)' }}>\n {visibleCount}/{totalCount}\n </Badge>\n )}\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" style={{ minWidth: '200px', maxHeight: '320px', overflow: 'auto' }}>\n {columns.map((column) => (\n <DropdownMenuCheckboxItem\n key={column.id}\n checked={currentVisibleIds.has(column.id)}\n onCheckedChange={(checked) => handleToggle(column.id, checked === true)}\n >\n {column.header}\n </DropdownMenuCheckboxItem>\n ))}\n {visibleCount < totalCount && (\n <>\n <DropdownMenuSeparator />\n <DropdownMenuCheckboxItem checked={false} onCheckedChange={handleShowAll}>\n Show all\n </DropdownMenuCheckboxItem>\n </>\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\nDataTableToolbarColumnVisibility.displayName = 'DataTableToolbarColumnVisibility'\n\ntype DataTableToolbarExportFormat = 'csv' | 'json'\n\ntype DataTableToolbarExportProps<Row> = {\n data: Row[]\n columns: Array<DataTableColumn<Row>>\n format?: DataTableToolbarExportFormat\n filename?: string\n onExport?: (format: DataTableToolbarExportFormat, data: string) => void\n}\n\nfunction stringifyCellValue(value: unknown): string {\n if (value == null) return ''\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') return String(value)\n if (value instanceof Date) return value.toISOString()\n if (Array.isArray(value)) return value.map(stringifyCellValue).join(' ')\n if (typeof value === 'object') return JSON.stringify(value)\n return String(value)\n}\n\nfunction escapeCsvCell(value: string): string {\n if (value.includes(',') || value.includes('\"') || value.includes('\\n') || value.includes('\\r')) {\n return `\"${value.replace(/\"/g, '\"\"')}\"`\n }\n return value\n}\n\nfunction exportAsCsv<Row extends Record<string, unknown>>(\n data: Row[],\n columns: Array<DataTableColumn<Row>>,\n): string {\n const headers = columns.map((col) => escapeCsvCell(String(col.header)))\n const rows = data.map((row) =>\n columns\n .map((col) => {\n const value = col.accessorKey ? row[col.accessorKey] : undefined\n return escapeCsvCell(stringifyCellValue(value))\n })\n .join(','),\n )\n return [headers.join(','), ...rows].join('\\n')\n}\n\nfunction exportAsJson<Row extends Record<string, unknown>>(\n data: Row[],\n columns: Array<DataTableColumn<Row>>,\n): string {\n const keys = columns.map((col) => col.accessorKey).filter((key): key is keyof Row => key !== undefined)\n const projected = data.map((row) => {\n const result: Partial<Row> = {}\n for (const key of keys) {\n result[key] = row[key]\n }\n return result\n })\n return JSON.stringify(projected, null, 2)\n}\n\nfunction DataTableToolbarExport<Row extends Record<string, unknown>>({\n data,\n columns,\n format = 'csv',\n filename = 'table-export',\n onExport,\n}: DataTableToolbarExportProps<Row>) {\n const [selectedFormat, setSelectedFormat] = React.useState<DataTableToolbarExportFormat>(format)\n\n function handleExport(exportFormat: DataTableToolbarExportFormat) {\n const exportData = exportFormat === 'csv' ? exportAsCsv(data, columns) : exportAsJson(data, columns)\n onExport?.(exportFormat, exportData)\n\n const blob = new Blob([exportData], { type: exportFormat === 'csv' ? 'text/csv' : 'application/json' })\n const url = URL.createObjectURL(blob)\n const link = document.createElement('a')\n link.href = url\n link.download = `${filename}.${exportFormat}`\n document.body.appendChild(link)\n link.click()\n document.body.removeChild(link)\n URL.revokeObjectURL(url)\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button size=\"sm\" variant=\"outline\" trailingIcon={<span aria-hidden=\"true\">\u25BE</span>}>\n Export\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n <DropdownMenuCheckboxItem\n checked={selectedFormat === 'csv'}\n onCheckedChange={() => {\n setSelectedFormat('csv')\n handleExport('csv')\n }}\n >\n CSV\n </DropdownMenuCheckboxItem>\n <DropdownMenuCheckboxItem\n checked={selectedFormat === 'json'}\n onCheckedChange={() => {\n setSelectedFormat('json')\n handleExport('json')\n }}\n >\n JSON\n </DropdownMenuCheckboxItem>\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\nDataTableToolbarExport.displayName = 'DataTableToolbarExport'\n\ntype DataTableToolbarRowCountProps = {\n total: number\n filtered?: number\n selected?: number\n}\n\nfunction DataTableToolbarRowCount({ total, filtered, selected }: DataTableToolbarRowCountProps) {\n const showFiltered = filtered !== undefined && filtered !== total\n\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 'var(--dsx-space-xs)', fontSize: 'var(--dsx-font-size-xs)', color: 'var(--dsx-color-on-surface-variant)' }}>\n <span>\n {showFiltered ? `${filtered} of ${total}` : `${total}`} row{total !== 1 ? 's' : ''}\n </span>\n {selected !== undefined && selected > 0 && (\n <Badge size=\"sm\" variant=\"primary\">\n {selected} selected\n </Badge>\n )}\n </div>\n )\n}\nDataTableToolbarRowCount.displayName = 'DataTableToolbarRowCount'\n\ntype DataTableToolbarProps = React.HTMLAttributes<HTMLDivElement>\n\nfunction DataTableToolbar({ className, children, style, ...restProps }: DataTableToolbarProps) {\n return (\n <div\n {...restProps}\n className={classNames('dsx-data-table-toolbar', className)}\n style={{ ...DATA_TABLE_TOOLBAR_STYLE, ...style }}\n >\n {children}\n </div>\n )\n}\nDataTableToolbar.displayName = 'DataTableToolbar'\n\nconst DataTableToolbarComponent = Object.assign(DataTableToolbar, {\n Search: DataTableToolbarSearch,\n ColumnVisibility: DataTableToolbarColumnVisibility,\n Export: DataTableToolbarExport,\n RowCount: DataTableToolbarRowCount,\n})\n\nexport {\n DataTableToolbarComponent as DataTableToolbar,\n DataTableToolbarColumnVisibility,\n DataTableToolbarExport,\n DataTableToolbarRowCount,\n DataTableToolbarSearch,\n}\nexport type {\n DataTableToolbarExportFormat,\n DataTableToolbarExportProps,\n DataTableToolbarProps,\n DataTableToolbarRowCountProps,\n DataTableToolbarSearchProps,\n}\n"],
|
|
5
|
-
"mappings": ";AAEA,YAAY,WAAW;AACvB,OAAO,gBAAgB;AAEvB,SAAS,aAAa;AACtB,SAAS,cAAc;AACvB,SAAS,cAAc,0BAA0B,qBAAqB,uBAAuB,2BAA2B;
|
|
4
|
+
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\n\nimport { Badge } from '../badge/Badge'\nimport { Button } from '../button/Button'\nimport { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger } from '../dropdownMenu/DropdownMenu'\nimport { Icon } from '../icon/Icon'\nimport { Input } from '../input/Input'\n\nimport { useDataTableToolbarContext } from './DataTableContext'\nimport { EXPORT_PROGRESS_ROW_THRESHOLD, exportDataTableRows, exportDataTableRowsProgressive } from './dataTable.export'\nimport type { DataTableColumn } from './DataTable'\nimport type { DataTableExportFormat } from './DataTableContext'\n\nconst DATA_TABLE_TOOLBAR_SEARCH_STYLE: React.CSSProperties = {\n width: '100%',\n}\n\ntype DataTableToolbarSearchProps = {\n value?: string\n defaultValue?: string\n placeholder?: string\n onChange?: (value: string) => void\n}\n\nfunction DataTableToolbarSearch({\n value,\n defaultValue,\n placeholder = 'Search rows',\n onChange,\n}: DataTableToolbarSearchProps) {\n const table = useDataTableToolbarContext()\n const [internalValue, setInternalValue] = React.useState(defaultValue ?? '')\n const isControlled = value !== undefined\n const usesTableState = !isControlled && defaultValue === undefined && table !== null\n const currentValue = isControlled ? value : usesTableState ? table.query : internalValue\n\n function handleChange(event: React.ChangeEvent<HTMLInputElement>) {\n const nextValue = event.currentTarget.value\n if (usesTableState) {\n table.onQueryChange(nextValue)\n } else if (!isControlled) {\n setInternalValue(nextValue)\n }\n onChange?.(nextValue)\n }\n\n return (\n <Input\n aria-label=\"Search table rows\"\n className=\"dsx-data-table-toolbar__search\"\n density=\"sm\"\n onChange={handleChange}\n placeholder={placeholder}\n style={DATA_TABLE_TOOLBAR_SEARCH_STYLE}\n type=\"search\"\n value={currentValue}\n />\n )\n}\nDataTableToolbarSearch.displayName = 'DataTableToolbarSearch'\n\ntype DataTableToolbarColumnVisibilityProps<Row> = {\n columns?: Array<DataTableColumn<Row>>\n visibleColumnIds?: Set<string>\n defaultVisibleColumnIds?: Set<string>\n onVisibleColumnIdsChange?: (visibleColumnIds: Set<string>) => void\n}\n\nfunction DataTableToolbarColumnVisibility<Row extends Record<string, unknown>>({\n columns,\n visibleColumnIds,\n defaultVisibleColumnIds,\n onVisibleColumnIdsChange,\n}: DataTableToolbarColumnVisibilityProps<Row>) {\n const table = useDataTableToolbarContext()\n const resolvedColumns = React.useMemo(\n () => columns?.map((column) => ({ id: column.id, header: column.header }))\n ?? table?.columns.map((column) => ({ id: column.id, header: column.label }))\n ?? null,\n [columns, table?.columns],\n )\n const allColumnIds = React.useMemo(\n () => new Set(resolvedColumns?.map((column) => column.id) ?? []),\n [resolvedColumns],\n )\n\n const [internalVisibleIds, setInternalVisibleIds] = React.useState<Set<string>>(\n () => defaultVisibleColumnIds ?? allColumnIds,\n )\n\n if (!resolvedColumns) {\n throw new Error('DataTable.Toolbar.ColumnVisibility requires columns or a parent DataTable.')\n }\n\n const usesTableState = visibleColumnIds === undefined && defaultVisibleColumnIds === undefined && table !== null\n const isControlled = visibleColumnIds !== undefined || usesTableState\n const currentVisibleIds = visibleColumnIds ?? (usesTableState ? table.visibleColumnIds : internalVisibleIds)\n const visibleCount = currentVisibleIds.size\n const totalCount = allColumnIds.size\n\n function handleToggle(columnId: string, checked: boolean) {\n const nextIds = new Set(currentVisibleIds)\n if (checked) {\n nextIds.add(columnId)\n } else {\n nextIds.delete(columnId)\n }\n if (!isControlled) {\n setInternalVisibleIds(nextIds)\n }\n if (usesTableState) {\n table.onVisibleColumnIdsChange(nextIds)\n }\n onVisibleColumnIdsChange?.(nextIds)\n }\n\n function handleShowAll() {\n if (!isControlled) {\n setInternalVisibleIds(allColumnIds)\n }\n if (usesTableState) {\n table.onVisibleColumnIdsChange(allColumnIds)\n }\n onVisibleColumnIdsChange?.(allColumnIds)\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n leadingIcon={<Icon aria-hidden=\"true\" name=\"list\" size=\"sm\" />}\n size=\"sm\"\n trailingIcon={<Icon aria-hidden=\"true\" name=\"chevron-down\" size=\"sm\" />}\n variant=\"outline\"\n >\n Columns\n {visibleCount < totalCount && (\n <Badge size=\"sm\" variant=\"primary\" style={{ marginLeft: 'var(--dsx-space-xs)' }}>\n {visibleCount}/{totalCount}\n </Badge>\n )}\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" style={{ minWidth: '200px', maxHeight: '320px', overflow: 'auto' }}>\n {resolvedColumns.map((column) => (\n <DropdownMenuCheckboxItem\n key={column.id}\n checked={currentVisibleIds.has(column.id)}\n onCheckedChange={(checked) => handleToggle(column.id, checked === true)}\n >\n {column.header}\n </DropdownMenuCheckboxItem>\n ))}\n {visibleCount < totalCount && (\n <>\n <DropdownMenuSeparator />\n <DropdownMenuCheckboxItem checked={false} onCheckedChange={handleShowAll}>\n Show all\n </DropdownMenuCheckboxItem>\n </>\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\nDataTableToolbarColumnVisibility.displayName = 'DataTableToolbarColumnVisibility'\n\ntype DataTableToolbarExportFormat = DataTableExportFormat\n\ntype DataTableToolbarExportProps<Row> = {\n data?: Row[]\n columns?: Array<DataTableColumn<Row>>\n format?: DataTableToolbarExportFormat\n filename?: string\n onExport?: (format: DataTableToolbarExportFormat, data: string) => void\n}\n\nfunction DataTableToolbarExport<Row extends Record<string, unknown>>({\n data,\n columns,\n format = 'csv',\n filename = 'table-export',\n onExport,\n}: DataTableToolbarExportProps<Row>) {\n const table = useDataTableToolbarContext()\n const [progress, setProgress] = React.useState<number | null>(null)\n const rowCount = table?.filteredRowCount ?? data?.length\n\n function download(exportFormat: DataTableToolbarExportFormat, exportData: string) {\n onExport?.(exportFormat, exportData)\n\n const blob = new Blob([exportData], { type: exportFormat === 'csv' ? 'text/csv' : 'application/json' })\n const url = URL.createObjectURL(blob)\n const link = document.createElement('a')\n link.href = url\n link.download = `${filename}.${exportFormat}`\n document.body.appendChild(link)\n link.click()\n document.body.removeChild(link)\n URL.revokeObjectURL(url)\n }\n\n async function handleExport(exportFormat: DataTableToolbarExportFormat) {\n if (progress !== null) return\n if (data && columns) {\n if (data.length > EXPORT_PROGRESS_ROW_THRESHOLD) {\n setProgress(0)\n try {\n download(exportFormat, await exportDataTableRowsProgressive(exportFormat, data, columns, setProgress))\n } finally {\n setProgress(null)\n }\n } else {\n download(exportFormat, exportDataTableRows(exportFormat, data, columns))\n }\n } else if (table) {\n if (table.filteredRowCount > EXPORT_PROGRESS_ROW_THRESHOLD) {\n setProgress(0)\n try {\n download(exportFormat, await table.exportRowsProgressive(exportFormat, setProgress))\n } finally {\n setProgress(null)\n }\n } else {\n download(exportFormat, table.exportRows(exportFormat))\n }\n } else {\n throw new Error('DataTable.Toolbar.Export requires data and columns or a parent DataTable.')\n }\n }\n\n function formatLabel(exportFormat: DataTableToolbarExportFormat) {\n const base = exportFormat === 'json' ? 'JSON file' : 'CSV file'\n return rowCount === undefined ? base : `${base} \u00B7 ${rowCount} rows`\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n leadingIcon={<Icon aria-hidden=\"true\" name=\"download\" size=\"sm\" />}\n size=\"sm\"\n trailingIcon={<Icon aria-hidden=\"true\" name=\"chevron-down\" size=\"sm\" />}\n variant=\"outline\"\n disabled={progress !== null}\n aria-live=\"polite\"\n >\n {progress !== null ? `Exporting ${progress}%` : 'Export'}\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" aria-label=\"Export format\">\n <DropdownMenuItem onSelect={() => void handleExport(format === 'json' ? 'json' : 'csv')}>\n <Icon aria-hidden=\"true\" name=\"download\" size=\"sm\" />\n {formatLabel(format === 'json' ? 'json' : 'csv')}\n </DropdownMenuItem>\n <DropdownMenuItem onSelect={() => void handleExport(format === 'json' ? 'csv' : 'json')}>\n <Icon aria-hidden=\"true\" name=\"download\" size=\"sm\" />\n {formatLabel(format === 'json' ? 'csv' : 'json')}\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\nDataTableToolbarExport.displayName = 'DataTableToolbarExport'\n\ntype DataTableToolbarRowCountProps = {\n total?: number\n filtered?: number\n selected?: number\n}\n\nfunction DataTableToolbarRowCount({ total, filtered, selected }: DataTableToolbarRowCountProps) {\n const table = useDataTableToolbarContext()\n const resolvedTotal = total ?? table?.totalRowCount\n const resolvedFiltered = filtered ?? table?.filteredRowCount\n const resolvedSelected = selected ?? table?.selectedRowCount\n\n if (resolvedTotal === undefined) {\n throw new Error('DataTable.Toolbar.RowCount requires total or a parent DataTable.')\n }\n\n const showFiltered = resolvedFiltered !== undefined && resolvedFiltered !== resolvedTotal\n\n return (\n <div className=\"dsx-data-table-toolbar__row-count\">\n <span>\n {showFiltered ? `${resolvedFiltered} of ${resolvedTotal}` : `${resolvedTotal}`} row{resolvedTotal !== 1 ? 's' : ''}\n </span>\n {resolvedSelected !== undefined && resolvedSelected > 0 && (\n <Badge size=\"sm\" variant=\"primary\">\n {resolvedSelected} selected\n </Badge>\n )}\n </div>\n )\n}\nDataTableToolbarRowCount.displayName = 'DataTableToolbarRowCount'\n\ntype DataTableToolbarProps = React.HTMLAttributes<HTMLDivElement>\n\nfunction DataTableToolbar({ className, children, style, ...restProps }: DataTableToolbarProps) {\n return (\n <div\n {...restProps}\n className={classNames('dsx-data-table-toolbar', className)}\n style={style}\n >\n {children}\n </div>\n )\n}\nDataTableToolbar.displayName = 'DataTableToolbar'\n\nconst DataTableToolbarComponent = Object.assign(DataTableToolbar, {\n Search: DataTableToolbarSearch,\n ColumnVisibility: DataTableToolbarColumnVisibility,\n Export: DataTableToolbarExport,\n RowCount: DataTableToolbarRowCount,\n})\n\nexport {\n DataTableToolbarComponent as DataTableToolbar,\n DataTableToolbarColumnVisibility,\n DataTableToolbarExport,\n DataTableToolbarRowCount,\n DataTableToolbarSearch,\n}\nexport type {\n DataTableToolbarExportFormat,\n DataTableToolbarExportProps,\n DataTableToolbarProps,\n DataTableToolbarRowCountProps,\n DataTableToolbarSearchProps,\n}\n"],
|
|
5
|
+
"mappings": ";AAEA,YAAY,WAAW;AACvB,OAAO,gBAAgB;AAEvB,SAAS,aAAa;AACtB,SAAS,cAAc;AACvB,SAAS,cAAc,0BAA0B,qBAAqB,kBAAkB,uBAAuB,2BAA2B;AAC1I,SAAS,YAAY;AACrB,SAAS,aAAa;AAEtB,SAAS,kCAAkC;AAC3C,SAAS,+BAA+B,qBAAqB,sCAAsC;AAsC/F,SA2GM,UA3GN,KA0FQ,YA1FR;AAlCJ,MAAM,kCAAuD;AAAA,EAC3D,OAAO;AACT;AASA,SAAS,uBAAuB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd;AACF,GAAgC;AAC9B,QAAM,QAAQ,2BAA2B;AACzC,QAAM,CAAC,eAAe,gBAAgB,IAAI,MAAM,SAAS,gBAAgB,EAAE;AAC3E,QAAM,eAAe,UAAU;AAC/B,QAAM,iBAAiB,CAAC,gBAAgB,iBAAiB,UAAa,UAAU;AAChF,QAAM,eAAe,eAAe,QAAQ,iBAAiB,MAAM,QAAQ;AAE3E,WAAS,aAAa,OAA4C;AAChE,UAAM,YAAY,MAAM,cAAc;AACtC,QAAI,gBAAgB;AAClB,YAAM,cAAc,SAAS;AAAA,IAC/B,WAAW,CAAC,cAAc;AACxB,uBAAiB,SAAS;AAAA,IAC5B;AACA,eAAW,SAAS;AAAA,EACtB;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,cAAW;AAAA,MACX,WAAU;AAAA,MACV,SAAQ;AAAA,MACR,UAAU;AAAA,MACV;AAAA,MACA,OAAO;AAAA,MACP,MAAK;AAAA,MACL,OAAO;AAAA;AAAA,EACT;AAEJ;AACA,uBAAuB,cAAc;AASrC,SAAS,iCAAsE;AAAA,EAC7E;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA+C;AAC7C,QAAM,QAAQ,2BAA2B;AACzC,QAAM,kBAAkB,MAAM;AAAA,IAC5B,MAAM,SAAS,IAAI,CAAC,YAAY,EAAE,IAAI,OAAO,IAAI,QAAQ,OAAO,OAAO,EAAE,KACpE,OAAO,QAAQ,IAAI,CAAC,YAAY,EAAE,IAAI,OAAO,IAAI,QAAQ,OAAO,MAAM,EAAE,KACxE;AAAA,IACL,CAAC,SAAS,OAAO,OAAO;AAAA,EAC1B;AACA,QAAM,eAAe,MAAM;AAAA,IACzB,MAAM,IAAI,IAAI,iBAAiB,IAAI,CAAC,WAAW,OAAO,EAAE,KAAK,CAAC,CAAC;AAAA,IAC/D,CAAC,eAAe;AAAA,EAClB;AAEA,QAAM,CAAC,oBAAoB,qBAAqB,IAAI,MAAM;AAAA,IACxD,MAAM,2BAA2B;AAAA,EACnC;AAEA,MAAI,CAAC,iBAAiB;AACpB,UAAM,IAAI,MAAM,4EAA4E;AAAA,EAC9F;AAEA,QAAM,iBAAiB,qBAAqB,UAAa,4BAA4B,UAAa,UAAU;AAC5G,QAAM,eAAe,qBAAqB,UAAa;AACvD,QAAM,oBAAoB,qBAAqB,iBAAiB,MAAM,mBAAmB;AACzF,QAAM,eAAe,kBAAkB;AACvC,QAAM,aAAa,aAAa;AAEhC,WAAS,aAAa,UAAkB,SAAkB;AACxD,UAAM,UAAU,IAAI,IAAI,iBAAiB;AACzC,QAAI,SAAS;AACX,cAAQ,IAAI,QAAQ;AAAA,IACtB,OAAO;AACL,cAAQ,OAAO,QAAQ;AAAA,IACzB;AACA,QAAI,CAAC,cAAc;AACjB,4BAAsB,OAAO;AAAA,IAC/B;AACA,QAAI,gBAAgB;AAClB,YAAM,yBAAyB,OAAO;AAAA,IACxC;AACA,+BAA2B,OAAO;AAAA,EACpC;AAEA,WAAS,gBAAgB;AACvB,QAAI,CAAC,cAAc;AACjB,4BAAsB,YAAY;AAAA,IACpC;AACA,QAAI,gBAAgB;AAClB,YAAM,yBAAyB,YAAY;AAAA,IAC7C;AACA,+BAA2B,YAAY;AAAA,EACzC;AAEA,SACE,qBAAC,gBACC;AAAA,wBAAC,uBAAoB,SAAO,MAC1B;AAAA,MAAC;AAAA;AAAA,QACC,aAAa,oBAAC,QAAK,eAAY,QAAO,MAAK,QAAO,MAAK,MAAK;AAAA,QAC5D,MAAK;AAAA,QACL,cAAc,oBAAC,QAAK,eAAY,QAAO,MAAK,gBAAe,MAAK,MAAK;AAAA,QACrE,SAAQ;AAAA,QACT;AAAA;AAAA,UAEE,eAAe,cACd,qBAAC,SAAM,MAAK,MAAK,SAAQ,WAAU,OAAO,EAAE,YAAY,sBAAsB,GAC3E;AAAA;AAAA,YAAa;AAAA,YAAE;AAAA,aAClB;AAAA;AAAA;AAAA,IAEJ,GACF;AAAA,IACA,qBAAC,uBAAoB,OAAM,OAAM,OAAO,EAAE,UAAU,SAAS,WAAW,SAAS,UAAU,OAAO,GAC/F;AAAA,sBAAgB,IAAI,CAAC,WACpB;AAAA,QAAC;AAAA;AAAA,UAEC,SAAS,kBAAkB,IAAI,OAAO,EAAE;AAAA,UACxC,iBAAiB,CAAC,YAAY,aAAa,OAAO,IAAI,YAAY,IAAI;AAAA,UAErE,iBAAO;AAAA;AAAA,QAJH,OAAO;AAAA,MAKd,CACD;AAAA,MACA,eAAe,cACd,iCACE;AAAA,4BAAC,yBAAsB;AAAA,QACvB,oBAAC,4BAAyB,SAAS,OAAO,iBAAiB,eAAe,sBAE1E;AAAA,SACF;AAAA,OAEJ;AAAA,KACF;AAEJ;AACA,iCAAiC,cAAc;AAY/C,SAAS,uBAA4D;AAAA,EACnE;AAAA,EACA;AAAA,EACA,SAAS;AAAA,EACT,WAAW;AAAA,EACX;AACF,GAAqC;AACnC,QAAM,QAAQ,2BAA2B;AACzC,QAAM,CAAC,UAAU,WAAW,IAAI,MAAM,SAAwB,IAAI;AAClE,QAAM,WAAW,OAAO,oBAAoB,MAAM;AAElD,WAAS,SAAS,cAA4C,YAAoB;AAChF,eAAW,cAAc,UAAU;AAEnC,UAAM,OAAO,IAAI,KAAK,CAAC,UAAU,GAAG,EAAE,MAAM,iBAAiB,QAAQ,aAAa,mBAAmB,CAAC;AACtG,UAAM,MAAM,IAAI,gBAAgB,IAAI;AACpC,UAAM,OAAO,SAAS,cAAc,GAAG;AACvC,SAAK,OAAO;AACZ,SAAK,WAAW,GAAG,QAAQ,IAAI,YAAY;AAC3C,aAAS,KAAK,YAAY,IAAI;AAC9B,SAAK,MAAM;AACX,aAAS,KAAK,YAAY,IAAI;AAC9B,QAAI,gBAAgB,GAAG;AAAA,EACzB;AAEA,iBAAe,aAAa,cAA4C;AACtE,QAAI,aAAa,KAAM;AACvB,QAAI,QAAQ,SAAS;AACnB,UAAI,KAAK,SAAS,+BAA+B;AAC/C,oBAAY,CAAC;AACb,YAAI;AACF,mBAAS,cAAc,MAAM,+BAA+B,cAAc,MAAM,SAAS,WAAW,CAAC;AAAA,QACvG,UAAE;AACA,sBAAY,IAAI;AAAA,QAClB;AAAA,MACF,OAAO;AACL,iBAAS,cAAc,oBAAoB,cAAc,MAAM,OAAO,CAAC;AAAA,MACzE;AAAA,IACF,WAAW,OAAO;AAChB,UAAI,MAAM,mBAAmB,+BAA+B;AAC1D,oBAAY,CAAC;AACb,YAAI;AACF,mBAAS,cAAc,MAAM,MAAM,sBAAsB,cAAc,WAAW,CAAC;AAAA,QACrF,UAAE;AACA,sBAAY,IAAI;AAAA,QAClB;AAAA,MACF,OAAO;AACL,iBAAS,cAAc,MAAM,WAAW,YAAY,CAAC;AAAA,MACvD;AAAA,IACF,OAAO;AACL,YAAM,IAAI,MAAM,2EAA2E;AAAA,IAC7F;AAAA,EACF;AAEA,WAAS,YAAY,cAA4C;AAC/D,UAAM,OAAO,iBAAiB,SAAS,cAAc;AACrD,WAAO,aAAa,SAAY,OAAO,GAAG,IAAI,SAAM,QAAQ;AAAA,EAC9D;AAEA,SACE,qBAAC,gBACC;AAAA,wBAAC,uBAAoB,SAAO,MAC1B;AAAA,MAAC;AAAA;AAAA,QACC,aAAa,oBAAC,QAAK,eAAY,QAAO,MAAK,YAAW,MAAK,MAAK;AAAA,QAChE,MAAK;AAAA,QACL,cAAc,oBAAC,QAAK,eAAY,QAAO,MAAK,gBAAe,MAAK,MAAK;AAAA,QACrE,SAAQ;AAAA,QACR,UAAU,aAAa;AAAA,QACvB,aAAU;AAAA,QAET,uBAAa,OAAO,aAAa,QAAQ,MAAM;AAAA;AAAA,IAClD,GACF;AAAA,IACA,qBAAC,uBAAoB,OAAM,OAAM,cAAW,iBAC1C;AAAA,2BAAC,oBAAiB,UAAU,MAAM,KAAK,aAAa,WAAW,SAAS,SAAS,KAAK,GACpF;AAAA,4BAAC,QAAK,eAAY,QAAO,MAAK,YAAW,MAAK,MAAK;AAAA,QAClD,YAAY,WAAW,SAAS,SAAS,KAAK;AAAA,SACjD;AAAA,MACA,qBAAC,oBAAiB,UAAU,MAAM,KAAK,aAAa,WAAW,SAAS,QAAQ,MAAM,GACpF;AAAA,4BAAC,QAAK,eAAY,QAAO,MAAK,YAAW,MAAK,MAAK;AAAA,QAClD,YAAY,WAAW,SAAS,QAAQ,MAAM;AAAA,SACjD;AAAA,OACF;AAAA,KACF;AAEJ;AACA,uBAAuB,cAAc;AAQrC,SAAS,yBAAyB,EAAE,OAAO,UAAU,SAAS,GAAkC;AAC9F,QAAM,QAAQ,2BAA2B;AACzC,QAAM,gBAAgB,SAAS,OAAO;AACtC,QAAM,mBAAmB,YAAY,OAAO;AAC5C,QAAM,mBAAmB,YAAY,OAAO;AAE5C,MAAI,kBAAkB,QAAW;AAC/B,UAAM,IAAI,MAAM,kEAAkE;AAAA,EACpF;AAEA,QAAM,eAAe,qBAAqB,UAAa,qBAAqB;AAE5E,SACE,qBAAC,SAAI,WAAU,qCACb;AAAA,yBAAC,UACE;AAAA,qBAAe,GAAG,gBAAgB,OAAO,aAAa,KAAK,GAAG,aAAa;AAAA,MAAG;AAAA,MAAK,kBAAkB,IAAI,MAAM;AAAA,OAClH;AAAA,IACC,qBAAqB,UAAa,mBAAmB,KACpD,qBAAC,SAAM,MAAK,MAAK,SAAQ,WACtB;AAAA;AAAA,MAAiB;AAAA,OACpB;AAAA,KAEJ;AAEJ;AACA,yBAAyB,cAAc;AAIvC,SAAS,iBAAiB,EAAE,WAAW,UAAU,OAAO,GAAG,UAAU,GAA0B;AAC7F,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,WAAW,0BAA0B,SAAS;AAAA,MACzD;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;AACA,iBAAiB,cAAc;AAE/B,MAAM,4BAA4B,OAAO,OAAO,kBAAkB;AAAA,EAChE,QAAQ;AAAA,EACR,kBAAkB;AAAA,EAClB,QAAQ;AAAA,EACR,UAAU;AACZ,CAAC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var dataTable_export_exports = {};
|
|
20
|
+
__export(dataTable_export_exports, {
|
|
21
|
+
EXPORT_PROGRESS_ROW_THRESHOLD: () => EXPORT_PROGRESS_ROW_THRESHOLD,
|
|
22
|
+
exportDataTableRows: () => exportDataTableRows,
|
|
23
|
+
exportDataTableRowsProgressive: () => exportDataTableRowsProgressive
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(dataTable_export_exports);
|
|
26
|
+
function stringifyCellValue(value) {
|
|
27
|
+
if (value == null) return "";
|
|
28
|
+
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") return String(value);
|
|
29
|
+
if (value instanceof Date) return value.toISOString();
|
|
30
|
+
if (Array.isArray(value)) return value.map(stringifyCellValue).join(" ");
|
|
31
|
+
if (typeof value === "object") return JSON.stringify(value);
|
|
32
|
+
return String(value);
|
|
33
|
+
}
|
|
34
|
+
function escapeCsvCell(value) {
|
|
35
|
+
if (value.includes(",") || value.includes('"') || value.includes("\n") || value.includes("\r")) {
|
|
36
|
+
return `"${value.replace(/"/g, '""')}"`;
|
|
37
|
+
}
|
|
38
|
+
return value;
|
|
39
|
+
}
|
|
40
|
+
function exportDataTableRows(format, data, columns) {
|
|
41
|
+
if (format === "json") {
|
|
42
|
+
const keys = columns.map((column) => column.accessorKey).filter((key) => key !== void 0);
|
|
43
|
+
return JSON.stringify(data.map((row) => Object.fromEntries(keys.map((key) => [key, row[key]]))), null, 2);
|
|
44
|
+
}
|
|
45
|
+
const headers = columns.map((column) => escapeCsvCell(String(column.header)));
|
|
46
|
+
const rows = data.map((row) => columns.map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : void 0))).join(","));
|
|
47
|
+
return [headers.join(","), ...rows].join("\n");
|
|
48
|
+
}
|
|
49
|
+
const EXPORT_PROGRESS_ROW_THRESHOLD = 1e3;
|
|
50
|
+
const EXPORT_PROGRESS_CHUNK_SIZE = 500;
|
|
51
|
+
function yieldToPaint() {
|
|
52
|
+
return new Promise((resolve) => {
|
|
53
|
+
setTimeout(resolve, 0);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
async function exportDataTableRowsProgressive(format, data, columns, onProgress) {
|
|
57
|
+
if (format === "json") {
|
|
58
|
+
const keys = columns.map((column) => column.accessorKey).filter((key) => key !== void 0);
|
|
59
|
+
const rows = [];
|
|
60
|
+
for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {
|
|
61
|
+
for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {
|
|
62
|
+
rows.push(Object.fromEntries(keys.map((key) => [key, row[key]])));
|
|
63
|
+
}
|
|
64
|
+
onProgress(Math.min(99, Math.round((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length * 100)));
|
|
65
|
+
await yieldToPaint();
|
|
66
|
+
}
|
|
67
|
+
const output = JSON.stringify(rows, null, 2);
|
|
68
|
+
onProgress(100);
|
|
69
|
+
return output;
|
|
70
|
+
}
|
|
71
|
+
const headers = columns.map((column) => escapeCsvCell(String(column.header)));
|
|
72
|
+
const lines = [headers.join(",")];
|
|
73
|
+
for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {
|
|
74
|
+
for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {
|
|
75
|
+
lines.push(columns.map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : void 0))).join(","));
|
|
76
|
+
}
|
|
77
|
+
onProgress(Math.min(99, Math.round((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length * 100)));
|
|
78
|
+
await yieldToPaint();
|
|
79
|
+
}
|
|
80
|
+
onProgress(100);
|
|
81
|
+
return lines.join("\n");
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=dataTable.export.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/dataTable/dataTable.export.ts"],
|
|
4
|
+
"sourcesContent": ["import type { DataTableExportFormat } from './DataTableContext'\n\ntype DataTableExportColumn<Row> = {\n accessorKey?: keyof Row\n header: unknown\n}\n\nfunction stringifyCellValue(value: unknown): string {\n if (value == null) return ''\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') return String(value)\n if (value instanceof Date) return value.toISOString()\n if (Array.isArray(value)) return value.map(stringifyCellValue).join(' ')\n if (typeof value === 'object') return JSON.stringify(value)\n return String(value)\n}\n\nfunction escapeCsvCell(value: string): string {\n if (value.includes(',') || value.includes('\"') || value.includes('\\n') || value.includes('\\r')) {\n return `\"${value.replace(/\"/g, '\"\"')}\"`\n }\n return value\n}\n\nfunction exportDataTableRows<Row extends Record<string, unknown>>(\n format: DataTableExportFormat,\n data: Row[],\n columns: Array<DataTableExportColumn<Row>>,\n): string {\n if (format === 'json') {\n const keys = columns.map((column) => column.accessorKey).filter((key): key is keyof Row => key !== undefined)\n return JSON.stringify(data.map((row) => Object.fromEntries(keys.map((key) => [key, row[key]]))), null, 2)\n }\n\n const headers = columns.map((column) => escapeCsvCell(String(column.header)))\n const rows = data.map((row) => columns\n .map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : undefined)))\n .join(','))\n return [headers.join(','), ...rows].join('\\n')\n}\n\nconst EXPORT_PROGRESS_ROW_THRESHOLD = 1000\nconst EXPORT_PROGRESS_CHUNK_SIZE = 500\n\nfunction yieldToPaint(): Promise<void> {\n return new Promise((resolve) => { setTimeout(resolve, 0) })\n}\n\nasync function exportDataTableRowsProgressive<Row extends Record<string, unknown>>(\n format: DataTableExportFormat,\n data: Row[],\n columns: Array<DataTableExportColumn<Row>>,\n onProgress: (percent: number) => void,\n): Promise<string> {\n if (format === 'json') {\n const keys = columns.map((column) => column.accessorKey).filter((key): key is keyof Row => key !== undefined)\n const rows: Array<Record<string, unknown>> = []\n for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {\n for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {\n rows.push(Object.fromEntries(keys.map((key) => [key, row[key]])))\n }\n onProgress(Math.min(99, Math.round(((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length) * 100)))\n await yieldToPaint()\n }\n const output = JSON.stringify(rows, null, 2)\n onProgress(100)\n return output\n }\n\n const headers = columns.map((column) => escapeCsvCell(String(column.header)))\n const lines = [headers.join(',')]\n for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {\n for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {\n lines.push(columns\n .map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : undefined)))\n .join(','))\n }\n onProgress(Math.min(99, Math.round(((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length) * 100)))\n await yieldToPaint()\n }\n onProgress(100)\n return lines.join('\\n')\n}\n\nexport { EXPORT_PROGRESS_ROW_THRESHOLD, exportDataTableRows, exportDataTableRowsProgressive }\nexport type { DataTableExportColumn }\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DataTableExportFormat } from './DataTableContext.cjs';
|
|
2
|
+
type DataTableExportColumn<Row> = {
|
|
3
|
+
accessorKey?: keyof Row;
|
|
4
|
+
header: unknown;
|
|
5
|
+
};
|
|
6
|
+
declare function exportDataTableRows<Row extends Record<string, unknown>>(format: DataTableExportFormat, data: Row[], columns: Array<DataTableExportColumn<Row>>): string;
|
|
7
|
+
declare const EXPORT_PROGRESS_ROW_THRESHOLD = 1000;
|
|
8
|
+
declare function exportDataTableRowsProgressive<Row extends Record<string, unknown>>(format: DataTableExportFormat, data: Row[], columns: Array<DataTableExportColumn<Row>>, onProgress: (percent: number) => void): Promise<string>;
|
|
9
|
+
export { EXPORT_PROGRESS_ROW_THRESHOLD, exportDataTableRows, exportDataTableRowsProgressive };
|
|
10
|
+
export type { DataTableExportColumn };
|
|
11
|
+
//# sourceMappingURL=dataTable.export.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataTable.export.d.cts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE/D,KAAK,qBAAqB,CAAC,GAAG,IAAI;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,CAAA;IACvB,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAkBD,iBAAS,mBAAmB,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9D,MAAM,EAAE,qBAAqB,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,GACzC,MAAM,CAWR;AAED,QAAA,MAAM,6BAA6B,OAAO,CAAA;AAO1C,iBAAe,8BAA8B,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/E,MAAM,EAAE,qBAAqB,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,EAC1C,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GACpC,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAED,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,CAAA;AAC7F,YAAY,EAAE,qBAAqB,EAAE,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DataTableExportFormat } from './DataTableContext.js';
|
|
2
|
+
type DataTableExportColumn<Row> = {
|
|
3
|
+
accessorKey?: keyof Row;
|
|
4
|
+
header: unknown;
|
|
5
|
+
};
|
|
6
|
+
declare function exportDataTableRows<Row extends Record<string, unknown>>(format: DataTableExportFormat, data: Row[], columns: Array<DataTableExportColumn<Row>>): string;
|
|
7
|
+
declare const EXPORT_PROGRESS_ROW_THRESHOLD = 1000;
|
|
8
|
+
declare function exportDataTableRowsProgressive<Row extends Record<string, unknown>>(format: DataTableExportFormat, data: Row[], columns: Array<DataTableExportColumn<Row>>, onProgress: (percent: number) => void): Promise<string>;
|
|
9
|
+
export { EXPORT_PROGRESS_ROW_THRESHOLD, exportDataTableRows, exportDataTableRowsProgressive };
|
|
10
|
+
export type { DataTableExportColumn };
|
|
11
|
+
//# sourceMappingURL=dataTable.export.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataTable.export.d.mts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE/D,KAAK,qBAAqB,CAAC,GAAG,IAAI;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,CAAA;IACvB,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAkBD,iBAAS,mBAAmB,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9D,MAAM,EAAE,qBAAqB,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,GACzC,MAAM,CAWR;AAED,QAAA,MAAM,6BAA6B,OAAO,CAAA;AAO1C,iBAAe,8BAA8B,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/E,MAAM,EAAE,qBAAqB,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,EAC1C,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GACpC,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAED,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,CAAA;AAC7F,YAAY,EAAE,qBAAqB,EAAE,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DataTableExportFormat } from './DataTableContext.js';
|
|
2
|
+
type DataTableExportColumn<Row> = {
|
|
3
|
+
accessorKey?: keyof Row;
|
|
4
|
+
header: unknown;
|
|
5
|
+
};
|
|
6
|
+
declare function exportDataTableRows<Row extends Record<string, unknown>>(format: DataTableExportFormat, data: Row[], columns: Array<DataTableExportColumn<Row>>): string;
|
|
7
|
+
declare const EXPORT_PROGRESS_ROW_THRESHOLD = 1000;
|
|
8
|
+
declare function exportDataTableRowsProgressive<Row extends Record<string, unknown>>(format: DataTableExportFormat, data: Row[], columns: Array<DataTableExportColumn<Row>>, onProgress: (percent: number) => void): Promise<string>;
|
|
9
|
+
export { EXPORT_PROGRESS_ROW_THRESHOLD, exportDataTableRows, exportDataTableRowsProgressive };
|
|
10
|
+
export type { DataTableExportColumn };
|
|
11
|
+
//# sourceMappingURL=dataTable.export.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataTable.export.d.ts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE/D,KAAK,qBAAqB,CAAC,GAAG,IAAI;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,CAAA;IACvB,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAkBD,iBAAS,mBAAmB,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9D,MAAM,EAAE,qBAAqB,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,GACzC,MAAM,CAWR;AAED,QAAA,MAAM,6BAA6B,OAAO,CAAA;AAO1C,iBAAe,8BAA8B,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/E,MAAM,EAAE,qBAAqB,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,EAC1C,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GACpC,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAED,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,CAAA;AAC7F,YAAY,EAAE,qBAAqB,EAAE,CAAA"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
function stringifyCellValue(value) {
|
|
2
|
+
if (value == null) return "";
|
|
3
|
+
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") return String(value);
|
|
4
|
+
if (value instanceof Date) return value.toISOString();
|
|
5
|
+
if (Array.isArray(value)) return value.map(stringifyCellValue).join(" ");
|
|
6
|
+
if (typeof value === "object") return JSON.stringify(value);
|
|
7
|
+
return String(value);
|
|
8
|
+
}
|
|
9
|
+
function escapeCsvCell(value) {
|
|
10
|
+
if (value.includes(",") || value.includes('"') || value.includes("\n") || value.includes("\r")) {
|
|
11
|
+
return `"${value.replace(/"/g, '""')}"`;
|
|
12
|
+
}
|
|
13
|
+
return value;
|
|
14
|
+
}
|
|
15
|
+
function exportDataTableRows(format, data, columns) {
|
|
16
|
+
if (format === "json") {
|
|
17
|
+
const keys = columns.map((column) => column.accessorKey).filter((key) => key !== void 0);
|
|
18
|
+
return JSON.stringify(data.map((row) => Object.fromEntries(keys.map((key) => [key, row[key]]))), null, 2);
|
|
19
|
+
}
|
|
20
|
+
const headers = columns.map((column) => escapeCsvCell(String(column.header)));
|
|
21
|
+
const rows = data.map((row) => columns.map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : void 0))).join(","));
|
|
22
|
+
return [headers.join(","), ...rows].join("\n");
|
|
23
|
+
}
|
|
24
|
+
const EXPORT_PROGRESS_ROW_THRESHOLD = 1e3;
|
|
25
|
+
const EXPORT_PROGRESS_CHUNK_SIZE = 500;
|
|
26
|
+
function yieldToPaint() {
|
|
27
|
+
return new Promise((resolve) => {
|
|
28
|
+
setTimeout(resolve, 0);
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
async function exportDataTableRowsProgressive(format, data, columns, onProgress) {
|
|
32
|
+
if (format === "json") {
|
|
33
|
+
const keys = columns.map((column) => column.accessorKey).filter((key) => key !== void 0);
|
|
34
|
+
const rows = [];
|
|
35
|
+
for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {
|
|
36
|
+
for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {
|
|
37
|
+
rows.push(Object.fromEntries(keys.map((key) => [key, row[key]])));
|
|
38
|
+
}
|
|
39
|
+
onProgress(Math.min(99, Math.round((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length * 100)));
|
|
40
|
+
await yieldToPaint();
|
|
41
|
+
}
|
|
42
|
+
const output = JSON.stringify(rows, null, 2);
|
|
43
|
+
onProgress(100);
|
|
44
|
+
return output;
|
|
45
|
+
}
|
|
46
|
+
const headers = columns.map((column) => escapeCsvCell(String(column.header)));
|
|
47
|
+
const lines = [headers.join(",")];
|
|
48
|
+
for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {
|
|
49
|
+
for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {
|
|
50
|
+
lines.push(columns.map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : void 0))).join(","));
|
|
51
|
+
}
|
|
52
|
+
onProgress(Math.min(99, Math.round((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length * 100)));
|
|
53
|
+
await yieldToPaint();
|
|
54
|
+
}
|
|
55
|
+
onProgress(100);
|
|
56
|
+
return lines.join("\n");
|
|
57
|
+
}
|
|
58
|
+
export {
|
|
59
|
+
EXPORT_PROGRESS_ROW_THRESHOLD,
|
|
60
|
+
exportDataTableRows,
|
|
61
|
+
exportDataTableRowsProgressive
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=dataTable.export.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/dataTable/dataTable.export.ts"],
|
|
4
|
+
"sourcesContent": ["import type { DataTableExportFormat } from './DataTableContext'\n\ntype DataTableExportColumn<Row> = {\n accessorKey?: keyof Row\n header: unknown\n}\n\nfunction stringifyCellValue(value: unknown): string {\n if (value == null) return ''\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') return String(value)\n if (value instanceof Date) return value.toISOString()\n if (Array.isArray(value)) return value.map(stringifyCellValue).join(' ')\n if (typeof value === 'object') return JSON.stringify(value)\n return String(value)\n}\n\nfunction escapeCsvCell(value: string): string {\n if (value.includes(',') || value.includes('\"') || value.includes('\\n') || value.includes('\\r')) {\n return `\"${value.replace(/\"/g, '\"\"')}\"`\n }\n return value\n}\n\nfunction exportDataTableRows<Row extends Record<string, unknown>>(\n format: DataTableExportFormat,\n data: Row[],\n columns: Array<DataTableExportColumn<Row>>,\n): string {\n if (format === 'json') {\n const keys = columns.map((column) => column.accessorKey).filter((key): key is keyof Row => key !== undefined)\n return JSON.stringify(data.map((row) => Object.fromEntries(keys.map((key) => [key, row[key]]))), null, 2)\n }\n\n const headers = columns.map((column) => escapeCsvCell(String(column.header)))\n const rows = data.map((row) => columns\n .map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : undefined)))\n .join(','))\n return [headers.join(','), ...rows].join('\\n')\n}\n\nconst EXPORT_PROGRESS_ROW_THRESHOLD = 1000\nconst EXPORT_PROGRESS_CHUNK_SIZE = 500\n\nfunction yieldToPaint(): Promise<void> {\n return new Promise((resolve) => { setTimeout(resolve, 0) })\n}\n\nasync function exportDataTableRowsProgressive<Row extends Record<string, unknown>>(\n format: DataTableExportFormat,\n data: Row[],\n columns: Array<DataTableExportColumn<Row>>,\n onProgress: (percent: number) => void,\n): Promise<string> {\n if (format === 'json') {\n const keys = columns.map((column) => column.accessorKey).filter((key): key is keyof Row => key !== undefined)\n const rows: Array<Record<string, unknown>> = []\n for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {\n for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {\n rows.push(Object.fromEntries(keys.map((key) => [key, row[key]])))\n }\n onProgress(Math.min(99, Math.round(((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length) * 100)))\n await yieldToPaint()\n }\n const output = JSON.stringify(rows, null, 2)\n onProgress(100)\n return output\n }\n\n const headers = columns.map((column) => escapeCsvCell(String(column.header)))\n const lines = [headers.join(',')]\n for (let index = 0; index < data.length; index += EXPORT_PROGRESS_CHUNK_SIZE) {\n for (const row of data.slice(index, index + EXPORT_PROGRESS_CHUNK_SIZE)) {\n lines.push(columns\n .map((column) => escapeCsvCell(stringifyCellValue(column.accessorKey ? row[column.accessorKey] : undefined)))\n .join(','))\n }\n onProgress(Math.min(99, Math.round(((index + EXPORT_PROGRESS_CHUNK_SIZE) / data.length) * 100)))\n await yieldToPaint()\n }\n onProgress(100)\n return lines.join('\\n')\n}\n\nexport { EXPORT_PROGRESS_ROW_THRESHOLD, exportDataTableRows, exportDataTableRowsProgressive }\nexport type { DataTableExportColumn }\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -22,15 +22,37 @@ __export(dataTable_props_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(dataTable_props_exports);
|
|
24
24
|
const dataTableSizes = ["sm", "md", "lg"];
|
|
25
|
+
const dataTablePaginationPositions = ["top", "bottom", "both"];
|
|
26
|
+
const dataTablePaginationAligns = ["start", "center", "end"];
|
|
25
27
|
const dataTablePropDefs = {
|
|
26
28
|
emptyState: {
|
|
27
29
|
type: "ReactNode",
|
|
28
|
-
default:
|
|
30
|
+
default: void 0
|
|
29
31
|
},
|
|
30
32
|
size: {
|
|
31
33
|
type: "enum",
|
|
32
34
|
values: dataTableSizes,
|
|
33
35
|
default: "md"
|
|
36
|
+
},
|
|
37
|
+
bulkActions: {
|
|
38
|
+
type: "ReactNode"
|
|
39
|
+
},
|
|
40
|
+
paginationPosition: {
|
|
41
|
+
type: "enum",
|
|
42
|
+
values: dataTablePaginationPositions,
|
|
43
|
+
default: "bottom"
|
|
44
|
+
},
|
|
45
|
+
paginationAlign: {
|
|
46
|
+
type: "enum",
|
|
47
|
+
values: dataTablePaginationAligns
|
|
48
|
+
},
|
|
49
|
+
paginationFirstLast: {
|
|
50
|
+
type: "boolean",
|
|
51
|
+
default: false
|
|
52
|
+
},
|
|
53
|
+
paginationPageInput: {
|
|
54
|
+
type: "boolean",
|
|
55
|
+
default: false
|
|
34
56
|
}
|
|
35
57
|
};
|
|
36
58
|
//# sourceMappingURL=dataTable.props.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/dataTable/dataTable.props.ts"],
|
|
4
|
-
"sourcesContent": ["import type { PropDef } from '../../_internal/props/propDef'\n\nconst dataTableSizes = ['sm', 'md', 'lg'] as const\n\nconst dataTablePropDefs = {\n emptyState: {\n type: 'ReactNode',\n default:
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,MAAM,iBAAiB,CAAC,MAAM,MAAM,IAAI;AAExC,MAAM,oBAAoB;AAAA,EACxB,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AACF;",
|
|
4
|
+
"sourcesContent": ["import type { PropDef } from '../../_internal/props/propDef'\n\nconst dataTableSizes = ['sm', 'md', 'lg'] as const\n\nconst dataTablePaginationPositions = ['top', 'bottom', 'both'] as const\n\nconst dataTablePaginationAligns = ['start', 'center', 'end'] as const\n\nconst dataTablePropDefs = {\n emptyState: {\n type: 'ReactNode',\n default: undefined,\n },\n size: {\n type: 'enum',\n values: dataTableSizes,\n default: 'md',\n },\n bulkActions: {\n type: 'ReactNode',\n },\n paginationPosition: {\n type: 'enum',\n values: dataTablePaginationPositions,\n default: 'bottom',\n },\n paginationAlign: {\n type: 'enum',\n values: dataTablePaginationAligns,\n },\n paginationFirstLast: {\n type: 'boolean',\n default: false,\n },\n paginationPageInput: {\n type: 'boolean',\n default: false,\n },\n} satisfies {\n emptyState: PropDef\n size: PropDef<(typeof dataTableSizes)[number]>\n bulkActions: PropDef\n paginationPosition: PropDef<(typeof dataTablePaginationPositions)[number]>\n paginationAlign: PropDef<(typeof dataTablePaginationAligns)[number]>\n paginationFirstLast: PropDef\n paginationPageInput: PropDef\n}\n\nexport { dataTablePropDefs }\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,MAAM,iBAAiB,CAAC,MAAM,MAAM,IAAI;AAExC,MAAM,+BAA+B,CAAC,OAAO,UAAU,MAAM;AAE7D,MAAM,4BAA4B,CAAC,SAAS,UAAU,KAAK;AAE3D,MAAM,oBAAoB;AAAA,EACxB,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,EACR;AAAA,EACA,oBAAoB;AAAA,IAClB,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,QAAQ;AAAA,EACV;AAAA,EACA,qBAAqB;AAAA,IACnB,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,qBAAqB;AAAA,IACnB,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,13 +1,33 @@
|
|
|
1
1
|
declare const dataTablePropDefs: {
|
|
2
2
|
emptyState: {
|
|
3
3
|
type: "ReactNode";
|
|
4
|
-
default:
|
|
4
|
+
default: undefined;
|
|
5
5
|
};
|
|
6
6
|
size: {
|
|
7
7
|
type: "enum";
|
|
8
8
|
values: readonly ["sm", "md", "lg"];
|
|
9
9
|
default: "md";
|
|
10
10
|
};
|
|
11
|
+
bulkActions: {
|
|
12
|
+
type: "ReactNode";
|
|
13
|
+
};
|
|
14
|
+
paginationPosition: {
|
|
15
|
+
type: "enum";
|
|
16
|
+
values: readonly ["top", "bottom", "both"];
|
|
17
|
+
default: "bottom";
|
|
18
|
+
};
|
|
19
|
+
paginationAlign: {
|
|
20
|
+
type: "enum";
|
|
21
|
+
values: readonly ["start", "center", "end"];
|
|
22
|
+
};
|
|
23
|
+
paginationFirstLast: {
|
|
24
|
+
type: "boolean";
|
|
25
|
+
default: false;
|
|
26
|
+
};
|
|
27
|
+
paginationPageInput: {
|
|
28
|
+
type: "boolean";
|
|
29
|
+
default: false;
|
|
30
|
+
};
|
|
11
31
|
};
|
|
12
32
|
export { dataTablePropDefs };
|
|
13
33
|
//# sourceMappingURL=dataTable.props.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataTable.props.d.cts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.props.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataTable.props.d.cts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.props.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCtB,CAAA;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -1,13 +1,33 @@
|
|
|
1
1
|
declare const dataTablePropDefs: {
|
|
2
2
|
emptyState: {
|
|
3
3
|
type: "ReactNode";
|
|
4
|
-
default:
|
|
4
|
+
default: undefined;
|
|
5
5
|
};
|
|
6
6
|
size: {
|
|
7
7
|
type: "enum";
|
|
8
8
|
values: readonly ["sm", "md", "lg"];
|
|
9
9
|
default: "md";
|
|
10
10
|
};
|
|
11
|
+
bulkActions: {
|
|
12
|
+
type: "ReactNode";
|
|
13
|
+
};
|
|
14
|
+
paginationPosition: {
|
|
15
|
+
type: "enum";
|
|
16
|
+
values: readonly ["top", "bottom", "both"];
|
|
17
|
+
default: "bottom";
|
|
18
|
+
};
|
|
19
|
+
paginationAlign: {
|
|
20
|
+
type: "enum";
|
|
21
|
+
values: readonly ["start", "center", "end"];
|
|
22
|
+
};
|
|
23
|
+
paginationFirstLast: {
|
|
24
|
+
type: "boolean";
|
|
25
|
+
default: false;
|
|
26
|
+
};
|
|
27
|
+
paginationPageInput: {
|
|
28
|
+
type: "boolean";
|
|
29
|
+
default: false;
|
|
30
|
+
};
|
|
11
31
|
};
|
|
12
32
|
export { dataTablePropDefs };
|
|
13
33
|
//# sourceMappingURL=dataTable.props.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataTable.props.d.mts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.props.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataTable.props.d.mts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.props.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCtB,CAAA;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -1,13 +1,33 @@
|
|
|
1
1
|
declare const dataTablePropDefs: {
|
|
2
2
|
emptyState: {
|
|
3
3
|
type: "ReactNode";
|
|
4
|
-
default:
|
|
4
|
+
default: undefined;
|
|
5
5
|
};
|
|
6
6
|
size: {
|
|
7
7
|
type: "enum";
|
|
8
8
|
values: readonly ["sm", "md", "lg"];
|
|
9
9
|
default: "md";
|
|
10
10
|
};
|
|
11
|
+
bulkActions: {
|
|
12
|
+
type: "ReactNode";
|
|
13
|
+
};
|
|
14
|
+
paginationPosition: {
|
|
15
|
+
type: "enum";
|
|
16
|
+
values: readonly ["top", "bottom", "both"];
|
|
17
|
+
default: "bottom";
|
|
18
|
+
};
|
|
19
|
+
paginationAlign: {
|
|
20
|
+
type: "enum";
|
|
21
|
+
values: readonly ["start", "center", "end"];
|
|
22
|
+
};
|
|
23
|
+
paginationFirstLast: {
|
|
24
|
+
type: "boolean";
|
|
25
|
+
default: false;
|
|
26
|
+
};
|
|
27
|
+
paginationPageInput: {
|
|
28
|
+
type: "boolean";
|
|
29
|
+
default: false;
|
|
30
|
+
};
|
|
11
31
|
};
|
|
12
32
|
export { dataTablePropDefs };
|
|
13
33
|
//# sourceMappingURL=dataTable.props.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataTable.props.d.ts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.props.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataTable.props.d.ts","sourceRoot":"","sources":["../../../src/components/dataTable/dataTable.props.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCtB,CAAA;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -1,13 +1,35 @@
|
|
|
1
1
|
const dataTableSizes = ["sm", "md", "lg"];
|
|
2
|
+
const dataTablePaginationPositions = ["top", "bottom", "both"];
|
|
3
|
+
const dataTablePaginationAligns = ["start", "center", "end"];
|
|
2
4
|
const dataTablePropDefs = {
|
|
3
5
|
emptyState: {
|
|
4
6
|
type: "ReactNode",
|
|
5
|
-
default:
|
|
7
|
+
default: void 0
|
|
6
8
|
},
|
|
7
9
|
size: {
|
|
8
10
|
type: "enum",
|
|
9
11
|
values: dataTableSizes,
|
|
10
12
|
default: "md"
|
|
13
|
+
},
|
|
14
|
+
bulkActions: {
|
|
15
|
+
type: "ReactNode"
|
|
16
|
+
},
|
|
17
|
+
paginationPosition: {
|
|
18
|
+
type: "enum",
|
|
19
|
+
values: dataTablePaginationPositions,
|
|
20
|
+
default: "bottom"
|
|
21
|
+
},
|
|
22
|
+
paginationAlign: {
|
|
23
|
+
type: "enum",
|
|
24
|
+
values: dataTablePaginationAligns
|
|
25
|
+
},
|
|
26
|
+
paginationFirstLast: {
|
|
27
|
+
type: "boolean",
|
|
28
|
+
default: false
|
|
29
|
+
},
|
|
30
|
+
paginationPageInput: {
|
|
31
|
+
type: "boolean",
|
|
32
|
+
default: false
|
|
11
33
|
}
|
|
12
34
|
};
|
|
13
35
|
export {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/dataTable/dataTable.props.ts"],
|
|
4
|
-
"sourcesContent": ["import type { PropDef } from '../../_internal/props/propDef'\n\nconst dataTableSizes = ['sm', 'md', 'lg'] as const\n\nconst dataTablePropDefs = {\n emptyState: {\n type: 'ReactNode',\n default:
|
|
5
|
-
"mappings": "AAEA,MAAM,iBAAiB,CAAC,MAAM,MAAM,IAAI;AAExC,MAAM,oBAAoB;AAAA,EACxB,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AACF;",
|
|
4
|
+
"sourcesContent": ["import type { PropDef } from '../../_internal/props/propDef'\n\nconst dataTableSizes = ['sm', 'md', 'lg'] as const\n\nconst dataTablePaginationPositions = ['top', 'bottom', 'both'] as const\n\nconst dataTablePaginationAligns = ['start', 'center', 'end'] as const\n\nconst dataTablePropDefs = {\n emptyState: {\n type: 'ReactNode',\n default: undefined,\n },\n size: {\n type: 'enum',\n values: dataTableSizes,\n default: 'md',\n },\n bulkActions: {\n type: 'ReactNode',\n },\n paginationPosition: {\n type: 'enum',\n values: dataTablePaginationPositions,\n default: 'bottom',\n },\n paginationAlign: {\n type: 'enum',\n values: dataTablePaginationAligns,\n },\n paginationFirstLast: {\n type: 'boolean',\n default: false,\n },\n paginationPageInput: {\n type: 'boolean',\n default: false,\n },\n} satisfies {\n emptyState: PropDef\n size: PropDef<(typeof dataTableSizes)[number]>\n bulkActions: PropDef\n paginationPosition: PropDef<(typeof dataTablePaginationPositions)[number]>\n paginationAlign: PropDef<(typeof dataTablePaginationAligns)[number]>\n paginationFirstLast: PropDef\n paginationPageInput: PropDef\n}\n\nexport { dataTablePropDefs }\n"],
|
|
5
|
+
"mappings": "AAEA,MAAM,iBAAiB,CAAC,MAAM,MAAM,IAAI;AAExC,MAAM,+BAA+B,CAAC,OAAO,UAAU,MAAM;AAE7D,MAAM,4BAA4B,CAAC,SAAS,UAAU,KAAK;AAE3D,MAAM,oBAAoB;AAAA,EACxB,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,EACR;AAAA,EACA,oBAAoB;AAAA,IAClB,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,QAAQ;AAAA,EACV;AAAA,EACA,qBAAqB;AAAA,IACnB,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,qBAAqB;AAAA,IACnB,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -51,6 +51,7 @@ var import_classnames = __toESM(require("classnames"), 1);
|
|
|
51
51
|
var DialogPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
52
52
|
var import_react_slot = require("@radix-ui/react-slot");
|
|
53
53
|
var import_BaseDialog = require("../../_internal/BaseDialog");
|
|
54
|
+
var import_floatingLayer = require("../../_internal/floatingLayer");
|
|
54
55
|
var import_internal = require("../../_internal");
|
|
55
56
|
var import_motion = require("../../_internal/motion");
|
|
56
57
|
var import_extractProps = require("../../_internal/helpers/extractProps");
|
|
@@ -223,7 +224,7 @@ const DialogContent = React.forwardRef(
|
|
|
223
224
|
asChild: true,
|
|
224
225
|
"aria-modal": "true",
|
|
225
226
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_motion2.motion.div, { ...motionProps, "data-size": size, className: (0, import_classnames.default)("dsx-dialog__content", className), children: [
|
|
226
|
-
finalChildren,
|
|
227
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_floatingLayer.FloatingLayerHostContext.Provider, { value: true, children: finalChildren }),
|
|
227
228
|
resolvedShowClose ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CloseComponent, { className: "dsx-dialog__close", "aria-label": "Close dialog", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Icon.Icon, { name: "x", size: "md" }) }) : null
|
|
228
229
|
] })
|
|
229
230
|
}
|