@semcore/data-table 16.0.0-prerelease.15 → 16.0.0-prerelease.17
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 +6 -0
- package/lib/cjs/components/Body/Body.js +114 -100
- 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 +67 -30
- package/lib/cjs/components/Body/Cell.js.map +1 -1
- package/lib/cjs/components/Body/Cell.types.js.map +1 -1
- package/lib/cjs/components/Body/MergedCells.js +9 -5
- package/lib/cjs/components/Body/MergedCells.js.map +1 -1
- package/lib/cjs/components/Body/Row.js +72 -113
- package/lib/cjs/components/Body/Row.js.map +1 -1
- package/lib/cjs/components/Body/Row.types.js +2 -0
- package/lib/cjs/components/Body/Row.types.js.map +1 -1
- package/lib/cjs/components/Body/style.shadow.css +75 -36
- package/lib/cjs/components/DataTable/DataTable.js +146 -97
- package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
- package/lib/cjs/components/DataTable/DataTable.types.js +2 -0
- package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
- package/lib/cjs/components/Head/Column.js +54 -33
- package/lib/cjs/components/Head/Column.js.map +1 -1
- package/lib/cjs/components/Head/Column.types.js.map +1 -1
- package/lib/cjs/components/Head/Group.js +24 -33
- package/lib/cjs/components/Head/Group.js.map +1 -1
- package/lib/cjs/components/Head/Group.type.js.map +1 -1
- package/lib/cjs/components/Head/Head.js +23 -28
- package/lib/cjs/components/Head/Head.js.map +1 -1
- package/lib/cjs/components/Head/Head.types.js.map +1 -1
- package/lib/cjs/components/Head/style.shadow.css +16 -14
- package/lib/cjs/index.js +7 -19
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/style/scroll-shadows.shadow.css +13 -6
- package/lib/es6/components/Body/Body.js +114 -100
- 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 +67 -30
- package/lib/es6/components/Body/Cell.js.map +1 -1
- package/lib/es6/components/Body/Cell.types.js.map +1 -1
- package/lib/es6/components/Body/MergedCells.js +9 -5
- package/lib/es6/components/Body/MergedCells.js.map +1 -1
- package/lib/es6/components/Body/Row.js +72 -113
- package/lib/es6/components/Body/Row.js.map +1 -1
- package/lib/es6/components/Body/Row.types.js +1 -1
- package/lib/es6/components/Body/Row.types.js.map +1 -1
- package/lib/es6/components/Body/style.shadow.css +75 -36
- package/lib/es6/components/DataTable/DataTable.js +143 -95
- package/lib/es6/components/DataTable/DataTable.js.map +1 -1
- package/lib/es6/components/DataTable/DataTable.types.js +6 -1
- package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
- package/lib/es6/components/Head/Column.js +52 -31
- package/lib/es6/components/Head/Column.js.map +1 -1
- package/lib/es6/components/Head/Column.types.js.map +1 -1
- package/lib/es6/components/Head/Group.js +24 -33
- package/lib/es6/components/Head/Group.js.map +1 -1
- package/lib/es6/components/Head/Group.type.js.map +1 -1
- package/lib/es6/components/Head/Head.js +24 -29
- package/lib/es6/components/Head/Head.js.map +1 -1
- package/lib/es6/components/Head/Head.types.js.map +1 -1
- package/lib/es6/components/Head/style.shadow.css +16 -14
- package/lib/es6/index.js +5 -4
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/style/scroll-shadows.shadow.css +13 -6
- package/lib/esm/components/Body/Body.mjs +110 -98
- package/lib/esm/components/Body/Cell.mjs +64 -31
- package/lib/esm/components/Body/MergedCells.mjs +9 -5
- package/lib/esm/components/Body/Row.mjs +67 -109
- package/lib/esm/components/DataTable/DataTable.mjs +125 -46
- package/lib/esm/components/Head/Column.mjs +52 -32
- package/lib/esm/components/Head/Group.mjs +25 -34
- package/lib/esm/components/Head/Head.mjs +25 -30
- package/lib/esm/index.mjs +5 -6
- package/lib/esm/utils.mjs +0 -9
- package/lib/types/components/Body/Body.types.d.ts +13 -8
- package/lib/types/components/Body/Cell.types.d.ts +6 -6
- package/lib/types/components/Body/MergedCells.d.ts +8 -3
- package/lib/types/components/Body/Row.types.d.ts +19 -10
- package/lib/types/components/DataTable/DataTable.d.ts +3 -3
- package/lib/types/components/DataTable/DataTable.types.d.ts +23 -9
- package/lib/types/components/Head/Column.d.ts +6 -3
- package/lib/types/components/Head/Column.types.d.ts +5 -4
- package/lib/types/components/Head/Group.d.ts +0 -1
- package/lib/types/components/Head/Group.type.d.ts +4 -1
- package/lib/types/components/Head/Head.d.ts +6 -3
- package/lib/types/components/Head/Head.types.d.ts +8 -4
- package/lib/types/index.d.ts +10 -4
- package/package.json +7 -6
- package/lib/cjs/Body.js +0 -476
- package/lib/cjs/Body.js.map +0 -1
- package/lib/cjs/DataTable.js +0 -622
- package/lib/cjs/DataTable.js.map +0 -1
- package/lib/cjs/Head.js +0 -399
- package/lib/cjs/Head.js.map +0 -1
- package/lib/cjs/style/data-table.shadow.css +0 -394
- package/lib/cjs/types.js +0 -4
- package/lib/cjs/types.js.map +0 -1
- package/lib/es6/Body.js +0 -469
- package/lib/es6/Body.js.map +0 -1
- package/lib/es6/DataTable.js +0 -614
- package/lib/es6/DataTable.js.map +0 -1
- package/lib/es6/Head.js +0 -391
- package/lib/es6/Head.js.map +0 -1
- package/lib/es6/style/data-table.shadow.css +0 -394
- package/lib/es6/types.js +0 -2
- package/lib/es6/types.js.map +0 -1
- package/lib/esm/Body.mjs +0 -428
- package/lib/esm/DataTable.mjs +0 -582
- package/lib/esm/Head.mjs +0 -369
- package/lib/types/Body.d.ts +0 -61
- package/lib/types/DataTable.d.ts +0 -205
- package/lib/types/Head.d.ts +0 -45
- package/lib/types/types.d.ts +0 -73
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
2
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
3
3
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
4
|
-
import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
|
|
5
4
|
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
6
5
|
import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
7
6
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
@@ -13,47 +12,40 @@ var style = (
|
|
|
13
12
|
/*__reshadow_css_start__*/
|
|
14
13
|
(sstyled.insert(
|
|
15
14
|
/*__inner_css_start__*/
|
|
16
|
-
'.
|
|
17
|
-
"
|
|
15
|
+
'.___SGroupContainer_1yovy_gg_,.___SHead_1yovy_gg_{display:contents}.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SColumn_1yovy_gg_{position:sticky;top:0;z-index:2}.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SGroup_1yovy_gg_{top:0}.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SGroupContainer_1yovy_gg_>.___SColumn_1yovy_gg_{position:sticky;z-index:2}.___SHead_1yovy_gg_.__compact_1yovy_gg_ .___SColumn_1yovy_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SColumn_1yovy_gg_,.___SGroup_1yovy_gg_{display:flex;align-items:flex-start;font-size:var(--intergalactic-fs-100, 12px);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;height:100%;position:relative;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,min-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,max-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out;overflow:hidden}.___SGroup_1yovy_gg_{justify-content:center;text-align:center;background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SGroup_1yovy_gg_._use_primary_1yovy_gg_{padding:var(--intergalactic-spacing-3x, 12px)}.___SGroup_1yovy_gg_._use_primary_1yovy_gg_:has(~.___SColumn_1yovy_gg_.__visibleSort_1yovy_gg_){background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SGroup_1yovy_gg_._use_secondary_1yovy_gg_{padding:var(--intergalactic-spacing-2x, 8px)}.___SColumn_1yovy_gg_._borders_both_1yovy_gg_,.___SColumn_1yovy_gg_._borders_left_1yovy_gg_,.___SGroup_1yovy_gg_._borders_both_1yovy_gg_,.___SGroup_1yovy_gg_._borders_left_1yovy_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_1yovy_gg_._borders_both_1yovy_gg_,.___SColumn_1yovy_gg_._borders_right_1yovy_gg_,.___SGroup_1yovy_gg_._borders_both_1yovy_gg_,.___SGroup_1yovy_gg_._borders_right_1yovy_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_{padding:var(--intergalactic-spacing-3x, 12px);border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortButton_1yovy_gg_,.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before,.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before{display:flex;opacity:1}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_{padding:var(--intergalactic-spacing-2x, 8px);border-bottom:1px solid var(--intergalactic-border-table-accent, #a9abb6);background-color:var(--intergalactic-table-th-secondary-cell, #ffffff)}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortButton_1yovy_gg_{display:flex;opacity:1}.___SColumn_1yovy_gg_.__gridArea_1yovy_gg_,.___SGroupTitle_1yovy_gg_.__gridArea_1yovy_gg_,.___SGroup_1yovy_gg_.__gridArea_1yovy_gg_{grid-area:var(--gridArea_1yovy)}.___SHead_1yovy_gg_ .___SColumn_1yovy_gg_.__fixed_1yovy_gg_,.___SHead_1yovy_gg_ .___SGroup_1yovy_gg_.__fixed_1yovy_gg_,.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SColumn_1yovy_gg_.__fixed_1yovy_gg_,.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SGroup_1yovy_gg_{position:sticky;z-index:3}@media (hover:hover){.___SColumn_1yovy_gg_.__sortable_1yovy_gg_:hover{cursor:pointer}}.___SSortWrapper_1yovy_gg_{align-items:center;display:flex;flex-shrink:1;position:relative;flex-basis:0;min-height:16px;opacity:0;transition:all calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SSortButton_1yovy_gg_,.___SSortWrapper_1yovy_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_1yovy_gg_:before{content:"";top:0;width:20px;height:100%}.___SSortButton_1yovy_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(-1*(1em*1.25 - 16px));margin-left:var(--intergalactic-spacing-1x, 4px)}',
|
|
16
|
+
"1yovy_gg_"
|
|
18
17
|
), {
|
|
19
|
-
"__SHead": "
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"_compact": "
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
18
|
+
"__SHead": "___SHead_1yovy_gg_",
|
|
19
|
+
"__SGroupContainer": "___SGroupContainer_1yovy_gg_",
|
|
20
|
+
"_sticky": "__sticky_1yovy_gg_",
|
|
21
|
+
"__SColumn": "___SColumn_1yovy_gg_",
|
|
22
|
+
"__SGroup": "___SGroup_1yovy_gg_",
|
|
23
|
+
"_compact": "__compact_1yovy_gg_",
|
|
24
|
+
"_use_secondary": "_use_secondary_1yovy_gg_",
|
|
25
|
+
"_borders_both": "_borders_both_1yovy_gg_",
|
|
26
|
+
"_borders_left": "_borders_left_1yovy_gg_",
|
|
27
|
+
"_borders_right": "_borders_right_1yovy_gg_",
|
|
28
|
+
"_gridArea": "__gridArea_1yovy_gg_",
|
|
29
|
+
"__SGroupTitle": "___SGroupTitle_1yovy_gg_",
|
|
30
|
+
"--gridArea": "--gridArea_1yovy",
|
|
31
|
+
"_fixed": "__fixed_1yovy_gg_",
|
|
32
|
+
"_sortable": "__sortable_1yovy_gg_",
|
|
33
|
+
"__SSortWrapper": "___SSortWrapper_1yovy_gg_",
|
|
34
|
+
"__SSortButton": "___SSortButton_1yovy_gg_",
|
|
35
|
+
"_use_primary": "_use_primary_1yovy_gg_",
|
|
36
|
+
"_visibleSort": "__visibleSort_1yovy_gg_"
|
|
38
37
|
})
|
|
39
38
|
);
|
|
40
39
|
var Group = /* @__PURE__ */ function(_Component) {
|
|
41
40
|
_inherits(Group2, _Component);
|
|
42
41
|
var _super = _createSuper(Group2);
|
|
43
42
|
function Group2() {
|
|
44
|
-
var _this;
|
|
45
43
|
_classCallCheck(this, Group2);
|
|
46
|
-
|
|
47
|
-
args[_key] = arguments[_key];
|
|
48
|
-
}
|
|
49
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
50
|
-
_defineProperty(_assertThisInitialized(_this), "mounted", false);
|
|
51
|
-
return _this;
|
|
44
|
+
return _super.apply(this, arguments);
|
|
52
45
|
}
|
|
53
46
|
_createClass(Group2, [{
|
|
54
47
|
key: "componentDidMount",
|
|
55
48
|
value: function componentDidMount() {
|
|
56
|
-
this.mounted = true;
|
|
57
49
|
this.forceUpdate();
|
|
58
50
|
}
|
|
59
51
|
}, {
|
|
@@ -73,10 +65,9 @@ var Group = /* @__PURE__ */ function(_Component) {
|
|
|
73
65
|
if (fixed === "right") {
|
|
74
66
|
style2.right = fixedColumnsMap.get(lastName);
|
|
75
67
|
}
|
|
76
|
-
return _ref2 = sstyled(styles), /* @__PURE__ */ React.createElement(SGroupContainer, _ref2.cn("SGroupContainer", {
|
|
77
|
-
"
|
|
78
|
-
|
|
79
|
-
"style": style2
|
|
68
|
+
return _ref2 = sstyled(styles), /* @__PURE__ */ React.createElement(SGroupContainer, _ref2.cn("SGroupContainer", {}), /* @__PURE__ */ React.createElement(SGroup, _ref2.cn("SGroup", _objectSpread({}, assignProps({
|
|
69
|
+
"style": style2,
|
|
70
|
+
"__excludeProps": ["title"]
|
|
80
71
|
}, _ref))), title), /* @__PURE__ */ React.createElement(Children, _ref2.cn("Children", {})));
|
|
81
72
|
}
|
|
82
73
|
}]);
|
|
@@ -11,33 +11,33 @@ import * as React from "react";
|
|
|
11
11
|
import { ScreenReaderOnly, Box } from "@semcore/base-components";
|
|
12
12
|
import { Column } from "./Column.mjs";
|
|
13
13
|
import { Group } from "./Group.mjs";
|
|
14
|
-
import { getFixedStyle
|
|
14
|
+
import { getFixedStyle } from "../../utils.mjs";
|
|
15
15
|
var style = (
|
|
16
16
|
/*__reshadow_css_start__*/
|
|
17
17
|
(sstyled.insert(
|
|
18
18
|
/*__inner_css_start__*/
|
|
19
|
-
'.
|
|
20
|
-
"
|
|
19
|
+
'.___SGroupContainer_1yovy_gg_,.___SHead_1yovy_gg_{display:contents}.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SColumn_1yovy_gg_{position:sticky;top:0;z-index:2}.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SGroup_1yovy_gg_{top:0}.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SGroupContainer_1yovy_gg_>.___SColumn_1yovy_gg_{position:sticky;z-index:2}.___SHead_1yovy_gg_.__compact_1yovy_gg_ .___SColumn_1yovy_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SColumn_1yovy_gg_,.___SGroup_1yovy_gg_{display:flex;align-items:flex-start;font-size:var(--intergalactic-fs-100, 12px);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;height:100%;position:relative;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,min-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,max-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out;overflow:hidden}.___SGroup_1yovy_gg_{justify-content:center;text-align:center;background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SGroup_1yovy_gg_._use_primary_1yovy_gg_{padding:var(--intergalactic-spacing-3x, 12px)}.___SGroup_1yovy_gg_._use_primary_1yovy_gg_:has(~.___SColumn_1yovy_gg_.__visibleSort_1yovy_gg_){background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SGroup_1yovy_gg_._use_secondary_1yovy_gg_{padding:var(--intergalactic-spacing-2x, 8px)}.___SColumn_1yovy_gg_._borders_both_1yovy_gg_,.___SColumn_1yovy_gg_._borders_left_1yovy_gg_,.___SGroup_1yovy_gg_._borders_both_1yovy_gg_,.___SGroup_1yovy_gg_._borders_left_1yovy_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_1yovy_gg_._borders_both_1yovy_gg_,.___SColumn_1yovy_gg_._borders_right_1yovy_gg_,.___SGroup_1yovy_gg_._borders_both_1yovy_gg_,.___SGroup_1yovy_gg_._borders_right_1yovy_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_{padding:var(--intergalactic-spacing-3x, 12px);border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortButton_1yovy_gg_,.___SColumn_1yovy_gg_._use_primary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before,.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before{display:flex;opacity:1}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_{padding:var(--intergalactic-spacing-2x, 8px);border-bottom:1px solid var(--intergalactic-border-table-accent, #a9abb6);background-color:var(--intergalactic-table-th-secondary-cell, #ffffff)}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_ .___SSortWrapper_1yovy_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortWrapper_1yovy_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_1yovy_gg_._use_secondary_1yovy_gg_.__visibleSort_1yovy_gg_ .___SSortButton_1yovy_gg_{display:flex;opacity:1}.___SColumn_1yovy_gg_.__gridArea_1yovy_gg_,.___SGroupTitle_1yovy_gg_.__gridArea_1yovy_gg_,.___SGroup_1yovy_gg_.__gridArea_1yovy_gg_{grid-area:var(--gridArea_1yovy)}.___SHead_1yovy_gg_ .___SColumn_1yovy_gg_.__fixed_1yovy_gg_,.___SHead_1yovy_gg_ .___SGroup_1yovy_gg_.__fixed_1yovy_gg_,.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SColumn_1yovy_gg_.__fixed_1yovy_gg_,.___SHead_1yovy_gg_.__sticky_1yovy_gg_ .___SGroup_1yovy_gg_{position:sticky;z-index:3}@media (hover:hover){.___SColumn_1yovy_gg_.__sortable_1yovy_gg_:hover{cursor:pointer}}.___SSortWrapper_1yovy_gg_{align-items:center;display:flex;flex-shrink:1;position:relative;flex-basis:0;min-height:16px;opacity:0;transition:all calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SSortButton_1yovy_gg_,.___SSortWrapper_1yovy_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_1yovy_gg_:before{content:"";top:0;width:20px;height:100%}.___SSortButton_1yovy_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(-1*(1em*1.25 - 16px));margin-left:var(--intergalactic-spacing-1x, 4px)}',
|
|
20
|
+
"1yovy_gg_"
|
|
21
21
|
), {
|
|
22
|
-
"__SHead": "
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"_compact": "
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
22
|
+
"__SHead": "___SHead_1yovy_gg_",
|
|
23
|
+
"__SGroupContainer": "___SGroupContainer_1yovy_gg_",
|
|
24
|
+
"_sticky": "__sticky_1yovy_gg_",
|
|
25
|
+
"__SColumn": "___SColumn_1yovy_gg_",
|
|
26
|
+
"__SGroup": "___SGroup_1yovy_gg_",
|
|
27
|
+
"_compact": "__compact_1yovy_gg_",
|
|
28
|
+
"_use_secondary": "_use_secondary_1yovy_gg_",
|
|
29
|
+
"_borders_both": "_borders_both_1yovy_gg_",
|
|
30
|
+
"_borders_left": "_borders_left_1yovy_gg_",
|
|
31
|
+
"_borders_right": "_borders_right_1yovy_gg_",
|
|
32
|
+
"_gridArea": "__gridArea_1yovy_gg_",
|
|
33
|
+
"__SGroupTitle": "___SGroupTitle_1yovy_gg_",
|
|
34
|
+
"--gridArea": "--gridArea_1yovy",
|
|
35
|
+
"_fixed": "__fixed_1yovy_gg_",
|
|
36
|
+
"_sortable": "__sortable_1yovy_gg_",
|
|
37
|
+
"__SSortWrapper": "___SSortWrapper_1yovy_gg_",
|
|
38
|
+
"__SSortButton": "___SSortButton_1yovy_gg_",
|
|
39
|
+
"_use_primary": "_use_primary_1yovy_gg_",
|
|
40
|
+
"_visibleSort": "__visibleSort_1yovy_gg_"
|
|
41
41
|
})
|
|
42
42
|
);
|
|
43
43
|
var HeadRoot = /* @__PURE__ */ function(_Component) {
|
|
@@ -72,7 +72,7 @@ var HeadRoot = /* @__PURE__ */ function(_Component) {
|
|
|
72
72
|
}, {
|
|
73
73
|
key: "getColumnProps",
|
|
74
74
|
value: function getColumnProps(_, index) {
|
|
75
|
-
var _this$asProps2 = this.asProps, use = _this$asProps2.use, columns = _this$asProps2.columns, sort = _this$asProps2.sort, onSortChange = _this$asProps2.onSortChange, tableRef = _this$asProps2.tableRef, gridTemplateColumns = _this$asProps2.gridTemplateColumns, gridTemplateAreas = _this$asProps2.gridTemplateAreas;
|
|
75
|
+
var _this$asProps2 = this.asProps, use = _this$asProps2.use, columns = _this$asProps2.columns, sort = _this$asProps2.sort, onSortChange = _this$asProps2.onSortChange, tableRef = _this$asProps2.tableRef, gridTemplateColumns = _this$asProps2.gridTemplateColumns, gridTemplateAreas = _this$asProps2.gridTemplateAreas, sticky = _this$asProps2.sticky;
|
|
76
76
|
var column = columns[index];
|
|
77
77
|
var _getFixedStyle = getFixedStyle(column, columns), _getFixedStyle2 = _slicedToArray(_getFixedStyle, 2), name = _getFixedStyle2[0], value = _getFixedStyle2[1];
|
|
78
78
|
var style2 = {};
|
|
@@ -89,6 +89,7 @@ var HeadRoot = /* @__PURE__ */ function(_Component) {
|
|
|
89
89
|
style: style2,
|
|
90
90
|
gridArea: column.gridArea,
|
|
91
91
|
fixed: column.fixed,
|
|
92
|
+
sticky,
|
|
92
93
|
borders: column.borders,
|
|
93
94
|
sort,
|
|
94
95
|
onSortChange,
|
|
@@ -105,13 +106,7 @@ var HeadRoot = /* @__PURE__ */ function(_Component) {
|
|
|
105
106
|
value: function render() {
|
|
106
107
|
var _ref = this.asProps, _ref2;
|
|
107
108
|
var SHead = Box;
|
|
108
|
-
var _this$asProps3 = this.asProps, Children = _this$asProps3.Children, styles = _this$asProps3.styles,
|
|
109
|
-
_this$asProps3.tableRef;
|
|
110
|
-
_this$asProps3.withScrollBar;
|
|
111
|
-
var getI18nText = _this$asProps3.getI18nText;
|
|
112
|
-
var _getScrollOffsetValue = getScrollOffsetValue(columns), _getScrollOffsetValue2 = _slicedToArray(_getScrollOffsetValue, 2);
|
|
113
|
-
_getScrollOffsetValue2[0];
|
|
114
|
-
_getScrollOffsetValue2[1];
|
|
109
|
+
var _this$asProps3 = this.asProps, Children = _this$asProps3.Children, styles = _this$asProps3.styles, getI18nText = _this$asProps3.getI18nText;
|
|
115
110
|
return _ref2 = sstyled(styles), /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SHead, _ref2.cn("SHead", _objectSpread({}, assignProps({
|
|
116
111
|
"role": "row",
|
|
117
112
|
"aria-rowindex": 1
|
package/lib/esm/index.mjs
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { ACCORDION, DataTable } from "./components/DataTable/DataTable.mjs";
|
|
2
|
-
|
|
1
|
+
import { ACCORDION, DataTable, ROW_GROUP } from "./components/DataTable/DataTable.mjs";
|
|
2
|
+
var wrapDataTable = function wrapDataTable2(wrapper) {
|
|
3
|
+
return wrapper;
|
|
4
|
+
};
|
|
3
5
|
export {
|
|
4
6
|
ACCORDION,
|
|
5
7
|
DataTable,
|
|
6
8
|
ROW_GROUP,
|
|
7
|
-
|
|
8
|
-
wrapDataTable,
|
|
9
|
-
wrapDataTableCell,
|
|
10
|
-
wrapDataTableRow
|
|
9
|
+
wrapDataTable
|
|
11
10
|
};
|
package/lib/esm/utils.mjs
CHANGED
|
@@ -9,14 +9,6 @@ var getScrollOffsetValue = function getScrollOffsetValue2(columns) {
|
|
|
9
9
|
return acc;
|
|
10
10
|
}, [0, 0]);
|
|
11
11
|
};
|
|
12
|
-
var flattenColumns = function flattenColumns2(columns) {
|
|
13
|
-
return columns.reduce(function(acc, column) {
|
|
14
|
-
var hasNestedColumns = "columns" in column && column.columns.length > 0;
|
|
15
|
-
var columns2 = hasNestedColumns ? flattenColumns2(column.columns) : [column];
|
|
16
|
-
acc = acc.concat(columns2);
|
|
17
|
-
return acc;
|
|
18
|
-
}, []);
|
|
19
|
-
};
|
|
20
12
|
var getFixedStyle = function getFixedStyle2(cell, columns) {
|
|
21
13
|
var side = cell.fixed;
|
|
22
14
|
if (!side) return [void 0, void 0];
|
|
@@ -46,7 +38,6 @@ var getFixedStyle = function getFixedStyle2(cell, columns) {
|
|
|
46
38
|
return [side, "".concat(sum, "px")];
|
|
47
39
|
};
|
|
48
40
|
export {
|
|
49
|
-
flattenColumns,
|
|
50
41
|
getFixedStyle,
|
|
51
42
|
getScrollOffsetValue
|
|
52
43
|
};
|
|
@@ -1,31 +1,36 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { DTRow } from './Row.types';
|
|
2
|
+
import { DTRow, DTRows } from './Row.types';
|
|
3
3
|
import { DTColumn } from '../Head/Column.types';
|
|
4
4
|
import { DTUse } from '../DataTable/DataTable.types';
|
|
5
5
|
type CellRenderProps = {
|
|
6
|
-
|
|
6
|
+
dataKey: string;
|
|
7
7
|
row: DTRow;
|
|
8
8
|
column: DTColumn;
|
|
9
9
|
rowIndex: number;
|
|
10
10
|
columnIndex: number;
|
|
11
|
-
|
|
11
|
+
columnName: string;
|
|
12
|
+
value: string;
|
|
12
13
|
defaultRender: () => React.ReactNode;
|
|
14
|
+
isMergedRows: boolean;
|
|
15
|
+
isMergedColumns: boolean;
|
|
13
16
|
};
|
|
14
17
|
export type DataTableBodyProps = {
|
|
15
|
-
renderCell?: (props: CellRenderProps) => React.ReactNode
|
|
16
|
-
|
|
18
|
+
renderCell?: (props: CellRenderProps) => React.ReactNode | Record<string, any>;
|
|
19
|
+
virtualScroll?: boolean;
|
|
17
20
|
};
|
|
18
21
|
export type BodyPropsInner = {
|
|
19
|
-
rows:
|
|
22
|
+
rows: DTRows;
|
|
23
|
+
flatRows: DTRow[];
|
|
20
24
|
columns: DTColumn[];
|
|
21
25
|
use: DTUse;
|
|
22
|
-
scrollRef: (ref: HTMLDivElement) => void;
|
|
23
|
-
headerRows: number;
|
|
24
26
|
compact: boolean;
|
|
25
27
|
gridTemplateColumns: string[];
|
|
26
28
|
gridTemplateAreas: string[];
|
|
27
29
|
loading?: boolean;
|
|
28
30
|
headerHeight: number;
|
|
29
31
|
getI18nText: (key: string) => string;
|
|
32
|
+
expandedRows: number[];
|
|
33
|
+
onExpandRow: (rowIndex: number) => void;
|
|
34
|
+
spinnerRef: React.RefObject<HTMLDivElement>;
|
|
30
35
|
};
|
|
31
36
|
export {};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { DTRow } from './Row.types';
|
|
2
3
|
import { DTUse } from '../DataTable/DataTable.types';
|
|
3
|
-
import { DTColumn
|
|
4
|
-
export type DataTableCellProps =
|
|
5
|
-
name: string;
|
|
4
|
+
import { DTColumn } from '../Head/Column.types';
|
|
5
|
+
export type DataTableCellProps = {
|
|
6
6
|
row: DTRow;
|
|
7
|
-
columnIndex: number;
|
|
8
|
-
column: DTColumn;
|
|
9
7
|
rowIndex: number;
|
|
10
|
-
|
|
8
|
+
column: DTColumn;
|
|
9
|
+
columnIndex: number;
|
|
10
|
+
children?: React.ReactNode;
|
|
11
11
|
};
|
|
12
12
|
export type CellPropsInner = {
|
|
13
13
|
use: DTUse;
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
export declare class MergedRowsCell {
|
|
2
2
|
readonly value: any;
|
|
3
|
-
readonly
|
|
4
|
-
|
|
3
|
+
readonly fromRow: number;
|
|
4
|
+
readonly toRow: number;
|
|
5
|
+
constructor(value: any, rows: [number, number]);
|
|
5
6
|
}
|
|
6
7
|
export declare class MergedColumnsCell {
|
|
7
8
|
readonly value: any;
|
|
8
9
|
readonly columnsCount: number;
|
|
9
|
-
|
|
10
|
+
readonly dataKey: string;
|
|
11
|
+
constructor(value: any, options: {
|
|
12
|
+
size: number;
|
|
13
|
+
dataKey: string;
|
|
14
|
+
});
|
|
10
15
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { DTValue, DTUse, DataTableData } from '../DataTable/DataTable.types';
|
|
2
3
|
import { DTColumn } from '../Head/Column.types';
|
|
3
4
|
import { MergedColumnsCell, MergedRowsCell } from './MergedCells';
|
|
4
|
-
|
|
5
|
+
import { ACCORDION } from '../DataTable/DataTable';
|
|
6
|
+
export type DTRow = {
|
|
7
|
+
[key: string]: DTValue | MergedRowsCell | MergedColumnsCell;
|
|
8
|
+
[ACCORDION]?: React.ReactNode | DataTableData | undefined;
|
|
9
|
+
};
|
|
10
|
+
export type DTRows = Array<DTRow | DTRow[]>;
|
|
5
11
|
export type DataTableRowProps = {
|
|
6
|
-
columns: DTColumn[];
|
|
7
12
|
row: DTRow;
|
|
8
|
-
rows: DTRow[];
|
|
9
|
-
rowIndex: number;
|
|
10
|
-
headerRows: number;
|
|
11
|
-
expandedRows?: number[];
|
|
12
|
-
onExpandRow?: (expandedRowIndex: number) => void;
|
|
13
13
|
};
|
|
14
14
|
export type RowPropsInner = {
|
|
15
15
|
use: DTUse;
|
|
@@ -18,7 +18,16 @@ export type RowPropsInner = {
|
|
|
18
18
|
* @default false
|
|
19
19
|
*/
|
|
20
20
|
expanded?: boolean;
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
columns: DTColumn[];
|
|
22
|
+
row: DTRow | DTRow[];
|
|
23
|
+
rows: DTRows;
|
|
24
|
+
flatRows: DTRow[];
|
|
25
|
+
rowIndex: number;
|
|
26
|
+
ariaRowIndex: number;
|
|
27
|
+
expandedRows: number[];
|
|
28
|
+
onExpandRow: (expandedRowIndex: number) => void;
|
|
29
|
+
gridTemplateAreas: string[];
|
|
30
|
+
gridTemplateColumns: string[];
|
|
23
31
|
accordionDataGridArea: string;
|
|
32
|
+
inert?: '';
|
|
24
33
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { DataTableProps } from './DataTable.types';
|
|
1
|
+
import { DataTableProps, DataTableData } from './DataTable.types';
|
|
3
2
|
import { Head } from '../Head/Head';
|
|
4
3
|
import { Body } from '../Body/Body';
|
|
5
4
|
export declare const ACCORDION: unique symbol;
|
|
6
|
-
export declare const
|
|
5
|
+
export declare const ROW_GROUP: unique symbol;
|
|
6
|
+
export declare const DataTable: (<Data extends DataTableData, Tag extends import("@semcore/core").Intergalactic.InternalTypings.ComponentTag = "div">(props: import("@semcore/core").Intergalactic.InternalTypings.ComponentProps<Tag, "div", DataTableProps<Data>, never, never[]>) => import("@semcore/core").Intergalactic.InternalTypings.ComponentRenderingResults) & import("@semcore/core").Intergalactic.InternalTypings.ComponentAdditive<"div", "div", DataTableProps<any>, {}, {}> & {
|
|
7
7
|
Head: typeof Head;
|
|
8
8
|
Body: typeof Body;
|
|
9
9
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { Intergalactic } from '@semcore/core';
|
|
3
3
|
import { BoxProps } from '@semcore/base-components';
|
|
4
|
+
import { ACCORDION, ROW_GROUP } from './DataTable';
|
|
4
5
|
/**
|
|
5
6
|
* Datatable must have an accessible name (aria-table-name).
|
|
6
7
|
* It should describe table content.
|
|
@@ -11,15 +12,23 @@ type DataTableAriaProps = Intergalactic.RequireAtLeastOne<{
|
|
|
11
12
|
title?: string;
|
|
12
13
|
}>;
|
|
13
14
|
export type SortDirection = 'asc' | 'desc';
|
|
14
|
-
export type DataTableSort<Column
|
|
15
|
-
export type
|
|
16
|
-
export type
|
|
17
|
-
|
|
15
|
+
export type DataTableSort<Column> = [sortBy: Column, sortDirection: SortDirection];
|
|
16
|
+
export type DataTableChangeSort<Column> = (sort: [sortBy: Column, sortDirection: SortDirection], e?: React.SyntheticEvent) => void;
|
|
17
|
+
export type DataRowItem = {
|
|
18
|
+
[key: string]: DTValue | undefined;
|
|
19
|
+
[ACCORDION]?: React.ReactNode | DataTableData;
|
|
20
|
+
[ROW_GROUP]?: DataTableData;
|
|
21
|
+
};
|
|
22
|
+
export interface DTValue {
|
|
23
|
+
toString(): string;
|
|
24
|
+
[ACCORDION]?: React.ReactNode | DataTableData;
|
|
25
|
+
}
|
|
26
|
+
export type DataTableData = DataRowItem[];
|
|
18
27
|
export type DTUse = 'primary' | 'secondary';
|
|
19
28
|
type Sizes = Pick<BoxProps, 'w' | 'wMax' | 'wMin' | 'h' | 'hMax' | 'hMin'>;
|
|
20
|
-
export type DataTableProps = DataTableAriaProps & Sizes & {
|
|
29
|
+
export type DataTableProps<D extends DataTableData> = DataTableAriaProps & Sizes & {
|
|
21
30
|
/** Data for table */
|
|
22
|
-
data:
|
|
31
|
+
data: D;
|
|
23
32
|
/** Count of total rows if table using virtual scroll. Needs for accessibility */
|
|
24
33
|
totalRows?: number;
|
|
25
34
|
/** Table theme according to visual hierarchy on the page
|
|
@@ -27,16 +36,16 @@ export type DataTableProps = DataTableAriaProps & Sizes & {
|
|
|
27
36
|
* */
|
|
28
37
|
use?: DTUse;
|
|
29
38
|
/** Active sort object */
|
|
30
|
-
sort?: DataTableSort
|
|
39
|
+
sort?: DataTableSort<keyof D[0]>;
|
|
31
40
|
/** Handler call when request will change sort */
|
|
32
|
-
onSortChange?:
|
|
41
|
+
onSortChange?: DataTableChangeSort<keyof D[0]>;
|
|
33
42
|
/**
|
|
34
43
|
*
|
|
35
44
|
* @default auto
|
|
36
45
|
*/
|
|
37
46
|
defaultGridTemplateColumnWidth?: 'auto' | '1fr';
|
|
38
47
|
/**
|
|
39
|
-
* Flag for compact view (
|
|
48
|
+
* Flag for compact view (fewer paddings)
|
|
40
49
|
*/
|
|
41
50
|
compact?: boolean;
|
|
42
51
|
/**
|
|
@@ -44,7 +53,12 @@ export type DataTableProps = DataTableAriaProps & Sizes & {
|
|
|
44
53
|
*/
|
|
45
54
|
loading?: boolean;
|
|
46
55
|
children?: any;
|
|
56
|
+
/**
|
|
57
|
+
*
|
|
58
|
+
*/
|
|
59
|
+
expandedRows?: number[];
|
|
47
60
|
};
|
|
48
61
|
export type RowIndex = number;
|
|
49
62
|
export type ColIndex = number;
|
|
63
|
+
export type DataTableType = (<Data extends DataTableData, Tag extends Intergalactic.Tag = 'div'>(props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableProps<Data>>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableProps<any>>;
|
|
50
64
|
export {};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Component } from '@semcore/core';
|
|
3
3
|
import { ColumnPropsInner, DataTableColumnProps } from './Column.types';
|
|
4
|
+
import type { DataTableData } from '../DataTable/DataTable.types';
|
|
4
5
|
type State = {
|
|
5
6
|
sortVisible: boolean;
|
|
6
7
|
};
|
|
7
|
-
export declare class Column extends Component<DataTableColumnProps, {}, {}, [
|
|
8
|
+
export declare class Column<D extends DataTableData> extends Component<DataTableColumnProps, {}, {}, [
|
|
9
|
+
], ColumnPropsInner<D>> {
|
|
8
10
|
static displayName: string;
|
|
9
11
|
static style: {
|
|
10
12
|
[key: string]: string;
|
|
@@ -13,11 +15,12 @@ export declare class Column extends Component<DataTableColumnProps, {}, {}, [],
|
|
|
13
15
|
columnRef: React.RefObject<HTMLDivElement>;
|
|
14
16
|
sortWrapperRef: React.RefObject<HTMLDivElement>;
|
|
15
17
|
state: State;
|
|
16
|
-
|
|
18
|
+
componentDidMount(): void;
|
|
19
|
+
componentDidUpdate(prevProps: DataTableColumnProps & ColumnPropsInner<D>): void;
|
|
17
20
|
calculateActiveColumnMinWidth: () => number | null;
|
|
18
21
|
handleMouseEnter: () => void;
|
|
19
22
|
handleMouseLeave: () => void;
|
|
20
|
-
handleBlur: () => void;
|
|
23
|
+
handleBlur: (e: React.FocusEvent<HTMLElement>) => void;
|
|
21
24
|
handleSortClick: (e: React.SyntheticEvent<HTMLButtonElement>) => void;
|
|
22
25
|
handleKeyDown: (e: React.KeyboardEvent) => void;
|
|
23
26
|
handleFocusCell: (e: React.FocusEvent<HTMLElement, HTMLElement>) => void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { DataTableProps, DTUse } from '../DataTable/DataTable.types';
|
|
2
|
+
import { DataTableData, DataTableProps, DTUse } from '../DataTable/DataTable.types';
|
|
3
3
|
import { Property } from 'csstype';
|
|
4
4
|
export type CommonColumnType = {
|
|
5
5
|
/**
|
|
@@ -65,11 +65,11 @@ export type DataTableColumnProps = CommonColumnType & {
|
|
|
65
65
|
changeSortSize?: boolean;
|
|
66
66
|
children?: React.ReactElement[];
|
|
67
67
|
};
|
|
68
|
-
export type ColumnPropsInner = {
|
|
68
|
+
export type ColumnPropsInner<D extends DataTableData> = {
|
|
69
69
|
use: DTUse;
|
|
70
70
|
borders?: 'both' | 'left' | 'right';
|
|
71
|
-
sort?: DataTableProps['sort'];
|
|
72
|
-
onSortChange?: DataTableProps['onSortChange'];
|
|
71
|
+
sort?: DataTableProps<D>['sort'];
|
|
72
|
+
onSortChange?: DataTableProps<D>['onSortChange'];
|
|
73
73
|
uid: string;
|
|
74
74
|
parent?: DTColumn;
|
|
75
75
|
sortableColumnDescribeId: string;
|
|
@@ -77,4 +77,5 @@ export type ColumnPropsInner = {
|
|
|
77
77
|
tableRef: React.RefObject<HTMLElement>;
|
|
78
78
|
gridTemplateColumns: string[];
|
|
79
79
|
gridTemplateAreas: string[];
|
|
80
|
+
sticky: boolean;
|
|
80
81
|
};
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { DTUse } from '../DataTable/DataTable.types';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
import { DataTableColumnProps } from './Column.types';
|
|
2
4
|
export type DataTableGroupProps = {
|
|
3
|
-
title:
|
|
5
|
+
title: React.ReactNode;
|
|
4
6
|
borders?: 'both' | 'left' | 'right';
|
|
5
7
|
fixed?: 'left' | 'right';
|
|
8
|
+
children: Array<ReactElement<DataTableColumnProps>>;
|
|
6
9
|
};
|
|
7
10
|
export type GroupPropsInner = {
|
|
8
11
|
use: DTUse;
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Intergalactic } from '@semcore/core';
|
|
2
2
|
import { DataTableHeadProps } from './Head.types';
|
|
3
|
+
import Tooltip from '@semcore/tooltip';
|
|
3
4
|
import { DataTableColumnProps } from './Column.types';
|
|
4
5
|
import { DataTableGroupProps } from './Group.type';
|
|
5
6
|
export declare const Head: (<Tag extends Intergalactic.InternalTypings.ComponentTag = "div", Props extends DataTableHeadProps = DataTableHeadProps>(props: Intergalactic.InternalTypings.ComponentProps<Tag, "div", Props, {}, never[]>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<"div", Intergalactic.InternalTypings.ComponentTag, DataTableHeadProps, {}, never[]> & {
|
|
6
|
-
Column: Intergalactic.
|
|
7
|
-
|
|
7
|
+
Column: (props: Intergalactic.InternalTypings.ComponentProps<'div' | typeof Tooltip, 'div', DataTableColumnProps, {}, [
|
|
8
|
+
]>) => Intergalactic.InternalTypings.ComponentRenderingResults;
|
|
9
|
+
Group: (props: Intergalactic.InternalTypings.ComponentProps<'div' | typeof Tooltip, 'div', DataTableGroupProps, {}, [
|
|
10
|
+
]>) => Intergalactic.InternalTypings.ComponentRenderingResults;
|
|
8
11
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { DataTableProps, DTUse } from '../DataTable/DataTable.types';
|
|
2
|
+
import { DataTableData, DataTableProps, DTUse } from '../DataTable/DataTable.types';
|
|
3
3
|
import { DTColumn } from './Column.types';
|
|
4
4
|
export type DataTableHeadProps = {
|
|
5
5
|
/**
|
|
@@ -7,16 +7,20 @@ export type DataTableHeadProps = {
|
|
|
7
7
|
* @default false
|
|
8
8
|
*/
|
|
9
9
|
sticky?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* offset for sticky header
|
|
12
|
+
*/
|
|
13
|
+
top?: number;
|
|
10
14
|
/** Enable scroll bar element in header */
|
|
11
15
|
withScrollBar?: boolean;
|
|
12
16
|
};
|
|
13
|
-
export type HeadPropsInner = {
|
|
17
|
+
export type HeadPropsInner<D extends DataTableData> = {
|
|
14
18
|
use: DTUse;
|
|
15
19
|
tableRef: React.RefObject<HTMLElement>;
|
|
16
20
|
columns: DTColumn[];
|
|
17
21
|
compact: boolean;
|
|
18
|
-
sort?: DataTableProps['sort'];
|
|
19
|
-
onSortChange?: DataTableProps['onSortChange'];
|
|
22
|
+
sort?: DataTableProps<D>['sort'];
|
|
23
|
+
onSortChange?: DataTableProps<D>['onSortChange'];
|
|
20
24
|
getI18nText: (key: string) => string;
|
|
21
25
|
uid: string;
|
|
22
26
|
ref: React.RefObject<HTMLDivElement>;
|
package/lib/types/index.d.ts
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
import { DataTable, ACCORDION } from './components/DataTable/DataTable';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { DataTable, ACCORDION, ROW_GROUP } from './components/DataTable/DataTable';
|
|
2
|
+
import type { DataTableSort, DataTableType, DataTableData } from './components/DataTable/DataTable.types';
|
|
3
|
+
import { Intergalactic } from '@semcore/core';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
declare const wrapDataTable: <PropsExtending extends {}>(wrapper: (props: Intergalactic.InternalTypings.EfficientOmit<Intergalactic.InternalTypings.ComponentPropsNesting<DataTableType>, "tag" | "ref"> & {
|
|
6
|
+
ref: React.Ref<any>;
|
|
7
|
+
tag: Intergalactic.InternalTypings.ComponentTag;
|
|
8
|
+
} & PropsExtending) => React.ReactNode) => DataTableType;
|
|
9
|
+
export { DataTable, ACCORDION, ROW_GROUP, wrapDataTable };
|
|
10
|
+
export type { DataTableSort, DataTableData };
|