@semcore/data-table 16.1.0 → 16.2.0-prerelease.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/lib/cjs/components/Body/Body.js +43 -43
  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 +43 -43
  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 +43 -43
  9. package/lib/cjs/components/Body/style.shadow.css +2 -1
  10. package/lib/cjs/components/DataTable/DataTable.js +66 -44
  11. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  12. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  13. package/lib/cjs/components/Head/Column.js +30 -30
  14. package/lib/cjs/components/Head/Column.types.js.map +1 -1
  15. package/lib/cjs/components/Head/Group.js +30 -30
  16. package/lib/cjs/components/Head/Group.type.js.map +1 -1
  17. package/lib/cjs/components/Head/Head.js +30 -30
  18. package/lib/cjs/components/Head/Head.types.js.map +1 -1
  19. package/lib/es6/components/Body/Body.js +43 -43
  20. package/lib/es6/components/Body/Body.js.map +1 -1
  21. package/lib/es6/components/Body/Body.types.js.map +1 -1
  22. package/lib/es6/components/Body/Cell.js +43 -43
  23. package/lib/es6/components/Body/Cell.js.map +1 -1
  24. package/lib/es6/components/Body/Cell.types.js.map +1 -1
  25. package/lib/es6/components/Body/Row.js +43 -43
  26. package/lib/es6/components/Body/style.shadow.css +2 -1
  27. package/lib/es6/components/DataTable/DataTable.js +66 -44
  28. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  29. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  30. package/lib/es6/components/Head/Column.js +30 -30
  31. package/lib/es6/components/Head/Column.types.js.map +1 -1
  32. package/lib/es6/components/Head/Group.js +30 -30
  33. package/lib/es6/components/Head/Group.type.js.map +1 -1
  34. package/lib/es6/components/Head/Head.js +30 -30
  35. package/lib/es6/components/Head/Head.types.js.map +1 -1
  36. package/lib/esm/components/Body/Body.mjs +44 -44
  37. package/lib/esm/components/Body/Cell.mjs +44 -44
  38. package/lib/esm/components/Body/Row.mjs +44 -44
  39. package/lib/esm/components/Body/style.shadow.css +2 -1
  40. package/lib/esm/components/DataTable/DataTable.mjs +68 -46
  41. package/lib/esm/components/Head/Column.mjs +31 -31
  42. package/lib/esm/components/Head/Group.mjs +31 -31
  43. package/lib/esm/components/Head/Head.mjs +31 -31
  44. package/lib/types/components/Body/Body.types.d.ts +20 -9
  45. package/lib/types/components/Body/Cell.types.d.ts +3 -3
  46. package/lib/types/components/DataTable/DataTable.types.d.ts +10 -4
  47. package/lib/types/components/Head/Column.types.d.ts +2 -2
  48. package/lib/types/components/Head/Group.type.d.ts +1 -1
  49. package/lib/types/components/Head/Head.types.d.ts +2 -2
  50. package/package.json +22 -22
@@ -34,37 +34,37 @@ var _MergedCells = require("../Body/MergedCells");
34
34
  var _Head = require("../Head/Head");
35
35
  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
36
  /*!__reshadow-styles__:"./dataTable.shadow.css"*/
37
- var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SDataTable_sw87i_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_sw87i_gg_.__gridTemplateColumns_sw87i_gg_{grid-template-columns:var(--gridTemplateColumns_sw87i)}.___SDataTable_sw87i_gg_.__gridTemplateAreas_sw87i_gg_{grid-template-areas:var(--gridTemplateAreas_sw87i)}.___SDataTable_sw87i_gg_.__gridTemplateRows_sw87i_gg_{grid-template-rows:var(--gridTemplateRows_sw87i)}", /*__inner_css_end__*/"sw87i_gg_"),
37
+ var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SDataTable_crlgn_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_crlgn_gg_.__gridTemplateColumns_crlgn_gg_{grid-template-columns:var(--gridTemplateColumns_crlgn)}.___SDataTable_crlgn_gg_.__gridTemplateAreas_crlgn_gg_{grid-template-areas:var(--gridTemplateAreas_crlgn)}.___SDataTable_crlgn_gg_.__gridTemplateRows_crlgn_gg_{grid-template-rows:var(--gridTemplateRows_crlgn)}", /*__inner_css_end__*/"crlgn_gg_"),
38
38
  /*__reshadow_css_end__*/
39
39
  {
40
- "__SDataTable": "___SDataTable_sw87i_gg_",
41
- "_gridTemplateColumns": "__gridTemplateColumns_sw87i_gg_",
42
- "--gridTemplateColumns": "--gridTemplateColumns_sw87i",
43
- "_gridTemplateAreas": "__gridTemplateAreas_sw87i_gg_",
44
- "--gridTemplateAreas": "--gridTemplateAreas_sw87i",
45
- "_gridTemplateRows": "__gridTemplateRows_sw87i_gg_",
46
- "--gridTemplateRows": "--gridTemplateRows_sw87i"
40
+ "__SDataTable": "___SDataTable_crlgn_gg_",
41
+ "_gridTemplateColumns": "__gridTemplateColumns_crlgn_gg_",
42
+ "--gridTemplateColumns": "--gridTemplateColumns_crlgn",
43
+ "_gridTemplateAreas": "__gridTemplateAreas_crlgn_gg_",
44
+ "--gridTemplateAreas": "--gridTemplateAreas_crlgn",
45
+ "_gridTemplateRows": "__gridTemplateRows_crlgn_gg_",
46
+ "--gridTemplateRows": "--gridTemplateRows_crlgn"
47
47
  });
48
48
  /*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
49
- var scrollStyles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SScrollArea_lhh9n_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_{overflow:visible;overflow:initial}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_._scrollDirection_both_lhh9n_gg_{overflow:auto}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_._scrollDirection_both_lhh9n_gg_.__loading_lhh9n_gg_,.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_._scrollDirection_horizontal_lhh9n_gg_.__loading_lhh9n_gg_,.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_._scrollDirection_vertical_lhh9n_gg_.__loading_lhh9n_gg_{overflow:hidden}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_._scrollDirection_horizontal_lhh9n_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_._scrollDirection_vertical_lhh9n_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_.__headerHeight_lhh9n_gg_{scroll-padding-top:var(--headerHeight_lhh9n)}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_.__leftScrollPadding_lhh9n_gg_{scroll-padding-left:var(--leftScrollPadding_lhh9n)}.___SScrollArea_lhh9n_gg_ .___SContainer_lhh9n_gg_.__rightScrollPadding_lhh9n_gg_{scroll-padding-right:var(--rightScrollPadding_lhh9n)}.___SScrollArea_lhh9n_gg_ .___SShadowHorizontal_lhh9n_gg_::before,.___SScrollArea_lhh9n_gg_ .___SShadowHorizontal_lhh9n_gg_:after,.___SScrollArea_lhh9n_gg_ .___SShadowVertical_lhh9n_gg_::after{z-index:20}.___SScrollArea_lhh9n_gg_ .___SShadowHorizontal_lhh9n_gg_.__leftOffset_lhh9n_gg_::before,.___SScrollArea_lhh9n_gg_ .___SShadowHorizontal_lhh9n_gg_.__rightOffset_lhh9n_gg_::after,.___SScrollArea_lhh9n_gg_ .___SShadowVertical_lhh9n_gg_::before{display:none}", /*__inner_css_end__*/"lhh9n_gg_"),
49
+ var scrollStyles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SScrollArea_1994j_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_{overflow:visible;overflow:initial}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_._scrollDirection_both_1994j_gg_{overflow:auto}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_._scrollDirection_both_1994j_gg_.__loading_1994j_gg_,.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_._scrollDirection_horizontal_1994j_gg_.__loading_1994j_gg_,.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_._scrollDirection_vertical_1994j_gg_.__loading_1994j_gg_{overflow:hidden}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_._scrollDirection_horizontal_1994j_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_._scrollDirection_vertical_1994j_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_.__headerHeight_1994j_gg_{scroll-padding-top:var(--headerHeight_1994j)}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_.__leftScrollPadding_1994j_gg_{scroll-padding-left:var(--leftScrollPadding_1994j)}.___SScrollArea_1994j_gg_ .___SContainer_1994j_gg_.__rightScrollPadding_1994j_gg_{scroll-padding-right:var(--rightScrollPadding_1994j)}.___SScrollArea_1994j_gg_ .___SShadowHorizontal_1994j_gg_::before,.___SScrollArea_1994j_gg_ .___SShadowHorizontal_1994j_gg_:after,.___SScrollArea_1994j_gg_ .___SShadowVertical_1994j_gg_::after{z-index:20}.___SScrollArea_1994j_gg_ .___SShadowHorizontal_1994j_gg_.__leftOffset_1994j_gg_::before,.___SScrollArea_1994j_gg_ .___SShadowHorizontal_1994j_gg_.__rightOffset_1994j_gg_::after,.___SScrollArea_1994j_gg_ .___SShadowVertical_1994j_gg_::before{display:none}", /*__inner_css_end__*/"1994j_gg_"),
50
50
  /*__reshadow_css_end__*/
51
51
  {
52
- "__SScrollArea": "___SScrollArea_lhh9n_gg_",
53
- "__SContainer": "___SContainer_lhh9n_gg_",
54
- "_scrollDirection_both": "_scrollDirection_both_lhh9n_gg_",
55
- "_loading": "__loading_lhh9n_gg_",
56
- "_scrollDirection_horizontal": "_scrollDirection_horizontal_lhh9n_gg_",
57
- "_scrollDirection_vertical": "_scrollDirection_vertical_lhh9n_gg_",
58
- "_headerHeight": "__headerHeight_lhh9n_gg_",
59
- "--headerHeight": "--headerHeight_lhh9n",
60
- "_leftScrollPadding": "__leftScrollPadding_lhh9n_gg_",
61
- "--leftScrollPadding": "--leftScrollPadding_lhh9n",
62
- "_rightScrollPadding": "__rightScrollPadding_lhh9n_gg_",
63
- "--rightScrollPadding": "--rightScrollPadding_lhh9n",
64
- "__SShadowVertical": "___SShadowVertical_lhh9n_gg_",
65
- "__SShadowHorizontal": "___SShadowHorizontal_lhh9n_gg_",
66
- "_leftOffset": "__leftOffset_lhh9n_gg_",
67
- "_rightOffset": "__rightOffset_lhh9n_gg_"
52
+ "__SScrollArea": "___SScrollArea_1994j_gg_",
53
+ "__SContainer": "___SContainer_1994j_gg_",
54
+ "_scrollDirection_both": "_scrollDirection_both_1994j_gg_",
55
+ "_loading": "__loading_1994j_gg_",
56
+ "_scrollDirection_horizontal": "_scrollDirection_horizontal_1994j_gg_",
57
+ "_scrollDirection_vertical": "_scrollDirection_vertical_1994j_gg_",
58
+ "_headerHeight": "__headerHeight_1994j_gg_",
59
+ "--headerHeight": "--headerHeight_1994j",
60
+ "_leftScrollPadding": "__leftScrollPadding_1994j_gg_",
61
+ "--leftScrollPadding": "--leftScrollPadding_1994j",
62
+ "_rightScrollPadding": "__rightScrollPadding_1994j_gg_",
63
+ "--rightScrollPadding": "--rightScrollPadding_1994j",
64
+ "__SShadowVertical": "___SShadowVertical_1994j_gg_",
65
+ "__SShadowHorizontal": "___SShadowHorizontal_1994j_gg_",
66
+ "_leftOffset": "__leftOffset_1994j_gg_",
67
+ "_rightOffset": "__rightOffset_1994j_gg_"
68
68
  });
69
69
  var ACCORDION = exports.ACCORDION = Symbol('accordion');
70
70
  var ROW_GROUP = exports.ROW_GROUP = Symbol('ROW_GROUP');
@@ -88,10 +88,12 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
88
88
  (0, _defineProperty2["default"])(_this, "tableRef", /*#__PURE__*/React.createRef());
89
89
  (0, _defineProperty2["default"])(_this, "headerRef", /*#__PURE__*/React.createRef());
90
90
  (0, _defineProperty2["default"])(_this, "spinnerRef", /*#__PURE__*/React.createRef());
91
+ (0, _defineProperty2["default"])(_this, "containerResizeEndTimeoutId", null);
91
92
  (0, _defineProperty2["default"])(_this, "gridAreaGroupMap", new Map());
92
93
  (0, _defineProperty2["default"])(_this, "columnsSplitter", '/');
93
- (0, _defineProperty2["default"])(_this, "rows", []);
94
- (0, _defineProperty2["default"])(_this, "flatRows", []);
94
+ (0, _defineProperty2["default"])(_this, "tmpData", void 0);
95
+ (0, _defineProperty2["default"])(_this, "calculatedRows", void 0);
96
+ (0, _defineProperty2["default"])(_this, "flatRows", void 0);
95
97
  (0, _defineProperty2["default"])(_this, "selectAllMessageTimer", 0);
96
98
  (0, _defineProperty2["default"])(_this, "headerNodesMap", new Map());
97
99
  (0, _defineProperty2["default"])(_this, "state", {
@@ -395,6 +397,12 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
395
397
  (0, _defineProperty2["default"])(_this, "handleBackFromAccordion", function (cellIndex) {
396
398
  _this.changeFocusCell(-1, cellIndex === -1 ? 0 : cellIndex, 'up');
397
399
  });
400
+ (0, _defineProperty2["default"])(_this, "handleContainerResizeEnd", function () {
401
+ if (_this.containerResizeEndTimeoutId) {
402
+ clearTimeout(_this.containerResizeEndTimeoutId);
403
+ }
404
+ _this.containerResizeEndTimeoutId = setTimeout(_this.calculateVerticalShadow, 0);
405
+ });
398
406
  (0, _defineProperty2["default"])(_this, "getScrollOffsetValue", function () {
399
407
  if (!_this.headerRef.current) {
400
408
  return [0, 0];
@@ -468,8 +476,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
468
476
  _this.columns = cols[0];
469
477
  _this.treeColumns = cols[1];
470
478
  }
471
- _this.rows = _this.calculateRows();
472
- _this.flatRows = _this.rows.flat();
479
+ _this.calculatedRows = _this.getRows();
480
+ _this.flatRows = _this.calculatedRows.flat();
481
+ _this.tmpData = props.data;
473
482
  return _this;
474
483
  }
475
484
  (0, _inherits2["default"])(DataTableRoot, _Component);
@@ -508,11 +517,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
508
517
  var cols = this.calculateColumnsFromConfig();
509
518
  this.columns = cols[0];
510
519
  this.treeColumns = cols[1];
520
+ this.forceUpdate();
511
521
  }
512
522
  if (prevProps.data !== data || prevProps.columns !== columns) {
513
- this.rows = this.calculateRows();
514
- this.flatRows = this.rows.flat();
515
- this.forceUpdate();
516
523
  if (this.hasFixedColumn) {
517
524
  this.calculateVerticalShadow();
518
525
  }
@@ -538,7 +545,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
538
545
  var _this$asProps5 = this.asProps,
539
546
  totalRows = _this$asProps5.totalRows,
540
547
  expandedRows = _this$asProps5.expandedRows;
541
- var flatRows = this.rows.flat();
548
+ var flatRows = this.getFlatRows();
542
549
  var expandedRowsCount = Array.from(expandedRows !== null && expandedRows !== void 0 ? expandedRows : []).reduce(function (acc, rowKey) {
543
550
  var dtRow = flatRows.find(function (el) {
544
551
  return el[UNIQ_ROW_KEY] === rowKey;
@@ -556,7 +563,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
556
563
  if (totalRows !== undefined) {
557
564
  return totalRows + expandedRowsCount;
558
565
  }
559
- var rows = this.rows.reduce(function (acc, item) {
566
+ var rows = this.getRows().reduce(function (acc, item) {
560
567
  acc = acc + 1;
561
568
  if (Array.isArray(item)) {
562
569
  acc = acc + item.length;
@@ -636,9 +643,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
636
643
  sideIndents: sideIndents,
637
644
  totalRows: this.totalRows,
638
645
  selectedRows: selectedRows,
639
- flatRows: this.flatRows,
646
+ flatRows: this.getFlatRows(),
640
647
  onChangeSelectAll: function onChangeSelectAll(value, e) {
641
- var mappedFlatRows = _this3.flatRows.map(function (r) {
648
+ var mappedFlatRows = _this3.getFlatRows().map(function (r) {
642
649
  return r[UNIQ_ROW_KEY];
643
650
  });
644
651
  var selectedRowsSet = new Set(selectedRows);
@@ -684,8 +691,8 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
684
691
  accordionDuration: accordionDuration,
685
692
  accordionMode: accordionMode,
686
693
  columns: this.columns,
687
- rows: this.rows,
688
- flatRows: this.flatRows,
694
+ rows: this.getRows(),
695
+ flatRows: this.getFlatRows(),
689
696
  use: use,
690
697
  compact: Boolean(compact),
691
698
  gridTemplateColumns: gridTemplateColumns,
@@ -706,8 +713,8 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
706
713
  virtualScroll: virtualScroll,
707
714
  hasGroups: this.hasGroups,
708
715
  uid: uid,
709
- rowProps: this.rows.length > 0 ? rowProps : undefined,
710
- renderCell: this.rows.length > 0 ? renderCell : undefined,
716
+ rowProps: this.getRows().length > 0 ? rowProps : undefined,
717
+ renderCell: this.getRows().length > 0 ? renderCell : undefined,
711
718
  renderEmptyData: renderEmptyData,
712
719
  sideIndents: sideIndents,
713
720
  selectedRows: selectedRows,
@@ -798,7 +805,8 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
798
805
  "container": this.tableContainerRef,
799
806
  "styles": scrollStyles,
800
807
  "onScroll": this.handleScroll,
801
- "disableAutofocusToContent": true
808
+ "disableAutofocusToContent": true,
809
+ "onResize": this.handleContainerResizeEnd
802
810
  }), /*#__PURE__*/React.createElement(_baseComponents.ScrollArea.Container, {
803
811
  tabIndex: -1
804
812
  // @ts-ignore
@@ -1032,12 +1040,21 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1032
1040
  groupIndex++;
1033
1041
  }
1034
1042
  });
1035
- console.log(calculatedColumns, treeColumns);
1036
1043
  return [calculatedColumns, treeColumns];
1037
1044
  }
1038
1045
  }, {
1039
- key: "calculateRows",
1040
- value: function calculateRows() {
1046
+ key: "getFlatRows",
1047
+ value: function getFlatRows() {
1048
+ var data = this.props.data;
1049
+ if (this.tmpData === data && this.flatRows) {
1050
+ return this.flatRows;
1051
+ }
1052
+ this.flatRows = this.getRows().flat();
1053
+ return this.flatRows;
1054
+ }
1055
+ }, {
1056
+ key: "getRows",
1057
+ value: function getRows() {
1041
1058
  var _this6 = this;
1042
1059
  var columns = this.columns;
1043
1060
  // @ts-ignore
@@ -1045,6 +1062,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1045
1062
  data = _this$props3.data,
1046
1063
  uid = _this$props3.uid,
1047
1064
  uniqueRowKey = _this$props3.uniqueRowKey;
1065
+ if (this.tmpData === data) {
1066
+ return this.calculatedRows;
1067
+ }
1068
+ this.tmpData = data;
1048
1069
  var rows = [];
1049
1070
  var columnNames = columns.map(function (column) {
1050
1071
  return column.name;
@@ -1123,6 +1144,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1123
1144
  rowIndex++;
1124
1145
  }
1125
1146
  });
1147
+ this.calculatedRows = rows;
1126
1148
  return rows;
1127
1149
  }
1128
1150
  }, {