@semcore/data-table 16.2.2-prerelease.1 → 16.3.0-prerelease.4
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 -3
- package/lib/cjs/components/Body/Body.js +201 -358
- 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 +51 -65
- 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/Row.js +367 -113
- 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 +6 -2
- package/lib/cjs/components/DataTable/DataTable.js +109 -179
- 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/Head/Column.js +36 -36
- package/lib/cjs/components/Head/Group.js +37 -37
- package/lib/cjs/components/Head/Group.js.map +1 -1
- package/lib/cjs/components/Head/Head.js +38 -38
- package/lib/cjs/components/Head/Head.js.map +1 -1
- package/lib/cjs/index.js +13 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/es6/components/Body/Body.js +202 -359
- 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 +51 -65
- 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/Row.js +367 -113
- 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 +6 -2
- package/lib/es6/components/DataTable/DataTable.js +105 -175
- 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/Head/Column.js +36 -36
- package/lib/es6/components/Head/Group.js +38 -38
- package/lib/es6/components/Head/Group.js.map +1 -1
- package/lib/es6/components/Head/Head.js +39 -39
- package/lib/es6/components/Head/Head.js.map +1 -1
- package/lib/es6/index.js +2 -1
- package/lib/es6/index.js.map +1 -1
- package/lib/esm/components/Body/Body.mjs +160 -309
- package/lib/esm/components/Body/Cell.mjs +52 -64
- package/lib/esm/components/Body/Row.mjs +316 -93
- package/lib/esm/components/Body/style.shadow.css +6 -2
- package/lib/esm/components/DataTable/DataTable.mjs +97 -167
- package/lib/esm/components/Head/Column.mjs +37 -37
- package/lib/esm/components/Head/Group.mjs +39 -39
- package/lib/esm/components/Head/Head.mjs +40 -40
- package/lib/esm/index.mjs +3 -0
- package/lib/types/components/Body/Body.d.ts +1 -2
- package/lib/types/components/Body/Body.types.d.ts +3 -1
- package/lib/types/components/Body/Cell.types.d.ts +1 -0
- package/lib/types/components/Body/Row.d.ts +43 -3
- package/lib/types/components/Body/Row.types.d.ts +27 -15
- package/lib/types/components/DataTable/DataTable.d.ts +2 -2
- package/lib/types/components/DataTable/DataTable.types.d.ts +6 -1
- package/lib/types/index.d.ts +4 -3
- package/package.json +22 -22
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
2
|
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
3
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
4
3
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
5
4
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
6
5
|
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
@@ -25,38 +24,38 @@ import { isFocusInside, hasFocusableIn } from '@semcore/core/lib/utils/use/useFo
|
|
|
25
24
|
import { NoData } from '@semcore/widget-empty';
|
|
26
25
|
import * as React from 'react';
|
|
27
26
|
/*!__reshadow-styles__:"./dataTable.shadow.css"*/
|
|
28
|
-
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
27
|
+
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SDataTable_12hpo_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_12hpo_gg_.__isDataEmpty_12hpo_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_12hpo_gg_.__gridTemplateColumns_12hpo_gg_{grid-template-columns:var(--gridTemplateColumns_12hpo)}.___SDataTable_12hpo_gg_.__gridTemplateAreas_12hpo_gg_{grid-template-areas:var(--gridTemplateAreas_12hpo)}.___SDataTable_12hpo_gg_.__gridTemplateRows_12hpo_gg_{grid-template-rows:var(--gridTemplateRows_12hpo)}", /*__inner_css_end__*/"12hpo_gg_"),
|
|
29
28
|
/*__reshadow_css_end__*/
|
|
30
29
|
{
|
|
31
|
-
"__SDataTable": "
|
|
32
|
-
"_isDataEmpty": "
|
|
33
|
-
"_gridTemplateColumns": "
|
|
34
|
-
"--gridTemplateColumns": "--
|
|
35
|
-
"_gridTemplateAreas": "
|
|
36
|
-
"--gridTemplateAreas": "--
|
|
37
|
-
"_gridTemplateRows": "
|
|
38
|
-
"--gridTemplateRows": "--
|
|
30
|
+
"__SDataTable": "___SDataTable_12hpo_gg_",
|
|
31
|
+
"_isDataEmpty": "__isDataEmpty_12hpo_gg_",
|
|
32
|
+
"_gridTemplateColumns": "__gridTemplateColumns_12hpo_gg_",
|
|
33
|
+
"--gridTemplateColumns": "--gridTemplateColumns_12hpo",
|
|
34
|
+
"_gridTemplateAreas": "__gridTemplateAreas_12hpo_gg_",
|
|
35
|
+
"--gridTemplateAreas": "--gridTemplateAreas_12hpo",
|
|
36
|
+
"_gridTemplateRows": "__gridTemplateRows_12hpo_gg_",
|
|
37
|
+
"--gridTemplateRows": "--gridTemplateRows_12hpo"
|
|
39
38
|
});
|
|
40
39
|
/*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
|
|
41
|
-
var scrollStyles = (/*__reshadow_css_start__*/_sstyled2.insert(/*__inner_css_start__*/".
|
|
40
|
+
var scrollStyles = (/*__reshadow_css_start__*/_sstyled2.insert(/*__inner_css_start__*/".___SScrollArea_w8oky_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_{overflow:visible;overflow:initial}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_both_w8oky_gg_{overflow:auto}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_both_w8oky_gg_.__loading_w8oky_gg_,.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_horizontal_w8oky_gg_.__loading_w8oky_gg_,.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_vertical_w8oky_gg_.__loading_w8oky_gg_{overflow:hidden}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_horizontal_w8oky_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_._scrollDirection_vertical_w8oky_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_.__headerHeight_w8oky_gg_{scroll-padding-top:var(--headerHeight_w8oky)}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_.__leftScrollPadding_w8oky_gg_{scroll-padding-left:var(--leftScrollPadding_w8oky)}.___SScrollArea_w8oky_gg_ .___SContainer_w8oky_gg_.__rightScrollPadding_w8oky_gg_{scroll-padding-right:var(--rightScrollPadding_w8oky)}.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_::before,.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_:after,.___SScrollArea_w8oky_gg_ .___SShadowVertical_w8oky_gg_::after{z-index:20}.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_.__leftOffset_w8oky_gg_::before,.___SScrollArea_w8oky_gg_ .___SShadowHorizontal_w8oky_gg_.__rightOffset_w8oky_gg_::after,.___SScrollArea_w8oky_gg_ .___SShadowVertical_w8oky_gg_::before{display:none}", /*__inner_css_end__*/"w8oky_gg_"),
|
|
42
41
|
/*__reshadow_css_end__*/
|
|
43
42
|
{
|
|
44
|
-
"__SScrollArea": "
|
|
45
|
-
"__SContainer": "
|
|
46
|
-
"_scrollDirection_both": "
|
|
47
|
-
"_loading": "
|
|
48
|
-
"_scrollDirection_horizontal": "
|
|
49
|
-
"_scrollDirection_vertical": "
|
|
50
|
-
"_headerHeight": "
|
|
51
|
-
"--headerHeight": "--
|
|
52
|
-
"_leftScrollPadding": "
|
|
53
|
-
"--leftScrollPadding": "--
|
|
54
|
-
"_rightScrollPadding": "
|
|
55
|
-
"--rightScrollPadding": "--
|
|
56
|
-
"__SShadowVertical": "
|
|
57
|
-
"__SShadowHorizontal": "
|
|
58
|
-
"_leftOffset": "
|
|
59
|
-
"_rightOffset": "
|
|
43
|
+
"__SScrollArea": "___SScrollArea_w8oky_gg_",
|
|
44
|
+
"__SContainer": "___SContainer_w8oky_gg_",
|
|
45
|
+
"_scrollDirection_both": "_scrollDirection_both_w8oky_gg_",
|
|
46
|
+
"_loading": "__loading_w8oky_gg_",
|
|
47
|
+
"_scrollDirection_horizontal": "_scrollDirection_horizontal_w8oky_gg_",
|
|
48
|
+
"_scrollDirection_vertical": "_scrollDirection_vertical_w8oky_gg_",
|
|
49
|
+
"_headerHeight": "__headerHeight_w8oky_gg_",
|
|
50
|
+
"--headerHeight": "--headerHeight_w8oky",
|
|
51
|
+
"_leftScrollPadding": "__leftScrollPadding_w8oky_gg_",
|
|
52
|
+
"--leftScrollPadding": "--leftScrollPadding_w8oky",
|
|
53
|
+
"_rightScrollPadding": "__rightScrollPadding_w8oky_gg_",
|
|
54
|
+
"--rightScrollPadding": "--rightScrollPadding_w8oky",
|
|
55
|
+
"__SShadowVertical": "___SShadowVertical_w8oky_gg_",
|
|
56
|
+
"__SShadowHorizontal": "___SShadowHorizontal_w8oky_gg_",
|
|
57
|
+
"_leftOffset": "__leftOffset_w8oky_gg_",
|
|
58
|
+
"_rightOffset": "__rightOffset_w8oky_gg_"
|
|
60
59
|
});
|
|
61
60
|
import { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';
|
|
62
61
|
import { Body } from '../Body/Body';
|
|
@@ -68,6 +67,7 @@ export var UNIQ_ROW_KEY = Symbol('UNIQ_ROW_KEY');
|
|
|
68
67
|
export var IS_EMPTY_DATA_ROW = Symbol('IS_EMPTY_DATA_ROW');
|
|
69
68
|
export var SELECT_ALL = Symbol('SELECT_ALL');
|
|
70
69
|
export var ROW_INDEX = Symbol('ROW_INDEX');
|
|
70
|
+
export var GRID_ROW_INDEX = Symbol('GRID_ROW_INDEX');
|
|
71
71
|
var SCROLL_BAR_HEIGHT = 12;
|
|
72
72
|
var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
73
73
|
function DataTableRoot(props) {
|
|
@@ -90,6 +90,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
90
90
|
_defineProperty(_this, "tmpData", void 0);
|
|
91
91
|
_defineProperty(_this, "calculatedRows", void 0);
|
|
92
92
|
_defineProperty(_this, "flatRows", void 0);
|
|
93
|
+
_defineProperty(_this, "gridSettings", {
|
|
94
|
+
gridTemplateColumns: [],
|
|
95
|
+
gridTemplateAreas: []
|
|
96
|
+
});
|
|
93
97
|
_defineProperty(_this, "selectAllMessageTimer", 0);
|
|
94
98
|
_defineProperty(_this, "headerNodesMap", new Map());
|
|
95
99
|
_defineProperty(_this, "state", {
|
|
@@ -168,7 +172,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
168
172
|
});
|
|
169
173
|
_defineProperty(_this, "getRow", function (index) {
|
|
170
174
|
var _this$tableRef$curren;
|
|
171
|
-
return (_this$tableRef$curren = _this.tableRef.current) === null || _this$tableRef$curren === void 0 ? void 0 : _this$tableRef$curren.querySelector("[aria-rowindex=\"".concat(index + 1, "\"]:not([aria-hidden=\"true\"])"));
|
|
175
|
+
return (_this$tableRef$curren = _this.tableRef.current) === null || _this$tableRef$curren === void 0 ? void 0 : _this$tableRef$curren.querySelector(":scope [aria-rowindex=\"".concat(index + 1, "\"]:not([aria-hidden=\"true\"]):not(:scope [data-ui-name=\"DataTable\"] [aria-rowindex=\"").concat(index + 1, "\"]:not([aria-hidden=\"true\"])"));
|
|
172
176
|
});
|
|
173
177
|
_defineProperty(_this, "hasFocusableInHeader", function () {
|
|
174
178
|
return _this.headerRef.current && hasFocusableIn(_this.headerRef.current) || _this.columns.some(function (column) {
|
|
@@ -182,11 +186,11 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
182
186
|
accordionMode = _this$asProps2.accordionMode;
|
|
183
187
|
if (expandedRows.has(expandedRow[UNIQ_ROW_KEY])) {
|
|
184
188
|
expandedRows["delete"](expandedRow[UNIQ_ROW_KEY]);
|
|
185
|
-
_this.handlers.expandedRows(
|
|
189
|
+
_this.handlers.expandedRows(expandedRows);
|
|
186
190
|
onAccordionToggle === null || onAccordionToggle === void 0 || onAccordionToggle('close', expandedRow[UNIQ_ROW_KEY], expandedRow[ROW_INDEX]);
|
|
187
191
|
} else {
|
|
188
192
|
expandedRows.add(expandedRow[UNIQ_ROW_KEY]);
|
|
189
|
-
_this.handlers.expandedRows(
|
|
193
|
+
_this.handlers.expandedRows(expandedRows);
|
|
190
194
|
onAccordionToggle === null || onAccordionToggle === void 0 || onAccordionToggle('open', expandedRow[UNIQ_ROW_KEY], expandedRow[ROW_INDEX]);
|
|
191
195
|
if (accordionMode === 'toggle') {
|
|
192
196
|
var rowIndex = expandedRow[ROW_INDEX];
|
|
@@ -402,7 +406,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
402
406
|
_defineProperty(_this, "handleMouseMove", function () {
|
|
403
407
|
_this.setInert(false);
|
|
404
408
|
});
|
|
405
|
-
_defineProperty(_this, "handleBackFromAccordion", function (
|
|
409
|
+
_defineProperty(_this, "handleBackFromAccordion", function (key) {
|
|
410
|
+
var cellIndex = _this.columns.findIndex(function (c) {
|
|
411
|
+
return c.name === key;
|
|
412
|
+
});
|
|
406
413
|
_this.changeFocusCell(-1, cellIndex === -1 ? 0 : cellIndex, 'up');
|
|
407
414
|
});
|
|
408
415
|
_defineProperty(_this, "handleContainerResizeEnd", function () {
|
|
@@ -477,13 +484,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
477
484
|
}, 0);
|
|
478
485
|
return [side, "".concat(sum, "px")];
|
|
479
486
|
});
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
var cols = _this.calculateColumnsFromConfig();
|
|
484
|
-
_this.columns = cols[0];
|
|
485
|
-
_this.treeColumns = cols[1];
|
|
486
|
-
}
|
|
487
|
+
var cols = _this.calculateColumnsFromConfig();
|
|
488
|
+
_this.columns = cols[0];
|
|
489
|
+
_this.treeColumns = cols[1];
|
|
487
490
|
_this.calculatedRows = _this.getRows();
|
|
488
491
|
_this.flatRows = _this.calculatedRows.flat();
|
|
489
492
|
_this.tmpData = props.data;
|
|
@@ -580,21 +583,6 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
580
583
|
}, 0);
|
|
581
584
|
return rows + expandedRowsCount;
|
|
582
585
|
}
|
|
583
|
-
}, {
|
|
584
|
-
key: "gridSettings",
|
|
585
|
-
get: function get() {
|
|
586
|
-
var columns = this.columns;
|
|
587
|
-
var gridTemplateColumns = columns.map(function (c) {
|
|
588
|
-
return c.gtcWidth;
|
|
589
|
-
});
|
|
590
|
-
var gridTemplateAreas = columns.map(function (c) {
|
|
591
|
-
return c.name;
|
|
592
|
-
});
|
|
593
|
-
return {
|
|
594
|
-
gridTemplateColumns: gridTemplateColumns,
|
|
595
|
-
gridTemplateAreas: gridTemplateAreas
|
|
596
|
-
};
|
|
597
|
-
}
|
|
598
586
|
}, {
|
|
599
587
|
key: "scrollDirection",
|
|
600
588
|
get: function get() {
|
|
@@ -634,11 +622,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
634
622
|
headerProps = _this$asProps7.headerProps,
|
|
635
623
|
onSelectedRowsChange = _this$asProps7.onSelectedRowsChange,
|
|
636
624
|
selectedRows = _this$asProps7.selectedRows,
|
|
637
|
-
sideIndents = _this$asProps7.sideIndents
|
|
625
|
+
sideIndents = _this$asProps7.sideIndents,
|
|
626
|
+
variant = _this$asProps7.variant;
|
|
638
627
|
var _this$gridSettings = this.gridSettings,
|
|
639
628
|
gridTemplateColumns = _this$gridSettings.gridTemplateColumns,
|
|
640
629
|
gridTemplateAreas = _this$gridSettings.gridTemplateAreas;
|
|
641
630
|
var shadowVertical = this.state.shadowVertical;
|
|
631
|
+
var sideIndentsValue = variant === 'card' ? 'wide' : sideIndents;
|
|
642
632
|
return _objectSpread(_objectSpread({}, headerProps), {}, {
|
|
643
633
|
columns: this.columns,
|
|
644
634
|
treeColumns: this.treeColumns,
|
|
@@ -653,7 +643,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
653
643
|
gridAreaGroupMap: this.gridAreaGroupMap,
|
|
654
644
|
gridTemplateColumns: gridTemplateColumns,
|
|
655
645
|
gridTemplateAreas: gridTemplateAreas,
|
|
656
|
-
sideIndents:
|
|
646
|
+
sideIndents: sideIndentsValue,
|
|
657
647
|
totalRows: this.totalRows,
|
|
658
648
|
selectedRows: selectedRows,
|
|
659
649
|
flatRows: this.getFlatRows(),
|
|
@@ -696,7 +686,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
696
686
|
accordionDuration = _this$asProps8.accordionDuration,
|
|
697
687
|
accordionMode = _this$asProps8.accordionMode,
|
|
698
688
|
rawData = _this$asProps8.data,
|
|
699
|
-
renderCellOverlay = _this$asProps8.renderCellOverlay
|
|
689
|
+
renderCellOverlay = _this$asProps8.renderCellOverlay,
|
|
690
|
+
totalRows = _this$asProps8.totalRows,
|
|
691
|
+
variant = _this$asProps8.variant;
|
|
700
692
|
var _this$gridSettings2 = this.gridSettings,
|
|
701
693
|
gridTemplateColumns = _this$gridSettings2.gridTemplateColumns,
|
|
702
694
|
gridTemplateAreas = _this$gridSettings2.gridTemplateAreas;
|
|
@@ -737,7 +729,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
737
729
|
onCellClick: this.handleCellClick,
|
|
738
730
|
rawData: rawData,
|
|
739
731
|
shadowVertical: shadowVertical,
|
|
740
|
-
renderCellOverlay: renderCellOverlay
|
|
732
|
+
renderCellOverlay: renderCellOverlay,
|
|
733
|
+
totalRows: totalRows,
|
|
734
|
+
variant: variant
|
|
741
735
|
};
|
|
742
736
|
}
|
|
743
737
|
}, {
|
|
@@ -854,7 +848,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
854
848
|
"use:h": undefined,
|
|
855
849
|
"use:hMax": undefined,
|
|
856
850
|
"use:hMin": undefined
|
|
857
|
-
}, _ref))), children ? /*#__PURE__*/React.createElement(Children, _ref2.cn("Children", {})) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(
|
|
851
|
+
}, _ref))), children ? /*#__PURE__*/React.createElement(Children, _ref2.cn("Children", {})) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DataTable.Head, null), /*#__PURE__*/React.createElement(DataTable.Body, null)))), (headerPropsToCheck === null || headerPropsToCheck === void 0 ? void 0 : headerPropsToCheck.withScrollBar) && topOffset && !loading && /*#__PURE__*/React.createElement(ScrollArea.Bar, {
|
|
858
852
|
orientation: "horizontal",
|
|
859
853
|
top: topOffset - SCROLL_BAR_HEIGHT,
|
|
860
854
|
zIndex: 20
|
|
@@ -870,96 +864,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
870
864
|
}), this.state.selectAllMessage));
|
|
871
865
|
}
|
|
872
866
|
}, {
|
|
873
|
-
key: "
|
|
874
|
-
value: function
|
|
867
|
+
key: "calculateColumnsFromConfig",
|
|
868
|
+
value: function calculateColumnsFromConfig() {
|
|
875
869
|
var _this4 = this;
|
|
876
870
|
var _this$props = this.props,
|
|
877
|
-
|
|
871
|
+
columns = _this$props.columns,
|
|
878
872
|
data = _this$props.data,
|
|
879
873
|
selectedRows = _this$props.selectedRows;
|
|
880
|
-
var HeadComponent = findComponent(children, ['Head']);
|
|
881
|
-
this.hasGroups = findComponent(HeadComponent.props.children, ['Head.Group']) !== undefined;
|
|
882
|
-
var groupIndex = 0;
|
|
883
|
-
var gridColumnIndex = selectedRows ? 2 : 1;
|
|
884
|
-
var calculateGridTemplateColumn = this.calculateGridTemplateColumn.bind(this);
|
|
885
|
-
var columns = [];
|
|
886
|
-
if (selectedRows) {
|
|
887
|
-
var column = {
|
|
888
|
-
name: SELECT_ALL.toString(),
|
|
889
|
-
gtcWidth: 'min-content',
|
|
890
|
-
alignItems: 'flex-start',
|
|
891
|
-
children: ''
|
|
892
|
-
};
|
|
893
|
-
columns.push(column);
|
|
894
|
-
}
|
|
895
|
-
var makeColumn = function makeColumn(columnElement, parent, isFirst, isLast) {
|
|
896
|
-
var _columnElement$props$, _ref3, _columnElement$props$2;
|
|
897
|
-
var leftBordersFromParent = isFirst && ((parent === null || parent === void 0 ? void 0 : parent.props.borders) === 'both' || (parent === null || parent === void 0 ? void 0 : parent.props.borders) === 'left') ? 'left' : undefined;
|
|
898
|
-
var rightBordersFromParent = isLast && ((parent === null || parent === void 0 ? void 0 : parent.props.borders) === 'both' || (parent === null || parent === void 0 ? void 0 : parent.props.borders) === 'right') ? 'right' : undefined;
|
|
899
|
-
var column = {
|
|
900
|
-
name: columnElement.props.name,
|
|
901
|
-
gtcWidth: calculateGridTemplateColumn(columnElement),
|
|
902
|
-
fixed: (_columnElement$props$ = columnElement.props.fixed) !== null && _columnElement$props$ !== void 0 ? _columnElement$props$ : parent === null || parent === void 0 ? void 0 : parent.props.fixed,
|
|
903
|
-
borders: (_ref3 = (_columnElement$props$2 = columnElement.props.borders) !== null && _columnElement$props$2 !== void 0 ? _columnElement$props$2 : leftBordersFromParent) !== null && _ref3 !== void 0 ? _ref3 : rightBordersFromParent,
|
|
904
|
-
parent: parent,
|
|
905
|
-
flexWrap: columnElement.props.flexWrap,
|
|
906
|
-
alignItems: columnElement.props.alignItems,
|
|
907
|
-
alignContent: columnElement.props.alignContent,
|
|
908
|
-
justifyContent: columnElement.props.justifyContent,
|
|
909
|
-
textAlign: columnElement.props.textAlign,
|
|
910
|
-
children: ''
|
|
911
|
-
};
|
|
912
|
-
return column;
|
|
913
|
-
};
|
|
914
|
-
var childIsColumn = function childIsColumn(child) {
|
|
915
|
-
return child.type === Head.Column;
|
|
916
|
-
};
|
|
917
|
-
var childIsGroup = function childIsGroup(child) {
|
|
918
|
-
return child.type === Head.Group;
|
|
919
|
-
};
|
|
920
|
-
React.Children.forEach(HeadComponent.props.children, function (child, i) {
|
|
921
|
-
if (! /*#__PURE__*/React.isValidElement(child)) return;
|
|
922
|
-
if (childIsColumn(child)) {
|
|
923
|
-
var col = makeColumn(child);
|
|
924
|
-
col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this4.hasGroups ? '3' : '2', " / ").concat(gridColumnIndex + 1);
|
|
925
|
-
gridColumnIndex++;
|
|
926
|
-
columns.push(col);
|
|
927
|
-
} else if (childIsGroup(child)) {
|
|
928
|
-
var Group = child;
|
|
929
|
-
var childCount = React.Children.count(child.props.children);
|
|
930
|
-
var initGridColumn = gridColumnIndex;
|
|
931
|
-
React.Children.forEach(child.props.children, function (child, j) {
|
|
932
|
-
if ((child === null || child === void 0 ? void 0 : child.type) === Head.Column) {
|
|
933
|
-
var isFirst = j === 0;
|
|
934
|
-
var isLast = j === childCount - 1;
|
|
935
|
-
var _col = makeColumn(child, Group, isFirst, isLast);
|
|
936
|
-
if (i === 0 && j === 0 && data.some(function (d) {
|
|
937
|
-
return d[ACCORDION];
|
|
938
|
-
})) {
|
|
939
|
-
gridColumnIndex++;
|
|
940
|
-
_col.gridArea = "2 / ".concat(gridColumnIndex - 1, " / 3 / ").concat(gridColumnIndex + 1);
|
|
941
|
-
} else {
|
|
942
|
-
_col.gridArea = "2 / ".concat(gridColumnIndex, " / 3 / ").concat(gridColumnIndex + 1);
|
|
943
|
-
}
|
|
944
|
-
_col.gridArea = "2 / ".concat(gridColumnIndex, " / 3 / ").concat(gridColumnIndex + 1);
|
|
945
|
-
gridColumnIndex++;
|
|
946
|
-
columns.push(_col);
|
|
947
|
-
}
|
|
948
|
-
});
|
|
949
|
-
_this4.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
|
|
950
|
-
groupIndex++;
|
|
951
|
-
}
|
|
952
|
-
});
|
|
953
|
-
return columns.filter(Boolean);
|
|
954
|
-
}
|
|
955
|
-
}, {
|
|
956
|
-
key: "calculateColumnsFromConfig",
|
|
957
|
-
value: function calculateColumnsFromConfig() {
|
|
958
|
-
var _this5 = this;
|
|
959
|
-
var _this$props2 = this.props,
|
|
960
|
-
columns = _this$props2.columns,
|
|
961
|
-
data = _this$props2.data,
|
|
962
|
-
selectedRows = _this$props2.selectedRows;
|
|
963
874
|
this.hasGroups = columns.some(function (column) {
|
|
964
875
|
return 'columns' in column && column.columns.some(function (col) {
|
|
965
876
|
return col.children !== null;
|
|
@@ -980,18 +891,18 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
980
891
|
calculatedColumns.push(column);
|
|
981
892
|
}
|
|
982
893
|
var makeColumn = function makeColumn(columnElement, parent, isFirst, isLast, hasGroups) {
|
|
983
|
-
var _columnElement$fixed,
|
|
894
|
+
var _columnElement$fixed, _ref3, _columnElement$border;
|
|
984
895
|
var leftBordersFromParent = isFirst && ((parent === null || parent === void 0 ? void 0 : parent.borders) === 'both' || (parent === null || parent === void 0 ? void 0 : parent.borders) === 'left') ? 'left' : undefined;
|
|
985
896
|
var rightBordersFromParent = isLast && ((parent === null || parent === void 0 ? void 0 : parent.borders) === 'both' || (parent === null || parent === void 0 ? void 0 : parent.borders) === 'right') ? 'right' : undefined;
|
|
986
897
|
var column = _objectSpread(_objectSpread({}, columnElement), {}, {
|
|
987
898
|
name: childIsColumn(columnElement) ? columnElement.name : '',
|
|
988
899
|
gtcWidth: childIsColumn(columnElement) ? calculateGridTemplateColumn(columnElement) : '',
|
|
989
900
|
fixed: (_columnElement$fixed = columnElement.fixed) !== null && _columnElement$fixed !== void 0 ? _columnElement$fixed : hasGroups ? parent === null || parent === void 0 ? void 0 : parent.fixed : undefined,
|
|
990
|
-
borders: (
|
|
901
|
+
borders: (_ref3 = (_columnElement$border = columnElement.borders) !== null && _columnElement$border !== void 0 ? _columnElement$border : leftBordersFromParent) !== null && _ref3 !== void 0 ? _ref3 : rightBordersFromParent,
|
|
991
902
|
parent: parent
|
|
992
903
|
});
|
|
993
904
|
if (column.fixed) {
|
|
994
|
-
|
|
905
|
+
_this4.hasFixedColumn = true;
|
|
995
906
|
}
|
|
996
907
|
return column;
|
|
997
908
|
};
|
|
@@ -1015,7 +926,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1015
926
|
columns.forEach(function (child, i) {
|
|
1016
927
|
if (childIsColumn(child)) {
|
|
1017
928
|
var col = makeColumn(child);
|
|
1018
|
-
col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(
|
|
929
|
+
col.gridArea = "1 / ".concat(gridColumnIndex, " / ").concat(_this4.hasGroups ? '3' : '2', " / ").concat(gridColumnIndex + 1);
|
|
1019
930
|
gridColumnIndex++;
|
|
1020
931
|
calculatedColumns.push(col);
|
|
1021
932
|
treeColumns.push(col);
|
|
@@ -1026,14 +937,14 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1026
937
|
var Group = makeColumn(child);
|
|
1027
938
|
var childCount = child.columns.length;
|
|
1028
939
|
var initGridColumn = gridColumnIndex;
|
|
1029
|
-
var groupedRow =
|
|
940
|
+
var groupedRow = _this4.hasGroups ? 2 : 1;
|
|
1030
941
|
Group.columns = [];
|
|
1031
942
|
Group.children = child.children;
|
|
1032
943
|
child.columns.forEach(function (child, j) {
|
|
1033
944
|
var _Group$columns;
|
|
1034
945
|
var isFirst = j === 0;
|
|
1035
946
|
var isLast = j === childCount - 1;
|
|
1036
|
-
var col = makeColumn(child, Group, isFirst, isLast,
|
|
947
|
+
var col = makeColumn(child, Group, isFirst, isLast, _this4.hasGroups);
|
|
1037
948
|
if (i === 0 && j === 0 && data.some(function (d) {
|
|
1038
949
|
return d[ACCORDION];
|
|
1039
950
|
})) {
|
|
@@ -1051,10 +962,20 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1051
962
|
(_Group$columns = Group.columns) === null || _Group$columns === void 0 || _Group$columns.push(col);
|
|
1052
963
|
});
|
|
1053
964
|
treeColumns.push(Group);
|
|
1054
|
-
|
|
965
|
+
_this4.gridAreaGroupMap.set(groupIndex, "1 / ".concat(initGridColumn, " / 2 / ").concat(gridColumnIndex));
|
|
1055
966
|
groupIndex++;
|
|
1056
967
|
}
|
|
1057
968
|
});
|
|
969
|
+
var gridTemplateColumns = calculatedColumns.map(function (c) {
|
|
970
|
+
return c.gtcWidth;
|
|
971
|
+
});
|
|
972
|
+
var gridTemplateAreas = calculatedColumns.map(function (c) {
|
|
973
|
+
return c.name;
|
|
974
|
+
});
|
|
975
|
+
this.gridSettings = {
|
|
976
|
+
gridTemplateColumns: gridTemplateColumns,
|
|
977
|
+
gridTemplateAreas: gridTemplateAreas
|
|
978
|
+
};
|
|
1058
979
|
return [calculatedColumns, treeColumns];
|
|
1059
980
|
}
|
|
1060
981
|
}, {
|
|
@@ -1070,13 +991,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1070
991
|
}, {
|
|
1071
992
|
key: "getRows",
|
|
1072
993
|
value: function getRows() {
|
|
1073
|
-
var
|
|
994
|
+
var _this5 = this;
|
|
1074
995
|
var columns = this.columns;
|
|
1075
996
|
// @ts-ignore
|
|
1076
|
-
var _this$
|
|
1077
|
-
data = _this$
|
|
1078
|
-
uid = _this$
|
|
1079
|
-
uniqueRowKey = _this$
|
|
997
|
+
var _this$props2 = this.props,
|
|
998
|
+
data = _this$props2.data,
|
|
999
|
+
uid = _this$props2.uid,
|
|
1000
|
+
uniqueRowKey = _this$props2.uniqueRowKey;
|
|
1080
1001
|
if (this.tmpData === data) {
|
|
1081
1002
|
return this.calculatedRows;
|
|
1082
1003
|
}
|
|
@@ -1086,15 +1007,17 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1086
1007
|
return column.name;
|
|
1087
1008
|
});
|
|
1088
1009
|
var rowIndex = 0;
|
|
1010
|
+
var gridRowIndex = 0;
|
|
1089
1011
|
var id = 100000000; // need this for gen keys by toString(36)
|
|
1090
1012
|
|
|
1091
1013
|
var makeDtRow = function makeDtRow(row, excludeColumns) {
|
|
1092
1014
|
var columns = new Set(columnNames);
|
|
1093
|
-
var
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1015
|
+
var accordionInCell = null;
|
|
1016
|
+
var dtRow = Object.entries(row).reduce(function (acc, _ref4) {
|
|
1017
|
+
var _ref5 = _slicedToArray(_ref4, 2),
|
|
1018
|
+
key = _ref5[0],
|
|
1019
|
+
value = _ref5[1];
|
|
1020
|
+
var columnsToRow = key.split(_this5.columnsSplitter);
|
|
1098
1021
|
if (columnsToRow.length === 1) {
|
|
1099
1022
|
acc[key] = value !== null && value !== void 0 ? value : '';
|
|
1100
1023
|
columns["delete"](key);
|
|
@@ -1107,11 +1030,18 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1107
1030
|
columns["delete"](value);
|
|
1108
1031
|
});
|
|
1109
1032
|
}
|
|
1110
|
-
if (
|
|
1111
|
-
|
|
1033
|
+
if (value !== null && value !== void 0 && value[ACCORDION]) {
|
|
1034
|
+
accordionInCell = value[ACCORDION];
|
|
1112
1035
|
}
|
|
1113
1036
|
return acc;
|
|
1114
|
-
}, _defineProperty(_defineProperty({}, UNIQ_ROW_KEY, row[UNIQ_ROW_KEY] || (uniqueRowKey ? row[uniqueRowKey] : "".concat(uid, "_").concat((rowIndex + id).toString(36)))), ROW_INDEX, rowIndex));
|
|
1037
|
+
}, _defineProperty(_defineProperty(_defineProperty({}, UNIQ_ROW_KEY, row[UNIQ_ROW_KEY] || (uniqueRowKey ? row[uniqueRowKey] : "".concat(uid, "_").concat((rowIndex + id).toString(36)))), ROW_INDEX, rowIndex), GRID_ROW_INDEX, gridRowIndex));
|
|
1038
|
+
gridRowIndex++;
|
|
1039
|
+
if (row[ACCORDION]) {
|
|
1040
|
+
dtRow[ACCORDION] = row[ACCORDION];
|
|
1041
|
+
gridRowIndex = Array.isArray(row[ACCORDION]) ? gridRowIndex + row[ACCORDION].length : gridRowIndex + 1;
|
|
1042
|
+
} else if (accordionInCell) {
|
|
1043
|
+
gridRowIndex = Array.isArray(accordionInCell) ? gridRowIndex + accordionInCell.length : gridRowIndex + 1;
|
|
1044
|
+
}
|
|
1115
1045
|
excludeColumns === null || excludeColumns === void 0 || excludeColumns.forEach(function (value) {
|
|
1116
1046
|
columns["delete"](value);
|
|
1117
1047
|
});
|
|
@@ -1127,10 +1057,10 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1127
1057
|
if (groupedRows) {
|
|
1128
1058
|
var innerRows = [];
|
|
1129
1059
|
var groupedKeys = [];
|
|
1130
|
-
var groupedRowData = Object.entries(row).reduce(function (acc,
|
|
1131
|
-
var
|
|
1132
|
-
key =
|
|
1133
|
-
value =
|
|
1060
|
+
var groupedRowData = Object.entries(row).reduce(function (acc, _ref6) {
|
|
1061
|
+
var _ref7 = _slicedToArray(_ref6, 2),
|
|
1062
|
+
key = _ref7[0],
|
|
1063
|
+
value = _ref7[1];
|
|
1134
1064
|
acc[key] = new MergedRowsCell(value, groupedRows.length, row[ACCORDION]);
|
|
1135
1065
|
groupedKeys.push(key);
|
|
1136
1066
|
return acc;
|
|
@@ -1143,13 +1073,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1143
1073
|
dtRow[ROW_GROUP] = new Set();
|
|
1144
1074
|
} else {
|
|
1145
1075
|
var _innerRows$;
|
|
1146
|
-
if (index === groupedRows.length - 1 && row[ACCORDION]) {
|
|
1147
|
-
childRow[ACCORDION] = row[ACCORDION];
|
|
1148
|
-
}
|
|
1149
1076
|
dtRow = makeDtRow(childRow, groupedKeys);
|
|
1150
1077
|
(_innerRows$ = innerRows[0]) === null || _innerRows$ === void 0 || (_innerRows$ = _innerRows$[ROW_GROUP]) === null || _innerRows$ === void 0 || _innerRows$.add(dtRow[UNIQ_ROW_KEY]);
|
|
1151
1078
|
}
|
|
1152
1079
|
innerRows.push(dtRow);
|
|
1080
|
+
if (index === groupedRows.length - 1 && row[ACCORDION]) {
|
|
1081
|
+
gridRowIndex = Array.isArray(row[ACCORDION]) ? gridRowIndex + row[ACCORDION].length : gridRowIndex + 1;
|
|
1082
|
+
}
|
|
1153
1083
|
rowIndex++;
|
|
1154
1084
|
});
|
|
1155
1085
|
rows.push(innerRows);
|
|
@@ -1165,8 +1095,8 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
|
|
|
1165
1095
|
}, {
|
|
1166
1096
|
key: "calculateGridTemplateColumn",
|
|
1167
1097
|
value: function calculateGridTemplateColumn(c) {
|
|
1168
|
-
var
|
|
1169
|
-
return (
|
|
1098
|
+
var _ref8;
|
|
1099
|
+
return (_ref8 = /*#__PURE__*/React.isValidElement(c) ? c.props.gtcWidth : c.gtcWidth) !== null && _ref8 !== void 0 ? _ref8 : this.props.defaultGridTemplateColumnWidth;
|
|
1170
1100
|
}
|
|
1171
1101
|
}, {
|
|
1172
1102
|
key: "getHeaderHeight",
|
|
@@ -1209,11 +1139,11 @@ _defineProperty(DataTableRoot, "defaultProps", {
|
|
|
1209
1139
|
description: "",
|
|
1210
1140
|
w: "100%"
|
|
1211
1141
|
});
|
|
1212
|
-
}
|
|
1142
|
+
},
|
|
1143
|
+
variant: 'default'
|
|
1213
1144
|
});
|
|
1214
1145
|
export var DataTable = createComponent(DataTableRoot, {
|
|
1215
1146
|
Head: Head,
|
|
1216
1147
|
Body: Body
|
|
1217
1148
|
});
|
|
1218
|
-
export var DataTableInternal = DataTable;
|
|
1219
1149
|
//# sourceMappingURL=DataTable.js.map
|