@semcore/data-table 16.2.2-prerelease.1 → 16.3.0-prerelease.4

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 (59) hide show
  1. package/CHANGELOG.md +14 -3
  2. package/lib/cjs/components/Body/Body.js +201 -358
  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 +51 -65
  6. package/lib/cjs/components/Body/Cell.js.map +1 -1
  7. package/lib/cjs/components/Body/Cell.types.js.map +1 -1
  8. package/lib/cjs/components/Body/Row.js +367 -113
  9. package/lib/cjs/components/Body/Row.js.map +1 -1
  10. package/lib/cjs/components/Body/Row.types.js.map +1 -1
  11. package/lib/cjs/components/Body/style.shadow.css +6 -2
  12. package/lib/cjs/components/DataTable/DataTable.js +109 -179
  13. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  14. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  15. package/lib/cjs/components/Head/Column.js +36 -36
  16. package/lib/cjs/components/Head/Group.js +37 -37
  17. package/lib/cjs/components/Head/Group.js.map +1 -1
  18. package/lib/cjs/components/Head/Head.js +38 -38
  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 +202 -359
  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 +51 -65
  26. package/lib/es6/components/Body/Cell.js.map +1 -1
  27. package/lib/es6/components/Body/Cell.types.js.map +1 -1
  28. package/lib/es6/components/Body/Row.js +367 -113
  29. package/lib/es6/components/Body/Row.js.map +1 -1
  30. package/lib/es6/components/Body/Row.types.js.map +1 -1
  31. package/lib/es6/components/Body/style.shadow.css +6 -2
  32. package/lib/es6/components/DataTable/DataTable.js +105 -175
  33. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  34. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  35. package/lib/es6/components/Head/Column.js +36 -36
  36. package/lib/es6/components/Head/Group.js +38 -38
  37. package/lib/es6/components/Head/Group.js.map +1 -1
  38. package/lib/es6/components/Head/Head.js +39 -39
  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 +160 -309
  43. package/lib/esm/components/Body/Cell.mjs +52 -64
  44. package/lib/esm/components/Body/Row.mjs +316 -93
  45. package/lib/esm/components/Body/style.shadow.css +6 -2
  46. package/lib/esm/components/DataTable/DataTable.mjs +97 -167
  47. package/lib/esm/components/Head/Column.mjs +37 -37
  48. package/lib/esm/components/Head/Group.mjs +39 -39
  49. package/lib/esm/components/Head/Head.mjs +40 -40
  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 +3 -1
  53. package/lib/types/components/Body/Cell.types.d.ts +1 -0
  54. package/lib/types/components/Body/Row.d.ts +43 -3
  55. package/lib/types/components/Body/Row.types.d.ts +27 -15
  56. package/lib/types/components/DataTable/DataTable.d.ts +2 -2
  57. package/lib/types/components/DataTable/DataTable.types.d.ts +6 -1
  58. package/lib/types/index.d.ts +4 -3
  59. package/package.json +22 -22
@@ -5,10 +5,9 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.UNIQ_ROW_KEY = exports.SELECT_ALL = exports.ROW_INDEX = exports.ROW_GROUP = exports.IS_EMPTY_DATA_ROW = exports.DataTableInternal = exports.DataTable = exports.ACCORDION = void 0;
8
+ exports.UNIQ_ROW_KEY = exports.SELECT_ALL = exports.ROW_INDEX = exports.ROW_GROUP = exports.IS_EMPTY_DATA_ROW = exports.GRID_ROW_INDEX = exports.DataTable = exports.ACCORDION = void 0;
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
13
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
@@ -23,7 +22,7 @@ var _i18nEnhance = _interopRequireDefault(require("@semcore/core/lib/utils/enhan
23
22
  var _findComponent = _interopRequireDefault(require("@semcore/core/lib/utils/findComponent"));
24
23
  var _hasParent = require("@semcore/core/lib/utils/hasParent");
25
24
  var _rafTrottle = _interopRequireDefault(require("@semcore/core/lib/utils/rafTrottle"));
26
- var _ref0 = require("@semcore/core/lib/utils/ref");
25
+ var _ref9 = require("@semcore/core/lib/utils/ref");
27
26
  var _uniqueID = _interopRequireDefault(require("@semcore/core/lib/utils/uniqueID"));
28
27
  var _useFocusLock = require("@semcore/core/lib/utils/use/useFocusLock");
29
28
  var _widgetEmpty = require("@semcore/widget-empty");
@@ -34,38 +33,38 @@ var _MergedCells = require("../Body/MergedCells");
34
33
  var _Head = require("../Head/Head");
35
34
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, (0, _isNativeReflectConstruct2["default"])() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
36
35
  /*!__reshadow-styles__:"./dataTable.shadow.css"*/
37
- var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SDataTable_l7a5o_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_l7a5o_gg_.__isDataEmpty_l7a5o_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_l7a5o_gg_.__gridTemplateColumns_l7a5o_gg_{grid-template-columns:var(--gridTemplateColumns_l7a5o)}.___SDataTable_l7a5o_gg_.__gridTemplateAreas_l7a5o_gg_{grid-template-areas:var(--gridTemplateAreas_l7a5o)}.___SDataTable_l7a5o_gg_.__gridTemplateRows_l7a5o_gg_{grid-template-rows:var(--gridTemplateRows_l7a5o)}", /*__inner_css_end__*/"l7a5o_gg_"),
36
+ var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___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)}", /*__inner_css_end__*/"12hpo_gg_"),
38
37
  /*__reshadow_css_end__*/
39
38
  {
40
- "__SDataTable": "___SDataTable_l7a5o_gg_",
41
- "_isDataEmpty": "__isDataEmpty_l7a5o_gg_",
42
- "_gridTemplateColumns": "__gridTemplateColumns_l7a5o_gg_",
43
- "--gridTemplateColumns": "--gridTemplateColumns_l7a5o",
44
- "_gridTemplateAreas": "__gridTemplateAreas_l7a5o_gg_",
45
- "--gridTemplateAreas": "--gridTemplateAreas_l7a5o",
46
- "_gridTemplateRows": "__gridTemplateRows_l7a5o_gg_",
47
- "--gridTemplateRows": "--gridTemplateRows_l7a5o"
39
+ "__SDataTable": "___SDataTable_12hpo_gg_",
40
+ "_isDataEmpty": "__isDataEmpty_12hpo_gg_",
41
+ "_gridTemplateColumns": "__gridTemplateColumns_12hpo_gg_",
42
+ "--gridTemplateColumns": "--gridTemplateColumns_12hpo",
43
+ "_gridTemplateAreas": "__gridTemplateAreas_12hpo_gg_",
44
+ "--gridTemplateAreas": "--gridTemplateAreas_12hpo",
45
+ "_gridTemplateRows": "__gridTemplateRows_12hpo_gg_",
46
+ "--gridTemplateRows": "--gridTemplateRows_12hpo"
48
47
  });
49
48
  /*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
50
- var scrollStyles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SScrollArea_1owgw_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_{overflow:visible;overflow:initial}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_._scrollDirection_both_1owgw_gg_{overflow:auto}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_._scrollDirection_both_1owgw_gg_.__loading_1owgw_gg_,.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_._scrollDirection_horizontal_1owgw_gg_.__loading_1owgw_gg_,.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_._scrollDirection_vertical_1owgw_gg_.__loading_1owgw_gg_{overflow:hidden}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_._scrollDirection_horizontal_1owgw_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_._scrollDirection_vertical_1owgw_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_.__headerHeight_1owgw_gg_{scroll-padding-top:var(--headerHeight_1owgw)}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_.__leftScrollPadding_1owgw_gg_{scroll-padding-left:var(--leftScrollPadding_1owgw)}.___SScrollArea_1owgw_gg_ .___SContainer_1owgw_gg_.__rightScrollPadding_1owgw_gg_{scroll-padding-right:var(--rightScrollPadding_1owgw)}.___SScrollArea_1owgw_gg_ .___SShadowHorizontal_1owgw_gg_::before,.___SScrollArea_1owgw_gg_ .___SShadowHorizontal_1owgw_gg_:after,.___SScrollArea_1owgw_gg_ .___SShadowVertical_1owgw_gg_::after{z-index:20}.___SScrollArea_1owgw_gg_ .___SShadowHorizontal_1owgw_gg_.__leftOffset_1owgw_gg_::before,.___SScrollArea_1owgw_gg_ .___SShadowHorizontal_1owgw_gg_.__rightOffset_1owgw_gg_::after,.___SScrollArea_1owgw_gg_ .___SShadowVertical_1owgw_gg_::before{display:none}", /*__inner_css_end__*/"1owgw_gg_"),
49
+ var scrollStyles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___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}", /*__inner_css_end__*/"w8oky_gg_"),
51
50
  /*__reshadow_css_end__*/
52
51
  {
53
- "__SScrollArea": "___SScrollArea_1owgw_gg_",
54
- "__SContainer": "___SContainer_1owgw_gg_",
55
- "_scrollDirection_both": "_scrollDirection_both_1owgw_gg_",
56
- "_loading": "__loading_1owgw_gg_",
57
- "_scrollDirection_horizontal": "_scrollDirection_horizontal_1owgw_gg_",
58
- "_scrollDirection_vertical": "_scrollDirection_vertical_1owgw_gg_",
59
- "_headerHeight": "__headerHeight_1owgw_gg_",
60
- "--headerHeight": "--headerHeight_1owgw",
61
- "_leftScrollPadding": "__leftScrollPadding_1owgw_gg_",
62
- "--leftScrollPadding": "--leftScrollPadding_1owgw",
63
- "_rightScrollPadding": "__rightScrollPadding_1owgw_gg_",
64
- "--rightScrollPadding": "--rightScrollPadding_1owgw",
65
- "__SShadowVertical": "___SShadowVertical_1owgw_gg_",
66
- "__SShadowHorizontal": "___SShadowHorizontal_1owgw_gg_",
67
- "_leftOffset": "__leftOffset_1owgw_gg_",
68
- "_rightOffset": "__rightOffset_1owgw_gg_"
52
+ "__SScrollArea": "___SScrollArea_w8oky_gg_",
53
+ "__SContainer": "___SContainer_w8oky_gg_",
54
+ "_scrollDirection_both": "_scrollDirection_both_w8oky_gg_",
55
+ "_loading": "__loading_w8oky_gg_",
56
+ "_scrollDirection_horizontal": "_scrollDirection_horizontal_w8oky_gg_",
57
+ "_scrollDirection_vertical": "_scrollDirection_vertical_w8oky_gg_",
58
+ "_headerHeight": "__headerHeight_w8oky_gg_",
59
+ "--headerHeight": "--headerHeight_w8oky",
60
+ "_leftScrollPadding": "__leftScrollPadding_w8oky_gg_",
61
+ "--leftScrollPadding": "--leftScrollPadding_w8oky",
62
+ "_rightScrollPadding": "__rightScrollPadding_w8oky_gg_",
63
+ "--rightScrollPadding": "--rightScrollPadding_w8oky",
64
+ "__SShadowVertical": "___SShadowVertical_w8oky_gg_",
65
+ "__SShadowHorizontal": "___SShadowHorizontal_w8oky_gg_",
66
+ "_leftOffset": "__leftOffset_w8oky_gg_",
67
+ "_rightOffset": "__rightOffset_w8oky_gg_"
69
68
  });
70
69
  var ACCORDION = exports.ACCORDION = Symbol('accordion');
71
70
  var ROW_GROUP = exports.ROW_GROUP = Symbol('ROW_GROUP');
@@ -73,6 +72,7 @@ var UNIQ_ROW_KEY = exports.UNIQ_ROW_KEY = Symbol('UNIQ_ROW_KEY');
73
72
  var IS_EMPTY_DATA_ROW = exports.IS_EMPTY_DATA_ROW = Symbol('IS_EMPTY_DATA_ROW');
74
73
  var SELECT_ALL = exports.SELECT_ALL = Symbol('SELECT_ALL');
75
74
  var ROW_INDEX = exports.ROW_INDEX = Symbol('ROW_INDEX');
75
+ var GRID_ROW_INDEX = exports.GRID_ROW_INDEX = Symbol('GRID_ROW_INDEX');
76
76
  var SCROLL_BAR_HEIGHT = 12;
77
77
  var DataTableRoot = /*#__PURE__*/function (_Component) {
78
78
  function DataTableRoot(props) {
@@ -95,6 +95,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
95
95
  (0, _defineProperty2["default"])(_this, "tmpData", void 0);
96
96
  (0, _defineProperty2["default"])(_this, "calculatedRows", void 0);
97
97
  (0, _defineProperty2["default"])(_this, "flatRows", void 0);
98
+ (0, _defineProperty2["default"])(_this, "gridSettings", {
99
+ gridTemplateColumns: [],
100
+ gridTemplateAreas: []
101
+ });
98
102
  (0, _defineProperty2["default"])(_this, "selectAllMessageTimer", 0);
99
103
  (0, _defineProperty2["default"])(_this, "headerNodesMap", new Map());
100
104
  (0, _defineProperty2["default"])(_this, "state", {
@@ -173,7 +177,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
173
177
  });
174
178
  (0, _defineProperty2["default"])(_this, "getRow", function (index) {
175
179
  var _this$tableRef$curren;
176
- 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\"])"));
180
+ 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\"])"));
177
181
  });
178
182
  (0, _defineProperty2["default"])(_this, "hasFocusableInHeader", function () {
179
183
  return _this.headerRef.current && (0, _useFocusLock.hasFocusableIn)(_this.headerRef.current) || _this.columns.some(function (column) {
@@ -187,11 +191,11 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
187
191
  accordionMode = _this$asProps2.accordionMode;
188
192
  if (expandedRows.has(expandedRow[UNIQ_ROW_KEY])) {
189
193
  expandedRows["delete"](expandedRow[UNIQ_ROW_KEY]);
190
- _this.handlers.expandedRows(new Set((0, _toConsumableArray2["default"])(expandedRows)));
194
+ _this.handlers.expandedRows(expandedRows);
191
195
  onAccordionToggle === null || onAccordionToggle === void 0 || onAccordionToggle('close', expandedRow[UNIQ_ROW_KEY], expandedRow[ROW_INDEX]);
192
196
  } else {
193
197
  expandedRows.add(expandedRow[UNIQ_ROW_KEY]);
194
- _this.handlers.expandedRows(new Set((0, _toConsumableArray2["default"])(expandedRows)));
198
+ _this.handlers.expandedRows(expandedRows);
195
199
  onAccordionToggle === null || onAccordionToggle === void 0 || onAccordionToggle('open', expandedRow[UNIQ_ROW_KEY], expandedRow[ROW_INDEX]);
196
200
  if (accordionMode === 'toggle') {
197
201
  var rowIndex = expandedRow[ROW_INDEX];
@@ -407,7 +411,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
407
411
  (0, _defineProperty2["default"])(_this, "handleMouseMove", function () {
408
412
  _this.setInert(false);
409
413
  });
410
- (0, _defineProperty2["default"])(_this, "handleBackFromAccordion", function (cellIndex) {
414
+ (0, _defineProperty2["default"])(_this, "handleBackFromAccordion", function (key) {
415
+ var cellIndex = _this.columns.findIndex(function (c) {
416
+ return c.name === key;
417
+ });
411
418
  _this.changeFocusCell(-1, cellIndex === -1 ? 0 : cellIndex, 'up');
412
419
  });
413
420
  (0, _defineProperty2["default"])(_this, "handleContainerResizeEnd", function () {
@@ -482,13 +489,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
482
489
  }, 0);
483
490
  return [side, "".concat(sum, "px")];
484
491
  });
485
- if (props.children) {
486
- _this.columns = _this.calculateColumns();
487
- } else {
488
- var cols = _this.calculateColumnsFromConfig();
489
- _this.columns = cols[0];
490
- _this.treeColumns = cols[1];
491
- }
492
+ var cols = _this.calculateColumnsFromConfig();
493
+ _this.columns = cols[0];
494
+ _this.treeColumns = cols[1];
492
495
  _this.calculatedRows = _this.getRows();
493
496
  _this.flatRows = _this.calculatedRows.flat();
494
497
  _this.tmpData = props.data;
@@ -585,21 +588,6 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
585
588
  }, 0);
586
589
  return rows + expandedRowsCount;
587
590
  }
588
- }, {
589
- key: "gridSettings",
590
- get: function get() {
591
- var columns = this.columns;
592
- var gridTemplateColumns = columns.map(function (c) {
593
- return c.gtcWidth;
594
- });
595
- var gridTemplateAreas = columns.map(function (c) {
596
- return c.name;
597
- });
598
- return {
599
- gridTemplateColumns: gridTemplateColumns,
600
- gridTemplateAreas: gridTemplateAreas
601
- };
602
- }
603
591
  }, {
604
592
  key: "scrollDirection",
605
593
  get: function get() {
@@ -639,11 +627,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
639
627
  headerProps = _this$asProps7.headerProps,
640
628
  onSelectedRowsChange = _this$asProps7.onSelectedRowsChange,
641
629
  selectedRows = _this$asProps7.selectedRows,
642
- sideIndents = _this$asProps7.sideIndents;
630
+ sideIndents = _this$asProps7.sideIndents,
631
+ variant = _this$asProps7.variant;
643
632
  var _this$gridSettings = this.gridSettings,
644
633
  gridTemplateColumns = _this$gridSettings.gridTemplateColumns,
645
634
  gridTemplateAreas = _this$gridSettings.gridTemplateAreas;
646
635
  var shadowVertical = this.state.shadowVertical;
636
+ var sideIndentsValue = variant === 'card' ? 'wide' : sideIndents;
647
637
  return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, headerProps), {}, {
648
638
  columns: this.columns,
649
639
  treeColumns: this.treeColumns,
@@ -654,11 +644,11 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
654
644
  onSortChange: onSortChange,
655
645
  getI18nText: getI18nText,
656
646
  uid: uid,
657
- ref: headerProps !== null && headerProps !== void 0 && headerProps.ref ? (0, _ref0.forkRef)(this.headerRef, headerProps.ref) : this.headerRef,
647
+ ref: headerProps !== null && headerProps !== void 0 && headerProps.ref ? (0, _ref9.forkRef)(this.headerRef, headerProps.ref) : this.headerRef,
658
648
  gridAreaGroupMap: this.gridAreaGroupMap,
659
649
  gridTemplateColumns: gridTemplateColumns,
660
650
  gridTemplateAreas: gridTemplateAreas,
661
- sideIndents: sideIndents,
651
+ sideIndents: sideIndentsValue,
662
652
  totalRows: this.totalRows,
663
653
  selectedRows: selectedRows,
664
654
  flatRows: this.getFlatRows(),
@@ -701,7 +691,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
701
691
  accordionDuration = _this$asProps8.accordionDuration,
702
692
  accordionMode = _this$asProps8.accordionMode,
703
693
  rawData = _this$asProps8.data,
704
- renderCellOverlay = _this$asProps8.renderCellOverlay;
694
+ renderCellOverlay = _this$asProps8.renderCellOverlay,
695
+ totalRows = _this$asProps8.totalRows,
696
+ variant = _this$asProps8.variant;
705
697
  var _this$gridSettings2 = this.gridSettings,
706
698
  gridTemplateColumns = _this$gridSettings2.gridTemplateColumns,
707
699
  gridTemplateAreas = _this$gridSettings2.gridTemplateAreas;
@@ -742,7 +734,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
742
734
  onCellClick: this.handleCellClick,
743
735
  rawData: rawData,
744
736
  shadowVertical: shadowVertical,
745
- renderCellOverlay: renderCellOverlay
737
+ renderCellOverlay: renderCellOverlay,
738
+ totalRows: totalRows,
739
+ variant: variant
746
740
  };
747
741
  }
748
742
  }, {
@@ -838,7 +832,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
838
832
  leftScrollPadding: "".concat(offsetLeftSum, "px"),
839
833
  rightScrollPadding: "".concat(offsetRightSum, "px")
840
834
  }, /*#__PURE__*/React.createElement(SDataTable, _ref2.cn("SDataTable", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
841
- "ref": (0, _ref0.forkRef)(this.tableRef, this.tableContainerRef),
835
+ "ref": (0, _ref9.forkRef)(this.tableRef, this.tableContainerRef),
842
836
  "role": 'grid',
843
837
  "onKeyDown": this.handleKeyDown,
844
838
  "onMouseMove": this.handleMouseMove,
@@ -859,7 +853,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
859
853
  "use:h": undefined,
860
854
  "use:hMax": undefined,
861
855
  "use:hMin": undefined
862
- }, _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(_baseComponents.ScrollArea.Bar, {
856
+ }, _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(_baseComponents.ScrollArea.Bar, {
863
857
  orientation: "horizontal",
864
858
  top: topOffset - SCROLL_BAR_HEIGHT,
865
859
  zIndex: 20
@@ -875,96 +869,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
875
869
  }), this.state.selectAllMessage));
876
870
  }
877
871
  }, {
878
- key: "calculateColumns",
879
- value: function calculateColumns() {
872
+ key: "calculateColumnsFromConfig",
873
+ value: function calculateColumnsFromConfig() {
880
874
  var _this4 = this;
881
875
  var _this$props = this.props,
882
- children = _this$props.children,
876
+ columns = _this$props.columns,
883
877
  data = _this$props.data,
884
878
  selectedRows = _this$props.selectedRows;
885
- var HeadComponent = (0, _findComponent["default"])(children, ['Head']);
886
- this.hasGroups = (0, _findComponent["default"])(HeadComponent.props.children, ['Head.Group']) !== undefined;
887
- var groupIndex = 0;
888
- var gridColumnIndex = selectedRows ? 2 : 1;
889
- var calculateGridTemplateColumn = this.calculateGridTemplateColumn.bind(this);
890
- var columns = [];
891
- if (selectedRows) {
892
- var column = {
893
- name: SELECT_ALL.toString(),
894
- gtcWidth: 'min-content',
895
- alignItems: 'flex-start',
896
- children: ''
897
- };
898
- columns.push(column);
899
- }
900
- var makeColumn = function makeColumn(columnElement, parent, isFirst, isLast) {
901
- var _columnElement$props$, _ref3, _columnElement$props$2;
902
- 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' : undefined;
903
- 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' : undefined;
904
- var column = {
905
- name: columnElement.props.name,
906
- gtcWidth: calculateGridTemplateColumn(columnElement),
907
- fixed: (_columnElement$props$ = columnElement.props.fixed) !== null && _columnElement$props$ !== void 0 ? _columnElement$props$ : parent === null || parent === void 0 ? void 0 : parent.props.fixed,
908
- borders: (_ref3 = (_columnElement$props$2 = columnElement.props.borders) !== null && _columnElement$props$2 !== void 0 ? _columnElement$props$2 : leftBordersFromParent) !== null && _ref3 !== void 0 ? _ref3 : rightBordersFromParent,
909
- parent: parent,
910
- flexWrap: columnElement.props.flexWrap,
911
- alignItems: columnElement.props.alignItems,
912
- alignContent: columnElement.props.alignContent,
913
- justifyContent: columnElement.props.justifyContent,
914
- textAlign: columnElement.props.textAlign,
915
- children: ''
916
- };
917
- return column;
918
- };
919
- var childIsColumn = function childIsColumn(child) {
920
- return child.type === _Head.Head.Column;
921
- };
922
- var childIsGroup = function childIsGroup(child) {
923
- return child.type === _Head.Head.Group;
924
- };
925
- React.Children.forEach(HeadComponent.props.children, function (child, i) {
926
- if (! /*#__PURE__*/React.isValidElement(child)) return;
927
- if (childIsColumn(child)) {
928
- var col = makeColumn(child);
929
- col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this4.hasGroups ? '3' : '2', " / ").concat(gridColumnIndex + 1);
930
- gridColumnIndex++;
931
- columns.push(col);
932
- } else if (childIsGroup(child)) {
933
- var Group = child;
934
- var childCount = React.Children.count(child.props.children);
935
- var initGridColumn = gridColumnIndex;
936
- React.Children.forEach(child.props.children, function (child, j) {
937
- if ((child === null || child === void 0 ? void 0 : child.type) === _Head.Head.Column) {
938
- var isFirst = j === 0;
939
- var isLast = j === childCount - 1;
940
- var _col = makeColumn(child, Group, isFirst, isLast);
941
- if (i === 0 && j === 0 && data.some(function (d) {
942
- return d[ACCORDION];
943
- })) {
944
- gridColumnIndex++;
945
- _col.gridArea = "2 / ".concat(gridColumnIndex - 1, " / 3 / ").concat(gridColumnIndex + 1);
946
- } else {
947
- _col.gridArea = "2 / ".concat(gridColumnIndex, " / 3 / ").concat(gridColumnIndex + 1);
948
- }
949
- _col.gridArea = "2 / ".concat(gridColumnIndex, " / 3 / ").concat(gridColumnIndex + 1);
950
- gridColumnIndex++;
951
- columns.push(_col);
952
- }
953
- });
954
- _this4.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
955
- groupIndex++;
956
- }
957
- });
958
- return columns.filter(Boolean);
959
- }
960
- }, {
961
- key: "calculateColumnsFromConfig",
962
- value: function calculateColumnsFromConfig() {
963
- var _this5 = this;
964
- var _this$props2 = this.props,
965
- columns = _this$props2.columns,
966
- data = _this$props2.data,
967
- selectedRows = _this$props2.selectedRows;
968
879
  this.hasGroups = columns.some(function (column) {
969
880
  return 'columns' in column && column.columns.some(function (col) {
970
881
  return col.children !== null;
@@ -985,18 +896,18 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
985
896
  calculatedColumns.push(column);
986
897
  }
987
898
  var makeColumn = function makeColumn(columnElement, parent, isFirst, isLast, hasGroups) {
988
- var _columnElement$fixed, _ref4, _columnElement$border;
899
+ var _columnElement$fixed, _ref3, _columnElement$border;
989
900
  var leftBordersFromParent = isFirst && ((parent === null || parent === void 0 ? void 0 : parent.borders) === 'both' || (parent === null || parent === void 0 ? void 0 : parent.borders) === 'left') ? 'left' : undefined;
990
901
  var rightBordersFromParent = isLast && ((parent === null || parent === void 0 ? void 0 : parent.borders) === 'both' || (parent === null || parent === void 0 ? void 0 : parent.borders) === 'right') ? 'right' : undefined;
991
902
  var column = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, columnElement), {}, {
992
903
  name: childIsColumn(columnElement) ? columnElement.name : '',
993
904
  gtcWidth: childIsColumn(columnElement) ? calculateGridTemplateColumn(columnElement) : '',
994
905
  fixed: (_columnElement$fixed = columnElement.fixed) !== null && _columnElement$fixed !== void 0 ? _columnElement$fixed : hasGroups ? parent === null || parent === void 0 ? void 0 : parent.fixed : undefined,
995
- borders: (_ref4 = (_columnElement$border = columnElement.borders) !== null && _columnElement$border !== void 0 ? _columnElement$border : leftBordersFromParent) !== null && _ref4 !== void 0 ? _ref4 : rightBordersFromParent,
906
+ borders: (_ref3 = (_columnElement$border = columnElement.borders) !== null && _columnElement$border !== void 0 ? _columnElement$border : leftBordersFromParent) !== null && _ref3 !== void 0 ? _ref3 : rightBordersFromParent,
996
907
  parent: parent
997
908
  });
998
909
  if (column.fixed) {
999
- _this5.hasFixedColumn = true;
910
+ _this4.hasFixedColumn = true;
1000
911
  }
1001
912
  return column;
1002
913
  };
@@ -1020,7 +931,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1020
931
  columns.forEach(function (child, i) {
1021
932
  if (childIsColumn(child)) {
1022
933
  var col = makeColumn(child);
1023
- col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this5.hasGroups ? '3' : '2', " / ").concat(gridColumnIndex + 1);
934
+ col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this4.hasGroups ? '3' : '2', " / ").concat(gridColumnIndex + 1);
1024
935
  gridColumnIndex++;
1025
936
  calculatedColumns.push(col);
1026
937
  treeColumns.push(col);
@@ -1031,14 +942,14 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1031
942
  var Group = makeColumn(child);
1032
943
  var childCount = child.columns.length;
1033
944
  var initGridColumn = gridColumnIndex;
1034
- var groupedRow = _this5.hasGroups ? 2 : 1;
945
+ var groupedRow = _this4.hasGroups ? 2 : 1;
1035
946
  Group.columns = [];
1036
947
  Group.children = child.children;
1037
948
  child.columns.forEach(function (child, j) {
1038
949
  var _Group$columns;
1039
950
  var isFirst = j === 0;
1040
951
  var isLast = j === childCount - 1;
1041
- var col = makeColumn(child, Group, isFirst, isLast, _this5.hasGroups);
952
+ var col = makeColumn(child, Group, isFirst, isLast, _this4.hasGroups);
1042
953
  if (i === 0 && j === 0 && data.some(function (d) {
1043
954
  return d[ACCORDION];
1044
955
  })) {
@@ -1056,10 +967,20 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1056
967
  (_Group$columns = Group.columns) === null || _Group$columns === void 0 || _Group$columns.push(col);
1057
968
  });
1058
969
  treeColumns.push(Group);
1059
- _this5.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
970
+ _this4.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
1060
971
  groupIndex++;
1061
972
  }
1062
973
  });
974
+ var gridTemplateColumns = calculatedColumns.map(function (c) {
975
+ return c.gtcWidth;
976
+ });
977
+ var gridTemplateAreas = calculatedColumns.map(function (c) {
978
+ return c.name;
979
+ });
980
+ this.gridSettings = {
981
+ gridTemplateColumns: gridTemplateColumns,
982
+ gridTemplateAreas: gridTemplateAreas
983
+ };
1063
984
  return [calculatedColumns, treeColumns];
1064
985
  }
1065
986
  }, {
@@ -1075,13 +996,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1075
996
  }, {
1076
997
  key: "getRows",
1077
998
  value: function getRows() {
1078
- var _this6 = this;
999
+ var _this5 = this;
1079
1000
  var columns = this.columns;
1080
1001
  // @ts-ignore
1081
- var _this$props3 = this.props,
1082
- data = _this$props3.data,
1083
- uid = _this$props3.uid,
1084
- uniqueRowKey = _this$props3.uniqueRowKey;
1002
+ var _this$props2 = this.props,
1003
+ data = _this$props2.data,
1004
+ uid = _this$props2.uid,
1005
+ uniqueRowKey = _this$props2.uniqueRowKey;
1085
1006
  if (this.tmpData === data) {
1086
1007
  return this.calculatedRows;
1087
1008
  }
@@ -1091,15 +1012,17 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1091
1012
  return column.name;
1092
1013
  });
1093
1014
  var rowIndex = 0;
1015
+ var gridRowIndex = 0;
1094
1016
  var id = 100000000; // need this for gen keys by toString(36)
1095
1017
 
1096
1018
  var makeDtRow = function makeDtRow(row, excludeColumns) {
1097
1019
  var columns = new Set(columnNames);
1098
- var dtRow = Object.entries(row).reduce(function (acc, _ref5) {
1099
- var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2),
1100
- key = _ref6[0],
1101
- value = _ref6[1];
1102
- var columnsToRow = key.split(_this6.columnsSplitter);
1020
+ var accordionInCell = null;
1021
+ var dtRow = Object.entries(row).reduce(function (acc, _ref4) {
1022
+ var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2),
1023
+ key = _ref5[0],
1024
+ value = _ref5[1];
1025
+ var columnsToRow = key.split(_this5.columnsSplitter);
1103
1026
  if (columnsToRow.length === 1) {
1104
1027
  acc[key] = value !== null && value !== void 0 ? value : '';
1105
1028
  columns["delete"](key);
@@ -1112,11 +1035,18 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1112
1035
  columns["delete"](value);
1113
1036
  });
1114
1037
  }
1115
- if (row[ACCORDION]) {
1116
- acc[ACCORDION] = row[ACCORDION];
1038
+ if (value !== null && value !== void 0 && value[ACCORDION]) {
1039
+ accordionInCell = value[ACCORDION];
1117
1040
  }
1118
1041
  return acc;
1119
- }, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, UNIQ_ROW_KEY, row[UNIQ_ROW_KEY] || (uniqueRowKey ? row[uniqueRowKey] : "".concat(uid, "_").concat((rowIndex + id).toString(36)))), ROW_INDEX, rowIndex));
1042
+ }, (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, UNIQ_ROW_KEY, row[UNIQ_ROW_KEY] || (uniqueRowKey ? row[uniqueRowKey] : "".concat(uid, "_").concat((rowIndex + id).toString(36)))), ROW_INDEX, rowIndex), GRID_ROW_INDEX, gridRowIndex));
1043
+ gridRowIndex++;
1044
+ if (row[ACCORDION]) {
1045
+ dtRow[ACCORDION] = row[ACCORDION];
1046
+ gridRowIndex = Array.isArray(row[ACCORDION]) ? gridRowIndex + row[ACCORDION].length : gridRowIndex + 1;
1047
+ } else if (accordionInCell) {
1048
+ gridRowIndex = Array.isArray(accordionInCell) ? gridRowIndex + accordionInCell.length : gridRowIndex + 1;
1049
+ }
1120
1050
  excludeColumns === null || excludeColumns === void 0 || excludeColumns.forEach(function (value) {
1121
1051
  columns["delete"](value);
1122
1052
  });
@@ -1132,10 +1062,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1132
1062
  if (groupedRows) {
1133
1063
  var innerRows = [];
1134
1064
  var groupedKeys = [];
1135
- var groupedRowData = Object.entries(row).reduce(function (acc, _ref7) {
1136
- var _ref8 = (0, _slicedToArray2["default"])(_ref7, 2),
1137
- key = _ref8[0],
1138
- value = _ref8[1];
1065
+ var groupedRowData = Object.entries(row).reduce(function (acc, _ref6) {
1066
+ var _ref7 = (0, _slicedToArray2["default"])(_ref6, 2),
1067
+ key = _ref7[0],
1068
+ value = _ref7[1];
1139
1069
  acc[key] = new _MergedCells.MergedRowsCell(value, groupedRows.length, row[ACCORDION]);
1140
1070
  groupedKeys.push(key);
1141
1071
  return acc;
@@ -1148,13 +1078,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1148
1078
  dtRow[ROW_GROUP] = new Set();
1149
1079
  } else {
1150
1080
  var _innerRows$;
1151
- if (index === groupedRows.length - 1 && row[ACCORDION]) {
1152
- childRow[ACCORDION] = row[ACCORDION];
1153
- }
1154
1081
  dtRow = makeDtRow(childRow, groupedKeys);
1155
1082
  (_innerRows$ = innerRows[0]) === null || _innerRows$ === void 0 || (_innerRows$ = _innerRows$[ROW_GROUP]) === null || _innerRows$ === void 0 || _innerRows$.add(dtRow[UNIQ_ROW_KEY]);
1156
1083
  }
1157
1084
  innerRows.push(dtRow);
1085
+ if (index === groupedRows.length - 1 && row[ACCORDION]) {
1086
+ gridRowIndex = Array.isArray(row[ACCORDION]) ? gridRowIndex + row[ACCORDION].length : gridRowIndex + 1;
1087
+ }
1158
1088
  rowIndex++;
1159
1089
  });
1160
1090
  rows.push(innerRows);
@@ -1170,8 +1100,8 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1170
1100
  }, {
1171
1101
  key: "calculateGridTemplateColumn",
1172
1102
  value: function calculateGridTemplateColumn(c) {
1173
- var _ref9;
1174
- return (_ref9 = /*#__PURE__*/React.isValidElement(c) ? c.props.gtcWidth : c.gtcWidth) !== null && _ref9 !== void 0 ? _ref9 : this.props.defaultGridTemplateColumnWidth;
1103
+ var _ref8;
1104
+ return (_ref8 = /*#__PURE__*/React.isValidElement(c) ? c.props.gtcWidth : c.gtcWidth) !== null && _ref8 !== void 0 ? _ref8 : this.props.defaultGridTemplateColumnWidth;
1175
1105
  }
1176
1106
  }, {
1177
1107
  key: "getHeaderHeight",
@@ -1214,11 +1144,11 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1214
1144
  description: "",
1215
1145
  w: "100%"
1216
1146
  });
1217
- }
1147
+ },
1148
+ variant: 'default'
1218
1149
  });
1219
1150
  var DataTable = exports.DataTable = (0, _core.createComponent)(DataTableRoot, {
1220
1151
  Head: _Head.Head,
1221
1152
  Body: _Body.Body
1222
1153
  });
1223
- var DataTableInternal = exports.DataTableInternal = DataTable;
1224
1154
  //# sourceMappingURL=DataTable.js.map