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

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 (31) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/lib/cjs/components/DataTable/DataTable.js +31 -11
  3. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  4. package/lib/cjs/components/DataTable/dataTable.shadow.css +6 -0
  5. package/lib/cjs/components/Head/Column.js +37 -30
  6. package/lib/cjs/components/Head/Column.js.map +1 -1
  7. package/lib/cjs/components/Head/Group.js +36 -30
  8. package/lib/cjs/components/Head/Group.js.map +1 -1
  9. package/lib/cjs/components/Head/Head.js +43 -32
  10. package/lib/cjs/components/Head/Head.js.map +1 -1
  11. package/lib/cjs/components/Head/Head.types.js.map +1 -1
  12. package/lib/cjs/components/Head/style.shadow.css +19 -0
  13. package/lib/es6/components/DataTable/DataTable.js +31 -11
  14. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  15. package/lib/es6/components/DataTable/dataTable.shadow.css +6 -0
  16. package/lib/es6/components/Head/Column.js +37 -30
  17. package/lib/es6/components/Head/Column.js.map +1 -1
  18. package/lib/es6/components/Head/Group.js +36 -30
  19. package/lib/es6/components/Head/Group.js.map +1 -1
  20. package/lib/es6/components/Head/Head.js +43 -32
  21. package/lib/es6/components/Head/Head.js.map +1 -1
  22. package/lib/es6/components/Head/Head.types.js.map +1 -1
  23. package/lib/es6/components/Head/style.shadow.css +19 -0
  24. package/lib/esm/components/DataTable/DataTable.mjs +32 -12
  25. package/lib/esm/components/DataTable/dataTable.shadow.css +6 -0
  26. package/lib/esm/components/Head/Column.mjs +38 -31
  27. package/lib/esm/components/Head/Group.mjs +37 -31
  28. package/lib/esm/components/Head/Head.mjs +42 -33
  29. package/lib/esm/components/Head/style.shadow.css +19 -0
  30. package/lib/types/components/Head/Head.types.d.ts +1 -0
  31. package/package.json +22 -22
package/CHANGELOG.md CHANGED
@@ -12,11 +12,14 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel
12
12
 
13
13
  - Unnecessary re-render when data was updated but old values were still used.
14
14
  - Shadows remain after resizing table width.
15
+ - `onSortChange` is called twice when click is on a sort icon.
16
+ - Hover behaviour for sort icon in case the content is justified to the right.
15
17
 
16
18
  ### Changed
17
19
 
18
20
  - Type description for `DataTableProps`/`CellRenderProps`.
19
21
  - `AccordionToggle`'s `margin-left`.
22
+ - `DataTable` display to `block` & `DataTable.Header` display to `grid` when `data` is empty.
20
23
 
21
24
  ## [16.1.0] - 2025-08-08
22
25
 
@@ -34,16 +34,17 @@ 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_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_"),
37
+ var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SDataTable_oz5ss_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_oz5ss_gg_.__isDataEmpty_oz5ss_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_oz5ss_gg_.__gridTemplateColumns_oz5ss_gg_{grid-template-columns:var(--gridTemplateColumns_oz5ss)}.___SDataTable_oz5ss_gg_.__gridTemplateAreas_oz5ss_gg_{grid-template-areas:var(--gridTemplateAreas_oz5ss)}.___SDataTable_oz5ss_gg_.__gridTemplateRows_oz5ss_gg_{grid-template-rows:var(--gridTemplateRows_oz5ss)}", /*__inner_css_end__*/"oz5ss_gg_"),
38
38
  /*__reshadow_css_end__*/
39
39
  {
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"
40
+ "__SDataTable": "___SDataTable_oz5ss_gg_",
41
+ "_isDataEmpty": "__isDataEmpty_oz5ss_gg_",
42
+ "_gridTemplateColumns": "__gridTemplateColumns_oz5ss_gg_",
43
+ "--gridTemplateColumns": "--gridTemplateColumns_oz5ss",
44
+ "_gridTemplateAreas": "__gridTemplateAreas_oz5ss_gg_",
45
+ "--gridTemplateAreas": "--gridTemplateAreas_oz5ss",
46
+ "_gridTemplateRows": "__gridTemplateRows_oz5ss_gg_",
47
+ "--gridTemplateRows": "--gridTemplateRows_oz5ss"
47
48
  });
48
49
  /*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
49
50
  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_"),
@@ -347,6 +348,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
347
348
  var _this$spinnerRef$curr;
348
349
  (_this$spinnerRef$curr = _this.spinnerRef.current) === null || _this$spinnerRef$curr === void 0 || _this$spinnerRef$curr.focus();
349
350
  e.currentTarget.setAttribute('tabIndex', '-1');
351
+ if (_this.isDataEmpty) {
352
+ var _this$headerRef$curre;
353
+ (_this$headerRef$curre = _this.headerRef.current) === null || _this$headerRef$curre === void 0 || _this$headerRef$curre.setAttribute('tabIndex', '-1');
354
+ }
350
355
  } else if ((!e.relatedTarget || !(0, _useFocusLock.isFocusInside)(e.currentTarget, e.relatedTarget)) && _core.lastInteraction.isKeyboard()) {
351
356
  var _row;
352
357
  if (_this.focusedCell[0] === -1 && _this.focusedCell[1] === -1) {
@@ -380,6 +385,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
380
385
  cell.focus();
381
386
  }
382
387
  }
388
+ if (_this.isDataEmpty) {
389
+ var _this$headerRef$curre2;
390
+ (_this$headerRef$curre2 = _this.headerRef.current) === null || _this$headerRef$curre2 === void 0 || _this$headerRef$curre2.setAttribute('tabIndex', '-1');
391
+ }
383
392
  e.currentTarget.setAttribute('tabIndex', '-1');
384
393
  }
385
394
  });
@@ -389,6 +398,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
389
398
  if (tableElement && (!relatedTarget || !(0, _useFocusLock.isFocusInside)(tableElement, relatedTarget) || !_core.lastInteraction.isKeyboard())) {
390
399
  _this.setInert(false);
391
400
  tableElement.setAttribute('tabIndex', '0');
401
+ if (_this.isDataEmpty) {
402
+ var _this$headerRef$curre3;
403
+ (_this$headerRef$curre3 = _this.headerRef.current) === null || _this$headerRef$curre3 === void 0 || _this$headerRef$curre3.setAttribute('tabIndex', '0');
404
+ }
392
405
  }
393
406
  });
394
407
  (0, _defineProperty2["default"])(_this, "handleMouseMove", function () {
@@ -607,6 +620,11 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
607
620
  }
608
621
  return scrollDirection;
609
622
  }
623
+ }, {
624
+ key: "isDataEmpty",
625
+ get: function get() {
626
+ return this.asProps.data.length === 0;
627
+ }
610
628
  }, {
611
629
  key: "getHeadProps",
612
630
  value: function getHeadProps() {
@@ -659,7 +677,8 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
659
677
  getFixedStyle: this.getFixedStyle,
660
678
  onCellClick: this.handleCellClick,
661
679
  shadowVertical: shadowVertical,
662
- scrollDirection: this.scrollDirection
680
+ scrollDirection: this.scrollDirection,
681
+ isDataEmpty: this.isDataEmpty
663
682
  });
664
683
  }
665
684
  }, {
@@ -826,6 +845,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
826
845
  "tabIndex": 0,
827
846
  "onFocus": this.handleFocus,
828
847
  "onBlur": this.handleBlur,
848
+ "isDataEmpty": this.isDataEmpty,
829
849
  "aria-rowcount": this.totalRows,
830
850
  "aria-colcount": this.columns.length,
831
851
  "gridTemplateColumns": gridTemplateColumns.join(' '),
@@ -1156,8 +1176,8 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
1156
1176
  }, {
1157
1177
  key: "getHeaderHeight",
1158
1178
  value: function getHeaderHeight() {
1159
- var _this$headerRef$curre;
1160
- var header = (_this$headerRef$curre = this.headerRef.current) === null || _this$headerRef$curre === void 0 ? void 0 : _this$headerRef$curre.children;
1179
+ var _this$headerRef$curre4;
1180
+ var header = (_this$headerRef$curre4 = this.headerRef.current) === null || _this$headerRef$curre4 === void 0 ? void 0 : _this$headerRef$curre4.children;
1161
1181
  var height = 0;
1162
1182
  for (var i = 0; i < ((_header$length = header === null || header === void 0 ? void 0 : header.length) !== null && _header$length !== void 0 ? _header$length : 0); i++) {
1163
1183
  var _header$length;