@drivenets/design-system 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -0
- package/README.md +1 -1
- package/dist/components/ds-alert-banner/ds-alert-banner.d.ts +5 -5
- package/dist/components/ds-alert-banner/ds-alert-banner.d.ts.map +1 -1
- package/dist/components/ds-autocomplete/ds-autocomplete.cjs +218 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.d.cts +22 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.d.cts.map +1 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.d.ts +22 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.d.ts.map +1 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.js +217 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.js.map +1 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.module.cjs +27 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.module.js +27 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.module.js.map +1 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.types.d.cts +79 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.types.d.cts.map +1 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.types.d.ts +80 -0
- package/dist/components/ds-autocomplete/ds-autocomplete.types.d.ts.map +1 -0
- package/dist/components/ds-autocomplete/index.cjs +1 -0
- package/dist/components/ds-autocomplete/index.d.ts +2 -0
- package/dist/components/ds-autocomplete/index.js +1 -0
- package/dist/components/ds-avatar/ds-avatar.module.js.map +1 -1
- package/dist/components/ds-avatar-group/ds-avatar-group.module.js.map +1 -1
- package/dist/components/ds-button/ds-button.d.cts +2 -2
- package/dist/components/ds-button/ds-button.d.cts.map +1 -1
- package/dist/components/ds-button/ds-button.d.ts +2 -2
- package/dist/components/ds-button/ds-button.d.ts.map +1 -1
- package/dist/components/ds-button/versions/ds-button-legacy/ds-button-legacy.cjs +23 -24
- package/dist/components/ds-button/versions/ds-button-legacy/ds-button-legacy.js +23 -24
- package/dist/components/ds-button/versions/ds-button-legacy/ds-button-legacy.js.map +1 -1
- package/dist/components/ds-button/versions/ds-button-new/ds-button-new.cjs +24 -25
- package/dist/components/ds-button/versions/ds-button-new/ds-button-new.js +24 -25
- package/dist/components/ds-button/versions/ds-button-new/ds-button-new.js.map +1 -1
- package/dist/components/ds-chip-group/hooks/use-chip-row-calculation.cjs +1 -0
- package/dist/components/ds-chip-group/hooks/use-chip-row-calculation.js +1 -0
- package/dist/components/ds-chip-group/hooks/use-chip-row-calculation.js.map +1 -1
- package/dist/components/ds-confirmation/ds-confirmation.cjs +20 -221
- package/dist/components/ds-confirmation/ds-confirmation.d.cts +22 -27
- package/dist/components/ds-confirmation/ds-confirmation.d.cts.map +1 -1
- package/dist/components/ds-confirmation/ds-confirmation.d.ts +22 -27
- package/dist/components/ds-confirmation/ds-confirmation.d.ts.map +1 -1
- package/dist/components/ds-confirmation/ds-confirmation.js +21 -221
- package/dist/components/ds-confirmation/ds-confirmation.js.map +1 -1
- package/dist/components/ds-confirmation/ds-confirmation.types.d.cts +2 -1
- package/dist/components/ds-confirmation/ds-confirmation.types.d.cts.map +1 -1
- package/dist/components/ds-confirmation/ds-confirmation.types.d.ts +2 -1
- package/dist/components/ds-confirmation/ds-confirmation.types.d.ts.map +1 -1
- package/dist/components/ds-date-input/ds-date-input.cjs +1 -1
- package/dist/components/ds-date-input/ds-date-input.d.cts +2 -2
- package/dist/components/ds-date-input/ds-date-input.d.cts.map +1 -1
- package/dist/components/ds-date-input/ds-date-input.d.ts +2 -2
- package/dist/components/ds-date-input/ds-date-input.js +1 -1
- package/dist/components/ds-date-input/ds-date-input.module.cjs +22 -22
- package/dist/components/ds-date-input/ds-date-input.module.js +22 -22
- package/dist/components/ds-date-input/ds-date-input.module.js.map +1 -1
- package/dist/components/ds-date-input/ds-date-input.utils.cjs +9 -2
- package/dist/components/ds-date-input/ds-date-input.utils.js +9 -2
- package/dist/components/ds-date-input/ds-date-input.utils.js.map +1 -1
- package/dist/components/ds-drawer/ds-drawer.cjs +4 -4
- package/dist/components/ds-drawer/ds-drawer.d.cts +9 -9
- package/dist/components/ds-drawer/ds-drawer.d.cts.map +1 -1
- package/dist/components/ds-drawer/ds-drawer.d.ts +9 -9
- package/dist/components/ds-drawer/ds-drawer.d.ts.map +1 -1
- package/dist/components/ds-drawer/ds-drawer.js +4 -4
- package/dist/components/ds-drawer/ds-drawer.js.map +1 -1
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.cjs +1 -1
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.js +1 -1
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.module.cjs +20 -20
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.module.js +20 -20
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.module.js.map +1 -1
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.cts +1 -1
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.cts.map +1 -1
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.ts +1 -1
- package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.ts.map +1 -1
- package/dist/components/ds-expandable-text-input/ds-expandable-text-input.d.cts +2 -2
- package/dist/components/ds-expandable-text-input/ds-expandable-text-input.d.ts +2 -2
- package/dist/components/ds-file-upload/utils/format-file-size.cjs +1 -1
- package/dist/components/ds-file-upload/utils/format-file-size.js +1 -1
- package/dist/components/ds-file-upload/utils/format-file-size.js.map +1 -1
- package/dist/components/ds-form-control/ds-form-control.cjs +2 -5
- package/dist/components/ds-form-control/ds-form-control.d.cts +8 -8
- package/dist/components/ds-form-control/ds-form-control.d.ts +8 -8
- package/dist/components/ds-form-control/ds-form-control.js +2 -5
- package/dist/components/ds-form-control/ds-form-control.js.map +1 -1
- package/dist/components/ds-loader/ds-loader.cjs +60 -0
- package/dist/components/ds-loader/ds-loader.d.cts +15 -0
- package/dist/components/ds-loader/ds-loader.d.cts.map +1 -0
- package/dist/components/ds-loader/ds-loader.d.ts +15 -0
- package/dist/components/ds-loader/ds-loader.d.ts.map +1 -0
- package/dist/components/ds-loader/ds-loader.js +59 -0
- package/dist/components/ds-loader/ds-loader.js.map +1 -0
- package/dist/components/ds-loader/ds-loader.module.cjs +15 -0
- package/dist/components/ds-loader/ds-loader.module.js +15 -0
- package/dist/components/ds-loader/ds-loader.module.js.map +1 -0
- package/dist/components/ds-loader/ds-loader.types.cjs +6 -0
- package/dist/components/ds-loader/ds-loader.types.d.cts +27 -0
- package/dist/components/ds-loader/ds-loader.types.d.cts.map +1 -0
- package/dist/components/ds-loader/ds-loader.types.d.ts +27 -0
- package/dist/components/ds-loader/ds-loader.types.d.ts.map +1 -0
- package/dist/components/ds-loader/ds-loader.types.js +6 -0
- package/dist/components/ds-loader/ds-loader.types.js.map +1 -0
- package/dist/components/ds-loader/index.cjs +2 -0
- package/dist/components/ds-loader/index.d.ts +2 -0
- package/dist/components/ds-loader/index.js +2 -0
- package/dist/components/ds-loader/pulsing-icon.cjs +37 -0
- package/dist/components/ds-loader/pulsing-icon.js +37 -0
- package/dist/components/ds-loader/pulsing-icon.js.map +1 -0
- package/dist/components/ds-loader/spinner-icon.cjs +74 -0
- package/dist/components/ds-loader/spinner-icon.js +74 -0
- package/dist/components/ds-loader/spinner-icon.js.map +1 -0
- package/dist/components/ds-modal/ds-modal.cjs +47 -48
- package/dist/components/ds-modal/ds-modal.d.cts +11 -10
- package/dist/components/ds-modal/ds-modal.d.cts.map +1 -1
- package/dist/components/ds-modal/ds-modal.d.ts +11 -10
- package/dist/components/ds-modal/ds-modal.d.ts.map +1 -1
- package/dist/components/ds-modal/ds-modal.js +47 -48
- package/dist/components/ds-modal/ds-modal.js.map +1 -1
- package/dist/components/ds-modal/ds-modal.module.cjs +24 -24
- package/dist/components/ds-modal/ds-modal.module.js +24 -24
- package/dist/components/ds-modal/ds-modal.module.js.map +1 -1
- package/dist/components/ds-modal/ds-modal.types.d.cts +10 -5
- package/dist/components/ds-modal/ds-modal.types.d.cts.map +1 -1
- package/dist/components/ds-modal/ds-modal.types.d.ts +10 -5
- package/dist/components/ds-modal/ds-modal.types.d.ts.map +1 -1
- package/dist/components/ds-panel/ds-panel.d.cts +2 -2
- package/dist/components/ds-panel/ds-panel.d.ts +2 -2
- package/dist/components/ds-select/ds-select.cjs +2 -2
- package/dist/components/ds-select/ds-select.d.cts +2 -2
- package/dist/components/ds-select/ds-select.d.ts +2 -2
- package/dist/components/ds-select/ds-select.js +2 -2
- package/dist/components/ds-select/ds-select.js.map +1 -1
- package/dist/components/ds-skeleton/ds-skeleton-circle.cjs +59 -0
- package/dist/components/ds-skeleton/ds-skeleton-circle.d.cts +18 -0
- package/dist/components/ds-skeleton/ds-skeleton-circle.d.cts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-circle.d.ts +18 -0
- package/dist/components/ds-skeleton/ds-skeleton-circle.d.ts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-circle.js +58 -0
- package/dist/components/ds-skeleton/ds-skeleton-circle.js.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-rect.cjs +61 -0
- package/dist/components/ds-skeleton/ds-skeleton-rect.d.cts +18 -0
- package/dist/components/ds-skeleton/ds-skeleton-rect.d.cts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-rect.d.ts +18 -0
- package/dist/components/ds-skeleton/ds-skeleton-rect.d.ts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-rect.js +60 -0
- package/dist/components/ds-skeleton/ds-skeleton-rect.js.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-text.cjs +91 -0
- package/dist/components/ds-skeleton/ds-skeleton-text.d.cts +21 -0
- package/dist/components/ds-skeleton/ds-skeleton-text.d.cts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-text.d.ts +21 -0
- package/dist/components/ds-skeleton/ds-skeleton-text.d.ts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton-text.js +90 -0
- package/dist/components/ds-skeleton/ds-skeleton-text.js.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.cjs +13 -0
- package/dist/components/ds-skeleton/ds-skeleton.config.cjs +62 -0
- package/dist/components/ds-skeleton/ds-skeleton.config.js +59 -0
- package/dist/components/ds-skeleton/ds-skeleton.config.js.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.d.cts +32 -0
- package/dist/components/ds-skeleton/ds-skeleton.d.cts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.d.ts +32 -0
- package/dist/components/ds-skeleton/ds-skeleton.d.ts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.js +14 -0
- package/dist/components/ds-skeleton/ds-skeleton.js.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.module.cjs +15 -0
- package/dist/components/ds-skeleton/ds-skeleton.module.js +15 -0
- package/dist/components/ds-skeleton/ds-skeleton.module.js.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.types.cjs +8 -0
- package/dist/components/ds-skeleton/ds-skeleton.types.d.cts +91 -0
- package/dist/components/ds-skeleton/ds-skeleton.types.d.cts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.types.d.ts +93 -0
- package/dist/components/ds-skeleton/ds-skeleton.types.d.ts.map +1 -0
- package/dist/components/ds-skeleton/ds-skeleton.types.js +7 -0
- package/dist/components/ds-skeleton/ds-skeleton.types.js.map +1 -0
- package/dist/components/ds-skeleton/index.cjs +5 -0
- package/dist/components/ds-skeleton/index.d.ts +5 -0
- package/dist/components/ds-skeleton/index.js +5 -0
- package/dist/components/ds-smart-tabs/ds-smart-tabs.d.cts +2 -2
- package/dist/components/ds-smart-tabs/ds-smart-tabs.d.ts +2 -2
- package/dist/components/ds-smart-tabs/ds-smart-tabs.d.ts.map +1 -1
- package/dist/components/ds-spinner/ds-spinner.cjs +43 -45
- package/dist/components/ds-spinner/ds-spinner.js +43 -45
- package/dist/components/ds-spinner/ds-spinner.js.map +1 -1
- package/dist/components/ds-stepper/components/ds-step-content.d.cts +2 -2
- package/dist/components/ds-stepper/components/ds-step-content.d.ts +2 -2
- package/dist/components/ds-stepper/components/ds-step-next-button.d.cts +2 -2
- package/dist/components/ds-stepper/components/ds-step-next-button.d.ts +2 -2
- package/dist/components/ds-stepper/components/ds-step.d.cts +2 -2
- package/dist/components/ds-stepper/components/ds-step.d.ts +2 -2
- package/dist/components/ds-stepper/ds-stepper.d.cts +2 -2
- package/dist/components/ds-stepper/ds-stepper.d.ts +2 -2
- package/dist/components/ds-table/components/core-table/core-table.cjs +82 -185
- package/dist/components/ds-table/components/core-table/core-table.js +82 -185
- package/dist/components/ds-table/components/core-table/core-table.js.map +1 -1
- package/dist/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.cjs +61 -72
- package/dist/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.js +61 -72
- package/dist/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.js.map +1 -1
- package/dist/components/ds-table/components/ds-table-row/ds-table-row.cjs +80 -81
- package/dist/components/ds-table/components/ds-table-row/ds-table-row.js +80 -81
- package/dist/components/ds-table/components/ds-table-row/ds-table-row.js.map +1 -1
- package/dist/components/ds-table/ds-table.cjs +3 -3
- package/dist/components/ds-table/ds-table.d.cts +2 -3
- package/dist/components/ds-table/ds-table.d.cts.map +1 -1
- package/dist/components/ds-table/ds-table.d.ts +2 -3
- package/dist/components/ds-table/ds-table.d.ts.map +1 -1
- package/dist/components/ds-table/ds-table.js +3 -3
- package/dist/components/ds-table/ds-table.js.map +1 -1
- package/dist/components/ds-table/ds-table.types.d.cts +0 -4
- package/dist/components/ds-table/ds-table.types.d.cts.map +1 -1
- package/dist/components/ds-table/ds-table.types.d.ts +0 -4
- package/dist/components/ds-table/ds-table.types.d.ts.map +1 -1
- package/dist/components/ds-table/filters/adapters/create-dual-range-filter-adapter.cjs +7 -4
- package/dist/components/ds-table/filters/adapters/create-dual-range-filter-adapter.js +7 -4
- package/dist/components/ds-table/filters/adapters/create-dual-range-filter-adapter.js.map +1 -1
- package/dist/components/ds-table/filters/hooks/index.d.ts +1 -1
- package/dist/components/ds-table/filters/hooks/use-table-filters.cjs +180 -178
- package/dist/components/ds-table/filters/hooks/use-table-filters.d.cts +58 -25
- package/dist/components/ds-table/filters/hooks/use-table-filters.d.cts.map +1 -1
- package/dist/components/ds-table/filters/hooks/use-table-filters.d.ts +58 -25
- package/dist/components/ds-table/filters/hooks/use-table-filters.d.ts.map +1 -1
- package/dist/components/ds-table/filters/hooks/use-table-filters.js +180 -178
- package/dist/components/ds-table/filters/hooks/use-table-filters.js.map +1 -1
- package/dist/components/ds-table/filters/index.d.ts +1 -1
- package/dist/components/ds-table/index.d.ts +1 -1
- package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.cjs +37 -0
- package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.js +36 -0
- package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.js.map +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.cjs +9 -0
- package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.js +9 -0
- package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.js.map +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-content/index.cjs +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-content/index.js +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.cjs +6 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.js +6 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.js.map +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.cjs +41 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.js +40 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.js.map +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.cjs +6 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.js +6 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.js.map +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/index.cjs +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-list/index.js +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.cjs +178 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.js +177 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.js.map +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.cjs +15 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.js +15 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.js.map +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/index.cjs +1 -0
- package/dist/components/ds-tabs/components/ds-tabs-tab/index.js +1 -0
- package/dist/components/ds-tabs/ds-tabs.cjs +71 -0
- package/dist/components/ds-tabs/ds-tabs.d.cts +43 -0
- package/dist/components/ds-tabs/ds-tabs.d.cts.map +1 -0
- package/dist/components/ds-tabs/ds-tabs.d.ts +43 -0
- package/dist/components/ds-tabs/ds-tabs.d.ts.map +1 -0
- package/dist/components/ds-tabs/ds-tabs.js +70 -0
- package/dist/components/ds-tabs/ds-tabs.js.map +1 -0
- package/dist/components/ds-tabs/ds-tabs.module.cjs +6 -0
- package/dist/components/ds-tabs/ds-tabs.module.js +6 -0
- package/dist/components/ds-tabs/ds-tabs.module.js.map +1 -0
- package/dist/components/ds-tabs/ds-tabs.types.d.cts +91 -0
- package/dist/components/ds-tabs/ds-tabs.types.d.cts.map +1 -0
- package/dist/components/ds-tabs/ds-tabs.types.d.ts +92 -0
- package/dist/components/ds-tabs/ds-tabs.types.d.ts.map +1 -0
- package/dist/components/ds-tabs/index.cjs +1 -0
- package/dist/components/ds-tabs/index.d.ts +2 -0
- package/dist/components/ds-tabs/index.js +1 -0
- package/dist/components/ds-tag/ds-tag.d.cts +2 -2
- package/dist/components/ds-tag/ds-tag.d.ts +2 -2
- package/dist/components/ds-tag-filter/ds-tag-filter.d.cts +2 -2
- package/dist/components/ds-tag-filter/ds-tag-filter.d.ts +2 -2
- package/dist/components/ds-toggle/ds-toggle.d.cts +2 -2
- package/dist/components/ds-toggle/ds-toggle.d.ts +2 -2
- package/dist/components/ds-vertical-tabs/ds-vertical-tabs.d.cts +5 -5
- package/dist/components/ds-vertical-tabs/ds-vertical-tabs.d.ts +5 -5
- package/dist/index.cjs +24 -1
- package/dist/index.d.cts +15 -4
- package/dist/index.d.ts +20 -5
- package/dist/index.js +15 -2
- package/dist/index.min.css +1 -1
- package/package.json +5 -3
- package/src/components/ds-autocomplete/ds-autocomplete.module.scss +257 -0
- package/src/components/ds-autocomplete/ds-autocomplete.tsx +130 -0
- package/src/components/ds-autocomplete/ds-autocomplete.types.tsx +76 -0
- package/src/components/ds-autocomplete/index.ts +2 -0
- package/src/components/ds-avatar/ds-avatar.module.scss +1 -1
- package/src/components/ds-avatar-group/ds-avatar-group.module.scss +1 -1
- package/src/components/ds-button/versions/ds-button-legacy/ds-button-legacy.tsx +1 -7
- package/src/components/ds-button/versions/ds-button-new/ds-button-new.tsx +4 -2
- package/src/components/ds-chip-group/hooks/use-chip-row-calculation.ts +5 -0
- package/src/components/ds-confirmation/ds-confirmation.tsx +11 -115
- package/src/components/ds-confirmation/ds-confirmation.types.tsx +2 -1
- package/src/components/ds-date-input/ds-date-input.module.scss +1 -0
- package/src/components/ds-date-input/ds-date-input.utils.ts +16 -2
- package/src/components/ds-drawer/ds-drawer.tsx +4 -1
- package/src/components/ds-dropdown-menu/ds-dropdown-menu.module.scss +0 -1
- package/src/components/ds-dropdown-menu/ds-dropdown-menu.types.tsx +4 -1
- package/src/components/ds-file-upload/utils/format-file-size.ts +1 -1
- package/src/components/ds-form-control/ds-form-control.tsx +9 -2
- package/src/components/ds-loader/ds-loader.module.scss +57 -0
- package/src/components/ds-loader/ds-loader.tsx +18 -0
- package/src/components/ds-loader/ds-loader.types.ts +24 -0
- package/src/components/ds-loader/index.ts +2 -0
- package/src/components/ds-loader/pulsing-icon.tsx +17 -0
- package/src/components/ds-loader/spinner-icon.tsx +37 -0
- package/src/components/ds-modal/ds-modal.module.scss +123 -60
- package/src/components/ds-modal/ds-modal.tsx +12 -3
- package/src/components/ds-modal/ds-modal.types.tsx +14 -5
- package/src/components/ds-select/ds-select.tsx +1 -1
- package/src/components/ds-skeleton/ds-skeleton-circle.tsx +29 -0
- package/src/components/ds-skeleton/ds-skeleton-rect.tsx +36 -0
- package/src/components/ds-skeleton/ds-skeleton-text.tsx +49 -0
- package/src/components/ds-skeleton/ds-skeleton.config.ts +68 -0
- package/src/components/ds-skeleton/ds-skeleton.module.scss +72 -0
- package/src/components/ds-skeleton/ds-skeleton.tsx +9 -0
- package/src/components/ds-skeleton/ds-skeleton.types.ts +92 -0
- package/src/components/ds-skeleton/index.ts +5 -0
- package/src/components/ds-spinner/ds-spinner.tsx +1 -1
- package/src/components/ds-table/components/core-table/core-table.tsx +16 -16
- package/src/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.tsx +10 -13
- package/src/components/ds-table/components/ds-table-row/ds-table-row.tsx +0 -2
- package/src/components/ds-table/ds-table.tsx +6 -5
- package/src/components/ds-table/ds-table.types.ts +0 -5
- package/src/components/ds-table/filters/adapters/create-dual-range-filter-adapter.tsx +2 -4
- package/src/components/ds-table/filters/hooks/index.ts +1 -1
- package/src/components/ds-table/filters/hooks/use-table-filters.ts +118 -112
- package/src/components/ds-table/utils/story-data-generator.ts +7 -7
- package/src/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.scss +22 -0
- package/src/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.tsx +12 -0
- package/src/components/ds-tabs/components/ds-tabs-content/index.ts +1 -0
- package/src/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.scss +31 -0
- package/src/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.scss +27 -0
- package/src/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.tsx +14 -0
- package/src/components/ds-tabs/components/ds-tabs-list/index.ts +1 -0
- package/src/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.scss +242 -0
- package/src/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.tsx +130 -0
- package/src/components/ds-tabs/components/ds-tabs-tab/index.ts +1 -0
- package/src/components/ds-tabs/ds-tabs.module.scss +14 -0
- package/src/components/ds-tabs/ds-tabs.tsx +46 -0
- package/src/components/ds-tabs/ds-tabs.types.ts +97 -0
- package/src/components/ds-tabs/index.ts +2 -0
- package/src/index.ts +4 -0
- package/src/styles/shared/_modal.scss +0 -123
- package/dist/components/ds-confirmation/ds-confirmation.module.cjs +0 -21
- package/dist/components/ds-confirmation/ds-confirmation.module.js +0 -21
- package/dist/components/ds-confirmation/ds-confirmation.module.js.map +0 -1
- package/src/components/ds-confirmation/ds-confirmation.module.scss +0 -58
|
@@ -5,21 +5,42 @@ import { ReactNode } from "react";
|
|
|
5
5
|
import { ColumnDef } from "@tanstack/react-table";
|
|
6
6
|
|
|
7
7
|
//#region src/components/ds-table/filters/hooks/use-table-filters.d.ts
|
|
8
|
+
interface UseTableFiltersOptions<TData, TValue, TCellValue> {
|
|
9
|
+
/**
|
|
10
|
+
* Array of filter adapters that define filter behavior
|
|
11
|
+
*/
|
|
12
|
+
filterAdapters: FilterAdapter<TData, TValue, TCellValue>[] | AnyAdapter[];
|
|
13
|
+
/**
|
|
14
|
+
* Base column definitions
|
|
15
|
+
*/
|
|
16
|
+
baseColumns?: ColumnDef<TData>[];
|
|
17
|
+
/**
|
|
18
|
+
* Controlled mode: External applied filters (source of truth).
|
|
19
|
+
* When provided with onFiltersChange, the hook operates in controlled mode.
|
|
20
|
+
* Keys must match adapter IDs.
|
|
21
|
+
*/
|
|
22
|
+
appliedFilters?: FilterState<TValue>;
|
|
23
|
+
/**
|
|
24
|
+
* Controlled mode: Callback when filters change.
|
|
25
|
+
* Called by applyFilters(), deleteChip(), clearAll().
|
|
26
|
+
*/
|
|
27
|
+
onFiltersChange?: (filters: FilterState<TValue>) => void;
|
|
28
|
+
}
|
|
8
29
|
interface UseTableFiltersResult<TData, TValue> {
|
|
9
30
|
/**
|
|
10
|
-
* Current filter state
|
|
31
|
+
* Current draft filter state (uncommitted user selections)
|
|
11
32
|
*/
|
|
12
33
|
filterState: FilterState<TValue>;
|
|
13
34
|
/**
|
|
14
|
-
* Column filters
|
|
35
|
+
* Column filters (derived from applied state)
|
|
15
36
|
*/
|
|
16
37
|
columnFilters: ColumnFilterState<TValue>[];
|
|
17
38
|
/**
|
|
18
|
-
* Filter chips for display
|
|
39
|
+
* Filter chips for display (derived from applied state)
|
|
19
40
|
*/
|
|
20
41
|
filterChips: ChipItem[];
|
|
21
42
|
/**
|
|
22
|
-
* Filter navigation items with counts
|
|
43
|
+
* Filter navigation items with active counts
|
|
23
44
|
*/
|
|
24
45
|
filterNavItems: FilterNavItem[];
|
|
25
46
|
/**
|
|
@@ -27,40 +48,52 @@ interface UseTableFiltersResult<TData, TValue> {
|
|
|
27
48
|
*/
|
|
28
49
|
enhancedColumns: ColumnDef<TData>[];
|
|
29
50
|
/**
|
|
30
|
-
* Handlers
|
|
51
|
+
* Handlers for filter operations
|
|
31
52
|
*/
|
|
32
53
|
handlers: {
|
|
33
|
-
/**
|
|
34
|
-
* Update a specific filter's value
|
|
35
|
-
*/
|
|
54
|
+
/** Update a specific filter's draft value */
|
|
36
55
|
updateFilter: (filterId: string, value: TValue) => void;
|
|
37
|
-
/**
|
|
38
|
-
* Apply all filters (converts to TanStack format)
|
|
39
|
-
*/
|
|
56
|
+
/** Commit draft state to applied state */
|
|
40
57
|
applyFilters: () => void;
|
|
41
|
-
/**
|
|
42
|
-
* Clear all filters
|
|
43
|
-
*/
|
|
58
|
+
/** Clear all filters */
|
|
44
59
|
clearAll: () => void;
|
|
45
|
-
/**
|
|
46
|
-
* Delete a specific chip
|
|
47
|
-
*/
|
|
60
|
+
/** Delete a specific filter chip */
|
|
48
61
|
deleteChip: (chip: ChipItem) => void;
|
|
49
62
|
};
|
|
50
63
|
/**
|
|
51
|
-
* Render function for filter
|
|
64
|
+
* Render function for filter content
|
|
52
65
|
*/
|
|
53
66
|
renderFilterContent: (selectedFilter: FilterNavItem) => ReactNode;
|
|
54
67
|
}
|
|
55
68
|
/**
|
|
56
|
-
* Hook to orchestrate table filtering with adapters
|
|
57
|
-
* Manages filter state, generates chips, handles column definitions
|
|
69
|
+
* Hook to orchestrate table filtering with adapters.
|
|
70
|
+
* Manages filter state, generates chips, and handles column definitions.
|
|
71
|
+
*
|
|
72
|
+
* **Uncontrolled mode** (default): Filters are managed internally.
|
|
73
|
+
* **Controlled mode**: Filters are managed externally via appliedFilters/onFiltersChange.
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* // Uncontrolled mode
|
|
77
|
+
* const { filterChips, handlers } = useTableFilters({
|
|
78
|
+
* filterAdapters: adapters,
|
|
79
|
+
* baseColumns: columns,
|
|
80
|
+
* });
|
|
58
81
|
*
|
|
59
|
-
* @
|
|
60
|
-
*
|
|
61
|
-
*
|
|
82
|
+
* @example
|
|
83
|
+
* // Controlled mode (e.g., URL-driven filtering)
|
|
84
|
+
* const { filterChips, handlers } = useTableFilters({
|
|
85
|
+
* filterAdapters: adapters,
|
|
86
|
+
* baseColumns: columns,
|
|
87
|
+
* appliedFilters: filtersFromUrl,
|
|
88
|
+
* onFiltersChange: (filters) => updateUrlAndRefetch(filters),
|
|
89
|
+
* });
|
|
62
90
|
*/
|
|
63
|
-
declare function useTableFilters<TData, TValue, TCellValue>(
|
|
91
|
+
declare function useTableFilters<TData, TValue, TCellValue>({
|
|
92
|
+
filterAdapters,
|
|
93
|
+
baseColumns,
|
|
94
|
+
appliedFilters: externalAppliedFilters,
|
|
95
|
+
onFiltersChange: setExternalAppliedFilters
|
|
96
|
+
}: UseTableFiltersOptions<TData, TValue, TCellValue>): UseTableFiltersResult<TData, TValue>;
|
|
64
97
|
//#endregion
|
|
65
|
-
export { UseTableFiltersResult, useTableFilters };
|
|
98
|
+
export { UseTableFiltersOptions, UseTableFiltersResult, useTableFilters };
|
|
66
99
|
//# sourceMappingURL=use-table-filters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-table-filters.d.ts","names":[],"sources":["../../../../../src/components/ds-table/filters/hooks/use-table-filters.ts"],"sourcesContent":[],"mappings":";;;;;;;UAWiB;;;AAAjB;
|
|
1
|
+
{"version":3,"file":"use-table-filters.d.ts","names":[],"sources":["../../../../../src/components/ds-table/filters/hooks/use-table-filters.ts"],"sourcesContent":[],"mappings":";;;;;;;UAWiB;;;AAAjB;EAI+B,cAAA,EAAd,aAAc,CAAA,KAAA,EAAO,MAAP,EAAe,UAAf,CAAA,EAAA,GAA+B,UAA/B,EAAA;EAAO;;;EAAwB,WAAA,CAAA,EAK/C,SAL+C,CAKrC,KALqC,CAAA,EAAA;EAKrC;;;;;EAaI,cAAA,CAAA,EANX,WAMW,CANC,MAMD,CAAA;EAAW;AAGxC;;;EASkC,eAAA,CAAA,EAAA,CAAA,OAAA,EAZL,WAYK,CAZO,MAYP,CAAA,EAAA,GAAA,IAAA;;AAKpB,UAdG,qBAcH,CAAA,KAAA,EAAA,MAAA,CAAA,CAAA;EAKG;;;EAYyB,WAAA,EA3B5B,WA2B4B,CA3BhB,MA2BgB,CAAA;EAMrB;;;EAM6C,aAAA,EAlClD,iBAkCkD,CAlChC,MAkCgC,CAAA,EAAA;EA0BlD;;;EAGC,WAAA,EA1DH,QA0DG,EAAA;EACC;;;EACuB,cAAA,EAvDxB,aAuDwB,EAAA;EAAtC;;;EAAoD,eAAA,EAlDrC,SAkDqC,CAlD3B,KAkD2B,CAAA,EAAA;EAAqB;;;;;4CA3ClC;;;;;;uBAMrB;;;;;wCAMkB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;iBA0BzC;;;kBAGC;mBACC;GACf,uBAAuB,OAAO,QAAQ,cAAc,sBAAsB,OAAO"}
|
|
@@ -3,176 +3,176 @@ import { useState } from "react";
|
|
|
3
3
|
|
|
4
4
|
//#region src/components/ds-table/filters/hooks/use-table-filters.ts
|
|
5
5
|
/**
|
|
6
|
-
* Hook to orchestrate table filtering with adapters
|
|
7
|
-
* Manages filter state, generates chips, handles column definitions
|
|
6
|
+
* Hook to orchestrate table filtering with adapters.
|
|
7
|
+
* Manages filter state, generates chips, and handles column definitions.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
* **Uncontrolled mode** (default): Filters are managed internally.
|
|
10
|
+
* **Controlled mode**: Filters are managed externally via appliedFilters/onFiltersChange.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* // Uncontrolled mode
|
|
14
|
+
* const { filterChips, handlers } = useTableFilters({
|
|
15
|
+
* filterAdapters: adapters,
|
|
16
|
+
* baseColumns: columns,
|
|
17
|
+
* });
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* // Controlled mode (e.g., URL-driven filtering)
|
|
21
|
+
* const { filterChips, handlers } = useTableFilters({
|
|
22
|
+
* filterAdapters: adapters,
|
|
23
|
+
* baseColumns: columns,
|
|
24
|
+
* appliedFilters: filtersFromUrl,
|
|
25
|
+
* onFiltersChange: (filters) => updateUrlAndRefetch(filters),
|
|
26
|
+
* });
|
|
12
27
|
*/
|
|
13
|
-
function useTableFilters(
|
|
14
|
-
const $ = c(
|
|
28
|
+
function useTableFilters(t0) {
|
|
29
|
+
const $ = c(30);
|
|
30
|
+
const { filterAdapters, baseColumns, appliedFilters: externalAppliedFilters, onFiltersChange: setExternalAppliedFilters } = t0;
|
|
15
31
|
const _filterAdapters = filterAdapters;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
initialState = {};
|
|
19
|
-
_filterAdapters.forEach((adapter) => {
|
|
20
|
-
initialState[adapter.id] = adapter.initialValue;
|
|
21
|
-
});
|
|
22
|
-
$[0] = _filterAdapters;
|
|
23
|
-
$[1] = initialState;
|
|
24
|
-
} else initialState = $[1];
|
|
25
|
-
const [filterState, setFilterState] = useState(initialState);
|
|
26
|
-
let t0;
|
|
27
|
-
if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
28
|
-
t0 = [];
|
|
29
|
-
$[2] = t0;
|
|
30
|
-
} else t0 = $[2];
|
|
31
|
-
const [columnFilters, setColumnFilters] = useState(t0);
|
|
32
|
+
const isControlled = externalAppliedFilters !== void 0 && setExternalAppliedFilters !== void 0;
|
|
33
|
+
const initialFilters = _filterAdapters.reduce(_temp, {});
|
|
32
34
|
let t1;
|
|
33
|
-
if ($[
|
|
34
|
-
t1 =
|
|
35
|
-
$[
|
|
36
|
-
} else t1 = $[
|
|
37
|
-
const [
|
|
35
|
+
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
36
|
+
t1 = {};
|
|
37
|
+
$[0] = t1;
|
|
38
|
+
} else t1 = $[0];
|
|
39
|
+
const [internalAppliedFilters, setInternalAppliedFilters] = useState(t1);
|
|
38
40
|
let t2;
|
|
39
|
-
if ($[
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
$[4] = _filterAdapters;
|
|
52
|
-
$[5] = filterState;
|
|
53
|
-
$[6] = t2;
|
|
54
|
-
} else t2 = $[6];
|
|
55
|
-
const filterNavItems = t2;
|
|
41
|
+
if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
|
|
42
|
+
t2 = {};
|
|
43
|
+
$[1] = t2;
|
|
44
|
+
} else t2 = $[1];
|
|
45
|
+
const [pendingFilters, setPendingFilters] = useState(t2);
|
|
46
|
+
const appliedFilters = isControlled ? externalAppliedFilters : internalAppliedFilters;
|
|
47
|
+
const setAppliedFilters = isControlled ? setExternalAppliedFilters : setInternalAppliedFilters;
|
|
48
|
+
const draftFilters = {
|
|
49
|
+
...initialFilters,
|
|
50
|
+
...appliedFilters,
|
|
51
|
+
...pendingFilters
|
|
52
|
+
};
|
|
56
53
|
let t3;
|
|
57
|
-
if ($[
|
|
58
|
-
t3 =
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
return {
|
|
63
|
-
...col,
|
|
64
|
-
filterFn: adapter_1.columnFilterFn,
|
|
65
|
-
...cellRenderer && { cell: (info) => cellRenderer(info.getValue()) }
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
return col;
|
|
69
|
-
});
|
|
70
|
-
$[9] = _filterAdapters;
|
|
71
|
-
$[10] = baseColumns;
|
|
72
|
-
$[11] = t3;
|
|
73
|
-
} else t3 = $[11];
|
|
74
|
-
const enhancedColumns = t3;
|
|
54
|
+
if ($[2] !== appliedFilters) {
|
|
55
|
+
t3 = Object.entries(appliedFilters);
|
|
56
|
+
$[2] = appliedFilters;
|
|
57
|
+
$[3] = t3;
|
|
58
|
+
} else t3 = $[3];
|
|
75
59
|
let t4;
|
|
76
|
-
if ($[
|
|
77
|
-
t4 = (
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
$[
|
|
84
|
-
|
|
85
|
-
|
|
60
|
+
if ($[4] !== _filterAdapters || $[5] !== appliedFilters || $[6] !== t3) {
|
|
61
|
+
t4 = t3.filter((t5$1) => {
|
|
62
|
+
const [id] = t5$1;
|
|
63
|
+
const adapter_0 = _filterAdapters.find((a) => a.id === id);
|
|
64
|
+
return adapter_0 ? adapter_0.getActiveFiltersCount(appliedFilters[id]) > 0 : false;
|
|
65
|
+
}).map(_temp2);
|
|
66
|
+
$[4] = _filterAdapters;
|
|
67
|
+
$[5] = appliedFilters;
|
|
68
|
+
$[6] = t3;
|
|
69
|
+
$[7] = t4;
|
|
70
|
+
} else t4 = $[7];
|
|
71
|
+
const columnFilters = t4;
|
|
86
72
|
let t5;
|
|
87
|
-
if ($[
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
73
|
+
if ($[8] !== _filterAdapters || $[9] !== appliedFilters) {
|
|
74
|
+
let t6$1;
|
|
75
|
+
if ($[11] !== appliedFilters) {
|
|
76
|
+
t6$1 = (adapter_1) => {
|
|
77
|
+
const value_0 = appliedFilters[adapter_1.id];
|
|
78
|
+
return value_0 !== void 0 ? adapter_1.toChips(value_0) : [];
|
|
79
|
+
};
|
|
80
|
+
$[11] = appliedFilters;
|
|
81
|
+
$[12] = t6$1;
|
|
82
|
+
} else t6$1 = $[12];
|
|
83
|
+
t5 = _filterAdapters.flatMap(t6$1);
|
|
84
|
+
$[8] = _filterAdapters;
|
|
85
|
+
$[9] = appliedFilters;
|
|
86
|
+
$[10] = t5;
|
|
87
|
+
} else t5 = $[10];
|
|
88
|
+
const filterChips = t5;
|
|
89
|
+
const filterNavItems = _filterAdapters.map((adapter_2) => ({
|
|
90
|
+
id: adapter_2.id,
|
|
91
|
+
label: adapter_2.label,
|
|
92
|
+
count: adapter_2.getActiveFiltersCount(draftFilters[adapter_2.id])
|
|
93
|
+
}));
|
|
108
94
|
let t6;
|
|
109
|
-
if ($[
|
|
110
|
-
t6 = () => {
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
$[
|
|
121
|
-
|
|
122
|
-
|
|
95
|
+
if ($[13] !== _filterAdapters || $[14] !== baseColumns) {
|
|
96
|
+
t6 = !baseColumns ? [] : baseColumns.map((col) => {
|
|
97
|
+
const adapter_3 = _filterAdapters.find((a_0) => a_0.id === col.id);
|
|
98
|
+
if (!adapter_3) return col;
|
|
99
|
+
const cellRenderer = adapter_3.cellRenderer;
|
|
100
|
+
return {
|
|
101
|
+
...col,
|
|
102
|
+
filterFn: adapter_3.columnFilterFn,
|
|
103
|
+
...cellRenderer && { cell: (info) => cellRenderer(info.getValue()) }
|
|
104
|
+
};
|
|
105
|
+
});
|
|
106
|
+
$[13] = _filterAdapters;
|
|
107
|
+
$[14] = baseColumns;
|
|
108
|
+
$[15] = t6;
|
|
109
|
+
} else t6 = $[15];
|
|
110
|
+
const enhancedColumns = t6;
|
|
123
111
|
let t7;
|
|
124
|
-
if ($[
|
|
125
|
-
t7 = (
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
if (!adapter_4) return;
|
|
130
|
-
const currentValue = filterState[filterKey];
|
|
131
|
-
const newValue = adapter_4.fromChip(chip, currentValue);
|
|
132
|
-
const chips_0 = [];
|
|
133
|
-
_filterAdapters.forEach((adapter_5) => {
|
|
134
|
-
const value_1 = adapter_5.id === filterKey ? newValue : filterState[adapter_5.id];
|
|
135
|
-
const adapterChips_0 = adapter_5.toChips(value_1);
|
|
136
|
-
chips_0.push(...adapterChips_0);
|
|
137
|
-
});
|
|
138
|
-
if (chips_0.length === 0) {
|
|
139
|
-
clearAll();
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
setFilterState((prev_0) => ({
|
|
143
|
-
...prev_0,
|
|
144
|
-
[filterKey]: newValue
|
|
112
|
+
if ($[16] !== setPendingFilters) {
|
|
113
|
+
t7 = (filterId, value_1) => {
|
|
114
|
+
setPendingFilters((prev) => ({
|
|
115
|
+
...prev,
|
|
116
|
+
[filterId]: value_1
|
|
145
117
|
}));
|
|
146
|
-
if (adapter_4.getActiveFiltersCount(newValue) === 0) setColumnFilters((prev_1) => prev_1.filter((cf) => cf.id !== filterKey));
|
|
147
|
-
else setColumnFilters((prev_2) => prev_2.map((cf_0) => cf_0.id === filterKey ? {
|
|
148
|
-
id: filterKey,
|
|
149
|
-
value: newValue
|
|
150
|
-
} : cf_0));
|
|
151
|
-
setFilterChips(chips_0);
|
|
152
118
|
};
|
|
153
|
-
$[
|
|
154
|
-
$[
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
119
|
+
$[16] = setPendingFilters;
|
|
120
|
+
$[17] = t7;
|
|
121
|
+
} else t7 = $[17];
|
|
122
|
+
const updateFilter = t7;
|
|
123
|
+
const applyFilters = () => {
|
|
124
|
+
setAppliedFilters(_filterAdapters.reduce((acc, adapter_4) => {
|
|
125
|
+
const value_2 = draftFilters[adapter_4.id];
|
|
126
|
+
if (adapter_4.getActiveFiltersCount(value_2) > 0) acc[adapter_4.id] = value_2;
|
|
127
|
+
return acc;
|
|
128
|
+
}, {}));
|
|
129
|
+
setPendingFilters({});
|
|
130
|
+
};
|
|
159
131
|
let t8;
|
|
160
|
-
if ($[
|
|
161
|
-
t8 = (
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
const value_2 = filterState[adapter_6.id];
|
|
165
|
-
const onChange = (newValue_0) => updateFilter(adapter_6.id, newValue_0);
|
|
166
|
-
return adapter_6.renderFilter(value_2, onChange);
|
|
132
|
+
if ($[18] !== setAppliedFilters || $[19] !== setPendingFilters) {
|
|
133
|
+
t8 = () => {
|
|
134
|
+
setPendingFilters({});
|
|
135
|
+
setAppliedFilters({});
|
|
167
136
|
};
|
|
168
|
-
$[
|
|
169
|
-
$[
|
|
170
|
-
$[
|
|
171
|
-
} else t8 = $[
|
|
172
|
-
const
|
|
137
|
+
$[18] = setAppliedFilters;
|
|
138
|
+
$[19] = setPendingFilters;
|
|
139
|
+
$[20] = t8;
|
|
140
|
+
} else t8 = $[20];
|
|
141
|
+
const clearAll = t8;
|
|
173
142
|
let t9;
|
|
174
|
-
if ($[
|
|
175
|
-
t9 = {
|
|
143
|
+
if ($[21] !== _filterAdapters || $[22] !== appliedFilters || $[23] !== setAppliedFilters) {
|
|
144
|
+
t9 = (chip) => {
|
|
145
|
+
const filterKey = typeof chip.metadata?.key === "string" ? chip.metadata.key : void 0;
|
|
146
|
+
if (!filterKey) return;
|
|
147
|
+
const adapter_5 = _filterAdapters.find((a_1) => a_1.id === filterKey);
|
|
148
|
+
if (!adapter_5) return;
|
|
149
|
+
const currentValue = appliedFilters[filterKey];
|
|
150
|
+
if (currentValue === void 0) return;
|
|
151
|
+
const newValue = adapter_5.fromChip(chip, currentValue);
|
|
152
|
+
setAppliedFilters(adapter_5.getActiveFiltersCount(newValue) === 0 ? Object.fromEntries(Object.entries(appliedFilters).filter((t10$1) => {
|
|
153
|
+
const [key] = t10$1;
|
|
154
|
+
return key !== filterKey;
|
|
155
|
+
})) : {
|
|
156
|
+
...appliedFilters,
|
|
157
|
+
[filterKey]: newValue
|
|
158
|
+
});
|
|
159
|
+
};
|
|
160
|
+
$[21] = _filterAdapters;
|
|
161
|
+
$[22] = appliedFilters;
|
|
162
|
+
$[23] = setAppliedFilters;
|
|
163
|
+
$[24] = t9;
|
|
164
|
+
} else t9 = $[24];
|
|
165
|
+
const deleteChip = t9;
|
|
166
|
+
const renderFilterContent = (selectedFilter) => {
|
|
167
|
+
const adapter_6 = _filterAdapters.find((a_2) => a_2.id === selectedFilter.id);
|
|
168
|
+
if (!adapter_6) return null;
|
|
169
|
+
const value_3 = draftFilters[adapter_6.id];
|
|
170
|
+
const onChange = (newValue_0) => updateFilter(adapter_6.id, newValue_0);
|
|
171
|
+
return adapter_6.renderFilter(value_3, onChange);
|
|
172
|
+
};
|
|
173
|
+
let t10;
|
|
174
|
+
if ($[25] !== applyFilters || $[26] !== clearAll || $[27] !== deleteChip || $[28] !== updateFilter) {
|
|
175
|
+
t10 = {
|
|
176
176
|
updateFilter,
|
|
177
177
|
applyFilters,
|
|
178
178
|
clearAll,
|
|
@@ -181,29 +181,31 @@ function useTableFilters(filterAdapters, baseColumns) {
|
|
|
181
181
|
$[25] = applyFilters;
|
|
182
182
|
$[26] = clearAll;
|
|
183
183
|
$[27] = deleteChip;
|
|
184
|
-
$[28] =
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
184
|
+
$[28] = updateFilter;
|
|
185
|
+
$[29] = t10;
|
|
186
|
+
} else t10 = $[29];
|
|
187
|
+
return {
|
|
188
|
+
filterState: draftFilters,
|
|
189
|
+
columnFilters,
|
|
190
|
+
filterChips,
|
|
191
|
+
filterNavItems,
|
|
192
|
+
enhancedColumns,
|
|
193
|
+
handlers: t10,
|
|
194
|
+
renderFilterContent
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
function _temp2(t0) {
|
|
198
|
+
const [id_0, value] = t0;
|
|
199
|
+
return {
|
|
200
|
+
id: id_0,
|
|
201
|
+
value
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
function _temp(state, adapter) {
|
|
205
|
+
return {
|
|
206
|
+
...state,
|
|
207
|
+
[adapter.id]: adapter.initialValue
|
|
208
|
+
};
|
|
207
209
|
}
|
|
208
210
|
|
|
209
211
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-table-filters.js","names":["ReactNode","useState","CellContext","ColumnDef","ChipItem","AnyAdapter","ColumnFilterState","FilterAdapter","FilterNavItem","FilterState","UseTableFiltersResult","filterState","TValue","columnFilters","filterChips","filterNavItems","enhancedColumns","TData","handlers","updateFilter","filterId","value","applyFilters","clearAll","deleteChip","chip","renderFilterContent","selectedFilter","useTableFilters","filterAdapters","baseColumns","$","_c","_filterAdapters","TCellValue","initialState","forEach","adapter","id","initialValue","setFilterState","t0","Symbol","for","setColumnFilters","t1","setFilterChips","t2","t3","adapter_0","label","count","getActiveFiltersCount","map","col","adapter_1","find","a","cellRenderer","filterFn","columnFilterFn","cell","info","getValue","t4","prev","t5","filters","chips","adapter_2","value_0","push","adapterChips","toChips","t6","resetState","adapter_3","reset","t7","filterKey","metadata","key","undefined","adapter_4","a_0","currentValue","newValue","fromChip","chips_0","adapter_5","value_1","adapterChips_0","length","prev_0","prev_1","filter","cf","prev_2","cf_0","t8","adapter_6","a_1","value_2","onChange","newValue_0","renderFilter","t9","t10"],"sources":["../../../../../src/components/ds-table/filters/hooks/use-table-filters.ts"],"sourcesContent":["import { type ReactNode, useState } from 'react';\nimport type { CellContext, ColumnDef } from '@tanstack/react-table';\nimport type { ChipItem } from '../../../ds-chip-group';\nimport type {\n\tAnyAdapter,\n\tColumnFilterState,\n\tFilterAdapter,\n\tFilterNavItem,\n\tFilterState,\n} from '../types/filter-adapter.types';\n\nexport interface UseTableFiltersResult<TData, TValue> {\n\t/**\n\t * Current filter state\n\t */\n\tfilterState: FilterState<TValue>;\n\n\t/**\n\t * Column filters for TanStack Table\n\t */\n\tcolumnFilters: ColumnFilterState<TValue>[];\n\n\t/**\n\t * Filter chips for display\n\t */\n\tfilterChips: ChipItem[];\n\n\t/**\n\t * Filter navigation items with counts\n\t */\n\tfilterNavItems: FilterNavItem[];\n\n\t/**\n\t * Enhanced column definitions with filter functions\n\t */\n\tenhancedColumns: ColumnDef<TData>[];\n\n\t/**\n\t * Handlers\n\t */\n\thandlers: {\n\t\t/**\n\t\t * Update a specific filter's value\n\t\t */\n\t\tupdateFilter: (filterId: string, value: TValue) => void;\n\n\t\t/**\n\t\t * Apply all filters (converts to TanStack format)\n\t\t */\n\t\tapplyFilters: () => void;\n\n\t\t/**\n\t\t * Clear all filters\n\t\t */\n\t\tclearAll: () => void;\n\n\t\t/**\n\t\t * Delete a specific chip\n\t\t */\n\t\tdeleteChip: (chip: ChipItem) => void;\n\t};\n\n\t/**\n\t * Render function for filter modal content\n\t */\n\trenderFilterContent: (selectedFilter: FilterNavItem) => ReactNode;\n}\n\n/**\n * Hook to orchestrate table filtering with adapters\n * Manages filter state, generates chips, handles column definitions\n *\n * @param filterAdapters Array of filter adapters\n * @param baseColumns Base column definitions (optional)\n * @returns Complete filter management system\n */\nexport function useTableFilters<TData, TValue, TCellValue>(\n\tfilterAdapters: FilterAdapter<TData, TValue, TCellValue>[] | AnyAdapter[],\n\tbaseColumns?: ColumnDef<TData>[],\n): UseTableFiltersResult<TData, TValue> {\n\t// Internal variable just to avoid assignment issues of `any`.\n\tconst _filterAdapters = filterAdapters as FilterAdapter<TData, TValue, TCellValue>[];\n\n\t// Initialize filter state from adapters\n\tconst initialState: FilterState<TValue> = {};\n\t_filterAdapters.forEach((adapter) => {\n\t\tinitialState[adapter.id] = adapter.initialValue;\n\t});\n\n\tconst [filterState, setFilterState] = useState<FilterState<TValue>>(initialState);\n\tconst [columnFilters, setColumnFilters] = useState<ColumnFilterState<TValue>[]>([]);\n\tconst [filterChips, setFilterChips] = useState<ChipItem[]>([]);\n\n\t// Generate filter nav items with counts (updates as user changes filters in modal)\n\tconst filterNavItems: FilterNavItem[] = _filterAdapters.map((adapter) => ({\n\t\tid: adapter.id,\n\t\tlabel: adapter.label,\n\t\tcount: adapter.getActiveFiltersCount(filterState[adapter.id]),\n\t}));\n\n\t// Enhance column definitions with filter functions and renderers\n\tconst enhancedColumns: ColumnDef<TData>[] = !baseColumns\n\t\t? []\n\t\t: baseColumns.map((col) => {\n\t\t\t\tconst adapter = _filterAdapters.find((a) => a.id === col.id);\n\n\t\t\t\tif (adapter) {\n\t\t\t\t\tconst cellRenderer = adapter.cellRenderer;\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...col,\n\t\t\t\t\t\tfilterFn: adapter.columnFilterFn,\n\t\t\t\t\t\t...(cellRenderer && {\n\t\t\t\t\t\t\tcell: (info: CellContext<TData, TCellValue>) => cellRenderer(info.getValue()),\n\t\t\t\t\t\t}),\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn col;\n\t\t\t});\n\n\t// Handlers\n\tconst updateFilter = (filterId: string, value: TValue) => {\n\t\tsetFilterState((prev) => ({\n\t\t\t...prev,\n\t\t\t[filterId]: value,\n\t\t}));\n\t};\n\n\tconst applyFilters = () => {\n\t\tconst filters: ColumnFilterState<TValue>[] = [];\n\t\tconst chips: ChipItem[] = [];\n\n\t\t_filterAdapters.forEach((adapter) => {\n\t\t\tconst value = filterState[adapter.id];\n\n\t\t\tif (adapter.getActiveFiltersCount(value) > 0) {\n\t\t\t\tfilters.push({\n\t\t\t\t\tid: adapter.id,\n\t\t\t\t\tvalue,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// Generate chips from current filter value\n\t\t\tconst adapterChips = adapter.toChips(value);\n\t\t\tchips.push(...adapterChips);\n\t\t});\n\n\t\tsetColumnFilters(filters);\n\t\tsetFilterChips(chips);\n\t};\n\n\tconst clearAll = () => {\n\t\tconst resetState: FilterState<TValue> = {};\n\t\t_filterAdapters.forEach((adapter) => {\n\t\t\tresetState[adapter.id] = adapter.reset();\n\t\t});\n\t\tsetFilterState(resetState);\n\t\tsetColumnFilters([]);\n\t\tsetFilterChips([]);\n\t};\n\n\tconst deleteChip = (chip: ChipItem) => {\n\t\tconst filterKey = typeof chip.metadata?.key === 'string' ? chip.metadata.key : undefined;\n\t\tif (!filterKey) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst adapter = _filterAdapters.find((a) => a.id === filterKey);\n\t\tif (!adapter) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentValue = filterState[filterKey];\n\t\tconst newValue = adapter.fromChip(chip, currentValue);\n\n\t\t// Regenerate chips to check if this was the last one\n\t\tconst chips: ChipItem[] = [];\n\t\t_filterAdapters.forEach((adapter) => {\n\t\t\tconst value = adapter.id === filterKey ? newValue : filterState[adapter.id];\n\t\t\tconst adapterChips = adapter.toChips(value);\n\t\t\tchips.push(...adapterChips);\n\t\t});\n\n\t\t// If no chips left, clear all filters\n\t\tif (chips.length === 0) {\n\t\t\tclearAll();\n\t\t\treturn;\n\t\t}\n\n\t\t// Otherwise, update state and filters\n\t\tsetFilterState((prev) => ({\n\t\t\t...prev,\n\t\t\t[filterKey]: newValue,\n\t\t}));\n\n\t\t// Update column filters\n\t\tif (adapter.getActiveFiltersCount(newValue) === 0) {\n\t\t\tsetColumnFilters((prev) => prev.filter((cf) => cf.id !== filterKey));\n\t\t} else {\n\t\t\tsetColumnFilters((prev) =>\n\t\t\t\tprev.map((cf) => (cf.id === filterKey ? { id: filterKey, value: newValue } : cf)),\n\t\t\t);\n\t\t}\n\n\t\tsetFilterChips(chips);\n\t};\n\n\tconst renderFilterContent = (selectedFilter: FilterNavItem) => {\n\t\tconst adapter = _filterAdapters.find((a) => a.id === selectedFilter.id);\n\t\tif (!adapter) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst value = filterState[adapter.id];\n\t\tconst onChange = (newValue: TValue) => updateFilter(adapter.id, newValue);\n\n\t\treturn adapter.renderFilter(value, onChange);\n\t};\n\n\treturn {\n\t\tfilterState,\n\t\tcolumnFilters,\n\t\tfilterChips,\n\t\tfilterNavItems,\n\t\tenhancedColumns,\n\t\thandlers: {\n\t\t\tupdateFilter,\n\t\t\tapplyFilters,\n\t\t\tclearAll,\n\t\t\tdeleteChip,\n\t\t},\n\t\trenderFilterContent,\n\t};\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-table-filters.js","names":["ReactNode","useState","CellContext","ColumnDef","ChipItem","AnyAdapter","ColumnFilterState","FilterAdapter","FilterNavItem","FilterState","UseTableFiltersOptions","filterAdapters","TData","TValue","TCellValue","baseColumns","appliedFilters","onFiltersChange","filters","UseTableFiltersResult","filterState","columnFilters","filterChips","filterNavItems","enhancedColumns","handlers","updateFilter","filterId","value","applyFilters","clearAll","deleteChip","chip","renderFilterContent","selectedFilter","useTableFilters","t0","$","_c","externalAppliedFilters","setExternalAppliedFilters","_filterAdapters","isControlled","undefined","initialFilters","reduce","_temp","t1","Symbol","for","internalAppliedFilters","setInternalAppliedFilters","t2","pendingFilters","setPendingFilters","setAppliedFilters","draftFilters","t3","Object","entries","t4","filter","t5","id","adapter_0","find","a","adapter","getActiveFiltersCount","map","_temp2","t6","adapter_1","value_0","toChips","flatMap","adapter_2","label","count","col","adapter_3","a_0","cellRenderer","filterFn","columnFilterFn","cell","info","getValue","t7","value_1","prev","filtersToApply","acc","adapter_4","value_2","t8","t9","filterKey","metadata","key","adapter_5","a_1","currentValue","newValue","fromChip","newFilters","fromEntries","t10","adapter_6","a_2","value_3","onChange","newValue_0","renderFilter","id_0","state","initialValue"],"sources":["../../../../../src/components/ds-table/filters/hooks/use-table-filters.ts"],"sourcesContent":["import { type ReactNode, useState } from 'react';\nimport type { CellContext, ColumnDef } from '@tanstack/react-table';\nimport type { ChipItem } from '../../../ds-chip-group';\nimport type {\n\tAnyAdapter,\n\tColumnFilterState,\n\tFilterAdapter,\n\tFilterNavItem,\n\tFilterState,\n} from '../types/filter-adapter.types';\n\nexport interface UseTableFiltersOptions<TData, TValue, TCellValue> {\n\t/**\n\t * Array of filter adapters that define filter behavior\n\t */\n\tfilterAdapters: FilterAdapter<TData, TValue, TCellValue>[] | AnyAdapter[];\n\n\t/**\n\t * Base column definitions\n\t */\n\tbaseColumns?: ColumnDef<TData>[];\n\n\t/**\n\t * Controlled mode: External applied filters (source of truth).\n\t * When provided with onFiltersChange, the hook operates in controlled mode.\n\t * Keys must match adapter IDs.\n\t */\n\tappliedFilters?: FilterState<TValue>;\n\n\t/**\n\t * Controlled mode: Callback when filters change.\n\t * Called by applyFilters(), deleteChip(), clearAll().\n\t */\n\tonFiltersChange?: (filters: FilterState<TValue>) => void;\n}\n\nexport interface UseTableFiltersResult<TData, TValue> {\n\t/**\n\t * Current draft filter state (uncommitted user selections)\n\t */\n\tfilterState: FilterState<TValue>;\n\n\t/**\n\t * Column filters (derived from applied state)\n\t */\n\tcolumnFilters: ColumnFilterState<TValue>[];\n\n\t/**\n\t * Filter chips for display (derived from applied state)\n\t */\n\tfilterChips: ChipItem[];\n\n\t/**\n\t * Filter navigation items with active counts\n\t */\n\tfilterNavItems: FilterNavItem[];\n\n\t/**\n\t * Enhanced column definitions with filter functions\n\t */\n\tenhancedColumns: ColumnDef<TData>[];\n\n\t/**\n\t * Handlers for filter operations\n\t */\n\thandlers: {\n\t\t/** Update a specific filter's draft value */\n\t\tupdateFilter: (filterId: string, value: TValue) => void;\n\t\t/** Commit draft state to applied state */\n\t\tapplyFilters: () => void;\n\t\t/** Clear all filters */\n\t\tclearAll: () => void;\n\t\t/** Delete a specific filter chip */\n\t\tdeleteChip: (chip: ChipItem) => void;\n\t};\n\n\t/**\n\t * Render function for filter content\n\t */\n\trenderFilterContent: (selectedFilter: FilterNavItem) => ReactNode;\n}\n\n/**\n * Hook to orchestrate table filtering with adapters.\n * Manages filter state, generates chips, and handles column definitions.\n *\n * **Uncontrolled mode** (default): Filters are managed internally.\n * **Controlled mode**: Filters are managed externally via appliedFilters/onFiltersChange.\n *\n * @example\n * // Uncontrolled mode\n * const { filterChips, handlers } = useTableFilters({\n * filterAdapters: adapters,\n * baseColumns: columns,\n * });\n *\n * @example\n * // Controlled mode (e.g., URL-driven filtering)\n * const { filterChips, handlers } = useTableFilters({\n * filterAdapters: adapters,\n * baseColumns: columns,\n * appliedFilters: filtersFromUrl,\n * onFiltersChange: (filters) => updateUrlAndRefetch(filters),\n * });\n */\nexport function useTableFilters<TData, TValue, TCellValue>({\n\tfilterAdapters,\n\tbaseColumns,\n\tappliedFilters: externalAppliedFilters,\n\tonFiltersChange: setExternalAppliedFilters,\n}: UseTableFiltersOptions<TData, TValue, TCellValue>): UseTableFiltersResult<TData, TValue> {\n\t// Internal variable just to avoid assignment issues of `any`.\n\tconst _filterAdapters = filterAdapters as FilterAdapter<TData, TValue, TCellValue>[];\n\n\tconst isControlled = externalAppliedFilters !== undefined && setExternalAppliedFilters !== undefined;\n\n\tconst initialFilters = _filterAdapters.reduce<FilterState<TValue>>(\n\t\t(state, adapter) => ({ ...state, [adapter.id]: adapter.initialValue }),\n\t\t{},\n\t);\n\n\tconst [internalAppliedFilters, setInternalAppliedFilters] = useState<FilterState<TValue>>({});\n\tconst [pendingFilters, setPendingFilters] = useState<FilterState<TValue>>({});\n\n\tconst appliedFilters = isControlled ? externalAppliedFilters : internalAppliedFilters;\n\tconst setAppliedFilters = isControlled ? setExternalAppliedFilters : setInternalAppliedFilters;\n\n\tconst draftFilters = { ...initialFilters, ...appliedFilters, ...pendingFilters };\n\n\tconst columnFilters: ColumnFilterState<TValue>[] = Object.entries(appliedFilters)\n\t\t.filter(([id]) => {\n\t\t\tconst adapter = _filterAdapters.find((a) => a.id === id);\n\t\t\treturn adapter ? adapter.getActiveFiltersCount(appliedFilters[id] as TValue) > 0 : false;\n\t\t})\n\t\t.map(([id, value]) => ({ id, value }));\n\n\tconst filterChips = _filterAdapters.flatMap((adapter) => {\n\t\tconst value = appliedFilters[adapter.id];\n\t\treturn value !== undefined ? adapter.toChips(value) : [];\n\t});\n\n\tconst filterNavItems: FilterNavItem[] = _filterAdapters.map((adapter) => ({\n\t\tid: adapter.id,\n\t\tlabel: adapter.label,\n\t\tcount: adapter.getActiveFiltersCount(draftFilters[adapter.id] as TValue),\n\t}));\n\n\tconst enhancedColumns: ColumnDef<TData>[] = !baseColumns\n\t\t? []\n\t\t: baseColumns.map((col) => {\n\t\t\t\tconst adapter = _filterAdapters.find((a) => a.id === col.id);\n\t\t\t\tif (!adapter) {\n\t\t\t\t\treturn col;\n\t\t\t\t}\n\n\t\t\t\tconst cellRenderer = adapter.cellRenderer;\n\t\t\t\treturn {\n\t\t\t\t\t...col,\n\t\t\t\t\tfilterFn: adapter.columnFilterFn,\n\t\t\t\t\t...(cellRenderer && {\n\t\t\t\t\t\tcell: (info: CellContext<TData, TCellValue>) => cellRenderer(info.getValue()),\n\t\t\t\t\t}),\n\t\t\t\t};\n\t\t\t});\n\n\tconst updateFilter = (filterId: string, value: TValue) => {\n\t\tsetPendingFilters((prev) => ({ ...prev, [filterId]: value }));\n\t};\n\n\tconst applyFilters = () => {\n\t\tconst filtersToApply = _filterAdapters.reduce<FilterState<TValue>>((acc, adapter) => {\n\t\t\tconst value = draftFilters[adapter.id] as TValue;\n\t\t\tif (adapter.getActiveFiltersCount(value) > 0) {\n\t\t\t\tacc[adapter.id] = value;\n\t\t\t}\n\t\t\treturn acc;\n\t\t}, {});\n\n\t\tsetAppliedFilters(filtersToApply);\n\t\tsetPendingFilters({});\n\t};\n\n\tconst clearAll = () => {\n\t\tsetPendingFilters({});\n\t\tsetAppliedFilters({});\n\t};\n\n\tconst deleteChip = (chip: ChipItem) => {\n\t\tconst filterKey = typeof chip.metadata?.key === 'string' ? chip.metadata.key : undefined;\n\t\tif (!filterKey) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst adapter = _filterAdapters.find((a) => a.id === filterKey);\n\t\tif (!adapter) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentValue = appliedFilters[filterKey];\n\t\tif (currentValue === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst newValue = adapter.fromChip(chip, currentValue);\n\n\t\tconst newFilters =\n\t\t\tadapter.getActiveFiltersCount(newValue) === 0\n\t\t\t\t? Object.fromEntries(Object.entries(appliedFilters).filter(([key]) => key !== filterKey))\n\t\t\t\t: { ...appliedFilters, [filterKey]: newValue };\n\n\t\tsetAppliedFilters(newFilters);\n\t};\n\n\tconst renderFilterContent = (selectedFilter: FilterNavItem) => {\n\t\tconst adapter = _filterAdapters.find((a) => a.id === selectedFilter.id);\n\t\tif (!adapter) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst value = draftFilters[adapter.id] as TValue;\n\t\tconst onChange = (newValue: TValue) => updateFilter(adapter.id, newValue);\n\n\t\treturn adapter.renderFilter(value, onChange);\n\t};\n\n\treturn {\n\t\tfilterState: draftFilters,\n\t\tcolumnFilters,\n\t\tfilterChips,\n\t\tfilterNavItems,\n\t\tenhancedColumns,\n\t\thandlers: {\n\t\t\tupdateFilter,\n\t\t\tapplyFilters,\n\t\t\tclearAll,\n\t\t\tdeleteChip,\n\t\t},\n\t\trenderFilterContent,\n\t};\n}\n"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import "./components/checkbox-filter/index.js";
|
|
|
5
5
|
import { CheckboxFilterAdapterConfig, createCheckboxFilterAdapter } from "./adapters/create-checkbox-filter-adapter.js";
|
|
6
6
|
import { DualRangeFilterAdapterConfig, DualRangeFilterValue, RangeValue, createDualRangeFilterAdapter } from "./adapters/create-dual-range-filter-adapter.js";
|
|
7
7
|
import "./adapters/index.js";
|
|
8
|
-
import { UseTableFiltersResult, useTableFilters } from "./hooks/use-table-filters.js";
|
|
8
|
+
import { UseTableFiltersOptions, UseTableFiltersResult, useTableFilters } from "./hooks/use-table-filters.js";
|
|
9
9
|
import "./hooks/index.js";
|
|
10
10
|
import { RangeFilterProps, RangeFilterValue } from "./components/range-filter/range-filter.js";
|
|
11
11
|
import "./components/range-filter/index.js";
|
|
@@ -5,7 +5,7 @@ import { FilterAdapterConfig, createFilterAdapter } from "./filters/adapters/cre
|
|
|
5
5
|
import { CheckboxFilterItem, CheckboxFilterProps } from "./filters/components/checkbox-filter/checkbox-filter.js";
|
|
6
6
|
import { CheckboxFilterAdapterConfig, createCheckboxFilterAdapter } from "./filters/adapters/create-checkbox-filter-adapter.js";
|
|
7
7
|
import { DualRangeFilterAdapterConfig, DualRangeFilterValue, RangeValue, createDualRangeFilterAdapter } from "./filters/adapters/create-dual-range-filter-adapter.js";
|
|
8
|
-
import { UseTableFiltersResult, useTableFilters } from "./filters/hooks/use-table-filters.js";
|
|
8
|
+
import { UseTableFiltersOptions, UseTableFiltersResult, useTableFilters } from "./filters/hooks/use-table-filters.js";
|
|
9
9
|
import { RangeFilterProps, RangeFilterValue } from "./filters/components/range-filter/range-filter.js";
|
|
10
10
|
import "./filters/index.js";
|
|
11
11
|
import { Action, DsDataTableProps, DsTableApi, DsTableRowSize, ScrollParams } from "./ds-table.types.js";
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
const require_rolldown_runtime = require('../../../../_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_ds_tabs_content_module = require('./ds-tabs-content.module.cjs');
|
|
3
|
+
let react_compiler_runtime = require("react/compiler-runtime");
|
|
4
|
+
let classnames = require("classnames");
|
|
5
|
+
classnames = require_rolldown_runtime.__toESM(classnames);
|
|
6
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
7
|
+
let __ark_ui_react_tabs = require("@ark-ui/react/tabs");
|
|
8
|
+
|
|
9
|
+
//#region src/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.tsx
|
|
10
|
+
const DsTabsContent = (t0) => {
|
|
11
|
+
const $ = (0, react_compiler_runtime.c)(7);
|
|
12
|
+
const { value, className, style, children } = t0;
|
|
13
|
+
let t1;
|
|
14
|
+
if ($[0] !== className) {
|
|
15
|
+
t1 = (0, classnames.default)(require_ds_tabs_content_module.default.tabContent, className);
|
|
16
|
+
$[0] = className;
|
|
17
|
+
$[1] = t1;
|
|
18
|
+
} else t1 = $[1];
|
|
19
|
+
let t2;
|
|
20
|
+
if ($[2] !== children || $[3] !== style || $[4] !== t1 || $[5] !== value) {
|
|
21
|
+
t2 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__ark_ui_react_tabs.Tabs.Content, {
|
|
22
|
+
value,
|
|
23
|
+
className: t1,
|
|
24
|
+
style,
|
|
25
|
+
children
|
|
26
|
+
});
|
|
27
|
+
$[2] = children;
|
|
28
|
+
$[3] = style;
|
|
29
|
+
$[4] = t1;
|
|
30
|
+
$[5] = value;
|
|
31
|
+
$[6] = t2;
|
|
32
|
+
} else t2 = $[6];
|
|
33
|
+
return t2;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
//#endregion
|
|
37
|
+
exports.DsTabsContent = DsTabsContent;
|