@semcore/data-table 16.3.2 → 16.4.0-prerelease.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/lib/cjs/components/Body/Body.js +58 -53
- package/lib/cjs/components/Body/Body.js.map +1 -1
- package/lib/cjs/components/Body/Body.types.js.map +1 -1
- package/lib/cjs/components/Body/Cell.js +62 -107
- package/lib/cjs/components/Body/Cell.js.map +1 -1
- package/lib/cjs/components/Body/LimitOverlay.js +190 -0
- package/lib/cjs/components/Body/LimitOverlay.js.map +1 -0
- package/lib/cjs/components/Body/Row.js +161 -109
- package/lib/cjs/components/Body/Row.js.map +1 -1
- package/lib/cjs/components/Body/Row.types.js.map +1 -1
- package/lib/cjs/components/Body/style.shadow.css +94 -42
- package/lib/cjs/components/DataTable/DataTable.js +61 -41
- package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
- package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
- package/lib/cjs/components/DataTable/dataTable.shadow.css +1 -0
- package/lib/cjs/components/Head/Column.js +45 -92
- package/lib/cjs/components/Head/Column.js.map +1 -1
- package/lib/cjs/components/Head/Group.js +38 -41
- package/lib/cjs/components/Head/Group.js.map +1 -1
- package/lib/cjs/components/Head/Head.js +38 -41
- package/lib/cjs/components/Head/Head.js.map +1 -1
- package/lib/cjs/enhancers/focusableCell.js +63 -0
- package/lib/cjs/enhancers/focusableCell.js.map +1 -0
- package/lib/es6/components/Body/Body.js +57 -52
- package/lib/es6/components/Body/Body.js.map +1 -1
- package/lib/es6/components/Body/Body.types.js.map +1 -1
- package/lib/es6/components/Body/Cell.js +61 -106
- package/lib/es6/components/Body/Cell.js.map +1 -1
- package/lib/es6/components/Body/LimitOverlay.js +183 -0
- package/lib/es6/components/Body/LimitOverlay.js.map +1 -0
- package/lib/es6/components/Body/Row.js +160 -108
- package/lib/es6/components/Body/Row.js.map +1 -1
- package/lib/es6/components/Body/Row.types.js.map +1 -1
- package/lib/es6/components/Body/style.shadow.css +94 -42
- package/lib/es6/components/DataTable/DataTable.js +60 -40
- package/lib/es6/components/DataTable/DataTable.js.map +1 -1
- package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
- package/lib/es6/components/DataTable/dataTable.shadow.css +1 -0
- package/lib/es6/components/Head/Column.js +44 -91
- package/lib/es6/components/Head/Column.js.map +1 -1
- package/lib/es6/components/Head/Group.js +37 -40
- package/lib/es6/components/Head/Group.js.map +1 -1
- package/lib/es6/components/Head/Head.js +37 -40
- package/lib/es6/components/Head/Head.js.map +1 -1
- package/lib/es6/enhancers/focusableCell.js +56 -0
- package/lib/es6/enhancers/focusableCell.js.map +1 -0
- package/lib/esm/components/Body/Body.mjs +58 -56
- package/lib/esm/components/Body/Cell.mjs +62 -109
- package/lib/esm/components/Body/LimitOverlay.mjs +178 -0
- package/lib/esm/components/Body/Row.mjs +125 -85
- package/lib/esm/components/Body/style.shadow.css +94 -42
- package/lib/esm/components/DataTable/DataTable.mjs +59 -42
- package/lib/esm/components/DataTable/dataTable.shadow.css +1 -0
- package/lib/esm/components/Head/Column.mjs +45 -94
- package/lib/esm/components/Head/Group.mjs +38 -43
- package/lib/esm/components/Head/Head.mjs +38 -43
- package/lib/esm/enhancers/focusableCell.mjs +59 -0
- package/lib/types/components/Body/Body.types.d.ts +2 -1
- package/lib/types/components/Body/LimitOverlay.d.ts +17 -0
- package/lib/types/components/Body/Row.d.ts +1 -0
- package/lib/types/components/Body/Row.types.d.ts +3 -0
- package/lib/types/components/DataTable/DataTable.types.d.ts +19 -0
- package/lib/types/components/Head/Column.d.ts +5 -4
- package/lib/types/enhancers/focusableCell.d.ts +9 -0
- package/package.json +22 -22
|
@@ -10,9 +10,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
10
10
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
11
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
12
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
var
|
|
14
|
-
var _isNativeReflectConstruct2 = _interopRequireDefault(require("@babel/runtime/helpers/isNativeReflectConstruct"));
|
|
15
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
13
|
+
var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
|
|
16
14
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
18
16
|
var _core = require("@semcore/core");
|
|
@@ -31,40 +29,39 @@ var _intergalacticDynamicLocales = require("../../translations/__intergalactic-d
|
|
|
31
29
|
var _Body = require("../Body/Body");
|
|
32
30
|
var _MergedCells = require("../Body/MergedCells");
|
|
33
31
|
var _Head = require("../Head/Head");
|
|
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)); }
|
|
35
32
|
/*!__reshadow-styles__:"./dataTable.shadow.css"*/
|
|
36
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
33
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SDataTable_z1x46_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content;grid-auto-rows:min-content}.___SDataTable_z1x46_gg_.__isDataEmpty_z1x46_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_z1x46_gg_.__gridTemplateColumns_z1x46_gg_{grid-template-columns:var(--gridTemplateColumns_z1x46)}.___SDataTable_z1x46_gg_.__gridTemplateAreas_z1x46_gg_{grid-template-areas:var(--gridTemplateAreas_z1x46)}.___SDataTable_z1x46_gg_.__gridTemplateRows_z1x46_gg_{grid-template-rows:var(--gridTemplateRows_z1x46)}", /*__inner_css_end__*/"z1x46_gg_"),
|
|
37
34
|
/*__reshadow_css_end__*/
|
|
38
35
|
{
|
|
39
|
-
"__SDataTable": "
|
|
40
|
-
"_isDataEmpty": "
|
|
41
|
-
"_gridTemplateColumns": "
|
|
42
|
-
"--gridTemplateColumns": "--
|
|
43
|
-
"_gridTemplateAreas": "
|
|
44
|
-
"--gridTemplateAreas": "--
|
|
45
|
-
"_gridTemplateRows": "
|
|
46
|
-
"--gridTemplateRows": "--
|
|
36
|
+
"__SDataTable": "___SDataTable_z1x46_gg_",
|
|
37
|
+
"_isDataEmpty": "__isDataEmpty_z1x46_gg_",
|
|
38
|
+
"_gridTemplateColumns": "__gridTemplateColumns_z1x46_gg_",
|
|
39
|
+
"--gridTemplateColumns": "--gridTemplateColumns_z1x46",
|
|
40
|
+
"_gridTemplateAreas": "__gridTemplateAreas_z1x46_gg_",
|
|
41
|
+
"--gridTemplateAreas": "--gridTemplateAreas_z1x46",
|
|
42
|
+
"_gridTemplateRows": "__gridTemplateRows_z1x46_gg_",
|
|
43
|
+
"--gridTemplateRows": "--gridTemplateRows_z1x46"
|
|
47
44
|
});
|
|
48
45
|
/*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
|
|
49
|
-
var scrollStyles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
46
|
+
var scrollStyles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SScrollArea_1dxkn_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_{overflow:visible;overflow:initial}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_both_1dxkn_gg_{overflow:auto}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_both_1dxkn_gg_.__loading_1dxkn_gg_,.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_horizontal_1dxkn_gg_.__loading_1dxkn_gg_,.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_vertical_1dxkn_gg_.__loading_1dxkn_gg_{overflow:hidden}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_horizontal_1dxkn_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_vertical_1dxkn_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__headerHeight_1dxkn_gg_{scroll-padding-top:var(--headerHeight_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__leftScrollPadding_1dxkn_gg_{scroll-padding-left:var(--leftScrollPadding_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__rightScrollPadding_1dxkn_gg_{scroll-padding-right:var(--rightScrollPadding_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_::before,.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_:after,.___SScrollArea_1dxkn_gg_ .___SShadowVertical_1dxkn_gg_::after{z-index:20}.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_.__leftOffset_1dxkn_gg_::before,.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_.__rightOffset_1dxkn_gg_::after,.___SScrollArea_1dxkn_gg_ .___SShadowVertical_1dxkn_gg_::before{display:none}", /*__inner_css_end__*/"1dxkn_gg_"),
|
|
50
47
|
/*__reshadow_css_end__*/
|
|
51
48
|
{
|
|
52
|
-
"__SScrollArea": "
|
|
53
|
-
"__SContainer": "
|
|
54
|
-
"_scrollDirection_both": "
|
|
55
|
-
"_loading": "
|
|
56
|
-
"_scrollDirection_horizontal": "
|
|
57
|
-
"_scrollDirection_vertical": "
|
|
58
|
-
"_headerHeight": "
|
|
59
|
-
"--headerHeight": "--
|
|
60
|
-
"_leftScrollPadding": "
|
|
61
|
-
"--leftScrollPadding": "--
|
|
62
|
-
"_rightScrollPadding": "
|
|
63
|
-
"--rightScrollPadding": "--
|
|
64
|
-
"__SShadowVertical": "
|
|
65
|
-
"__SShadowHorizontal": "
|
|
66
|
-
"_leftOffset": "
|
|
67
|
-
"_rightOffset": "
|
|
49
|
+
"__SScrollArea": "___SScrollArea_1dxkn_gg_",
|
|
50
|
+
"__SContainer": "___SContainer_1dxkn_gg_",
|
|
51
|
+
"_scrollDirection_both": "_scrollDirection_both_1dxkn_gg_",
|
|
52
|
+
"_loading": "__loading_1dxkn_gg_",
|
|
53
|
+
"_scrollDirection_horizontal": "_scrollDirection_horizontal_1dxkn_gg_",
|
|
54
|
+
"_scrollDirection_vertical": "_scrollDirection_vertical_1dxkn_gg_",
|
|
55
|
+
"_headerHeight": "__headerHeight_1dxkn_gg_",
|
|
56
|
+
"--headerHeight": "--headerHeight_1dxkn",
|
|
57
|
+
"_leftScrollPadding": "__leftScrollPadding_1dxkn_gg_",
|
|
58
|
+
"--leftScrollPadding": "--leftScrollPadding_1dxkn",
|
|
59
|
+
"_rightScrollPadding": "__rightScrollPadding_1dxkn_gg_",
|
|
60
|
+
"--rightScrollPadding": "--rightScrollPadding_1dxkn",
|
|
61
|
+
"__SShadowVertical": "___SShadowVertical_1dxkn_gg_",
|
|
62
|
+
"__SShadowHorizontal": "___SShadowHorizontal_1dxkn_gg_",
|
|
63
|
+
"_leftOffset": "__leftOffset_1dxkn_gg_",
|
|
64
|
+
"_rightOffset": "__rightOffset_1dxkn_gg_"
|
|
68
65
|
});
|
|
69
66
|
var ACCORDION = exports.ACCORDION = Symbol('accordion');
|
|
70
67
|
var ROW_GROUP = exports.ROW_GROUP = Symbol('ROW_GROUP');
|
|
@@ -78,7 +75,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
78
75
|
function DataTableRoot(props) {
|
|
79
76
|
var _this;
|
|
80
77
|
(0, _classCallCheck2["default"])(this, DataTableRoot);
|
|
81
|
-
_this =
|
|
78
|
+
_this = (0, _callSuper2["default"])(this, DataTableRoot, [props]);
|
|
82
79
|
(0, _defineProperty2["default"])(_this, "columns", []);
|
|
83
80
|
(0, _defineProperty2["default"])(_this, "treeColumns", []);
|
|
84
81
|
(0, _defineProperty2["default"])(_this, "hasGroups", false);
|
|
@@ -204,6 +201,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
204
201
|
});
|
|
205
202
|
(0, _defineProperty2["default"])(_this, "changeFocusCell", function (rowIndex, colIndex, direction) {
|
|
206
203
|
var _this$tableRef$curren2, _this$tableRef$curren3;
|
|
204
|
+
var limit = _this.asProps.limit;
|
|
207
205
|
var hasFocusable = _this.hasFocusableInHeader();
|
|
208
206
|
var maxCol = _this.columns.length - 1;
|
|
209
207
|
var maxRow = _this.totalRows || 1;
|
|
@@ -222,7 +220,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
222
220
|
}
|
|
223
221
|
if (!changed) return;
|
|
224
222
|
var row = _this.getRow(newRow);
|
|
225
|
-
var cell = row === null || row === void 0 ? void 0 : row.querySelector(":scope > div > [role=gridcell][aria-colindex=\"".concat(newCol + 1, "\"], :scope > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"], :scope > div > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"]"));
|
|
223
|
+
var cell = row === null || row === void 0 ? void 0 : row.querySelector(":scope > div > [role=gridcell][aria-colindex=\"".concat(newCol + 1, "\"]:not([aria-hidden=\"true\"]), :scope > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"]:not([aria-hidden=\"true\"]), :scope > div > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"]:not([aria-hidden=\"true\"])"));
|
|
226
224
|
if (cell instanceof HTMLElement && currentCell !== cell) {
|
|
227
225
|
_this.focusedCell = [newRow, newCol];
|
|
228
226
|
currentCell === null || currentCell === void 0 || currentCell.setAttribute('inert', '');
|
|
@@ -250,10 +248,24 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
250
248
|
if (((_currentCell$parentEl = currentCell.parentElement) === null || _currentCell$parentEl === void 0 || (_currentCell$parentEl = _currentCell$parentEl.parentElement) === null || _currentCell$parentEl === void 0 ? void 0 : _currentCell$parentEl.dataset.uiName) === 'Collapse') {
|
|
251
249
|
return;
|
|
252
250
|
}
|
|
253
|
-
|
|
251
|
+
// skipping x-axis movement of the focus within limit overlay and there is only limit by rows
|
|
252
|
+
if ((limit === null || limit === void 0 ? void 0 : limit.fromRow) !== undefined && limit.fromColumn === undefined && newCol === limit.fromRow) {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
254
255
|
// left/right
|
|
255
256
|
if (currentCell.dataset.groupedBy === 'colgroup' || Number((_currentCell$parentEl2 = currentCell.parentElement) === null || _currentCell$parentEl2 === void 0 || (_currentCell$parentEl2 = _currentCell$parentEl2.parentElement) === null || _currentCell$parentEl2 === void 0 ? void 0 : _currentCell$parentEl2.getAttribute('aria-rowindex')) === 2 || currentCell.parentElement && Array.from((_row$children = row === null || row === void 0 ? void 0 : row.children) !== null && _row$children !== void 0 ? _row$children : []).indexOf(currentCell.parentElement) > 0) {
|
|
256
|
-
|
|
257
|
+
if (direction === 'right' && (limit === null || limit === void 0 ? void 0 : limit.fromColumn) !== undefined) {
|
|
258
|
+
if (newCol > limit.fromColumn) return;
|
|
259
|
+
rowI = direction === 'right' ? rowI - 1 : rowI;
|
|
260
|
+
} else {
|
|
261
|
+
colI = direction === 'left' ? colI - 1 : colI + 1;
|
|
262
|
+
}
|
|
263
|
+
} else if (direction === 'right' && ((limit === null || limit === void 0 ? void 0 : limit.fromColumn) !== undefined || (limit === null || limit === void 0 ? void 0 : limit.fromRow) !== undefined)) {
|
|
264
|
+
if (newCol === limit.fromColumn) {
|
|
265
|
+
rowI = rowI - 1;
|
|
266
|
+
} else {
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
257
269
|
} else {
|
|
258
270
|
rowI = rowI - 1;
|
|
259
271
|
}
|
|
@@ -262,6 +274,11 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
262
274
|
if (currentCell.dataset.groupedBy === 'rowgroup' || Number(currentCell.getAttribute('aria-colindex')) === 1) {
|
|
263
275
|
rowI = direction === 'up' ? rowI - 1 : rowI + 1;
|
|
264
276
|
} else {
|
|
277
|
+
var _limit$fromRow;
|
|
278
|
+
var areLimitsDefined = (limit === null || limit === void 0 ? void 0 : limit.fromRow) !== undefined || (limit === null || limit === void 0 ? void 0 : limit.fromColumn) !== undefined;
|
|
279
|
+
if (areLimitsDefined && newRow > ((_limit$fromRow = limit === null || limit === void 0 ? void 0 : limit.fromRow) !== null && _limit$fromRow !== void 0 ? _limit$fromRow : 0) + 1) {
|
|
280
|
+
return;
|
|
281
|
+
}
|
|
265
282
|
colI = colI - 1;
|
|
266
283
|
}
|
|
267
284
|
}
|
|
@@ -378,10 +395,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
378
395
|
row = firstAvailableRow;
|
|
379
396
|
}
|
|
380
397
|
}
|
|
381
|
-
var cell = (_row = row) === null || _row === void 0 ? void 0 : _row.querySelectorAll('[role=gridcell], [role=columnheader]').item(_this.focusedCell[1]);
|
|
398
|
+
var cell = (_row = row) === null || _row === void 0 ? void 0 : _row.querySelectorAll('[role=gridcell]:not([aria-hidden="true"]), [role=columnheader]:not([aria-hidden="true"])').item(_this.focusedCell[1]);
|
|
382
399
|
cell === null || cell === void 0 || cell.removeAttribute('inert');
|
|
383
400
|
if (cell instanceof HTMLElement) {
|
|
384
|
-
if ((0, _hasParent.hasParent)(e.target, cell)) {
|
|
401
|
+
if ((0, _hasParent.hasParent)(e.target, cell) && !e.target.dataset.skipTargetFocus) {
|
|
385
402
|
e.target.focus();
|
|
386
403
|
} else {
|
|
387
404
|
cell.focus();
|
|
@@ -573,9 +590,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
573
590
|
return totalRows + expandedRowsCount;
|
|
574
591
|
}
|
|
575
592
|
var rows = this.getRows().reduce(function (acc, item) {
|
|
576
|
-
acc = acc + 1;
|
|
577
593
|
if (Array.isArray(item)) {
|
|
578
594
|
acc = acc + item.length;
|
|
595
|
+
} else {
|
|
596
|
+
acc = acc + 1;
|
|
579
597
|
}
|
|
580
598
|
return acc;
|
|
581
599
|
}, 0);
|
|
@@ -685,8 +703,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
685
703
|
accordionMode = _this$asProps8.accordionMode,
|
|
686
704
|
rawData = _this$asProps8.data,
|
|
687
705
|
renderCellOverlay = _this$asProps8.renderCellOverlay,
|
|
688
|
-
|
|
689
|
-
variant = _this$asProps8.variant
|
|
706
|
+
limit = _this$asProps8.limit,
|
|
707
|
+
variant = _this$asProps8.variant,
|
|
708
|
+
totalRows = _this$asProps8.totalRows;
|
|
690
709
|
var _this$gridSettings2 = this.gridSettings,
|
|
691
710
|
gridTemplateColumns = _this$gridSettings2.gridTemplateColumns,
|
|
692
711
|
gridTemplateAreas = _this$gridSettings2.gridTemplateAreas;
|
|
@@ -728,8 +747,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
728
747
|
rawData: rawData,
|
|
729
748
|
shadowVertical: shadowVertical,
|
|
730
749
|
renderCellOverlay: renderCellOverlay,
|
|
731
|
-
|
|
732
|
-
variant: variant
|
|
750
|
+
limit: limit,
|
|
751
|
+
variant: variant,
|
|
752
|
+
totalRows: totalRows
|
|
733
753
|
};
|
|
734
754
|
}
|
|
735
755
|
}, {
|