@semcore/data-table 16.3.0-prerelease.3 → 16.3.1-prerelease.5

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.
Files changed (57) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/lib/cjs/components/Body/Body.js +200 -363
  3. package/lib/cjs/components/Body/Body.js.map +1 -1
  4. package/lib/cjs/components/Body/Body.types.js.map +1 -1
  5. package/lib/cjs/components/Body/Cell.js +53 -70
  6. package/lib/cjs/components/Body/Cell.js.map +1 -1
  7. package/lib/cjs/components/Body/Row.js +367 -114
  8. package/lib/cjs/components/Body/Row.js.map +1 -1
  9. package/lib/cjs/components/Body/Row.types.js.map +1 -1
  10. package/lib/cjs/components/Body/style.shadow.css +2 -7
  11. package/lib/cjs/components/DataTable/DataTable.js +99 -174
  12. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  13. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  14. package/lib/cjs/components/Head/Column.js +41 -41
  15. package/lib/cjs/components/Head/Column.js.map +1 -1
  16. package/lib/cjs/components/Head/Group.js +39 -71
  17. package/lib/cjs/components/Head/Group.js.map +1 -1
  18. package/lib/cjs/components/Head/Head.js +82 -45
  19. package/lib/cjs/components/Head/Head.js.map +1 -1
  20. package/lib/cjs/index.js +13 -0
  21. package/lib/cjs/index.js.map +1 -1
  22. package/lib/es6/components/Body/Body.js +201 -364
  23. package/lib/es6/components/Body/Body.js.map +1 -1
  24. package/lib/es6/components/Body/Body.types.js.map +1 -1
  25. package/lib/es6/components/Body/Cell.js +53 -70
  26. package/lib/es6/components/Body/Cell.js.map +1 -1
  27. package/lib/es6/components/Body/Row.js +367 -114
  28. package/lib/es6/components/Body/Row.js.map +1 -1
  29. package/lib/es6/components/Body/Row.types.js.map +1 -1
  30. package/lib/es6/components/Body/style.shadow.css +2 -7
  31. package/lib/es6/components/DataTable/DataTable.js +95 -170
  32. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  33. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  34. package/lib/es6/components/Head/Column.js +41 -41
  35. package/lib/es6/components/Head/Column.js.map +1 -1
  36. package/lib/es6/components/Head/Group.js +40 -72
  37. package/lib/es6/components/Head/Group.js.map +1 -1
  38. package/lib/es6/components/Head/Head.js +83 -46
  39. package/lib/es6/components/Head/Head.js.map +1 -1
  40. package/lib/es6/index.js +2 -1
  41. package/lib/es6/index.js.map +1 -1
  42. package/lib/esm/components/Body/Body.mjs +159 -312
  43. package/lib/esm/components/Body/Cell.mjs +54 -68
  44. package/lib/esm/components/Body/Row.mjs +316 -94
  45. package/lib/esm/components/Body/style.shadow.css +2 -7
  46. package/lib/esm/components/DataTable/DataTable.mjs +90 -163
  47. package/lib/esm/components/Head/Column.mjs +42 -42
  48. package/lib/esm/components/Head/Group.mjs +42 -65
  49. package/lib/esm/components/Head/Head.mjs +72 -44
  50. package/lib/esm/index.mjs +3 -0
  51. package/lib/types/components/Body/Body.d.ts +1 -2
  52. package/lib/types/components/Body/Body.types.d.ts +2 -1
  53. package/lib/types/components/Body/Row.d.ts +43 -3
  54. package/lib/types/components/Body/Row.types.d.ts +27 -15
  55. package/lib/types/components/DataTable/DataTable.d.ts +2 -2
  56. package/lib/types/index.d.ts +2 -1
  57. package/package.json +22 -22
@@ -1,6 +1,5 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
4
3
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
5
4
  import _createClass from "@babel/runtime/helpers/esm/createClass";
6
5
  import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
@@ -32,19 +31,19 @@ var style = (
32
31
  /*__reshadow_css_start__*/
33
32
  (sstyled.insert(
34
33
  /*__inner_css_start__*/
35
- ".___SDataTable_12hpo_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_12hpo_gg_.__isDataEmpty_12hpo_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_12hpo_gg_.__gridTemplateColumns_12hpo_gg_{grid-template-columns:var(--gridTemplateColumns_12hpo)}.___SDataTable_12hpo_gg_.__gridTemplateAreas_12hpo_gg_{grid-template-areas:var(--gridTemplateAreas_12hpo)}.___SDataTable_12hpo_gg_.__gridTemplateRows_12hpo_gg_{grid-template-rows:var(--gridTemplateRows_12hpo)}",
34
+ ".___SDataTable_1uu41_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_1uu41_gg_.__isDataEmpty_1uu41_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_1uu41_gg_.__gridTemplateColumns_1uu41_gg_{grid-template-columns:var(--gridTemplateColumns_1uu41)}.___SDataTable_1uu41_gg_.__gridTemplateAreas_1uu41_gg_{grid-template-areas:var(--gridTemplateAreas_1uu41)}.___SDataTable_1uu41_gg_.__gridTemplateRows_1uu41_gg_{grid-template-rows:var(--gridTemplateRows_1uu41)}",
36
35
  /*__inner_css_end__*/
37
- "12hpo_gg_"
36
+ "1uu41_gg_"
38
37
  ), /*__reshadow_css_end__*/
39
38
  {
40
- "__SDataTable": "___SDataTable_12hpo_gg_",
41
- "_isDataEmpty": "__isDataEmpty_12hpo_gg_",
42
- "_gridTemplateColumns": "__gridTemplateColumns_12hpo_gg_",
43
- "--gridTemplateColumns": "--gridTemplateColumns_12hpo",
44
- "_gridTemplateAreas": "__gridTemplateAreas_12hpo_gg_",
45
- "--gridTemplateAreas": "--gridTemplateAreas_12hpo",
46
- "_gridTemplateRows": "__gridTemplateRows_12hpo_gg_",
47
- "--gridTemplateRows": "--gridTemplateRows_12hpo"
39
+ "__SDataTable": "___SDataTable_1uu41_gg_",
40
+ "_isDataEmpty": "__isDataEmpty_1uu41_gg_",
41
+ "_gridTemplateColumns": "__gridTemplateColumns_1uu41_gg_",
42
+ "--gridTemplateColumns": "--gridTemplateColumns_1uu41",
43
+ "_gridTemplateAreas": "__gridTemplateAreas_1uu41_gg_",
44
+ "--gridTemplateAreas": "--gridTemplateAreas_1uu41",
45
+ "_gridTemplateRows": "__gridTemplateRows_1uu41_gg_",
46
+ "--gridTemplateRows": "--gridTemplateRows_1uu41"
48
47
  })
49
48
  );
50
49
  /*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
@@ -52,27 +51,27 @@ var scrollStyles = (
52
51
  /*__reshadow_css_start__*/
53
52
  (sstyled.insert(
54
53
  /*__inner_css_start__*/
55
- ".___SScrollArea_w8oky_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_{overflow:visible;overflow:initial}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_both_w8oky_gg_{overflow:auto}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_both_w8oky_gg_.__loading_w8oky_gg_,.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_horizontal_w8oky_gg_.__loading_w8oky_gg_,.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_vertical_w8oky_gg_.__loading_w8oky_gg_{overflow:hidden}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_horizontal_w8oky_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_vertical_w8oky_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_.__headerHeight_w8oky_gg_{scroll-padding-top:var(--headerHeight_w8oky)}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_.__leftScrollPadding_w8oky_gg_{scroll-padding-left:var(--leftScrollPadding_w8oky)}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_.__rightScrollPadding_w8oky_gg_{scroll-padding-right:var(--rightScrollPadding_w8oky)}.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_::before,.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_:after,.___SScrollArea_w8oky_gg_ .___SShadowVertical_w8oky_gg_::after{z-index:20}.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_.__leftOffset_w8oky_gg_::before,.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_.__rightOffset_w8oky_gg_::after,.___SScrollArea_w8oky_gg_ .___SShadowVertical_w8oky_gg_::before{display:none}",
54
+ ".___SScrollArea_1v4r4_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_{overflow:visible;overflow:initial}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_._scrollDirection_both_1v4r4_gg_{overflow:auto}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_._scrollDirection_both_1v4r4_gg_.__loading_1v4r4_gg_,.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_._scrollDirection_horizontal_1v4r4_gg_.__loading_1v4r4_gg_,.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_._scrollDirection_vertical_1v4r4_gg_.__loading_1v4r4_gg_{overflow:hidden}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_._scrollDirection_horizontal_1v4r4_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_._scrollDirection_vertical_1v4r4_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_.__headerHeight_1v4r4_gg_{scroll-padding-top:var(--headerHeight_1v4r4)}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_.__leftScrollPadding_1v4r4_gg_{scroll-padding-left:var(--leftScrollPadding_1v4r4)}.___SScrollArea_1v4r4_gg_ .___SContainer_1v4r4_gg_.__rightScrollPadding_1v4r4_gg_{scroll-padding-right:var(--rightScrollPadding_1v4r4)}.___SScrollArea_1v4r4_gg_ .___SShadowHorizontal_1v4r4_gg_::before,.___SScrollArea_1v4r4_gg_ .___SShadowHorizontal_1v4r4_gg_:after,.___SScrollArea_1v4r4_gg_ .___SShadowVertical_1v4r4_gg_::after{z-index:20}.___SScrollArea_1v4r4_gg_ .___SShadowHorizontal_1v4r4_gg_.__leftOffset_1v4r4_gg_::before,.___SScrollArea_1v4r4_gg_ .___SShadowHorizontal_1v4r4_gg_.__rightOffset_1v4r4_gg_::after,.___SScrollArea_1v4r4_gg_ .___SShadowVertical_1v4r4_gg_::before{display:none}",
56
55
  /*__inner_css_end__*/
57
- "w8oky_gg_"
56
+ "1v4r4_gg_"
58
57
  ), /*__reshadow_css_end__*/
59
58
  {
60
- "__SScrollArea": "___SScrollArea_w8oky_gg_",
61
- "__SContainer": "___SContainer_w8oky_gg_",
62
- "_scrollDirection_both": "_scrollDirection_both_w8oky_gg_",
63
- "_loading": "__loading_w8oky_gg_",
64
- "_scrollDirection_horizontal": "_scrollDirection_horizontal_w8oky_gg_",
65
- "_scrollDirection_vertical": "_scrollDirection_vertical_w8oky_gg_",
66
- "_headerHeight": "__headerHeight_w8oky_gg_",
67
- "--headerHeight": "--headerHeight_w8oky",
68
- "_leftScrollPadding": "__leftScrollPadding_w8oky_gg_",
69
- "--leftScrollPadding": "--leftScrollPadding_w8oky",
70
- "_rightScrollPadding": "__rightScrollPadding_w8oky_gg_",
71
- "--rightScrollPadding": "--rightScrollPadding_w8oky",
72
- "__SShadowVertical": "___SShadowVertical_w8oky_gg_",
73
- "__SShadowHorizontal": "___SShadowHorizontal_w8oky_gg_",
74
- "_leftOffset": "__leftOffset_w8oky_gg_",
75
- "_rightOffset": "__rightOffset_w8oky_gg_"
59
+ "__SScrollArea": "___SScrollArea_1v4r4_gg_",
60
+ "__SContainer": "___SContainer_1v4r4_gg_",
61
+ "_scrollDirection_both": "_scrollDirection_both_1v4r4_gg_",
62
+ "_loading": "__loading_1v4r4_gg_",
63
+ "_scrollDirection_horizontal": "_scrollDirection_horizontal_1v4r4_gg_",
64
+ "_scrollDirection_vertical": "_scrollDirection_vertical_1v4r4_gg_",
65
+ "_headerHeight": "__headerHeight_1v4r4_gg_",
66
+ "--headerHeight": "--headerHeight_1v4r4",
67
+ "_leftScrollPadding": "__leftScrollPadding_1v4r4_gg_",
68
+ "--leftScrollPadding": "--leftScrollPadding_1v4r4",
69
+ "_rightScrollPadding": "__rightScrollPadding_1v4r4_gg_",
70
+ "--rightScrollPadding": "--rightScrollPadding_1v4r4",
71
+ "__SShadowVertical": "___SShadowVertical_1v4r4_gg_",
72
+ "__SShadowHorizontal": "___SShadowHorizontal_1v4r4_gg_",
73
+ "_leftOffset": "__leftOffset_1v4r4_gg_",
74
+ "_rightOffset": "__rightOffset_1v4r4_gg_"
76
75
  })
77
76
  );
78
77
  var ACCORDION = Symbol("accordion");
@@ -81,6 +80,7 @@ var UNIQ_ROW_KEY = Symbol("UNIQ_ROW_KEY");
81
80
  var IS_EMPTY_DATA_ROW = Symbol("IS_EMPTY_DATA_ROW");
82
81
  var SELECT_ALL = Symbol("SELECT_ALL");
83
82
  var ROW_INDEX = Symbol("ROW_INDEX");
83
+ var GRID_ROW_INDEX = Symbol("GRID_ROW_INDEX");
84
84
  var SCROLL_BAR_HEIGHT = 12;
85
85
  var DataTableRoot = /* @__PURE__ */ function(_Component) {
86
86
  function DataTableRoot2(props) {
@@ -103,6 +103,10 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
103
103
  _defineProperty(_this, "tmpData", void 0);
104
104
  _defineProperty(_this, "calculatedRows", void 0);
105
105
  _defineProperty(_this, "flatRows", void 0);
106
+ _defineProperty(_this, "gridSettings", {
107
+ gridTemplateColumns: [],
108
+ gridTemplateAreas: []
109
+ });
106
110
  _defineProperty(_this, "selectAllMessageTimer", 0);
107
111
  _defineProperty(_this, "headerNodesMap", /* @__PURE__ */ new Map());
108
112
  _defineProperty(_this, "state", {
@@ -179,7 +183,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
179
183
  });
180
184
  _defineProperty(_this, "getRow", function(index) {
181
185
  var _this$tableRef$curren;
182
- return (_this$tableRef$curren = _this.tableRef.current) === null || _this$tableRef$curren === void 0 ? void 0 : _this$tableRef$curren.querySelector('[aria-rowindex="'.concat(index + 1, '"]:not([aria-hidden="true"])'));
186
+ return (_this$tableRef$curren = _this.tableRef.current) === null || _this$tableRef$curren === void 0 ? void 0 : _this$tableRef$curren.querySelector(':scope [aria-rowindex="'.concat(index + 1, '"]:not([aria-hidden="true"]):not(:scope [data-ui-name="DataTable"] [aria-rowindex="').concat(index + 1, '"]:not([aria-hidden="true"])'));
183
187
  });
184
188
  _defineProperty(_this, "hasFocusableInHeader", function() {
185
189
  return _this.headerRef.current && hasFocusableIn(_this.headerRef.current) || _this.columns.some(function(column) {
@@ -190,11 +194,11 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
190
194
  var _this$asProps2 = _this.asProps, expandedRows = _this$asProps2.expandedRows, onAccordionToggle = _this$asProps2.onAccordionToggle, accordionMode = _this$asProps2.accordionMode;
191
195
  if (expandedRows.has(expandedRow[UNIQ_ROW_KEY])) {
192
196
  expandedRows["delete"](expandedRow[UNIQ_ROW_KEY]);
193
- _this.handlers.expandedRows(new Set(_toConsumableArray(expandedRows)));
197
+ _this.handlers.expandedRows(expandedRows);
194
198
  onAccordionToggle === null || onAccordionToggle === void 0 || onAccordionToggle("close", expandedRow[UNIQ_ROW_KEY], expandedRow[ROW_INDEX]);
195
199
  } else {
196
200
  expandedRows.add(expandedRow[UNIQ_ROW_KEY]);
197
- _this.handlers.expandedRows(new Set(_toConsumableArray(expandedRows)));
201
+ _this.handlers.expandedRows(expandedRows);
198
202
  onAccordionToggle === null || onAccordionToggle === void 0 || onAccordionToggle("open", expandedRow[UNIQ_ROW_KEY], expandedRow[ROW_INDEX]);
199
203
  if (accordionMode === "toggle") {
200
204
  var rowIndex = expandedRow[ROW_INDEX];
@@ -394,7 +398,10 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
394
398
  _defineProperty(_this, "handleMouseMove", function() {
395
399
  _this.setInert(false);
396
400
  });
397
- _defineProperty(_this, "handleBackFromAccordion", function(cellIndex) {
401
+ _defineProperty(_this, "handleBackFromAccordion", function(key) {
402
+ var cellIndex = _this.columns.findIndex(function(c) {
403
+ return c.name === key;
404
+ });
398
405
  _this.changeFocusCell(-1, cellIndex === -1 ? 0 : cellIndex, "up");
399
406
  });
400
407
  _defineProperty(_this, "handleContainerResizeEnd", function() {
@@ -469,13 +476,9 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
469
476
  }, 0);
470
477
  return [side, "".concat(sum, "px")];
471
478
  });
472
- if (props.children) {
473
- _this.columns = _this.calculateColumns();
474
- } else {
475
- var cols = _this.calculateColumnsFromConfig();
476
- _this.columns = cols[0];
477
- _this.treeColumns = cols[1];
478
- }
479
+ var cols = _this.calculateColumnsFromConfig();
480
+ _this.columns = cols[0];
481
+ _this.treeColumns = cols[1];
479
482
  _this.calculatedRows = _this.getRows();
480
483
  _this.flatRows = _this.calculatedRows.flat();
481
484
  _this.tmpData = props.data;
@@ -565,21 +568,6 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
565
568
  }, 0);
566
569
  return rows + expandedRowsCount;
567
570
  }
568
- }, {
569
- key: "gridSettings",
570
- get: function get() {
571
- var columns = this.columns;
572
- var gridTemplateColumns = columns.map(function(c) {
573
- return c.gtcWidth;
574
- });
575
- var gridTemplateAreas = columns.map(function(c) {
576
- return c.name;
577
- });
578
- return {
579
- gridTemplateColumns,
580
- gridTemplateAreas
581
- };
582
- }
583
571
  }, {
584
572
  key: "scrollDirection",
585
573
  get: function get() {
@@ -649,7 +637,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
649
637
  }, {
650
638
  key: "getBodyProps",
651
639
  value: function getBodyProps() {
652
- var _this$asProps8 = this.asProps, use = _this$asProps8.use, compact = _this$asProps8.compact, loading = _this$asProps8.loading, getI18nText = _this$asProps8.getI18nText, expandedRows = _this$asProps8.expandedRows, virtualScroll = _this$asProps8.virtualScroll, uid = _this$asProps8.uid, rowProps = _this$asProps8.rowProps, renderCell = _this$asProps8.renderCell, headerProps = _this$asProps8.headerProps, renderEmptyData2 = _this$asProps8.renderEmptyData, sideIndents = _this$asProps8.sideIndents, selectedRows = _this$asProps8.selectedRows, accordionDuration = _this$asProps8.accordionDuration, accordionMode = _this$asProps8.accordionMode, rawData = _this$asProps8.data, renderCellOverlay = _this$asProps8.renderCellOverlay, variant = _this$asProps8.variant;
640
+ var _this$asProps8 = this.asProps, use = _this$asProps8.use, compact = _this$asProps8.compact, loading = _this$asProps8.loading, getI18nText = _this$asProps8.getI18nText, expandedRows = _this$asProps8.expandedRows, virtualScroll = _this$asProps8.virtualScroll, uid = _this$asProps8.uid, rowProps = _this$asProps8.rowProps, renderCell = _this$asProps8.renderCell, headerProps = _this$asProps8.headerProps, renderEmptyData2 = _this$asProps8.renderEmptyData, sideIndents = _this$asProps8.sideIndents, selectedRows = _this$asProps8.selectedRows, accordionDuration = _this$asProps8.accordionDuration, accordionMode = _this$asProps8.accordionMode, rawData = _this$asProps8.data, renderCellOverlay = _this$asProps8.renderCellOverlay, totalRows = _this$asProps8.totalRows, variant = _this$asProps8.variant;
653
641
  var _this$gridSettings2 = this.gridSettings, gridTemplateColumns = _this$gridSettings2.gridTemplateColumns, gridTemplateAreas = _this$gridSettings2.gridTemplateAreas;
654
642
  var shadowVertical = this.state.shadowVertical;
655
643
  return {
@@ -689,6 +677,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
689
677
  rawData,
690
678
  shadowVertical,
691
679
  renderCellOverlay,
680
+ totalRows,
692
681
  variant
693
682
  };
694
683
  }
@@ -783,7 +772,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
783
772
  "use:h": void 0,
784
773
  "use:hMax": void 0,
785
774
  "use:hMin": void 0
786
- }, _ref))), children ? /* @__PURE__ */ React.createElement(Children, _ref2.cn("Children", {})) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(DataTableInternal.Head, null), /* @__PURE__ */ React.createElement(DataTableInternal.Body, null)))), (headerPropsToCheck === null || headerPropsToCheck === void 0 ? void 0 : headerPropsToCheck.withScrollBar) && topOffset && !loading && /* @__PURE__ */ React.createElement(ScrollArea.Bar, {
775
+ }, _ref))), children ? /* @__PURE__ */ React.createElement(Children, _ref2.cn("Children", {})) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(DataTable.Head, null), /* @__PURE__ */ React.createElement(DataTable.Body, null)))), (headerPropsToCheck === null || headerPropsToCheck === void 0 ? void 0 : headerPropsToCheck.withScrollBar) && topOffset && !loading && /* @__PURE__ */ React.createElement(ScrollArea.Bar, {
787
776
  orientation: "horizontal",
788
777
  top: topOffset - SCROLL_BAR_HEIGHT,
789
778
  zIndex: 20
@@ -798,91 +787,11 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
798
787
  "role": "status"
799
788
  }), this.state.selectAllMessage));
800
789
  }
801
- }, {
802
- key: "calculateColumns",
803
- value: function calculateColumns() {
804
- var _this4 = this;
805
- var _this$props = this.props, children = _this$props.children, data = _this$props.data, selectedRows = _this$props.selectedRows;
806
- var HeadComponent = findComponent(children, ["Head"]);
807
- this.hasGroups = findComponent(HeadComponent.props.children, ["Head.Group"]) !== void 0;
808
- var groupIndex = 0;
809
- var gridColumnIndex = selectedRows ? 2 : 1;
810
- var calculateGridTemplateColumn = this.calculateGridTemplateColumn.bind(this);
811
- var columns = [];
812
- if (selectedRows) {
813
- var column = {
814
- name: SELECT_ALL.toString(),
815
- gtcWidth: "min-content",
816
- alignItems: "flex-start",
817
- children: ""
818
- };
819
- columns.push(column);
820
- }
821
- var makeColumn = function makeColumn2(columnElement, parent, isFirst, isLast) {
822
- var _columnElement$props$, _ref3, _columnElement$props$2;
823
- var leftBordersFromParent = isFirst && ((parent === null || parent === void 0 ? void 0 : parent.props.borders) === "both" || (parent === null || parent === void 0 ? void 0 : parent.props.borders) === "left") ? "left" : void 0;
824
- var rightBordersFromParent = isLast && ((parent === null || parent === void 0 ? void 0 : parent.props.borders) === "both" || (parent === null || parent === void 0 ? void 0 : parent.props.borders) === "right") ? "right" : void 0;
825
- var column2 = {
826
- name: columnElement.props.name,
827
- gtcWidth: calculateGridTemplateColumn(columnElement),
828
- fixed: (_columnElement$props$ = columnElement.props.fixed) !== null && _columnElement$props$ !== void 0 ? _columnElement$props$ : parent === null || parent === void 0 ? void 0 : parent.props.fixed,
829
- borders: (_ref3 = (_columnElement$props$2 = columnElement.props.borders) !== null && _columnElement$props$2 !== void 0 ? _columnElement$props$2 : leftBordersFromParent) !== null && _ref3 !== void 0 ? _ref3 : rightBordersFromParent,
830
- parent,
831
- flexWrap: columnElement.props.flexWrap,
832
- alignItems: columnElement.props.alignItems,
833
- alignContent: columnElement.props.alignContent,
834
- justifyContent: columnElement.props.justifyContent,
835
- textAlign: columnElement.props.textAlign,
836
- children: ""
837
- };
838
- return column2;
839
- };
840
- var childIsColumn = function childIsColumn2(child) {
841
- return child.type === Head.Column;
842
- };
843
- var childIsGroup = function childIsGroup2(child) {
844
- return child.type === Head.Group;
845
- };
846
- React.Children.forEach(HeadComponent.props.children, function(child, i) {
847
- if (!/* @__PURE__ */ React.isValidElement(child)) return;
848
- if (childIsColumn(child)) {
849
- var col = makeColumn(child);
850
- col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this4.hasGroups ? "3" : "2", " / ").concat(gridColumnIndex + 1);
851
- gridColumnIndex++;
852
- columns.push(col);
853
- } else if (childIsGroup(child)) {
854
- var Group = child;
855
- var childCount = React.Children.count(child.props.children);
856
- var initGridColumn = gridColumnIndex;
857
- React.Children.forEach(child.props.children, function(child2, j) {
858
- if ((child2 === null || child2 === void 0 ? void 0 : child2.type) === Head.Column) {
859
- var isFirst = j === 0;
860
- var isLast = j === childCount - 1;
861
- var _col = makeColumn(child2, Group, isFirst, isLast);
862
- if (i === 0 && j === 0 && data.some(function(d) {
863
- return d[ACCORDION];
864
- })) {
865
- gridColumnIndex++;
866
- _col.gridArea = "2 / ".concat(gridColumnIndex - 1, " / 3 / ").concat(gridColumnIndex + 1);
867
- } else {
868
- _col.gridArea = "2 / ".concat(gridColumnIndex, " / 3 / ").concat(gridColumnIndex + 1);
869
- }
870
- _col.gridArea = "2 / ".concat(gridColumnIndex, " / 3 / ").concat(gridColumnIndex + 1);
871
- gridColumnIndex++;
872
- columns.push(_col);
873
- }
874
- });
875
- _this4.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
876
- groupIndex++;
877
- }
878
- });
879
- return columns.filter(Boolean);
880
- }
881
790
  }, {
882
791
  key: "calculateColumnsFromConfig",
883
792
  value: function calculateColumnsFromConfig() {
884
- var _this5 = this;
885
- var _this$props2 = this.props, columns = _this$props2.columns, data = _this$props2.data, selectedRows = _this$props2.selectedRows;
793
+ var _this4 = this;
794
+ var _this$props = this.props, columns = _this$props.columns, data = _this$props.data, selectedRows = _this$props.selectedRows;
886
795
  this.hasGroups = columns.some(function(column2) {
887
796
  return "columns" in column2 && column2.columns.some(function(col) {
888
797
  return col.children !== null;
@@ -903,18 +812,18 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
903
812
  calculatedColumns.push(column);
904
813
  }
905
814
  var makeColumn = function makeColumn2(columnElement, parent, isFirst, isLast, hasGroups) {
906
- var _columnElement$fixed, _ref4, _columnElement$border;
815
+ var _columnElement$fixed, _ref3, _columnElement$border;
907
816
  var leftBordersFromParent = isFirst && ((parent === null || parent === void 0 ? void 0 : parent.borders) === "both" || (parent === null || parent === void 0 ? void 0 : parent.borders) === "left") ? "left" : void 0;
908
817
  var rightBordersFromParent = isLast && ((parent === null || parent === void 0 ? void 0 : parent.borders) === "both" || (parent === null || parent === void 0 ? void 0 : parent.borders) === "right") ? "right" : void 0;
909
818
  var column2 = _objectSpread(_objectSpread({}, columnElement), {}, {
910
819
  name: childIsColumn(columnElement) ? columnElement.name : "",
911
820
  gtcWidth: childIsColumn(columnElement) ? calculateGridTemplateColumn(columnElement) : "",
912
821
  fixed: (_columnElement$fixed = columnElement.fixed) !== null && _columnElement$fixed !== void 0 ? _columnElement$fixed : hasGroups ? parent === null || parent === void 0 ? void 0 : parent.fixed : void 0,
913
- borders: (_ref4 = (_columnElement$border = columnElement.borders) !== null && _columnElement$border !== void 0 ? _columnElement$border : leftBordersFromParent) !== null && _ref4 !== void 0 ? _ref4 : rightBordersFromParent,
822
+ borders: (_ref3 = (_columnElement$border = columnElement.borders) !== null && _columnElement$border !== void 0 ? _columnElement$border : leftBordersFromParent) !== null && _ref3 !== void 0 ? _ref3 : rightBordersFromParent,
914
823
  parent
915
824
  });
916
825
  if (column2.fixed) {
917
- _this5.hasFixedColumn = true;
826
+ _this4.hasFixedColumn = true;
918
827
  }
919
828
  return column2;
920
829
  };
@@ -938,7 +847,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
938
847
  columns.forEach(function(child, i) {
939
848
  if (childIsColumn(child)) {
940
849
  var col = makeColumn(child);
941
- col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this5.hasGroups ? "3" : "2", " / ").concat(gridColumnIndex + 1);
850
+ col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this4.hasGroups ? "3" : "2", " / ").concat(gridColumnIndex + 1);
942
851
  gridColumnIndex++;
943
852
  calculatedColumns.push(col);
944
853
  treeColumns.push(col);
@@ -949,14 +858,14 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
949
858
  var Group = makeColumn(child);
950
859
  var childCount = child.columns.length;
951
860
  var initGridColumn = gridColumnIndex;
952
- var groupedRow = _this5.hasGroups ? 2 : 1;
861
+ var groupedRow = _this4.hasGroups ? 2 : 1;
953
862
  Group.columns = [];
954
863
  Group.children = child.children;
955
864
  child.columns.forEach(function(child2, j) {
956
865
  var _Group$columns;
957
866
  var isFirst = j === 0;
958
867
  var isLast = j === childCount - 1;
959
- var col2 = makeColumn(child2, Group, isFirst, isLast, _this5.hasGroups);
868
+ var col2 = makeColumn(child2, Group, isFirst, isLast, _this4.hasGroups);
960
869
  if (i === 0 && j === 0 && data.some(function(d) {
961
870
  return d[ACCORDION];
962
871
  })) {
@@ -974,10 +883,20 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
974
883
  (_Group$columns = Group.columns) === null || _Group$columns === void 0 || _Group$columns.push(col2);
975
884
  });
976
885
  treeColumns.push(Group);
977
- _this5.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
886
+ _this4.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
978
887
  groupIndex++;
979
888
  }
980
889
  });
890
+ var gridTemplateColumns = calculatedColumns.map(function(c) {
891
+ return c.gtcWidth;
892
+ });
893
+ var gridTemplateAreas = calculatedColumns.map(function(c) {
894
+ return c.name;
895
+ });
896
+ this.gridSettings = {
897
+ gridTemplateColumns,
898
+ gridTemplateAreas
899
+ };
981
900
  return [calculatedColumns, treeColumns];
982
901
  }
983
902
  }, {
@@ -993,9 +912,9 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
993
912
  }, {
994
913
  key: "getRows",
995
914
  value: function getRows() {
996
- var _this6 = this;
915
+ var _this5 = this;
997
916
  var columns = this.columns;
998
- var _this$props3 = this.props, data = _this$props3.data, uid = _this$props3.uid, uniqueRowKey = _this$props3.uniqueRowKey;
917
+ var _this$props2 = this.props, data = _this$props2.data, uid = _this$props2.uid, uniqueRowKey = _this$props2.uniqueRowKey;
999
918
  if (this.tmpData === data) {
1000
919
  return this.calculatedRows;
1001
920
  }
@@ -1005,12 +924,14 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
1005
924
  return column.name;
1006
925
  });
1007
926
  var rowIndex = 0;
927
+ var gridRowIndex = 0;
1008
928
  var id = 1e8;
1009
929
  var makeDtRow = function makeDtRow2(row, excludeColumns) {
1010
930
  var columns2 = new Set(columnNames);
1011
- var dtRow = Object.entries(row).reduce(function(acc, _ref5) {
1012
- var _ref6 = _slicedToArray(_ref5, 2), key = _ref6[0], value = _ref6[1];
1013
- var columnsToRow = key.split(_this6.columnsSplitter);
931
+ var accordionInCell = null;
932
+ var dtRow = Object.entries(row).reduce(function(acc, _ref4) {
933
+ var _ref5 = _slicedToArray(_ref4, 2), key = _ref5[0], value = _ref5[1];
934
+ var columnsToRow = key.split(_this5.columnsSplitter);
1014
935
  if (columnsToRow.length === 1) {
1015
936
  acc[key] = value !== null && value !== void 0 ? value : "";
1016
937
  columns2["delete"](key);
@@ -1023,11 +944,18 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
1023
944
  columns2["delete"](value2);
1024
945
  });
1025
946
  }
1026
- if (row[ACCORDION]) {
1027
- acc[ACCORDION] = row[ACCORDION];
947
+ if (value !== null && value !== void 0 && value[ACCORDION]) {
948
+ accordionInCell = value[ACCORDION];
1028
949
  }
1029
950
  return acc;
1030
- }, _defineProperty(_defineProperty({}, UNIQ_ROW_KEY, row[UNIQ_ROW_KEY] || (uniqueRowKey ? row[uniqueRowKey] : "".concat(uid, "_").concat((rowIndex + id).toString(36)))), ROW_INDEX, rowIndex));
951
+ }, _defineProperty(_defineProperty(_defineProperty({}, UNIQ_ROW_KEY, row[UNIQ_ROW_KEY] || (uniqueRowKey ? row[uniqueRowKey] : "".concat(uid, "_").concat((rowIndex + id).toString(36)))), ROW_INDEX, rowIndex), GRID_ROW_INDEX, gridRowIndex));
952
+ gridRowIndex++;
953
+ if (row[ACCORDION]) {
954
+ dtRow[ACCORDION] = row[ACCORDION];
955
+ gridRowIndex = Array.isArray(row[ACCORDION]) ? gridRowIndex + row[ACCORDION].length : gridRowIndex + 1;
956
+ } else if (accordionInCell) {
957
+ gridRowIndex = Array.isArray(accordionInCell) ? gridRowIndex + accordionInCell.length : gridRowIndex + 1;
958
+ }
1031
959
  excludeColumns === null || excludeColumns === void 0 || excludeColumns.forEach(function(value) {
1032
960
  columns2["delete"](value);
1033
961
  });
@@ -1043,8 +971,8 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
1043
971
  if (groupedRows) {
1044
972
  var innerRows = [];
1045
973
  var groupedKeys = [];
1046
- var groupedRowData = Object.entries(row).reduce(function(acc, _ref7) {
1047
- var _ref8 = _slicedToArray(_ref7, 2), key = _ref8[0], value = _ref8[1];
974
+ var groupedRowData = Object.entries(row).reduce(function(acc, _ref6) {
975
+ var _ref7 = _slicedToArray(_ref6, 2), key = _ref7[0], value = _ref7[1];
1048
976
  acc[key] = new MergedRowsCell(value, groupedRows.length, row[ACCORDION]);
1049
977
  groupedKeys.push(key);
1050
978
  return acc;
@@ -1057,13 +985,13 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
1057
985
  dtRow2[ROW_GROUP] = /* @__PURE__ */ new Set();
1058
986
  } else {
1059
987
  var _innerRows$;
1060
- if (index === groupedRows.length - 1 && row[ACCORDION]) {
1061
- childRow[ACCORDION] = row[ACCORDION];
1062
- }
1063
988
  dtRow2 = makeDtRow(childRow, groupedKeys);
1064
989
  (_innerRows$ = innerRows[0]) === null || _innerRows$ === void 0 || (_innerRows$ = _innerRows$[ROW_GROUP]) === null || _innerRows$ === void 0 || _innerRows$.add(dtRow2[UNIQ_ROW_KEY]);
1065
990
  }
1066
991
  innerRows.push(dtRow2);
992
+ if (index === groupedRows.length - 1 && row[ACCORDION]) {
993
+ gridRowIndex = Array.isArray(row[ACCORDION]) ? gridRowIndex + row[ACCORDION].length : gridRowIndex + 1;
994
+ }
1067
995
  rowIndex++;
1068
996
  });
1069
997
  rows.push(innerRows);
@@ -1079,8 +1007,8 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
1079
1007
  }, {
1080
1008
  key: "calculateGridTemplateColumn",
1081
1009
  value: function calculateGridTemplateColumn(c) {
1082
- var _ref9;
1083
- return (_ref9 = /* @__PURE__ */ React.isValidElement(c) ? c.props.gtcWidth : c.gtcWidth) !== null && _ref9 !== void 0 ? _ref9 : this.props.defaultGridTemplateColumnWidth;
1010
+ var _ref8;
1011
+ return (_ref8 = /* @__PURE__ */ React.isValidElement(c) ? c.props.gtcWidth : c.gtcWidth) !== null && _ref8 !== void 0 ? _ref8 : this.props.defaultGridTemplateColumnWidth;
1084
1012
  }
1085
1013
  }, {
1086
1014
  key: "getHeaderHeight",
@@ -1130,11 +1058,10 @@ var DataTable = createComponent(DataTableRoot, {
1130
1058
  Head,
1131
1059
  Body
1132
1060
  });
1133
- var DataTableInternal = DataTable;
1134
1061
  export {
1135
1062
  ACCORDION,
1136
1063
  DataTable,
1137
- DataTableInternal,
1064
+ GRID_ROW_INDEX,
1138
1065
  IS_EMPTY_DATA_ROW,
1139
1066
  ROW_GROUP,
1140
1067
  ROW_INDEX,