@drivenets/design-system 0.2.0 → 0.3.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 +12 -0
- package/dist/components/ds-alert-banner/ds-alert-banner.d.cts +5 -5
- package/dist/components/ds-alert-banner/ds-alert-banner.d.cts.map +1 -1
- package/dist/components/ds-alert-banner/ds-alert-banner.d.ts +5 -5
- package/dist/components/ds-alert-banner/ds-alert-banner.types.d.cts.map +1 -1
- package/dist/components/ds-button/ds-button.d.cts +2 -2
- 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.d.cts +8 -8
- package/dist/components/ds-confirmation/ds-confirmation.d.ts +8 -8
- 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.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 +3 -3
- 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 +3 -3
- package/dist/components/ds-drawer/ds-drawer.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.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 +2 -2
- package/dist/components/ds-modal/ds-modal.d.cts +8 -8
- package/dist/components/ds-modal/ds-modal.d.cts.map +1 -1
- package/dist/components/ds-modal/ds-modal.d.ts +8 -8
- package/dist/components/ds-modal/ds-modal.d.ts.map +1 -1
- package/dist/components/ds-modal/ds-modal.js +2 -2
- package/dist/components/ds-modal/ds-modal.js.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 +1 -1
- 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 +1 -1
- 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-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/use-table-filters.cjs +94 -87
- package/dist/components/ds-table/filters/hooks/use-table-filters.js +94 -87
- package/dist/components/ds-table/filters/hooks/use-table-filters.js.map +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 +20 -0
- package/dist/index.d.cts +12 -3
- package/dist/index.d.ts +16 -4
- package/dist/index.js +12 -1
- package/dist/index.min.css +1 -1
- package/package.json +5 -3
- 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-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.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.tsx +7 -1
- 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/use-table-filters.ts +10 -5
- 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 +18 -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 +3 -0
|
@@ -61,9 +61,9 @@ const DsRowDragHandle = (t0) => {
|
|
|
61
61
|
return t5;
|
|
62
62
|
};
|
|
63
63
|
const DsTableRow = (t0) => {
|
|
64
|
-
const $ = c(
|
|
64
|
+
const $ = c(74);
|
|
65
65
|
const { ref, row, virtualRow } = t0;
|
|
66
|
-
const { expandable, expandedRows, selectable, reorderable, onRowClick, onRowDoubleClick, renderExpandedRow, virtualized, bordered,
|
|
66
|
+
const { expandable, expandedRows, selectable, reorderable, onRowClick, onRowDoubleClick, renderExpandedRow, virtualized, bordered, rowSize, toggleRowExpanded, primaryRowActions, secondaryRowActions, activeRowId } = useDsTableContext();
|
|
67
67
|
const isExpanded = expandedRows[row.id];
|
|
68
68
|
let t1;
|
|
69
69
|
if ($[0] !== expandable || $[1] !== row.original) {
|
|
@@ -121,38 +121,37 @@ const DsTableRow = (t0) => {
|
|
|
121
121
|
const t10 = rowSize === "medium";
|
|
122
122
|
const t11 = rowSize === "large";
|
|
123
123
|
let t12;
|
|
124
|
-
if ($[16] !== bordered || $[17] !==
|
|
124
|
+
if ($[16] !== bordered || $[17] !== isExpanded || $[18] !== onRowClick || $[19] !== t10 || $[20] !== t11 || $[21] !== t9 || $[22] !== virtualized) {
|
|
125
125
|
t12 = classNames(ds_table_row_module_default.tableRow, {
|
|
126
126
|
[ds_table_row_module_default.sizeSmall]: t9,
|
|
127
127
|
[ds_table_row_module_default.sizeMedium]: t10,
|
|
128
128
|
[ds_table_row_module_default.sizeLarge]: t11
|
|
129
|
-
}, virtualized && ds_table_row_module_default.virtualizedRow, onRowClick && ds_table_row_module_default.clickableRow,
|
|
129
|
+
}, virtualized && ds_table_row_module_default.virtualizedRow, onRowClick && ds_table_row_module_default.clickableRow, !bordered && ds_table_row_module_default.rowNoBorder, isExpanded && ds_table_row_module_default.expanded);
|
|
130
130
|
$[16] = bordered;
|
|
131
|
-
$[17] =
|
|
132
|
-
$[18] =
|
|
133
|
-
$[19] =
|
|
134
|
-
$[20] =
|
|
135
|
-
$[21] =
|
|
136
|
-
$[22] =
|
|
137
|
-
$[23] =
|
|
138
|
-
|
|
139
|
-
} else t12 = $[24];
|
|
131
|
+
$[17] = isExpanded;
|
|
132
|
+
$[18] = onRowClick;
|
|
133
|
+
$[19] = t10;
|
|
134
|
+
$[20] = t11;
|
|
135
|
+
$[21] = t9;
|
|
136
|
+
$[22] = virtualized;
|
|
137
|
+
$[23] = t12;
|
|
138
|
+
} else t12 = $[23];
|
|
140
139
|
let t13;
|
|
141
|
-
if ($[
|
|
140
|
+
if ($[24] !== onRowClick || $[25] !== row.original) {
|
|
142
141
|
t13 = () => onRowClick?.(row.original);
|
|
143
|
-
$[
|
|
144
|
-
$[
|
|
145
|
-
$[
|
|
146
|
-
} else t13 = $[
|
|
142
|
+
$[24] = onRowClick;
|
|
143
|
+
$[25] = row.original;
|
|
144
|
+
$[26] = t13;
|
|
145
|
+
} else t13 = $[26];
|
|
147
146
|
let t14;
|
|
148
|
-
if ($[
|
|
147
|
+
if ($[27] !== onRowDoubleClick || $[28] !== row.original) {
|
|
149
148
|
t14 = () => onRowDoubleClick?.(row.original);
|
|
150
|
-
$[
|
|
151
|
-
$[
|
|
152
|
-
$[
|
|
153
|
-
} else t14 = $[
|
|
149
|
+
$[27] = onRowDoubleClick;
|
|
150
|
+
$[28] = row.original;
|
|
151
|
+
$[29] = t14;
|
|
152
|
+
} else t14 = $[29];
|
|
154
153
|
let t15;
|
|
155
|
-
if ($[
|
|
154
|
+
if ($[30] !== row || $[31] !== selectable) {
|
|
156
155
|
t15 = selectable && /* @__PURE__ */ jsx(TableCell, {
|
|
157
156
|
className: classNames(ds_table_row_module_default.tableCell, ds_table_row_module_default.cellCheckbox),
|
|
158
157
|
children: /* @__PURE__ */ jsx(ds_checkbox_default, {
|
|
@@ -166,12 +165,12 @@ const DsTableRow = (t0) => {
|
|
|
166
165
|
onDoubleClick: _temp2
|
|
167
166
|
})
|
|
168
167
|
});
|
|
169
|
-
$[
|
|
170
|
-
$[
|
|
171
|
-
$[
|
|
172
|
-
} else t15 = $[
|
|
168
|
+
$[30] = row;
|
|
169
|
+
$[31] = selectable;
|
|
170
|
+
$[32] = t15;
|
|
171
|
+
} else t15 = $[32];
|
|
173
172
|
let t16;
|
|
174
|
-
if ($[
|
|
173
|
+
if ($[33] !== expandable || $[34] !== isExpandable || $[35] !== isExpanded || $[36] !== row.id || $[37] !== toggleRowExpanded || $[38] !== virtualized) {
|
|
175
174
|
t16 = expandable && /* @__PURE__ */ jsx(TableCell, {
|
|
176
175
|
className: classNames(ds_table_row_module_default.tableCell, ds_table_row_module_default.cellButton),
|
|
177
176
|
children: isExpandable && /* @__PURE__ */ jsx(ds_button_default, {
|
|
@@ -189,29 +188,29 @@ const DsTableRow = (t0) => {
|
|
|
189
188
|
})
|
|
190
189
|
})
|
|
191
190
|
});
|
|
192
|
-
$[
|
|
193
|
-
$[
|
|
194
|
-
$[
|
|
195
|
-
$[
|
|
196
|
-
$[
|
|
197
|
-
$[
|
|
198
|
-
$[
|
|
199
|
-
} else t16 = $[
|
|
191
|
+
$[33] = expandable;
|
|
192
|
+
$[34] = isExpandable;
|
|
193
|
+
$[35] = isExpanded;
|
|
194
|
+
$[36] = row.id;
|
|
195
|
+
$[37] = toggleRowExpanded;
|
|
196
|
+
$[38] = virtualized;
|
|
197
|
+
$[39] = t16;
|
|
198
|
+
} else t16 = $[39];
|
|
200
199
|
let t17;
|
|
201
|
-
if ($[
|
|
200
|
+
if ($[40] !== attributes || $[41] !== isDragging || $[42] !== listeners || $[43] !== reorderable) {
|
|
202
201
|
t17 = reorderable && /* @__PURE__ */ jsx(DsRowDragHandle, {
|
|
203
202
|
isDragging,
|
|
204
203
|
attributes,
|
|
205
204
|
listeners
|
|
206
205
|
});
|
|
207
|
-
$[
|
|
208
|
-
$[
|
|
209
|
-
$[
|
|
210
|
-
$[
|
|
211
|
-
$[
|
|
212
|
-
} else t17 = $[
|
|
206
|
+
$[40] = attributes;
|
|
207
|
+
$[41] = isDragging;
|
|
208
|
+
$[42] = listeners;
|
|
209
|
+
$[43] = reorderable;
|
|
210
|
+
$[44] = t17;
|
|
211
|
+
} else t17 = $[44];
|
|
213
212
|
let t18;
|
|
214
|
-
if ($[
|
|
213
|
+
if ($[45] !== primaryRowActions || $[46] !== row || $[47] !== secondaryRowActions || $[48] !== virtualized) {
|
|
215
214
|
t18 = row.getVisibleCells().map((cell, idx) => {
|
|
216
215
|
const isLastColumn = idx === row.getVisibleCells().length - 1;
|
|
217
216
|
const cellStyle = getColumnStyle(cell.column.getSize(), virtualized, isLastColumn);
|
|
@@ -229,14 +228,14 @@ const DsTableRow = (t0) => {
|
|
|
229
228
|
})
|
|
230
229
|
}, cell.id);
|
|
231
230
|
});
|
|
232
|
-
$[
|
|
233
|
-
$[
|
|
234
|
-
$[
|
|
235
|
-
$[
|
|
236
|
-
$[
|
|
237
|
-
} else t18 = $[
|
|
231
|
+
$[45] = primaryRowActions;
|
|
232
|
+
$[46] = row;
|
|
233
|
+
$[47] = secondaryRowActions;
|
|
234
|
+
$[48] = virtualized;
|
|
235
|
+
$[49] = t18;
|
|
236
|
+
} else t18 = $[49];
|
|
238
237
|
let t19;
|
|
239
|
-
if ($[
|
|
238
|
+
if ($[50] !== rowStyle || $[51] !== t12 || $[52] !== t13 || $[53] !== t14 || $[54] !== t15 || $[55] !== t16 || $[56] !== t17 || $[57] !== t18 || $[58] !== t7 || $[59] !== t8) {
|
|
240
239
|
t19 = /* @__PURE__ */ jsxs(TableRow, {
|
|
241
240
|
ref: t7,
|
|
242
241
|
"data-state": t8,
|
|
@@ -251,20 +250,20 @@ const DsTableRow = (t0) => {
|
|
|
251
250
|
t18
|
|
252
251
|
]
|
|
253
252
|
});
|
|
254
|
-
$[
|
|
255
|
-
$[
|
|
256
|
-
$[
|
|
257
|
-
$[
|
|
258
|
-
$[
|
|
259
|
-
$[
|
|
260
|
-
$[
|
|
261
|
-
$[
|
|
262
|
-
$[
|
|
263
|
-
$[
|
|
264
|
-
$[
|
|
265
|
-
} else t19 = $[
|
|
253
|
+
$[50] = rowStyle;
|
|
254
|
+
$[51] = t12;
|
|
255
|
+
$[52] = t13;
|
|
256
|
+
$[53] = t14;
|
|
257
|
+
$[54] = t15;
|
|
258
|
+
$[55] = t16;
|
|
259
|
+
$[56] = t17;
|
|
260
|
+
$[57] = t18;
|
|
261
|
+
$[58] = t7;
|
|
262
|
+
$[59] = t8;
|
|
263
|
+
$[60] = t19;
|
|
264
|
+
} else t19 = $[60];
|
|
266
265
|
let t20;
|
|
267
|
-
if ($[
|
|
266
|
+
if ($[61] !== isExpandable || $[62] !== isExpanded || $[63] !== renderExpandedRow || $[64] !== reorderable || $[65] !== row || $[66] !== selectable || $[67] !== virtualRow || $[68] !== virtualized) {
|
|
268
267
|
t20 = isExpanded && renderExpandedRow && /* @__PURE__ */ jsx(TableRow, {
|
|
269
268
|
style: virtualRow && virtualized ? { transform: `translateY(${String(virtualRow.start + virtualRow.size)}px)` } : void 0,
|
|
270
269
|
className: ds_table_row_module_default.expandedRow,
|
|
@@ -274,24 +273,24 @@ const DsTableRow = (t0) => {
|
|
|
274
273
|
children: renderExpandedRow(row.original)
|
|
275
274
|
})
|
|
276
275
|
});
|
|
277
|
-
$[
|
|
278
|
-
$[
|
|
279
|
-
$[
|
|
280
|
-
$[
|
|
281
|
-
$[
|
|
282
|
-
$[
|
|
283
|
-
$[
|
|
284
|
-
$[
|
|
285
|
-
$[
|
|
286
|
-
} else t20 = $[
|
|
276
|
+
$[61] = isExpandable;
|
|
277
|
+
$[62] = isExpanded;
|
|
278
|
+
$[63] = renderExpandedRow;
|
|
279
|
+
$[64] = reorderable;
|
|
280
|
+
$[65] = row;
|
|
281
|
+
$[66] = selectable;
|
|
282
|
+
$[67] = virtualRow;
|
|
283
|
+
$[68] = virtualized;
|
|
284
|
+
$[69] = t20;
|
|
285
|
+
} else t20 = $[69];
|
|
287
286
|
let t21;
|
|
288
|
-
if ($[
|
|
287
|
+
if ($[70] !== row.id || $[71] !== t19 || $[72] !== t20) {
|
|
289
288
|
t21 = /* @__PURE__ */ jsxs(React.Fragment, { children: [t19, t20] }, t5);
|
|
290
|
-
$[
|
|
291
|
-
$[
|
|
292
|
-
$[
|
|
293
|
-
$[
|
|
294
|
-
} else t21 = $[
|
|
289
|
+
$[70] = row.id;
|
|
290
|
+
$[71] = t19;
|
|
291
|
+
$[72] = t20;
|
|
292
|
+
$[73] = t21;
|
|
293
|
+
} else t21 = $[73];
|
|
295
294
|
return t21;
|
|
296
295
|
};
|
|
297
296
|
var ds_table_row_default = DsTableRow;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ds-table-row.js","names":["React","classnames","useSortable","CSS","DsIcon","DsCheckbox","DsButton","TableCell","TableRow","DsTableCell","DsTableRowProps","styles","stylesShared","useDsTableContext","mergeRefs","getColumnStyle","DsRowDragHandleProps","isDragging","attributes","ReturnType","listeners","DsRowDragHandle","t0","$","_c","t1","tableCell","cellReorder","t2","t3","t4","rowDragHandle","_temp","t5","DsTableRow","ref","row","virtualRow","expandable","expandedRows","selectable","reorderable","onRowClick","onRowDoubleClick","renderExpandedRow","virtualized","bordered","highlightOnHover","rowSize","toggleRowExpanded","primaryRowActions","secondaryRowActions","activeRowId","isExpanded","id","original","isExpandable","isActive","disabled","setNodeRef","transform","transition","String","start","Transform","toString","background","boxShadow","zIndex","position","rowStyle","t6","t7","t8","getIsSelected","undefined","t9","t10","t11","t12","tableRow","sizeSmall","sizeMedium","sizeLarge","virtualizedRow","clickableRow","highlightHoverRow","rowNoBorder","expanded","t13","t14","t15","cellCheckbox","checkboxContainer","getCanSelect","e","stopPropagation","toggleHandler","getToggleSelectedHandler","_temp2","t16","cellButton","e_1","_temp3","expandToggleButton","pageButtonIcon","t17","t18","getVisibleCells","map","cell","idx","isLastColumn","length","cellStyle","column","getSize","t19","t20","size","expandedRow","t21","e_0","e_2"],"sources":["../../../../../src/components/ds-table/components/ds-table-row/ds-table-row.tsx"],"sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { DsIcon } from '../../../ds-icon';\nimport { DsCheckbox } from '../../../ds-checkbox';\nimport { DsButton } from '../../../ds-button';\nimport { TableCell, TableRow } from '../core-table';\nimport { DsTableCell } from '../ds-table-cell';\nimport type { DsTableRowProps } from './ds-table-row.types';\nimport styles from './ds-table-row.module.scss';\nimport stylesShared from '../../styles/shared/ds-table-shared.module.scss';\nimport { useDsTableContext } from '../../context/ds-table-context';\nimport { mergeRefs } from '../../utils/merge-refs';\nimport { getColumnStyle } from '../../utils/column-styling';\n\ninterface DsRowDragHandleProps {\n\tisDragging: boolean;\n\tattributes: ReturnType<typeof useSortable>['attributes'];\n\tlisteners: ReturnType<typeof useSortable>['listeners'];\n}\n\nconst DsRowDragHandle = ({ isDragging, attributes, listeners }: DsRowDragHandleProps) => {\n\treturn (\n\t\t<TableCell\n\t\t\tclassName={classnames(styles.tableCell, styles.cellReorder, {\n\t\t\t\t[styles.isDragging]: isDragging,\n\t\t\t})}\n\t\t>\n\t\t\t<DsIcon\n\t\t\t\tclassName={styles.rowDragHandle}\n\t\t\t\ticon={isDragging ? 'drag_indicator' : 'arrow_downward'}\n\t\t\t\tsize={isDragging ? 'medium' : 'small'}\n\t\t\t\tonClick={(e: React.MouseEvent) => e.stopPropagation()}\n\t\t\t\t{...attributes}\n\t\t\t\t{...listeners}\n\t\t\t></DsIcon>\n\t\t</TableCell>\n\t);\n};\n\nconst DsTableRow = <TData,>({ ref, row, virtualRow }: DsTableRowProps<TData>) => {\n\tconst {\n\t\texpandable,\n\t\texpandedRows,\n\t\tselectable,\n\t\treorderable,\n\t\tonRowClick,\n\t\tonRowDoubleClick,\n\t\trenderExpandedRow,\n\t\tvirtualized,\n\t\tbordered,\n\t\thighlightOnHover,\n\t\trowSize,\n\t\ttoggleRowExpanded,\n\t\tprimaryRowActions,\n\t\tsecondaryRowActions,\n\t\tactiveRowId,\n\t} = useDsTableContext<TData, unknown>();\n\tconst isExpanded = expandedRows[row.id];\n\tconst isExpandable = typeof expandable === 'function' ? expandable(row.original) : expandable;\n\tconst isActive = activeRowId === row.id;\n\n\tconst { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n\t\tid: row.id,\n\t\tdisabled: !reorderable,\n\t});\n\tconst rowStyle: React.CSSProperties =\n\t\tvirtualRow && virtualized\n\t\t\t? {\n\t\t\t\t\ttransform: `translateY(${String(virtualRow.start)}px)`,\n\t\t\t\t}\n\t\t\t: reorderable\n\t\t\t\t? {\n\t\t\t\t\t\t// Convert DND-kit's transform coordinates to CSS transform string\n\t\t\t\t\t\ttransform: CSS.Transform.toString(transform),\n\t\t\t\t\t\ttransition,\n\t\t\t\t\t\t...(isDragging\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tbackground: 'var(--action-active-light)',\n\t\t\t\t\t\t\t\t\tboxShadow: '0 0 12px 0 rgba(0, 102, 250, 0.60)',\n\t\t\t\t\t\t\t\t\tzIndex: 1,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}),\n\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t}\n\t\t\t\t: {};\n\n\treturn (\n\t\t<React.Fragment key={row.id}>\n\t\t\t<TableRow\n\t\t\t\tref={mergeRefs(reorderable ? setNodeRef : null, ref)}\n\t\t\t\tdata-state={isActive ? 'active' : row.getIsSelected() ? 'selected' : undefined}\n\t\t\t\tclassName={classnames(\n\t\t\t\t\tstyles.tableRow,\n\t\t\t\t\t{\n\t\t\t\t\t\t[styles.sizeSmall]: rowSize === 'small',\n\t\t\t\t\t\t[styles.sizeMedium]: rowSize === 'medium',\n\t\t\t\t\t\t[styles.sizeLarge]: rowSize === 'large',\n\t\t\t\t\t},\n\t\t\t\t\tvirtualized && styles.virtualizedRow,\n\t\t\t\t\tonRowClick && styles.clickableRow,\n\t\t\t\t\thighlightOnHover && styles.highlightHoverRow,\n\t\t\t\t\t!bordered && styles.rowNoBorder,\n\t\t\t\t\tisExpanded && styles.expanded,\n\t\t\t\t)}\n\t\t\t\tstyle={rowStyle}\n\t\t\t\tonClick={() => onRowClick?.(row.original)}\n\t\t\t\tonDoubleClick={() => onRowDoubleClick?.(row.original)}\n\t\t\t>\n\t\t\t\t{selectable && (\n\t\t\t\t\t<TableCell className={classnames(styles.tableCell, styles.cellCheckbox)}>\n\t\t\t\t\t\t<DsCheckbox\n\t\t\t\t\t\t\tclassName={stylesShared.checkboxContainer}\n\t\t\t\t\t\t\tchecked={row.getIsSelected()}\n\t\t\t\t\t\t\tdisabled={!row.getCanSelect()}\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tconst toggleHandler = row.getToggleSelectedHandler();\n\t\t\t\t\t\t\t\ttoggleHandler(e);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonDoubleClick={(e: React.MouseEvent) => {\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableCell>\n\t\t\t\t)}\n\t\t\t\t{expandable && (\n\t\t\t\t\t<TableCell className={classnames(styles.tableCell, styles.cellButton)}>\n\t\t\t\t\t\t{isExpandable && (\n\t\t\t\t\t\t\t<DsButton\n\t\t\t\t\t\t\t\tvariant={virtualized ? 'ghost' : 'borderless'}\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\tonClick={(e: React.MouseEvent) => {\n\t\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\t\ttoggleRowExpanded(row.id);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tonDoubleClick={(e: React.MouseEvent) => {\n\t\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tclassName={styles.expandToggleButton}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<DsIcon\n\t\t\t\t\t\t\t\t\ticon={virtualized ? (isExpanded ? 'arrow_drop_down' : 'arrow_right') : 'chevron_right'}\n\t\t\t\t\t\t\t\t\tclassName={classnames(\n\t\t\t\t\t\t\t\t\t\tstylesShared.pageButtonIcon,\n\t\t\t\t\t\t\t\t\t\t!virtualized && isExpanded && 'rotate-90',\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</DsButton>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</TableCell>\n\t\t\t\t)}\n\t\t\t\t{reorderable && (\n\t\t\t\t\t<DsRowDragHandle isDragging={isDragging} attributes={attributes} listeners={listeners} />\n\t\t\t\t)}\n\t\t\t\t{row.getVisibleCells().map((cell, idx) => {\n\t\t\t\t\tconst isLastColumn = idx === row.getVisibleCells().length - 1;\n\t\t\t\t\tconst cellStyle = getColumnStyle(cell.column.getSize(), virtualized, isLastColumn);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<TableCell key={cell.id} className={styles.tableCell} style={cellStyle}>\n\t\t\t\t\t\t\t{isLastColumn ? (\n\t\t\t\t\t\t\t\t<DsTableCell\n\t\t\t\t\t\t\t\t\trow={row}\n\t\t\t\t\t\t\t\t\tcell={cell}\n\t\t\t\t\t\t\t\t\tprimaryRowActions={primaryRowActions}\n\t\t\t\t\t\t\t\t\tsecondaryRowActions={secondaryRowActions}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<DsTableCell row={row} cell={cell} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</TableRow>\n\t\t\t{isExpanded && renderExpandedRow && (\n\t\t\t\t<TableRow\n\t\t\t\t\tstyle={\n\t\t\t\t\t\tvirtualRow && virtualized\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\ttransform: `translateY(${String(virtualRow.start + virtualRow.size)}px)`,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tclassName={styles.expandedRow}\n\t\t\t\t>\n\t\t\t\t\t<TableCell\n\t\t\t\t\t\tcolSpan={\n\t\t\t\t\t\t\trow.getVisibleCells().length +\n\t\t\t\t\t\t\t(selectable ? 1 : 0) +\n\t\t\t\t\t\t\t(isExpandable ? 1 : 0) +\n\t\t\t\t\t\t\t(reorderable ? 1 : 0)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclassName={styles.tableCell}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderExpandedRow(row.original)}\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t)}\n\t\t</React.Fragment>\n\t);\n};\n\nexport default DsTableRow;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ds-table-row.js","names":["React","classnames","useSortable","CSS","DsIcon","DsCheckbox","DsButton","TableCell","TableRow","DsTableCell","DsTableRowProps","styles","stylesShared","useDsTableContext","mergeRefs","getColumnStyle","DsRowDragHandleProps","isDragging","attributes","ReturnType","listeners","DsRowDragHandle","t0","$","_c","t1","tableCell","cellReorder","t2","t3","t4","rowDragHandle","_temp","t5","DsTableRow","ref","row","virtualRow","expandable","expandedRows","selectable","reorderable","onRowClick","onRowDoubleClick","renderExpandedRow","virtualized","bordered","rowSize","toggleRowExpanded","primaryRowActions","secondaryRowActions","activeRowId","isExpanded","id","original","isExpandable","isActive","disabled","setNodeRef","transform","transition","String","start","Transform","toString","background","boxShadow","zIndex","position","rowStyle","t6","t7","t8","getIsSelected","undefined","t9","t10","t11","t12","tableRow","sizeSmall","sizeMedium","sizeLarge","virtualizedRow","clickableRow","rowNoBorder","expanded","t13","t14","t15","cellCheckbox","checkboxContainer","getCanSelect","e","stopPropagation","toggleHandler","getToggleSelectedHandler","_temp2","t16","cellButton","e_1","_temp3","expandToggleButton","pageButtonIcon","t17","t18","getVisibleCells","map","cell","idx","isLastColumn","length","cellStyle","column","getSize","t19","t20","size","expandedRow","t21","e_0","e_2"],"sources":["../../../../../src/components/ds-table/components/ds-table-row/ds-table-row.tsx"],"sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { DsIcon } from '../../../ds-icon';\nimport { DsCheckbox } from '../../../ds-checkbox';\nimport { DsButton } from '../../../ds-button';\nimport { TableCell, TableRow } from '../core-table';\nimport { DsTableCell } from '../ds-table-cell';\nimport type { DsTableRowProps } from './ds-table-row.types';\nimport styles from './ds-table-row.module.scss';\nimport stylesShared from '../../styles/shared/ds-table-shared.module.scss';\nimport { useDsTableContext } from '../../context/ds-table-context';\nimport { mergeRefs } from '../../utils/merge-refs';\nimport { getColumnStyle } from '../../utils/column-styling';\n\ninterface DsRowDragHandleProps {\n\tisDragging: boolean;\n\tattributes: ReturnType<typeof useSortable>['attributes'];\n\tlisteners: ReturnType<typeof useSortable>['listeners'];\n}\n\nconst DsRowDragHandle = ({ isDragging, attributes, listeners }: DsRowDragHandleProps) => {\n\treturn (\n\t\t<TableCell\n\t\t\tclassName={classnames(styles.tableCell, styles.cellReorder, {\n\t\t\t\t[styles.isDragging]: isDragging,\n\t\t\t})}\n\t\t>\n\t\t\t<DsIcon\n\t\t\t\tclassName={styles.rowDragHandle}\n\t\t\t\ticon={isDragging ? 'drag_indicator' : 'arrow_downward'}\n\t\t\t\tsize={isDragging ? 'medium' : 'small'}\n\t\t\t\tonClick={(e: React.MouseEvent) => e.stopPropagation()}\n\t\t\t\t{...attributes}\n\t\t\t\t{...listeners}\n\t\t\t></DsIcon>\n\t\t</TableCell>\n\t);\n};\n\nconst DsTableRow = <TData,>({ ref, row, virtualRow }: DsTableRowProps<TData>) => {\n\tconst {\n\t\texpandable,\n\t\texpandedRows,\n\t\tselectable,\n\t\treorderable,\n\t\tonRowClick,\n\t\tonRowDoubleClick,\n\t\trenderExpandedRow,\n\t\tvirtualized,\n\t\tbordered,\n\t\trowSize,\n\t\ttoggleRowExpanded,\n\t\tprimaryRowActions,\n\t\tsecondaryRowActions,\n\t\tactiveRowId,\n\t} = useDsTableContext<TData, unknown>();\n\tconst isExpanded = expandedRows[row.id];\n\tconst isExpandable = typeof expandable === 'function' ? expandable(row.original) : expandable;\n\tconst isActive = activeRowId === row.id;\n\n\tconst { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n\t\tid: row.id,\n\t\tdisabled: !reorderable,\n\t});\n\tconst rowStyle: React.CSSProperties =\n\t\tvirtualRow && virtualized\n\t\t\t? {\n\t\t\t\t\ttransform: `translateY(${String(virtualRow.start)}px)`,\n\t\t\t\t}\n\t\t\t: reorderable\n\t\t\t\t? {\n\t\t\t\t\t\t// Convert DND-kit's transform coordinates to CSS transform string\n\t\t\t\t\t\ttransform: CSS.Transform.toString(transform),\n\t\t\t\t\t\ttransition,\n\t\t\t\t\t\t...(isDragging\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tbackground: 'var(--action-active-light)',\n\t\t\t\t\t\t\t\t\tboxShadow: '0 0 12px 0 rgba(0, 102, 250, 0.60)',\n\t\t\t\t\t\t\t\t\tzIndex: 1,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}),\n\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t}\n\t\t\t\t: {};\n\n\treturn (\n\t\t<React.Fragment key={row.id}>\n\t\t\t<TableRow\n\t\t\t\tref={mergeRefs(reorderable ? setNodeRef : null, ref)}\n\t\t\t\tdata-state={isActive ? 'active' : row.getIsSelected() ? 'selected' : undefined}\n\t\t\t\tclassName={classnames(\n\t\t\t\t\tstyles.tableRow,\n\t\t\t\t\t{\n\t\t\t\t\t\t[styles.sizeSmall]: rowSize === 'small',\n\t\t\t\t\t\t[styles.sizeMedium]: rowSize === 'medium',\n\t\t\t\t\t\t[styles.sizeLarge]: rowSize === 'large',\n\t\t\t\t\t},\n\t\t\t\t\tvirtualized && styles.virtualizedRow,\n\t\t\t\t\tonRowClick && styles.clickableRow,\n\t\t\t\t\t!bordered && styles.rowNoBorder,\n\t\t\t\t\tisExpanded && styles.expanded,\n\t\t\t\t)}\n\t\t\t\tstyle={rowStyle}\n\t\t\t\tonClick={() => onRowClick?.(row.original)}\n\t\t\t\tonDoubleClick={() => onRowDoubleClick?.(row.original)}\n\t\t\t>\n\t\t\t\t{selectable && (\n\t\t\t\t\t<TableCell className={classnames(styles.tableCell, styles.cellCheckbox)}>\n\t\t\t\t\t\t<DsCheckbox\n\t\t\t\t\t\t\tclassName={stylesShared.checkboxContainer}\n\t\t\t\t\t\t\tchecked={row.getIsSelected()}\n\t\t\t\t\t\t\tdisabled={!row.getCanSelect()}\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tconst toggleHandler = row.getToggleSelectedHandler();\n\t\t\t\t\t\t\t\ttoggleHandler(e);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonDoubleClick={(e: React.MouseEvent) => {\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableCell>\n\t\t\t\t)}\n\t\t\t\t{expandable && (\n\t\t\t\t\t<TableCell className={classnames(styles.tableCell, styles.cellButton)}>\n\t\t\t\t\t\t{isExpandable && (\n\t\t\t\t\t\t\t<DsButton\n\t\t\t\t\t\t\t\tvariant={virtualized ? 'ghost' : 'borderless'}\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\tonClick={(e: React.MouseEvent) => {\n\t\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\t\ttoggleRowExpanded(row.id);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tonDoubleClick={(e: React.MouseEvent) => {\n\t\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tclassName={styles.expandToggleButton}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<DsIcon\n\t\t\t\t\t\t\t\t\ticon={virtualized ? (isExpanded ? 'arrow_drop_down' : 'arrow_right') : 'chevron_right'}\n\t\t\t\t\t\t\t\t\tclassName={classnames(\n\t\t\t\t\t\t\t\t\t\tstylesShared.pageButtonIcon,\n\t\t\t\t\t\t\t\t\t\t!virtualized && isExpanded && 'rotate-90',\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</DsButton>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</TableCell>\n\t\t\t\t)}\n\t\t\t\t{reorderable && (\n\t\t\t\t\t<DsRowDragHandle isDragging={isDragging} attributes={attributes} listeners={listeners} />\n\t\t\t\t)}\n\t\t\t\t{row.getVisibleCells().map((cell, idx) => {\n\t\t\t\t\tconst isLastColumn = idx === row.getVisibleCells().length - 1;\n\t\t\t\t\tconst cellStyle = getColumnStyle(cell.column.getSize(), virtualized, isLastColumn);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<TableCell key={cell.id} className={styles.tableCell} style={cellStyle}>\n\t\t\t\t\t\t\t{isLastColumn ? (\n\t\t\t\t\t\t\t\t<DsTableCell\n\t\t\t\t\t\t\t\t\trow={row}\n\t\t\t\t\t\t\t\t\tcell={cell}\n\t\t\t\t\t\t\t\t\tprimaryRowActions={primaryRowActions}\n\t\t\t\t\t\t\t\t\tsecondaryRowActions={secondaryRowActions}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<DsTableCell row={row} cell={cell} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</TableRow>\n\t\t\t{isExpanded && renderExpandedRow && (\n\t\t\t\t<TableRow\n\t\t\t\t\tstyle={\n\t\t\t\t\t\tvirtualRow && virtualized\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\ttransform: `translateY(${String(virtualRow.start + virtualRow.size)}px)`,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tclassName={styles.expandedRow}\n\t\t\t\t>\n\t\t\t\t\t<TableCell\n\t\t\t\t\t\tcolSpan={\n\t\t\t\t\t\t\trow.getVisibleCells().length +\n\t\t\t\t\t\t\t(selectable ? 1 : 0) +\n\t\t\t\t\t\t\t(isExpandable ? 1 : 0) +\n\t\t\t\t\t\t\t(reorderable ? 1 : 0)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclassName={styles.tableCell}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderExpandedRow(row.original)}\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t)}\n\t\t</React.Fragment>\n\t);\n};\n\nexport default DsTableRow;\n"],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ const ROW_SIZE_HEIGHT_MAP = {
|
|
|
28
28
|
/**
|
|
29
29
|
* Design system Table component
|
|
30
30
|
*/
|
|
31
|
-
const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualizedOptions, className, onRowClick, emptyState, stickyHeader = true, bordered = true, fullWidth = true,
|
|
31
|
+
const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualizedOptions, className, onRowClick, emptyState, stickyHeader = true, bordered = true, fullWidth = true, rowSize = "medium", expandable = false, renderExpandedRow, selectable = false, showSelectAllCheckbox = true, onSelectionChange, onSortingChange, onScroll, actions = [], onRowDoubleClick, primaryRowActions = [], secondaryRowActions, reorderable = false, onOrderChange, columnFilters: externalColumnFilters, onColumnFiltersChange, columnVisibility: externalColumnVisibility, onColumnVisibilityChange, activeRowId }) => {
|
|
32
32
|
const [data, setData] = react.useState(tableData);
|
|
33
33
|
const [sorting, setSorting] = react.useState([]);
|
|
34
34
|
const [internalColumnFilters, setInternalColumnFilters] = react.useState([]);
|
|
@@ -140,12 +140,11 @@ const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualiz
|
|
|
140
140
|
className: require_ds_table_module.default.emptyState,
|
|
141
141
|
children: emptyState || "No results."
|
|
142
142
|
}) });
|
|
143
|
-
const selectedRows = Object.entries(rowSelection).filter(([, selected]) => selected).map(([key]) => rowsById[key]?.original).filter(
|
|
143
|
+
const selectedRows = Object.entries(rowSelection).filter(([, selected]) => selected).map(([key]) => rowsById[key]?.original).filter((v) => !!v);
|
|
144
144
|
const contextValue = {
|
|
145
145
|
stickyHeader,
|
|
146
146
|
bordered,
|
|
147
147
|
fullWidth,
|
|
148
|
-
highlightOnHover,
|
|
149
148
|
rowSize,
|
|
150
149
|
expandable,
|
|
151
150
|
selectable,
|
|
@@ -177,6 +176,7 @@ const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualiz
|
|
|
177
176
|
className: (0, classnames.default)(virtualized && require_ds_table_module.default.virtualizedBody),
|
|
178
177
|
children: virtualized ? rowVirtualizer.getVirtualItems().length ? rowVirtualizer.getVirtualItems().map((virtualRow) => {
|
|
179
178
|
const row_1 = rows[virtualRow.index];
|
|
179
|
+
if (!row_1) return null;
|
|
180
180
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_ds_table_row.default, {
|
|
181
181
|
row: row_1,
|
|
182
182
|
virtualRow
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DsDataTableProps } from "./ds-table.types.cjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime46 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/ds-table/ds-table.d.ts
|
|
5
5
|
/**
|
|
@@ -19,7 +19,6 @@ declare const DsTable: <TData extends {
|
|
|
19
19
|
stickyHeader,
|
|
20
20
|
bordered,
|
|
21
21
|
fullWidth,
|
|
22
|
-
highlightOnHover,
|
|
23
22
|
rowSize,
|
|
24
23
|
expandable,
|
|
25
24
|
renderExpandedRow,
|
|
@@ -39,7 +38,7 @@ declare const DsTable: <TData extends {
|
|
|
39
38
|
columnVisibility: externalColumnVisibility,
|
|
40
39
|
onColumnVisibilityChange,
|
|
41
40
|
activeRowId
|
|
42
|
-
}: DsDataTableProps<TData, TValue>) =>
|
|
41
|
+
}: DsDataTableProps<TData, TValue>) => react_jsx_runtime46.JSX.Element;
|
|
43
42
|
//#endregion
|
|
44
43
|
export { DsTable };
|
|
45
44
|
//# sourceMappingURL=ds-table.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ds-table.d.cts","names":[],"sources":["../../../src/components/ds-table/ds-table.tsx"],"sourcesContent":[],"mappings":";;;;;;;AAkByE,cAgBnE,
|
|
1
|
+
{"version":3,"file":"ds-table.d.cts","names":[],"sources":["../../../src/components/ds-table/ds-table.tsx"],"sourcesContent":[],"mappings":";;;;;;;AAkByE,cAgBnE,OAoRL,EAAA,CAAA,cAAA;EApRsD,EAAA,EAAA,MAAA;CAAA,EAAA,MAAA,CAAA,CAAA;EAAA,GAAA;EAAA,OAAA;EAAA,IAAA,EAAA,SAAA;EAAA,WAAA;EAAA,kBAAA;EAAA,SAAA;EAAA,UAAA;EAAA,UAAA;EAAA,YAAA;EAAA,QAAA;EAAA,SAAA;EAAA,OAAA;EAAA,UAAA;EAAA,iBAAA;EAAA,UAAA;EAAA,qBAAA;EAAA,iBAAA;EAAA,eAAA;EAAA,QAAA;EAAA,OAAA;EAAA,gBAAA;EAAA,iBAAA;EAAA,mBAAA;EAAA,WAAA;EAAA,aAAA;EAAA,aAAA,EAAA,qBAAA;EAAA,qBAAA;EAAA,gBAAA,EAAA,wBAAA;EAAA,wBAAA;EAAA;AAAA,CAAA,EA+BpD,gBA/BoD,CA+BnC,KA/BmC,EA+B5B,MA/B4B,CAAA,EAAA,GA+BrB,mBAAA,CAAA,GAAA,CAAA,OA/BqB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DsDataTableProps } from "./ds-table.types.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime60 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/ds-table/ds-table.d.ts
|
|
5
5
|
/**
|
|
@@ -19,7 +19,6 @@ declare const DsTable: <TData extends {
|
|
|
19
19
|
stickyHeader,
|
|
20
20
|
bordered,
|
|
21
21
|
fullWidth,
|
|
22
|
-
highlightOnHover,
|
|
23
22
|
rowSize,
|
|
24
23
|
expandable,
|
|
25
24
|
renderExpandedRow,
|
|
@@ -39,7 +38,7 @@ declare const DsTable: <TData extends {
|
|
|
39
38
|
columnVisibility: externalColumnVisibility,
|
|
40
39
|
onColumnVisibilityChange,
|
|
41
40
|
activeRowId
|
|
42
|
-
}: DsDataTableProps<TData, TValue>) =>
|
|
41
|
+
}: DsDataTableProps<TData, TValue>) => react_jsx_runtime60.JSX.Element;
|
|
43
42
|
//#endregion
|
|
44
43
|
export { DsTable };
|
|
45
44
|
//# sourceMappingURL=ds-table.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ds-table.d.ts","names":[],"sources":["../../../src/components/ds-table/ds-table.tsx"],"sourcesContent":[],"mappings":";;;;;;;AAkByE,cAgBnE,
|
|
1
|
+
{"version":3,"file":"ds-table.d.ts","names":[],"sources":["../../../src/components/ds-table/ds-table.tsx"],"sourcesContent":[],"mappings":";;;;;;;AAkByE,cAgBnE,OAoRL,EAAA,CAAA,cAAA;EApRsD,EAAA,EAAA,MAAA;CAAA,EAAA,MAAA,CAAA,CAAA;EAAA,GAAA;EAAA,OAAA;EAAA,IAAA,EAAA,SAAA;EAAA,WAAA;EAAA,kBAAA;EAAA,SAAA;EAAA,UAAA;EAAA,UAAA;EAAA,YAAA;EAAA,QAAA;EAAA,SAAA;EAAA,OAAA;EAAA,UAAA;EAAA,iBAAA;EAAA,UAAA;EAAA,qBAAA;EAAA,iBAAA;EAAA,eAAA;EAAA,QAAA;EAAA,OAAA;EAAA,gBAAA;EAAA,iBAAA;EAAA,mBAAA;EAAA,WAAA;EAAA,aAAA;EAAA,aAAA,EAAA,qBAAA;EAAA,qBAAA;EAAA,gBAAA,EAAA,wBAAA;EAAA,wBAAA;EAAA;AAAA,CAAA,EA+BpD,gBA/BoD,CA+BnC,KA/BmC,EA+B5B,MA/B4B,CAAA,EAAA,GA+BrB,mBAAA,CAAA,GAAA,CAAA,OA/BqB"}
|
|
@@ -26,7 +26,7 @@ const ROW_SIZE_HEIGHT_MAP = {
|
|
|
26
26
|
/**
|
|
27
27
|
* Design system Table component
|
|
28
28
|
*/
|
|
29
|
-
const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualizedOptions, className, onRowClick, emptyState, stickyHeader = true, bordered = true, fullWidth = true,
|
|
29
|
+
const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualizedOptions, className, onRowClick, emptyState, stickyHeader = true, bordered = true, fullWidth = true, rowSize = "medium", expandable = false, renderExpandedRow, selectable = false, showSelectAllCheckbox = true, onSelectionChange, onSortingChange, onScroll, actions = [], onRowDoubleClick, primaryRowActions = [], secondaryRowActions, reorderable = false, onOrderChange, columnFilters: externalColumnFilters, onColumnFiltersChange, columnVisibility: externalColumnVisibility, onColumnVisibilityChange, activeRowId }) => {
|
|
30
30
|
const [data, setData] = React$1.useState(tableData);
|
|
31
31
|
const [sorting, setSorting] = React$1.useState([]);
|
|
32
32
|
const [internalColumnFilters, setInternalColumnFilters] = React$1.useState([]);
|
|
@@ -138,12 +138,11 @@ const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualiz
|
|
|
138
138
|
className: ds_table_module_default.emptyState,
|
|
139
139
|
children: emptyState || "No results."
|
|
140
140
|
}) });
|
|
141
|
-
const selectedRows = Object.entries(rowSelection).filter(([, selected]) => selected).map(([key]) => rowsById[key]?.original).filter(
|
|
141
|
+
const selectedRows = Object.entries(rowSelection).filter(([, selected]) => selected).map(([key]) => rowsById[key]?.original).filter((v) => !!v);
|
|
142
142
|
const contextValue = {
|
|
143
143
|
stickyHeader,
|
|
144
144
|
bordered,
|
|
145
145
|
fullWidth,
|
|
146
|
-
highlightOnHover,
|
|
147
146
|
rowSize,
|
|
148
147
|
expandable,
|
|
149
148
|
selectable,
|
|
@@ -175,6 +174,7 @@ const DsTable = ({ ref, columns, data: tableData, virtualized = false, virtualiz
|
|
|
175
174
|
className: classNames(virtualized && ds_table_module_default.virtualizedBody),
|
|
176
175
|
children: virtualized ? rowVirtualizer.getVirtualItems().length ? rowVirtualizer.getVirtualItems().map((virtualRow) => {
|
|
177
176
|
const row_1 = rows[virtualRow.index];
|
|
177
|
+
if (!row_1) return null;
|
|
178
178
|
return /* @__PURE__ */ jsx(ds_table_row_default, {
|
|
179
179
|
row: row_1,
|
|
180
180
|
virtualRow
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ds-table.js","names":["React","useImperativeHandle","RowSelectionState","ColumnFiltersState","getCoreRowModel","getFilteredRowModel","getSortedRowModel","SortingState","useReactTable","VisibilityState","useVirtualizer","VirtualItem","classnames","Table","TableBody","TableCell","TableRow","DsTableBulkActions","DsTableHeader","styles","DsDataTableProps","DsTableRowSize","DsTableRow","useDragAndDrop","DsTableContextType","DsTableContext","createColumnsGridTemplate","ROW_SIZE_HEIGHT_MAP","Record","small","medium","large","DsTable","id","ref","columns","data","tableData","virtualized","virtualizedOptions","className","onRowClick","emptyState","stickyHeader","bordered","fullWidth","highlightOnHover","rowSize","expandable","renderExpandedRow","selectable","showSelectAllCheckbox","onSelectionChange","onSortingChange","onScroll","actions","onRowDoubleClick","primaryRowActions","secondaryRowActions","reorderable","onOrderChange","columnFilters","externalColumnFilters","onColumnFiltersChange","columnVisibility","externalColumnVisibility","onColumnVisibilityChange","activeRowId","TData","TValue","setData","useState","sorting","setSorting","internalColumnFilters","setInternalColumnFilters","internalColumnVisibility","setInternalColumnVisibility","rowSelection","setRowSelection","expandedRows","setExpandedRows","DragWrapper","SortableWrapper","isDragEnabled","newData","items","tableContainerRef","useRef","HTMLDivElement","handleColumnFiltersChange","updaterOrValue","old","newFilters","handleColumnVisibilityChange","newVisibility","handleSortingChange","newSorting","handleRowSelectionChange","newRowSelection","table","onRowSelectionChange","getRowId","row","state","enableRowSelection","original","selectRow","rowId","getRow","toggleSelected","deselectRow","selectAllRows","toggleAllRowsSelected","deselectAllRows","selectRows","rowIds","selection","forEach","getSelectedRows","getFilteredSelectedRowModel","rows","map","r","rowsById","getRowModel","rowVirtualizer","count","length","getScrollElement","current","estimateSize","overscan","onChange","instance","sync","scrollOffset","totalContentHeight","getTotalSize","viewportHeight","scrollElement","clientHeight","toggleRowExpanded","prev","renderEmptyState","emptyStateVirtualized","selectedRows","Object","entries","filter","selected","key","Boolean","contextValue","container","dataTableContainer","virtualizedContainer","CSSProperties","undefined","tableNoBorder","height","String","virtualizedBody","getVirtualItems","virtualRow","index","action","onClick","resetRowSelection"],"sources":["../../../src/components/ds-table/ds-table.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useImperativeHandle } from 'react';\nimport {\n\ttype RowSelectionState,\n\ttype ColumnFiltersState,\n\tgetCoreRowModel,\n\tgetFilteredRowModel,\n\tgetSortedRowModel,\n\ttype SortingState,\n\tuseReactTable,\n\ttype VisibilityState,\n} from '@tanstack/react-table';\nimport { useVirtualizer, type VirtualItem } from '@tanstack/react-virtual';\nimport classnames from 'classnames';\nimport { Table, TableBody, TableCell, TableRow } from './components/core-table';\nimport { DsTableBulkActions } from './components/ds-table-bulk-actions';\nimport { DsTableHeader } from './components/ds-table-header';\nimport styles from './ds-table.module.scss';\nimport type { DsDataTableProps, DsTableRowSize } from './ds-table.types';\nimport { DsTableRow } from './components/ds-table-row';\nimport { useDragAndDrop } from './hooks/use-drag-and-drop';\nimport { type DsTableContextType, DsTableContext } from './context/ds-table-context';\nimport { createColumnsGridTemplate } from './utils/create-columns-grid-template';\n\n// Row size to pixel height mapping (matches CSS variables)\nconst ROW_SIZE_HEIGHT_MAP: Record<DsTableRowSize, number> = {\n\tsmall: 36,\n\tmedium: 48,\n\tlarge: 64,\n};\n\n/**\n * Design system Table component\n */\nconst DsTable = <TData extends { id: string }, TValue>({\n\tref,\n\tcolumns,\n\tdata: tableData,\n\tvirtualized = false,\n\tvirtualizedOptions,\n\tclassName,\n\tonRowClick,\n\temptyState,\n\tstickyHeader = true,\n\tbordered = true,\n\tfullWidth = true,\n\thighlightOnHover = true,\n\trowSize = 'medium',\n\texpandable = false,\n\trenderExpandedRow,\n\tselectable = false,\n\tshowSelectAllCheckbox = true,\n\tonSelectionChange,\n\tonSortingChange,\n\tonScroll,\n\tactions = [],\n\tonRowDoubleClick,\n\tprimaryRowActions = [],\n\tsecondaryRowActions,\n\treorderable = false,\n\tonOrderChange,\n\tcolumnFilters: externalColumnFilters,\n\tonColumnFiltersChange,\n\tcolumnVisibility: externalColumnVisibility,\n\tonColumnVisibilityChange,\n\tactiveRowId,\n}: DsDataTableProps<TData, TValue>) => {\n\tconst [data, setData] = React.useState(tableData);\n\tconst [sorting, setSorting] = React.useState<SortingState>([]);\n\tconst [internalColumnFilters, setInternalColumnFilters] = React.useState<ColumnFiltersState>([]);\n\tconst [internalColumnVisibility, setInternalColumnVisibility] = React.useState<VisibilityState>({});\n\tconst [rowSelection, setRowSelection] = React.useState<RowSelectionState>({});\n\tconst [expandedRows, setExpandedRows] = React.useState<Record<string, boolean>>({});\n\n\tconst { DragWrapper, SortableWrapper } = useDragAndDrop<TData>({\n\t\tisDragEnabled: reorderable && !virtualized,\n\t\tonOrderChange: (newData) => {\n\t\t\tsetData(newData);\n\t\t\tonOrderChange?.(newData);\n\t\t},\n\t\titems: data,\n\t});\n\n\tconst tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n\tconst columnFilters = externalColumnFilters ?? internalColumnFilters;\n\tconst handleColumnFiltersChange = (\n\t\tupdaterOrValue: ColumnFiltersState | ((old: ColumnFiltersState) => ColumnFiltersState),\n\t) => {\n\t\tconst newFilters = typeof updaterOrValue === 'function' ? updaterOrValue(columnFilters) : updaterOrValue;\n\t\tif (onColumnFiltersChange) {\n\t\t\tonColumnFiltersChange(newFilters);\n\t\t} else {\n\t\t\tsetInternalColumnFilters(newFilters);\n\t\t}\n\t};\n\n\tconst columnVisibility = externalColumnVisibility ?? internalColumnVisibility;\n\tconst handleColumnVisibilityChange = (\n\t\tupdaterOrValue: VisibilityState | ((old: VisibilityState) => VisibilityState),\n\t) => {\n\t\tconst newVisibility =\n\t\t\ttypeof updaterOrValue === 'function' ? updaterOrValue(columnVisibility) : updaterOrValue;\n\n\t\tif (onColumnVisibilityChange) {\n\t\t\tonColumnVisibilityChange(newVisibility);\n\t\t} else {\n\t\t\tsetInternalColumnVisibility(newVisibility);\n\t\t}\n\t};\n\n\tconst handleSortingChange = (updaterOrValue: SortingState | ((old: SortingState) => SortingState)) => {\n\t\tconst newSorting = typeof updaterOrValue === 'function' ? updaterOrValue(sorting) : updaterOrValue;\n\t\tsetSorting(newSorting);\n\t\tonSortingChange?.(newSorting);\n\t};\n\n\tconst handleRowSelectionChange = (\n\t\tupdaterOrValue: RowSelectionState | ((old: RowSelectionState) => RowSelectionState),\n\t) => {\n\t\tconst newRowSelection =\n\t\t\ttypeof updaterOrValue === 'function' ? updaterOrValue(rowSelection) : updaterOrValue;\n\t\tsetRowSelection(newRowSelection);\n\t\tonSelectionChange?.(newRowSelection);\n\t};\n\n\tconst table = useReactTable({\n\t\tdata: reorderable ? data : tableData,\n\t\tcolumns,\n\t\tgetCoreRowModel: getCoreRowModel(),\n\t\tonSortingChange: handleSortingChange,\n\t\tgetSortedRowModel: getSortedRowModel(),\n\t\tonColumnFiltersChange: handleColumnFiltersChange,\n\t\tgetFilteredRowModel: getFilteredRowModel(),\n\t\tonColumnVisibilityChange: handleColumnVisibilityChange,\n\t\tonRowSelectionChange: handleRowSelectionChange,\n\t\tgetRowId: (row) => row.id,\n\t\tstate: {\n\t\t\tsorting,\n\t\t\tcolumnFilters,\n\t\t\tcolumnVisibility,\n\t\t\trowSelection,\n\t\t},\n\t\tenableRowSelection: typeof selectable === 'function' ? (row) => selectable(row.original) : selectable,\n\t});\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tselectRow: (rowId: string) => {\n\t\t\t\ttable.getRow(rowId).toggleSelected(true);\n\t\t\t},\n\t\t\tdeselectRow: (rowId: string) => {\n\t\t\t\ttable.getRow(rowId).toggleSelected(false);\n\t\t\t},\n\t\t\tselectAllRows: () => {\n\t\t\t\ttable.toggleAllRowsSelected(true);\n\t\t\t},\n\t\t\tdeselectAllRows: () => {\n\t\t\t\ttable.toggleAllRowsSelected(false);\n\t\t\t},\n\t\t\tselectRows: (rowIds: string[]) => {\n\t\t\t\tconst selection: Record<string, boolean> = {};\n\t\t\t\trowIds.forEach((id) => (selection[id] = true));\n\t\t\t\ttable.setRowSelection(selection);\n\t\t\t},\n\t\t\tgetSelectedRows: () => {\n\t\t\t\treturn table.getFilteredSelectedRowModel().rows.map((r) => r.original);\n\t\t\t},\n\t\t}),\n\t\t[table],\n\t);\n\n\tconst { rows, rowsById } = table.getRowModel();\n\n\tconst rowVirtualizer = useVirtualizer({\n\t\tcount: rows.length,\n\t\tgetScrollElement: () => tableContainerRef.current,\n\t\t// estimate row height for accurate scrollbar dragging\n\t\testimateSize: () => virtualizedOptions?.estimateSize || ROW_SIZE_HEIGHT_MAP[rowSize],\n\t\toverscan: virtualizedOptions?.overscan || 5,\n\t\tonChange: (instance, sync) => {\n\t\t\tif (sync && onScroll) {\n\t\t\t\tconst scrollOffset = instance.scrollOffset || 0;\n\t\t\t\tconst totalContentHeight = instance.getTotalSize();\n\t\t\t\tconst viewportHeight = instance.scrollElement?.clientHeight;\n\n\t\t\t\tif (viewportHeight) {\n\t\t\t\t\tonScroll({ scrollOffset, totalContentHeight, viewportHeight });\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t});\n\n\tconst toggleRowExpanded = (rowId: string) => {\n\t\tsetExpandedRows((prev) => ({\n\t\t\t...prev,\n\t\t\t[rowId]: !prev[rowId],\n\t\t}));\n\t};\n\n\tconst renderEmptyState = () =>\n\t\tvirtualized ? (\n\t\t\t<div className={styles.emptyStateVirtualized}>{emptyState || 'No results.'}</div>\n\t\t) : (\n\t\t\t<TableRow>\n\t\t\t\t<TableCell\n\t\t\t\t\tcolSpan={columns.length + (expandable ? 1 : 0) + (selectable ? 1 : 0)}\n\t\t\t\t\tclassName={styles.emptyState}\n\t\t\t\t>\n\t\t\t\t\t{emptyState || 'No results.'}\n\t\t\t\t</TableCell>\n\t\t\t</TableRow>\n\t\t);\n\n\tconst selectedRows = Object.entries(rowSelection)\n\t\t.filter(([, selected]) => selected)\n\t\t// This is not necessarily a redundant condition. It depends on `noUncheckedIndexedAccess`.\n\t\t// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n\t\t.map(([key]) => rowsById[key]?.original)\n\t\t.filter(Boolean);\n\n\tconst contextValue: DsTableContextType<TData, TValue> = {\n\t\tstickyHeader,\n\t\tbordered,\n\t\tfullWidth,\n\t\thighlightOnHover,\n\t\trowSize,\n\t\texpandable,\n\t\tselectable,\n\t\treorderable,\n\t\tshowSelectAllCheckbox,\n\t\tonRowClick,\n\t\tonRowDoubleClick,\n\t\tprimaryRowActions,\n\t\tsecondaryRowActions,\n\t\trenderExpandedRow,\n\t\tvirtualized,\n\t\texpandedRows,\n\t\ttoggleRowExpanded,\n\t\tactiveRowId,\n\t};\n\n\treturn (\n\t\t<DsTableContext.Provider value={contextValue}>\n\t\t\t<div\n\t\t\t\tref={tableContainerRef}\n\t\t\t\tclassName={classnames(\n\t\t\t\t\tstyles.container,\n\t\t\t\t\t!virtualized && styles.dataTableContainer,\n\t\t\t\t\tvirtualized && styles.virtualizedContainer,\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<DragWrapper>\n\t\t\t\t\t<Table\n\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\tvirtualized\n\t\t\t\t\t\t\t\t? ({\n\t\t\t\t\t\t\t\t\t\t'--ds-table-columns-template': createColumnsGridTemplate({\n\t\t\t\t\t\t\t\t\t\t\tcolumns,\n\t\t\t\t\t\t\t\t\t\t\tselectable: !!selectable,\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t} as React.CSSProperties)\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclassName={classnames(\n\t\t\t\t\t\t\tfullWidth && styles.fullWidth,\n\t\t\t\t\t\t\t!bordered && styles.tableNoBorder,\n\t\t\t\t\t\t\tvirtualized && styles.virtualized,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<DsTableHeader table={table} />\n\t\t\t\t\t\t<TableBody\n\t\t\t\t\t\t\tstyle={{ height: virtualized ? `${String(rowVirtualizer.getTotalSize())}px` : undefined }}\n\t\t\t\t\t\t\tclassName={classnames(virtualized && styles.virtualizedBody)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{virtualized ? (\n\t\t\t\t\t\t\t\trowVirtualizer.getVirtualItems().length ? (\n\t\t\t\t\t\t\t\t\trowVirtualizer.getVirtualItems().map((virtualRow: VirtualItem) => {\n\t\t\t\t\t\t\t\t\t\tconst row = rows[virtualRow.index];\n\t\t\t\t\t\t\t\t\t\treturn <DsTableRow key={row.id} row={row} virtualRow={virtualRow} />;\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\trenderEmptyState()\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<SortableWrapper>\n\t\t\t\t\t\t\t\t\t{rows.length\n\t\t\t\t\t\t\t\t\t\t? rows.map((row) => <DsTableRow key={row.id} row={row} />)\n\t\t\t\t\t\t\t\t\t\t: renderEmptyState()}\n\t\t\t\t\t\t\t\t</SortableWrapper>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</TableBody>\n\t\t\t\t\t</Table>\n\t\t\t\t</DragWrapper>\n\t\t\t</div>\n\t\t\t{selectable && actions.length > 0 && (\n\t\t\t\t<DsTableBulkActions\n\t\t\t\t\tnumSelectedRows={selectedRows.length}\n\t\t\t\t\tactions={actions.map((action) => ({\n\t\t\t\t\t\t...action,\n\t\t\t\t\t\tonClick: () => action.onClick(selectedRows),\n\t\t\t\t\t}))}\n\t\t\t\t\tonClearSelection={table.resetRowSelection}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</DsTableContext.Provider>\n\t);\n};\n\nexport default DsTable;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ds-table.js","names":["React","useImperativeHandle","RowSelectionState","ColumnFiltersState","getCoreRowModel","getFilteredRowModel","getSortedRowModel","SortingState","useReactTable","VisibilityState","useVirtualizer","VirtualItem","classnames","Table","TableBody","TableCell","TableRow","DsTableBulkActions","DsTableHeader","styles","DsDataTableProps","DsTableRowSize","DsTableRow","useDragAndDrop","DsTableContextType","DsTableContext","createColumnsGridTemplate","ROW_SIZE_HEIGHT_MAP","Record","small","medium","large","DsTable","id","ref","columns","data","tableData","virtualized","virtualizedOptions","className","onRowClick","emptyState","stickyHeader","bordered","fullWidth","rowSize","expandable","renderExpandedRow","selectable","showSelectAllCheckbox","onSelectionChange","onSortingChange","onScroll","actions","onRowDoubleClick","primaryRowActions","secondaryRowActions","reorderable","onOrderChange","columnFilters","externalColumnFilters","onColumnFiltersChange","columnVisibility","externalColumnVisibility","onColumnVisibilityChange","activeRowId","TData","TValue","setData","useState","sorting","setSorting","internalColumnFilters","setInternalColumnFilters","internalColumnVisibility","setInternalColumnVisibility","rowSelection","setRowSelection","expandedRows","setExpandedRows","DragWrapper","SortableWrapper","isDragEnabled","newData","items","tableContainerRef","useRef","HTMLDivElement","handleColumnFiltersChange","updaterOrValue","old","newFilters","handleColumnVisibilityChange","newVisibility","handleSortingChange","newSorting","handleRowSelectionChange","newRowSelection","table","onRowSelectionChange","getRowId","row","state","enableRowSelection","original","selectRow","rowId","getRow","toggleSelected","deselectRow","selectAllRows","toggleAllRowsSelected","deselectAllRows","selectRows","rowIds","selection","forEach","getSelectedRows","getFilteredSelectedRowModel","rows","map","r","rowsById","getRowModel","rowVirtualizer","count","length","getScrollElement","current","estimateSize","overscan","onChange","instance","sync","scrollOffset","totalContentHeight","getTotalSize","viewportHeight","scrollElement","clientHeight","toggleRowExpanded","prev","renderEmptyState","emptyStateVirtualized","selectedRows","Object","entries","filter","selected","key","v","contextValue","container","dataTableContainer","virtualizedContainer","CSSProperties","undefined","tableNoBorder","height","String","virtualizedBody","getVirtualItems","virtualRow","index","action","onClick","resetRowSelection"],"sources":["../../../src/components/ds-table/ds-table.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useImperativeHandle } from 'react';\nimport {\n\ttype RowSelectionState,\n\ttype ColumnFiltersState,\n\tgetCoreRowModel,\n\tgetFilteredRowModel,\n\tgetSortedRowModel,\n\ttype SortingState,\n\tuseReactTable,\n\ttype VisibilityState,\n} from '@tanstack/react-table';\nimport { useVirtualizer, type VirtualItem } from '@tanstack/react-virtual';\nimport classnames from 'classnames';\nimport { Table, TableBody, TableCell, TableRow } from './components/core-table';\nimport { DsTableBulkActions } from './components/ds-table-bulk-actions';\nimport { DsTableHeader } from './components/ds-table-header';\nimport styles from './ds-table.module.scss';\nimport type { DsDataTableProps, DsTableRowSize } from './ds-table.types';\nimport { DsTableRow } from './components/ds-table-row';\nimport { useDragAndDrop } from './hooks/use-drag-and-drop';\nimport { type DsTableContextType, DsTableContext } from './context/ds-table-context';\nimport { createColumnsGridTemplate } from './utils/create-columns-grid-template';\n\n// Row size to pixel height mapping (matches CSS variables)\nconst ROW_SIZE_HEIGHT_MAP: Record<DsTableRowSize, number> = {\n\tsmall: 36,\n\tmedium: 48,\n\tlarge: 64,\n};\n\n/**\n * Design system Table component\n */\nconst DsTable = <TData extends { id: string }, TValue>({\n\tref,\n\tcolumns,\n\tdata: tableData,\n\tvirtualized = false,\n\tvirtualizedOptions,\n\tclassName,\n\tonRowClick,\n\temptyState,\n\tstickyHeader = true,\n\tbordered = true,\n\tfullWidth = true,\n\trowSize = 'medium',\n\texpandable = false,\n\trenderExpandedRow,\n\tselectable = false,\n\tshowSelectAllCheckbox = true,\n\tonSelectionChange,\n\tonSortingChange,\n\tonScroll,\n\tactions = [],\n\tonRowDoubleClick,\n\tprimaryRowActions = [],\n\tsecondaryRowActions,\n\treorderable = false,\n\tonOrderChange,\n\tcolumnFilters: externalColumnFilters,\n\tonColumnFiltersChange,\n\tcolumnVisibility: externalColumnVisibility,\n\tonColumnVisibilityChange,\n\tactiveRowId,\n}: DsDataTableProps<TData, TValue>) => {\n\tconst [data, setData] = React.useState(tableData);\n\tconst [sorting, setSorting] = React.useState<SortingState>([]);\n\tconst [internalColumnFilters, setInternalColumnFilters] = React.useState<ColumnFiltersState>([]);\n\tconst [internalColumnVisibility, setInternalColumnVisibility] = React.useState<VisibilityState>({});\n\tconst [rowSelection, setRowSelection] = React.useState<RowSelectionState>({});\n\tconst [expandedRows, setExpandedRows] = React.useState<Record<string, boolean>>({});\n\n\tconst { DragWrapper, SortableWrapper } = useDragAndDrop<TData>({\n\t\tisDragEnabled: reorderable && !virtualized,\n\t\tonOrderChange: (newData) => {\n\t\t\tsetData(newData);\n\t\t\tonOrderChange?.(newData);\n\t\t},\n\t\titems: data,\n\t});\n\n\tconst tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n\tconst columnFilters = externalColumnFilters ?? internalColumnFilters;\n\tconst handleColumnFiltersChange = (\n\t\tupdaterOrValue: ColumnFiltersState | ((old: ColumnFiltersState) => ColumnFiltersState),\n\t) => {\n\t\tconst newFilters = typeof updaterOrValue === 'function' ? updaterOrValue(columnFilters) : updaterOrValue;\n\t\tif (onColumnFiltersChange) {\n\t\t\tonColumnFiltersChange(newFilters);\n\t\t} else {\n\t\t\tsetInternalColumnFilters(newFilters);\n\t\t}\n\t};\n\n\tconst columnVisibility = externalColumnVisibility ?? internalColumnVisibility;\n\tconst handleColumnVisibilityChange = (\n\t\tupdaterOrValue: VisibilityState | ((old: VisibilityState) => VisibilityState),\n\t) => {\n\t\tconst newVisibility =\n\t\t\ttypeof updaterOrValue === 'function' ? updaterOrValue(columnVisibility) : updaterOrValue;\n\n\t\tif (onColumnVisibilityChange) {\n\t\t\tonColumnVisibilityChange(newVisibility);\n\t\t} else {\n\t\t\tsetInternalColumnVisibility(newVisibility);\n\t\t}\n\t};\n\n\tconst handleSortingChange = (updaterOrValue: SortingState | ((old: SortingState) => SortingState)) => {\n\t\tconst newSorting = typeof updaterOrValue === 'function' ? updaterOrValue(sorting) : updaterOrValue;\n\t\tsetSorting(newSorting);\n\t\tonSortingChange?.(newSorting);\n\t};\n\n\tconst handleRowSelectionChange = (\n\t\tupdaterOrValue: RowSelectionState | ((old: RowSelectionState) => RowSelectionState),\n\t) => {\n\t\tconst newRowSelection =\n\t\t\ttypeof updaterOrValue === 'function' ? updaterOrValue(rowSelection) : updaterOrValue;\n\t\tsetRowSelection(newRowSelection);\n\t\tonSelectionChange?.(newRowSelection);\n\t};\n\n\tconst table = useReactTable({\n\t\tdata: reorderable ? data : tableData,\n\t\tcolumns,\n\t\tgetCoreRowModel: getCoreRowModel(),\n\t\tonSortingChange: handleSortingChange,\n\t\tgetSortedRowModel: getSortedRowModel(),\n\t\tonColumnFiltersChange: handleColumnFiltersChange,\n\t\tgetFilteredRowModel: getFilteredRowModel(),\n\t\tonColumnVisibilityChange: handleColumnVisibilityChange,\n\t\tonRowSelectionChange: handleRowSelectionChange,\n\t\tgetRowId: (row) => row.id,\n\t\tstate: {\n\t\t\tsorting,\n\t\t\tcolumnFilters,\n\t\t\tcolumnVisibility,\n\t\t\trowSelection,\n\t\t},\n\t\tenableRowSelection: typeof selectable === 'function' ? (row) => selectable(row.original) : selectable,\n\t});\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tselectRow: (rowId: string) => {\n\t\t\t\ttable.getRow(rowId).toggleSelected(true);\n\t\t\t},\n\t\t\tdeselectRow: (rowId: string) => {\n\t\t\t\ttable.getRow(rowId).toggleSelected(false);\n\t\t\t},\n\t\t\tselectAllRows: () => {\n\t\t\t\ttable.toggleAllRowsSelected(true);\n\t\t\t},\n\t\t\tdeselectAllRows: () => {\n\t\t\t\ttable.toggleAllRowsSelected(false);\n\t\t\t},\n\t\t\tselectRows: (rowIds: string[]) => {\n\t\t\t\tconst selection: Record<string, boolean> = {};\n\t\t\t\trowIds.forEach((id) => (selection[id] = true));\n\t\t\t\ttable.setRowSelection(selection);\n\t\t\t},\n\t\t\tgetSelectedRows: () => {\n\t\t\t\treturn table.getFilteredSelectedRowModel().rows.map((r) => r.original);\n\t\t\t},\n\t\t}),\n\t\t[table],\n\t);\n\n\tconst { rows, rowsById } = table.getRowModel();\n\n\tconst rowVirtualizer = useVirtualizer({\n\t\tcount: rows.length,\n\t\tgetScrollElement: () => tableContainerRef.current,\n\t\t// estimate row height for accurate scrollbar dragging\n\t\testimateSize: () => virtualizedOptions?.estimateSize || ROW_SIZE_HEIGHT_MAP[rowSize],\n\t\toverscan: virtualizedOptions?.overscan || 5,\n\t\tonChange: (instance, sync) => {\n\t\t\tif (sync && onScroll) {\n\t\t\t\tconst scrollOffset = instance.scrollOffset || 0;\n\t\t\t\tconst totalContentHeight = instance.getTotalSize();\n\t\t\t\tconst viewportHeight = instance.scrollElement?.clientHeight;\n\n\t\t\t\tif (viewportHeight) {\n\t\t\t\t\tonScroll({ scrollOffset, totalContentHeight, viewportHeight });\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t});\n\n\tconst toggleRowExpanded = (rowId: string) => {\n\t\tsetExpandedRows((prev) => ({\n\t\t\t...prev,\n\t\t\t[rowId]: !prev[rowId],\n\t\t}));\n\t};\n\n\tconst renderEmptyState = () =>\n\t\tvirtualized ? (\n\t\t\t<div className={styles.emptyStateVirtualized}>{emptyState || 'No results.'}</div>\n\t\t) : (\n\t\t\t<TableRow>\n\t\t\t\t<TableCell\n\t\t\t\t\tcolSpan={columns.length + (expandable ? 1 : 0) + (selectable ? 1 : 0)}\n\t\t\t\t\tclassName={styles.emptyState}\n\t\t\t\t>\n\t\t\t\t\t{emptyState || 'No results.'}\n\t\t\t\t</TableCell>\n\t\t\t</TableRow>\n\t\t);\n\n\tconst selectedRows = Object.entries(rowSelection)\n\t\t.filter(([, selected]) => selected)\n\t\t.map(([key]) => rowsById[key]?.original)\n\t\t.filter((v) => !!v);\n\n\tconst contextValue: DsTableContextType<TData, TValue> = {\n\t\tstickyHeader,\n\t\tbordered,\n\t\tfullWidth,\n\t\trowSize,\n\t\texpandable,\n\t\tselectable,\n\t\treorderable,\n\t\tshowSelectAllCheckbox,\n\t\tonRowClick,\n\t\tonRowDoubleClick,\n\t\tprimaryRowActions,\n\t\tsecondaryRowActions,\n\t\trenderExpandedRow,\n\t\tvirtualized,\n\t\texpandedRows,\n\t\ttoggleRowExpanded,\n\t\tactiveRowId,\n\t};\n\n\treturn (\n\t\t<DsTableContext.Provider value={contextValue}>\n\t\t\t<div\n\t\t\t\tref={tableContainerRef}\n\t\t\t\tclassName={classnames(\n\t\t\t\t\tstyles.container,\n\t\t\t\t\t!virtualized && styles.dataTableContainer,\n\t\t\t\t\tvirtualized && styles.virtualizedContainer,\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<DragWrapper>\n\t\t\t\t\t<Table\n\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\tvirtualized\n\t\t\t\t\t\t\t\t? ({\n\t\t\t\t\t\t\t\t\t\t'--ds-table-columns-template': createColumnsGridTemplate({\n\t\t\t\t\t\t\t\t\t\t\tcolumns,\n\t\t\t\t\t\t\t\t\t\t\tselectable: !!selectable,\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t} as React.CSSProperties)\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclassName={classnames(\n\t\t\t\t\t\t\tfullWidth && styles.fullWidth,\n\t\t\t\t\t\t\t!bordered && styles.tableNoBorder,\n\t\t\t\t\t\t\tvirtualized && styles.virtualized,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<DsTableHeader table={table} />\n\t\t\t\t\t\t<TableBody\n\t\t\t\t\t\t\tstyle={{ height: virtualized ? `${String(rowVirtualizer.getTotalSize())}px` : undefined }}\n\t\t\t\t\t\t\tclassName={classnames(virtualized && styles.virtualizedBody)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{virtualized ? (\n\t\t\t\t\t\t\t\trowVirtualizer.getVirtualItems().length ? (\n\t\t\t\t\t\t\t\t\trowVirtualizer.getVirtualItems().map((virtualRow: VirtualItem) => {\n\t\t\t\t\t\t\t\t\t\tconst row = rows[virtualRow.index];\n\n\t\t\t\t\t\t\t\t\t\tif (!row) {\n\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\treturn <DsTableRow key={row.id} row={row} virtualRow={virtualRow} />;\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\trenderEmptyState()\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<SortableWrapper>\n\t\t\t\t\t\t\t\t\t{rows.length\n\t\t\t\t\t\t\t\t\t\t? rows.map((row) => <DsTableRow key={row.id} row={row} />)\n\t\t\t\t\t\t\t\t\t\t: renderEmptyState()}\n\t\t\t\t\t\t\t\t</SortableWrapper>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</TableBody>\n\t\t\t\t\t</Table>\n\t\t\t\t</DragWrapper>\n\t\t\t</div>\n\t\t\t{selectable && actions.length > 0 && (\n\t\t\t\t<DsTableBulkActions\n\t\t\t\t\tnumSelectedRows={selectedRows.length}\n\t\t\t\t\tactions={actions.map((action) => ({\n\t\t\t\t\t\t...action,\n\t\t\t\t\t\tonClick: () => action.onClick(selectedRows),\n\t\t\t\t\t}))}\n\t\t\t\t\tonClearSelection={table.resetRowSelection}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</DsTableContext.Provider>\n\t);\n};\n\nexport default DsTable;\n"],"mappings":"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"}
|
|
@@ -205,10 +205,6 @@ interface DsDataTableProps<TData, TValue> {
|
|
|
205
205
|
* Whether the table is full width
|
|
206
206
|
*/
|
|
207
207
|
fullWidth?: boolean;
|
|
208
|
-
/**
|
|
209
|
-
* Whether the table has highlight on hover
|
|
210
|
-
*/
|
|
211
|
-
highlightOnHover?: boolean;
|
|
212
208
|
/**
|
|
213
209
|
* Row size variant (small: 36px, medium: 48px, large: 64px)
|
|
214
210
|
* @default 'medium'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ds-table.types.d.cts","names":[],"sources":["../../../src/components/ds-table/ds-table.types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;AAcA;AAKiB,KALL,cAAA,GAKiB,OAAA,GAAA,QAAA,GAAA,OAAA;AA6B7B;AA4EA;AAiBA;AAIkC,UA9HjB,YAAA,CA8HiB;EAAX;EAAhB,YAAM,EAAA,MAAA;EAKO;EAAO,kBAAA,EAAA,MAAA;EAAjB;EAKH,cAAA,EAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ds-table.types.d.cts","names":[],"sources":["../../../src/components/ds-table/ds-table.types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;AAcA;AAKiB,KALL,cAAA,GAKiB,OAAA,GAAA,QAAA,GAAA,OAAA;AA6B7B;AA4EA;AAiBA;AAIkC,UA9HjB,YAAA,CA8HiB;EAAX;EAAhB,YAAM,EAAA,MAAA;EAKO;EAAO,kBAAA,EAAA,MAAA;EAAjB;EAKH,cAAA,EAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;AAiM4B,UA5SlB,UA4SkB,CAAA,KAAA,CAAA,CAAA;EAiBf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAvPI;;;;;UAMP;;;;QAIV;;;;;;;;kBAUU;;UAGA;;;;QAIV,KAAA,CAAM,UAAU,WAAW;;;;WAKxB,UAAU,OAAO;;;;QAKpB;;;;;;;;;;;;;;;;;;;;;;;;;;qBA+Ba;;;;2BAKM;;;;;;;;;;;;;;;;;;;;;;eAwBZ,KAAA,CAAM;;;;;;;;;;;;;;;;;;;;;YA0BT;;;;gCAKoB;;;;4BAKJ,UAAU,KAAA,CAAM;;;;2BAKjB,MAAM;;;;;;;;;;;;;;;;;;;;oCAqBG;;;;;;;;;qCAWC;;;;8BAKP;;;;;;;;;;;;;;;;;;sBAmBR;;;;YAKV,OAAO;;;;sBAKG,UAAU;;;;wBAKR,mBAAmB;;;;;;;;;4BAWf;;;;kBAKV;;;;oCAKkB;;;;;;;;;;;;;;;;qBAiBf;;;;0CAKqB"}
|
|
@@ -206,10 +206,6 @@ interface DsDataTableProps<TData, TValue> {
|
|
|
206
206
|
* Whether the table is full width
|
|
207
207
|
*/
|
|
208
208
|
fullWidth?: boolean;
|
|
209
|
-
/**
|
|
210
|
-
* Whether the table has highlight on hover
|
|
211
|
-
*/
|
|
212
|
-
highlightOnHover?: boolean;
|
|
213
209
|
/**
|
|
214
210
|
* Row size variant (small: 36px, medium: 48px, large: 64px)
|
|
215
211
|
* @default 'medium'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ds-table.types.d.ts","names":[],"sources":["../../../src/components/ds-table/ds-table.types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;KAcY,cAAA;AAAZ;AAKA;AA6BA;AA4EiB,UAzGA,YAAA,CAyGM;EAiBN;EAIiB,YAAA,EAAA,MAAA;EAAX;EAAhB,kBAAM,EAAA,MAAA;EAKO;EAAO,cAAA,EAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ds-table.types.d.ts","names":[],"sources":["../../../src/components/ds-table/ds-table.types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;KAcY,cAAA;AAAZ;AAKA;AA6BA;AA4EiB,UAzGA,YAAA,CAyGM;EAiBN;EAIiB,YAAA,EAAA,MAAA;EAAX;EAAhB,kBAAM,EAAA,MAAA;EAKO;EAAO,cAAA,EAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;AA4LA,UAlSV,UAkSU,CAAA,KAAA,CAAA,CAAA;EAKV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAjOO;;;;;UAMP;;;;QAIV;;;;;;;;kBAUU;;UAGA;;;;QAIV,KAAA,CAAM,UAAU,WAAW;;;;WAKxB,UAAU,OAAO;;;;QAKpB;;;;;;;;;;;;;;;;;;;;;;;;;;qBA+Ba;;;;2BAKM;;;;;;;;;;;;;;;;;;;;;;eAwBZ,KAAA,CAAM;;;;;;;;;;;;;;;;;;;;;YA0BT;;;;gCAKoB;;;;4BAKJ,UAAU,KAAA,CAAM;;;;2BAKjB,MAAM;;;;;;;;;;;;;;;;;;;;oCAqBG;;;;;;;;;qCAWC;;;;8BAKP;;;;;;;;;;;;;;;;;;sBAmBR;;;;YAKV,OAAO;;;;sBAKG,UAAU;;;;wBAKR,mBAAmB;;;;;;;;;4BAWf;;;;kBAKV;;;;oCAKkB;;;;;;;;;;;;;;;;qBAiBf;;;;0CAKqB"}
|
|
@@ -21,11 +21,14 @@ function createDualRangeFilterAdapter(config) {
|
|
|
21
21
|
initialValue,
|
|
22
22
|
filterFn: (row, columnId, filterValue) => {
|
|
23
23
|
const rowValue = getRowValue(row);
|
|
24
|
-
for (const [fieldKey, range] of Object.entries(filterValue))
|
|
24
|
+
for (const [fieldKey, range] of Object.entries(filterValue)) {
|
|
25
|
+
const hasFilter = range.from !== void 0 || range.to !== void 0;
|
|
25
26
|
const fieldValue = rowValue[fieldKey];
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
if (hasFilter && fieldValue !== void 0) {
|
|
28
|
+
const matchesFrom = range.from === void 0 || fieldValue >= range.from;
|
|
29
|
+
const matchesTo = range.to === void 0 || fieldValue <= range.to;
|
|
30
|
+
if (!matchesFrom || !matchesTo) return false;
|
|
31
|
+
}
|
|
29
32
|
}
|
|
30
33
|
return true;
|
|
31
34
|
},
|
|
@@ -20,11 +20,14 @@ function createDualRangeFilterAdapter(config) {
|
|
|
20
20
|
initialValue,
|
|
21
21
|
filterFn: (row, columnId, filterValue) => {
|
|
22
22
|
const rowValue = getRowValue(row);
|
|
23
|
-
for (const [fieldKey, range] of Object.entries(filterValue))
|
|
23
|
+
for (const [fieldKey, range] of Object.entries(filterValue)) {
|
|
24
|
+
const hasFilter = range.from !== void 0 || range.to !== void 0;
|
|
24
25
|
const fieldValue = rowValue[fieldKey];
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
if (hasFilter && fieldValue !== void 0) {
|
|
27
|
+
const matchesFrom = range.from === void 0 || fieldValue >= range.from;
|
|
28
|
+
const matchesTo = range.to === void 0 || fieldValue <= range.to;
|
|
29
|
+
if (!matchesFrom || !matchesTo) return false;
|
|
30
|
+
}
|
|
28
31
|
}
|
|
29
32
|
return true;
|
|
30
33
|
},
|