@semcore/data-table 17.0.0-prerelease.34 → 17.0.0-prerelease.37
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 +1 -1
- package/lib/esm/components/AccordionRows/AccordionRows.mjs +0 -1
- package/lib/esm/components/Body/Body.mjs +19 -26
- package/lib/esm/components/Body/Cell.mjs +6 -9
- package/lib/esm/components/Body/LimitOverlay.mjs +2 -3
- package/lib/esm/components/Body/Row.mjs +18 -23
- package/lib/esm/components/Body/RowGroup.mjs +3 -3
- package/lib/esm/components/DataTable/DataTable.mjs +77 -94
- package/lib/esm/components/Head/Column.mjs +13 -19
- package/lib/esm/components/Head/Group.mjs +1 -2
- package/lib/esm/components/Head/Head.mjs +9 -14
- package/lib/esm/components/RowSelector/RowsSelector.mjs +5 -6
- package/lib/esm/enhancers/focusableCell.mjs +4 -5
- package/package.json +18 -18
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
|
-
import {
|
|
3
|
+
import { sstyled, Component, assignProps, createComponent } from "@semcore/core";
|
|
4
4
|
import { Box, ScreenReaderOnly } from "@semcore/base-components";
|
|
5
5
|
import Checkbox from "@semcore/checkbox";
|
|
6
6
|
import React__default from "react";
|
|
@@ -8,7 +8,6 @@ import { Column } from "./Column.mjs";
|
|
|
8
8
|
import { Group } from "./Group.mjs";
|
|
9
9
|
import { SelectableRows } from "../../store/SelectableRows.mjs";
|
|
10
10
|
import { UNIQ_ROW_KEY, SELECT_ALL, DataTable } from "../DataTable/DataTable.mjs";
|
|
11
|
-
/*!__reshadow-styles__:"./style.shadow.css"*/
|
|
12
11
|
const style = (
|
|
13
12
|
/*__reshadow_css_start__*/
|
|
14
13
|
(sstyled.insert(
|
|
@@ -60,7 +59,6 @@ class HeadRoot extends Component {
|
|
|
60
59
|
super(...args);
|
|
61
60
|
_defineProperty(this, "unsubscribeSelectAll", void 0);
|
|
62
61
|
_defineProperty(this, "handleSelectAll", (value, event) => {
|
|
63
|
-
var _a, _b;
|
|
64
62
|
const {
|
|
65
63
|
selectedRows
|
|
66
64
|
} = this.asProps;
|
|
@@ -75,7 +73,7 @@ class HeadRoot extends Component {
|
|
|
75
73
|
idsSet.delete(row[UNIQ_ROW_KEY]);
|
|
76
74
|
});
|
|
77
75
|
}
|
|
78
|
-
|
|
76
|
+
this.asProps.onChangeSelectAll?.(Array.from(idsSet), event);
|
|
79
77
|
} else if (selectedRows) {
|
|
80
78
|
if (value) {
|
|
81
79
|
selectedRows.selectAll();
|
|
@@ -85,8 +83,8 @@ class HeadRoot extends Component {
|
|
|
85
83
|
}
|
|
86
84
|
});
|
|
87
85
|
_defineProperty(this, "handleClickSelectAll", (value) => (event) => {
|
|
88
|
-
event
|
|
89
|
-
event
|
|
86
|
+
event?.preventDefault();
|
|
87
|
+
event?.stopPropagation();
|
|
90
88
|
this.handleSelectAll(value, event);
|
|
91
89
|
});
|
|
92
90
|
}
|
|
@@ -101,8 +99,7 @@ class HeadRoot extends Component {
|
|
|
101
99
|
}
|
|
102
100
|
}
|
|
103
101
|
componentWillUnmount() {
|
|
104
|
-
|
|
105
|
-
(_a = this.unsubscribeSelectAll) == null ? void 0 : _a.call(this);
|
|
102
|
+
this.unsubscribeSelectAll?.();
|
|
106
103
|
}
|
|
107
104
|
sortableColumnDescribeId() {
|
|
108
105
|
const {
|
|
@@ -216,7 +213,7 @@ class HeadRoot extends Component {
|
|
|
216
213
|
selectedRows
|
|
217
214
|
} = this.asProps;
|
|
218
215
|
if (Array.isArray(selectedRows)) {
|
|
219
|
-
return selectedRows.length > 0 && this.selectableRows.every((row) => selectedRows
|
|
216
|
+
return selectedRows.length > 0 && this.selectableRows.every((row) => selectedRows?.includes(row[UNIQ_ROW_KEY]));
|
|
220
217
|
} else if (selectedRows) {
|
|
221
218
|
return selectedRows.isAllSelected();
|
|
222
219
|
}
|
|
@@ -226,7 +223,7 @@ class HeadRoot extends Component {
|
|
|
226
223
|
selectedRows
|
|
227
224
|
} = this.asProps;
|
|
228
225
|
if (Array.isArray(selectedRows)) {
|
|
229
|
-
return this.selectableRows.some((row) => selectedRows
|
|
226
|
+
return this.selectableRows.some((row) => selectedRows?.includes(row[UNIQ_ROW_KEY]));
|
|
230
227
|
} else if (selectedRows) {
|
|
231
228
|
return selectedRows.isIndeterminate();
|
|
232
229
|
}
|
|
@@ -237,8 +234,7 @@ class HeadRoot extends Component {
|
|
|
237
234
|
flatRows
|
|
238
235
|
} = this.asProps;
|
|
239
236
|
const mappedFlatRows = flatRows.filter((r) => {
|
|
240
|
-
|
|
241
|
-
const nextColumnName = (_a = columns[1]) == null ? void 0 : _a.name;
|
|
237
|
+
const nextColumnName = columns[1]?.name;
|
|
242
238
|
return r[nextColumnName] !== void 0;
|
|
243
239
|
});
|
|
244
240
|
return mappedFlatRows;
|
|
@@ -282,9 +278,8 @@ class HeadRoot extends Component {
|
|
|
282
278
|
}), /* @__PURE__ */ React__default.createElement(Checkbox.Value, null, /* @__PURE__ */ React__default.createElement(Checkbox.Value.Control, null), /* @__PURE__ */ React__default.createElement(Checkbox.Value.CheckMark, {
|
|
283
279
|
mt: 0
|
|
284
280
|
})))), children ? /* @__PURE__ */ React__default.createElement(Children, _ref2.cn("Children", {})) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, treeColumns.map((column, _i) => {
|
|
285
|
-
var _a;
|
|
286
281
|
if ("columns" in column) {
|
|
287
|
-
const columnsName =
|
|
282
|
+
const columnsName = column.columns?.map((c) => c.name).join("/");
|
|
288
283
|
return /* @__PURE__ */ React__default.createElement(DataTable.Head.Group, _extends({
|
|
289
284
|
key: columnsName
|
|
290
285
|
}, column, {
|
|
@@ -18,21 +18,21 @@ class RowSelector extends React__default.PureComponent {
|
|
|
18
18
|
onSelectRow,
|
|
19
19
|
selectedRows
|
|
20
20
|
} = this.props;
|
|
21
|
-
onSelectRow
|
|
21
|
+
onSelectRow?.(value, rowIndex, row, event);
|
|
22
22
|
if (selectedRows && !Array.isArray(selectedRows)) {
|
|
23
23
|
selectedRows.toggle(value, row);
|
|
24
24
|
}
|
|
25
25
|
});
|
|
26
26
|
_defineProperty(this, "handleClickCheckbox", (value) => (event) => {
|
|
27
|
-
event
|
|
28
|
-
event
|
|
27
|
+
event?.preventDefault();
|
|
28
|
+
event?.stopPropagation();
|
|
29
29
|
const {
|
|
30
30
|
row,
|
|
31
31
|
rowIndex,
|
|
32
32
|
onSelectRow,
|
|
33
33
|
selectedRows
|
|
34
34
|
} = this.props;
|
|
35
|
-
onSelectRow
|
|
35
|
+
onSelectRow?.(value, rowIndex, row, event);
|
|
36
36
|
if (selectedRows && !Array.isArray(selectedRows)) {
|
|
37
37
|
selectedRows.toggle(value, row);
|
|
38
38
|
}
|
|
@@ -61,8 +61,7 @@ class RowSelector extends React__default.PureComponent {
|
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
componentWillUnmount() {
|
|
64
|
-
|
|
65
|
-
(_a = this.unsubscribeToggle) == null ? void 0 : _a.call(this);
|
|
64
|
+
this.unsubscribeToggle?.();
|
|
66
65
|
}
|
|
67
66
|
render() {
|
|
68
67
|
const SCheckboxCell = Row.Cell;
|
|
@@ -23,12 +23,11 @@ function handleFocusCell(lockedCell, target, currentTarget) {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
function handleKeydownFocusCell(lockedCell, e) {
|
|
26
|
-
var _a, _b, _c, _d;
|
|
27
26
|
if (e.currentTarget === lockedCell[0]) {
|
|
28
27
|
const focusableChildren = Array.from(lockedCell[0].children).flatMap((node) => getFocusableIn(node));
|
|
29
28
|
if (lockedCell[1]) {
|
|
30
29
|
if (e.key === "Escape") {
|
|
31
|
-
|
|
30
|
+
lockedCell[0]?.focus({
|
|
32
31
|
focusVisible: true
|
|
33
32
|
});
|
|
34
33
|
lockedCell[1] = false;
|
|
@@ -39,12 +38,12 @@ function handleKeydownFocusCell(lockedCell, e) {
|
|
|
39
38
|
}
|
|
40
39
|
if (e.key === "Tab") {
|
|
41
40
|
if (e.target === focusableChildren[0] && e.shiftKey) {
|
|
42
|
-
|
|
41
|
+
focusableChildren[focusableChildren.length - 1]?.focus({
|
|
43
42
|
focusVisible: true
|
|
44
43
|
});
|
|
45
44
|
e.preventDefault();
|
|
46
45
|
} else if (e.target === focusableChildren[focusableChildren.length - 1] && !e.shiftKey) {
|
|
47
|
-
|
|
46
|
+
focusableChildren[0]?.focus({
|
|
48
47
|
focusVisible: true
|
|
49
48
|
});
|
|
50
49
|
e.preventDefault();
|
|
@@ -55,7 +54,7 @@ function handleKeydownFocusCell(lockedCell, e) {
|
|
|
55
54
|
e.preventDefault();
|
|
56
55
|
e.stopPropagation();
|
|
57
56
|
lockedCell[1] = true;
|
|
58
|
-
|
|
57
|
+
focusableChildren[0]?.focus({
|
|
59
58
|
focusVisible: true
|
|
60
59
|
});
|
|
61
60
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semcore/data-table",
|
|
3
3
|
"description": "Semrush DataTable Component",
|
|
4
|
-
"version": "17.0.0-prerelease.
|
|
4
|
+
"version": "17.0.0-prerelease.37",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"module": "lib/es6/index.js",
|
|
7
7
|
"typings": "lib/types/index.d.ts",
|
|
@@ -14,28 +14,28 @@
|
|
|
14
14
|
"types": "./lib/types/index.d.ts"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@semcore/button": "^17.0.0-prerelease.
|
|
18
|
-
"@semcore/checkbox": "^17.0.0-prerelease.
|
|
19
|
-
"@semcore/spin": "^17.0.0-prerelease.
|
|
20
|
-
"@semcore/tooltip": "^17.0.0-prerelease.
|
|
21
|
-
"@semcore/widget-empty": "^17.0.0-prerelease.
|
|
17
|
+
"@semcore/button": "^17.0.0-prerelease.37",
|
|
18
|
+
"@semcore/checkbox": "^17.0.0-prerelease.37",
|
|
19
|
+
"@semcore/spin": "^17.0.0-prerelease.37",
|
|
20
|
+
"@semcore/tooltip": "^17.0.0-prerelease.37",
|
|
21
|
+
"@semcore/widget-empty": "^17.0.0-prerelease.37"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"@types/node": "18.16.15",
|
|
25
25
|
"csstype": "3.1.3",
|
|
26
26
|
"@semcore/testing-utils": "1.0.0",
|
|
27
|
-
"@semcore/
|
|
28
|
-
"@semcore/
|
|
29
|
-
"@semcore/
|
|
30
|
-
"@semcore/
|
|
31
|
-
"@semcore/divider": "17.0.0-prerelease.
|
|
32
|
-
"@semcore/
|
|
33
|
-
"@semcore/
|
|
34
|
-
"@semcore/
|
|
35
|
-
"@semcore/
|
|
36
|
-
"@semcore/
|
|
37
|
-
"@semcore/base-components": "17.0.0-prerelease.
|
|
38
|
-
"@semcore/icon": "16.7.2-prerelease.
|
|
27
|
+
"@semcore/dropdown-menu": "17.0.0-prerelease.37",
|
|
28
|
+
"@semcore/typography": "17.0.0-prerelease.37",
|
|
29
|
+
"@semcore/base-trigger": "17.0.0-prerelease.37",
|
|
30
|
+
"@semcore/accordion": "17.0.0-prerelease.37",
|
|
31
|
+
"@semcore/divider": "17.0.0-prerelease.37",
|
|
32
|
+
"@semcore/progress-bar": "17.0.0-prerelease.37",
|
|
33
|
+
"@semcore/skeleton": "17.0.0-prerelease.37",
|
|
34
|
+
"@semcore/spin": "17.0.0-prerelease.37",
|
|
35
|
+
"@semcore/spin-container": "17.0.0-prerelease.37",
|
|
36
|
+
"@semcore/tooltip": "17.0.0-prerelease.37",
|
|
37
|
+
"@semcore/base-components": "17.0.0-prerelease.37",
|
|
38
|
+
"@semcore/icon": "16.7.2-prerelease.37"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
41
|
"@semcore/base-components": "^17.0.0 || ^17.0.0-0",
|