@elliemae/ds-data-table 2.4.2-rc.12 → 2.4.2-rc.15
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/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +3 -6
- package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +1 -2
- package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +1 -2
- package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +3 -4
- package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +1 -2
- package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +1 -2
- package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +7 -10
- package/cjs/addons/Filters/Components/DateRangeFilter/index.js +0 -1
- package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +0 -1
- package/cjs/addons/Filters/Components/NumberRangeFilter/index.js +7 -10
- package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +0 -1
- package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +2 -3
- package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +1 -2
- package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +0 -1
- package/cjs/addons/Filters/Components/SelectFilter/utils.js +4 -9
- package/cjs/addons/Filters/Components/SingleDateFilter/index.js +0 -1
- package/cjs/configs/useDatatableConfig.js +1 -4
- package/cjs/configs/useRowFlattenization.js +6 -8
- package/cjs/configs/useTableColsWithAddons.js +1 -2
- package/cjs/exported-related/EditableCell.js +1 -4
- package/cjs/exported-related/FilterPopover.js +7 -14
- package/cjs/exported-related/Filters/dateRangeFilterFn.js +1 -2
- package/cjs/exported-related/Filters/numberRangeFilterFn.js +1 -1
- package/cjs/exported-related/Filters/singleDateFilterFn.js +0 -1
- package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +5 -8
- package/cjs/exported-related/RowRenderer/index.js +0 -1
- package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +1 -4
- package/cjs/exported-related/RowRenderer/useRowStyle.js +0 -1
- package/cjs/exported-related/Toolbar/Toolbar.js +3 -11
- package/cjs/exported-related/groupBy.js +0 -1
- package/cjs/helpers/addCellData.js +2 -6
- package/cjs/helpers/cellPadding.js +3 -5
- package/cjs/helpers/columnsToGrid.js +1 -3
- package/cjs/helpers/sizeToCss.js +1 -1
- package/cjs/hooks/useRecoverFocusCol.js +1 -8
- package/cjs/parts/Cells/Cell.js +3 -4
- package/cjs/parts/Cells/useCellStyle.js +2 -2
- package/cjs/parts/DnDHandle.js +2 -3
- package/cjs/parts/DropIndicator.js +8 -2
- package/cjs/parts/FilterBar/FiltersBar.js +5 -8
- package/cjs/parts/FilterBar/components/DateRangePill.js +4 -7
- package/cjs/parts/FilterBar/components/DateSwitcherPill.js +4 -7
- package/cjs/parts/FilterBar/components/MultiSelectPill.js +2 -5
- package/cjs/parts/FilterBar/components/NumberRangePill.js +3 -7
- package/cjs/parts/FilterBar/components/SelectPill.js +1 -3
- package/cjs/parts/FilterBar/components/SingleDatePill.js +1 -4
- package/cjs/parts/Filters/index.js +4 -4
- package/cjs/parts/Headers/HeaderCell.js +10 -13
- package/cjs/parts/Headers/HeaderCellGroup.js +5 -8
- package/cjs/parts/Headers/HeaderCellTitle.js +0 -1
- package/cjs/parts/Headers/HeaderResizer.js +3 -8
- package/cjs/parts/Headers/useHeaderCellConfig.js +1 -1
- package/cjs/parts/Headers/useHeaderCellHandlers.js +2 -4
- package/cjs/parts/HoC/withConditionalDnDColumnContext.js +2 -3
- package/cjs/parts/HoC/withConditionalDnDRowContext.js +1 -2
- package/cjs/parts/Row.js +0 -1
- package/cjs/parts/RowLoading.js +0 -1
- package/cjs/parts/RowVariants/RowVariantHeader.js +0 -1
- package/cjs/parts/RowVariants/index.js +3 -3
- package/cjs/parts/Rows.js +2 -2
- package/cjs/parts/TableContent.js +2 -3
- package/cjs/parts/VirtualRowsList.js +0 -1
- package/cjs/redux/reducers/headersReducers/logic.js +2 -2
- package/cjs/styled.js +50 -20
- package/esm/addons/Columns/ColumnExpand/ColumnExpand.js +3 -6
- package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +1 -2
- package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +1 -2
- package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +2 -3
- package/esm/addons/Editables/DateEditableCell/DateEditableCell.js +0 -1
- package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +0 -1
- package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +7 -10
- package/esm/addons/Filters/Components/DateRangeFilter/index.js +0 -1
- package/esm/addons/Filters/Components/DateSwitcherFilter/index.js +0 -1
- package/esm/addons/Filters/Components/NumberRangeFilter/index.js +7 -10
- package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +0 -1
- package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +1 -2
- package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +0 -1
- package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +0 -1
- package/esm/addons/Filters/Components/SelectFilter/utils.js +4 -9
- package/esm/addons/Filters/Components/SingleDateFilter/index.js +0 -1
- package/esm/configs/useDatatableConfig.js +1 -4
- package/esm/configs/useRowFlattenization.js +6 -8
- package/esm/configs/useTableColsWithAddons.js +4 -5
- package/esm/exported-related/EditableCell.js +1 -4
- package/esm/exported-related/FilterPopover.js +5 -12
- package/esm/exported-related/Filters/dateRangeFilterFn.js +1 -2
- package/esm/exported-related/Filters/numberRangeFilterFn.js +1 -1
- package/esm/exported-related/Filters/singleDateFilterFn.js +0 -1
- package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +5 -8
- package/esm/exported-related/RowRenderer/index.js +0 -1
- package/esm/exported-related/RowRenderer/useRowRendererHandlers.js +1 -4
- package/esm/exported-related/RowRenderer/useRowStyle.js +0 -1
- package/esm/exported-related/Toolbar/Toolbar.js +3 -11
- package/esm/exported-related/groupBy.js +0 -1
- package/esm/helpers/addCellData.js +2 -6
- package/esm/helpers/cellPadding.js +3 -5
- package/esm/helpers/columnsToGrid.js +1 -3
- package/esm/helpers/sizeToCss.js +1 -1
- package/esm/hooks/useRecoverFocusCol.js +1 -8
- package/esm/parts/Cells/Cell.js +3 -4
- package/esm/parts/Cells/useCellStyle.js +2 -2
- package/esm/parts/DnDHandle.js +2 -3
- package/esm/parts/DropIndicator.js +8 -2
- package/esm/parts/FilterBar/FiltersBar.js +4 -7
- package/esm/parts/FilterBar/components/DateRangePill.js +4 -7
- package/esm/parts/FilterBar/components/DateSwitcherPill.js +4 -7
- package/esm/parts/FilterBar/components/MultiSelectPill.js +2 -5
- package/esm/parts/FilterBar/components/NumberRangePill.js +3 -7
- package/esm/parts/FilterBar/components/SelectPill.js +1 -3
- package/esm/parts/FilterBar/components/SingleDatePill.js +1 -4
- package/esm/parts/Filters/index.js +6 -6
- package/esm/parts/Headers/HeaderCell.js +10 -13
- package/esm/parts/Headers/HeaderCellGroup.js +5 -8
- package/esm/parts/Headers/HeaderCellTitle.js +0 -1
- package/esm/parts/Headers/HeaderResizer.js +3 -8
- package/esm/parts/Headers/useHeaderCellConfig.js +1 -1
- package/esm/parts/Headers/useHeaderCellHandlers.js +2 -4
- package/esm/parts/HoC/withConditionalDnDColumnContext.js +2 -3
- package/esm/parts/HoC/withConditionalDnDRowContext.js +1 -2
- package/esm/parts/Row.js +0 -1
- package/esm/parts/RowLoading.js +0 -1
- package/esm/parts/RowVariants/RowVariantHeader.js +0 -1
- package/esm/parts/RowVariants/index.js +2 -2
- package/esm/parts/Rows.js +2 -2
- package/esm/parts/TableContent.js +0 -1
- package/esm/parts/VirtualRowsList.js +0 -1
- package/esm/redux/reducers/headersReducers/logic.js +2 -2
- package/esm/styled.js +50 -20
- package/package.json +19 -19
|
@@ -32,7 +32,6 @@ var useHeaderCellHandlers = require('./useHeaderCellHandlers.js');
|
|
|
32
32
|
var useHeaderCellConfig = require('./useHeaderCellConfig.js');
|
|
33
33
|
var useRecoverFocusCol = require('../../hooks/useRecoverFocusCol.js');
|
|
34
34
|
var constants = require('../../configs/constants.js');
|
|
35
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
36
35
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
37
36
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
38
37
|
require('react-virtual');
|
|
@@ -60,26 +59,24 @@ const buildScreenReaderInstructions = (colSpan, draggable, filterable, sortable)
|
|
|
60
59
|
let message = sortable ? 'You can sort the data ascendingly/descendingly by this column. Use the up / down arrows keys to do so' : '';
|
|
61
60
|
|
|
62
61
|
if (draggable && filterable) {
|
|
63
|
-
message =
|
|
62
|
+
message = `This column is draggable and filterable. To enable these interactions press the enter key. ${message}`;
|
|
64
63
|
} else if (draggable || filterable) {
|
|
65
|
-
message =
|
|
64
|
+
message = `This column is ${draggable ? 'draggable' : 'filterable'}. To enable this interaction press the enter key. ${message}`;
|
|
66
65
|
}
|
|
67
66
|
|
|
68
|
-
return
|
|
67
|
+
return `${preffix}${message}`;
|
|
69
68
|
};
|
|
70
69
|
|
|
71
70
|
function mapStateToProps(state, ownProps) {
|
|
72
|
-
var _state$headers;
|
|
73
|
-
|
|
74
71
|
return {
|
|
75
|
-
reduxHeader:
|
|
72
|
+
reduxHeader: state.headers?.[ownProps.column.id]
|
|
76
73
|
};
|
|
77
74
|
}
|
|
78
75
|
|
|
79
76
|
const connector = reactRedux.connect(mapStateToProps);
|
|
80
77
|
|
|
81
78
|
const HeaderCellComp = props => {
|
|
82
|
-
var _FilterMapItem
|
|
79
|
+
var _FilterMapItem;
|
|
83
80
|
|
|
84
81
|
const {
|
|
85
82
|
reduxHeader,
|
|
@@ -146,10 +143,10 @@ const HeaderCellComp = props => {
|
|
|
146
143
|
hideFocus: isDragging
|
|
147
144
|
}, void 0, /*#__PURE__*/_jsx__default["default"](DnDHandle, {
|
|
148
145
|
innerRef: dragHandleRef,
|
|
149
|
-
isReachable: reduxHeader
|
|
146
|
+
isReachable: reduxHeader?.withTabStops,
|
|
150
147
|
id: column.id,
|
|
151
148
|
isDragOverlay: isDragOverlay
|
|
152
|
-
}, column.id))), [column.id, isDragOverlay, isDragging, reduxHeader
|
|
149
|
+
}, column.id))), [column.id, isDragOverlay, isDragging, reduxHeader?.withTabStops]);
|
|
153
150
|
const handlers = useHeaderCellHandlers.useHeaderCellHandlers({
|
|
154
151
|
hasFilter,
|
|
155
152
|
patchHeader,
|
|
@@ -166,11 +163,11 @@ const HeaderCellComp = props => {
|
|
|
166
163
|
}, handlers), {}, {
|
|
167
164
|
role: colSpan === 1 ? 'columnheader' : 'group',
|
|
168
165
|
colSpan: colSpan,
|
|
169
|
-
"aria-describedby":
|
|
166
|
+
"aria-describedby": `${column.id}-instructions` // eslint-disable-next-line no-nested-ternary
|
|
170
167
|
,
|
|
171
168
|
"aria-sort": hasSortingCaret ? column.isSortedDesc ? 'descending' : 'ascending' : 'none',
|
|
172
169
|
"data-testid": constants.DATA_TESTID.DATA_TABLE_HEADER,
|
|
173
|
-
isFirstRowGroup: !!
|
|
170
|
+
isFirstRowGroup: !!flattenedData[0]?.original?.dimsumHeaderValue,
|
|
174
171
|
tabIndex: column.isFocuseable === false ? -1 : 0,
|
|
175
172
|
isDragOverlay: isDragOverlay,
|
|
176
173
|
isDraggingActive: draggableProps && draggableProps.active,
|
|
@@ -187,7 +184,7 @@ const HeaderCellComp = props => {
|
|
|
187
184
|
}), rightIcons, isResizeable && column.canResize !== false && /*#__PURE__*/_jsx__default["default"](HeaderResizer.HeaderResizer, {
|
|
188
185
|
column: column
|
|
189
186
|
})), /*#__PURE__*/_jsx__default["default"]("span", {
|
|
190
|
-
id:
|
|
187
|
+
id: `${column.id}-instructions`,
|
|
191
188
|
style: {
|
|
192
189
|
display: 'none'
|
|
193
190
|
},
|
|
@@ -20,7 +20,6 @@ var EmptyChildrenGroup = require('./EmptyChildrenGroup.js');
|
|
|
20
20
|
var constants = require('../../configs/constants.js');
|
|
21
21
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
22
22
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
23
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
24
23
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
25
24
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
26
25
|
require('react-virtual');
|
|
@@ -52,7 +51,7 @@ const StyledWrapper = /*#__PURE__*/styled__default["default"](Grid.Grid).withCon
|
|
|
52
51
|
let {
|
|
53
52
|
shouldDropOneLevel
|
|
54
53
|
} = _ref;
|
|
55
|
-
return shouldDropOneLevel ?
|
|
54
|
+
return shouldDropOneLevel ? `top: 50%; height: 50%;` : '';
|
|
56
55
|
}, props => props.isDragOverlay ? 'fit-content' : '100%', props => props.gridColumn, props => props.isDragging ? props.theme.colors.neutral['080'] : 'white', props => props.isDragging ? 0.8 : 1, props => props.isDragOverlay ? 'rgba(0,0,0,0.5)' : 'transparent', _ref2 => {
|
|
57
56
|
let {
|
|
58
57
|
isFirst
|
|
@@ -61,8 +60,6 @@ const StyledWrapper = /*#__PURE__*/styled__default["default"](Grid.Grid).withCon
|
|
|
61
60
|
}, props => props.theme.colors.neutral['080']);
|
|
62
61
|
|
|
63
62
|
const HeaderCellGroupComp = _ref3 => {
|
|
64
|
-
var _children$length;
|
|
65
|
-
|
|
66
63
|
let {
|
|
67
64
|
header,
|
|
68
65
|
isDragOverlay,
|
|
@@ -82,10 +79,10 @@ const HeaderCellGroupComp = _ref3 => {
|
|
|
82
79
|
const isDragging = draggableProps && draggableProps.isDragging || isDraggingParent;
|
|
83
80
|
const dropIndicatorPosition = draggableProps && draggableProps.shouldShowDropIndicatorPosition && draggableProps.dropIndicatorPosition;
|
|
84
81
|
const ChildGroup = isDragOverlay ? HeaderCellGroup : HeaderCellGroupSortable;
|
|
85
|
-
const colSpan =
|
|
82
|
+
const colSpan = children?.length ?? 1;
|
|
86
83
|
return /*#__PURE__*/jsxRuntime.jsxs(StyledWrapper, {
|
|
87
84
|
ref: draggableProps ? draggableProps.setNodeRef : null,
|
|
88
|
-
gridColumn: isDragOverlay ? 'auto' :
|
|
85
|
+
gridColumn: isDragOverlay ? 'auto' : `span ${colSpan}`,
|
|
89
86
|
isDragOverlay: isDragOverlay,
|
|
90
87
|
isDragging: isDragging,
|
|
91
88
|
cols: ['auto'],
|
|
@@ -96,7 +93,7 @@ const HeaderCellGroupComp = _ref3 => {
|
|
|
96
93
|
column: header,
|
|
97
94
|
isDragOverlay: isDragOverlay,
|
|
98
95
|
colSpan: colSpan
|
|
99
|
-
}), !!
|
|
96
|
+
}), !!children?.length && !isDragOverlay && /*#__PURE__*/_jsx__default["default"](SortableHeaderCell.SortableHeaderCell, {
|
|
100
97
|
items: children,
|
|
101
98
|
isDragOverlay: isDragOverlay
|
|
102
99
|
}, void 0, children.map((h, index) => /*#__PURE__*/_jsx__default["default"](ChildGroup, {
|
|
@@ -106,7 +103,7 @@ const HeaderCellGroupComp = _ref3 => {
|
|
|
106
103
|
isLast: index === children.length - 1,
|
|
107
104
|
isFirst: index === 0,
|
|
108
105
|
level: level + 1
|
|
109
|
-
}, h.id))),
|
|
106
|
+
}, h.id))), children?.length && isDragOverlay && (_EmptyChildrenGroup || (_EmptyChildrenGroup = /*#__PURE__*/_jsx__default["default"](EmptyChildrenGroup.EmptyChildrenGroup, {}))), /*#__PURE__*/_jsx__default["default"](DropIndicator, {
|
|
110
107
|
vertical: true,
|
|
111
108
|
dropIndicatorPosition: dropIndicatorPosition,
|
|
112
109
|
isLast: isLast && isDragging
|
|
@@ -10,7 +10,6 @@ var constants = require('../../configs/constants.js');
|
|
|
10
10
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
11
11
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
12
12
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
13
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
14
13
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
15
14
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
16
15
|
require('react-virtual');
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
6
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
7
6
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
8
7
|
require('core-js/modules/esnext.iterator.map.js');
|
|
9
8
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
@@ -42,11 +41,9 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
42
41
|
|
|
43
42
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
44
43
|
|
|
45
|
-
const narrow = (value, min, max) => Math.min(Math.max(value, min
|
|
44
|
+
const narrow = (value, min, max) => Math.min(Math.max(value, min ?? 30), max ?? Infinity);
|
|
46
45
|
|
|
47
46
|
const HeaderResizer = _ref => {
|
|
48
|
-
var _column$width;
|
|
49
|
-
|
|
50
47
|
let {
|
|
51
48
|
column
|
|
52
49
|
} = _ref;
|
|
@@ -60,7 +57,7 @@ const HeaderResizer = _ref => {
|
|
|
60
57
|
}
|
|
61
58
|
} = React.useContext(DataTableContext["default"]);
|
|
62
59
|
const [isResizing, setIsResizing] = React.useState(false);
|
|
63
|
-
const [nextWidth, setNextWidth] = React.useState(
|
|
60
|
+
const [nextWidth, setNextWidth] = React.useState(column.width ?? 150);
|
|
64
61
|
const visibleColumnsCopy = React.useMemo(() => visibleColumns.map(col => _objectSpread({}, col)), [visibleColumns]);
|
|
65
62
|
React.useEffect(() => {
|
|
66
63
|
const realColumnIndex = visibleColumnsCopy.findIndex(visibleColumn => visibleColumn.id === column.id);
|
|
@@ -72,9 +69,7 @@ const HeaderResizer = _ref => {
|
|
|
72
69
|
setIsResizing(true);
|
|
73
70
|
}, []);
|
|
74
71
|
const onResizeHandler = React.useCallback(e => {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
const delta = ('clientX' in e ? e.clientX : e.touches[0].clientX) - ((_ref$current$getBound = (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.getBoundingClientRect().x) !== null && _ref$current$getBound !== void 0 ? _ref$current$getBound : 0); // delta in pixels
|
|
72
|
+
const delta = ('clientX' in e ? e.clientX : e.touches[0].clientX) - (ref.current?.getBoundingClientRect().x ?? 0); // delta in pixels
|
|
78
73
|
|
|
79
74
|
const realColumnIndex = visibleColumnsCopy.findIndex(visibleColumn => visibleColumn.id === column.id);
|
|
80
75
|
const widthWithDelta = narrow(nextWidth + delta, visibleColumnsCopy[realColumnIndex].minWidth, visibleColumnsCopy[realColumnIndex].maxWidth);
|
|
@@ -20,7 +20,7 @@ const useHeaderCellConfig = _ref => {
|
|
|
20
20
|
const hasSortingCaret = column.canSort && typeof column.isSortedDesc === 'boolean';
|
|
21
21
|
const hasRightIcons = !isDragOverlay && (hasSortingCaret || hasFilter);
|
|
22
22
|
const isDragging = draggableProps && draggableProps.isDragging;
|
|
23
|
-
const shouldShowDnD = hasDnD && (
|
|
23
|
+
const shouldShowDnD = hasDnD && (reduxHeader?.showDnDHandle && draggableProps && !draggableProps.active || draggableProps && draggableProps.isDragging || isDragOverlay); // Column definition
|
|
24
24
|
|
|
25
25
|
const hCols = ['auto'];
|
|
26
26
|
if (hasRightIcons) hCols.push('min-content');
|
|
@@ -45,9 +45,7 @@ const useHeaderCellHandlers = _ref => {
|
|
|
45
45
|
patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));
|
|
46
46
|
}, [column.id, hasDnD, hasFilter, patchHeader, reduxHeader]);
|
|
47
47
|
const onMouseLeave = React.useCallback(() => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
if (!(headerRef !== null && headerRef !== void 0 && (_headerRef$current = headerRef.current) !== null && _headerRef$current !== void 0 && _headerRef$current.contains(document.activeElement))) {
|
|
48
|
+
if (!headerRef?.current?.contains(document.activeElement)) {
|
|
51
49
|
patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));
|
|
52
50
|
}
|
|
53
51
|
}, [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader]);
|
|
@@ -82,7 +80,7 @@ const useHeaderCellHandlers = _ref => {
|
|
|
82
80
|
}, [column.canSort, column.id, onColumnSortChange, patchHeader, reduxHeader, hasFilter, hasDnD, dragHandleRef, filterIconRef]);
|
|
83
81
|
const onFocus = React.useCallback(e => {
|
|
84
82
|
// Don't do anything if focus wasn't placed in the element (bubling issues)
|
|
85
|
-
if (e.target ===
|
|
83
|
+
if (e.target === headerRef?.current) {
|
|
86
84
|
patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));
|
|
87
85
|
}
|
|
88
86
|
}, [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader]);
|
|
@@ -7,7 +7,6 @@ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
|
7
7
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
8
8
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
9
9
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
10
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
11
10
|
require('core-js/modules/esnext.async-iterator.find.js');
|
|
12
11
|
require('core-js/modules/esnext.iterator.find.js');
|
|
13
12
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
@@ -94,11 +93,11 @@ const withConditionalDnDColumnContext = Component => props => {
|
|
|
94
93
|
onColumnsReorder(newData, indexes);
|
|
95
94
|
}, [flattenedItems, onColumnsReorder]);
|
|
96
95
|
const onPreviewResetState = React.useCallback(() => {
|
|
97
|
-
const el = document.body.querySelector(
|
|
96
|
+
const el = document.body.querySelector(`[data-testid="${constants.DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}"]`);
|
|
98
97
|
if (el) el.onscroll = () => null;
|
|
99
98
|
}, []);
|
|
100
99
|
const onPreviewDragStart = React.useCallback(() => {
|
|
101
|
-
const el = document.body.querySelector(
|
|
100
|
+
const el = document.body.querySelector(`[data-testid="${constants.DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}"]`);
|
|
102
101
|
|
|
103
102
|
if (el) {
|
|
104
103
|
const y = el.scrollTop;
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
6
6
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
7
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
8
7
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
9
8
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
10
9
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
@@ -64,7 +63,7 @@ const withConditionalDnDRowContext = Component => props => {
|
|
|
64
63
|
// otherwise append it to the new user data
|
|
65
64
|
if (row.parentId) {
|
|
66
65
|
const parentNode = nodes[row.parentId];
|
|
67
|
-
if (parentNode
|
|
66
|
+
if (parentNode?.subRows) parentNode.subRows.push(row.original);else parentNode.subRows = [row.original];
|
|
68
67
|
} else newUserData.push(row.original);
|
|
69
68
|
}); // Tell the user that the order has change, he can chose to commit it or not
|
|
70
69
|
|
package/cjs/parts/Row.js
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
6
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
7
6
|
var React = require('react');
|
|
8
7
|
var reactRedux = require('react-redux');
|
|
9
8
|
var DataTableContext = require('../DataTableContext.js');
|
package/cjs/parts/RowLoading.js
CHANGED
|
@@ -9,7 +9,6 @@ var constants = require('../configs/constants.js');
|
|
|
9
9
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
10
10
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
11
11
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
12
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
13
12
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
14
13
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
15
14
|
require('react-virtual');
|
|
@@ -18,7 +18,6 @@ require('core-js/modules/esnext.async-iterator.filter.js');
|
|
|
18
18
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
19
19
|
require('@elliemae/ds-form');
|
|
20
20
|
var constants = require('../../configs/constants.js');
|
|
21
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
22
21
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
23
22
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
24
23
|
require('react-virtual');
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
6
|
+
require('core-js/modules/es.error.cause.js');
|
|
5
7
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
6
8
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
9
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
8
10
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
9
11
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
10
|
-
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
11
12
|
require('react');
|
|
12
13
|
require('@babel/runtime/helpers/jsx');
|
|
13
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
14
14
|
require('@elliemae/ds-button');
|
|
15
15
|
require('@elliemae/ds-popperjs');
|
|
16
16
|
require('styled-components');
|
|
@@ -78,7 +78,7 @@ const RowVariantMapItem = props => {
|
|
|
78
78
|
|
|
79
79
|
if (typeof variant === 'string') {
|
|
80
80
|
if (!(variant in RowVariantMapper)) {
|
|
81
|
-
throw new Error(
|
|
81
|
+
throw new Error(`${variant} is not an out-of-the-box row variant`);
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
Component = RowVariantMapper[variant];
|
package/cjs/parts/Rows.js
CHANGED
|
@@ -51,12 +51,12 @@ const Rows = () => {
|
|
|
51
51
|
addCellData.addCellData(row, visibleColumns);
|
|
52
52
|
const style = {
|
|
53
53
|
position: 'absolute',
|
|
54
|
-
top:
|
|
54
|
+
top: `${start}px`,
|
|
55
55
|
left: 0,
|
|
56
56
|
width: totalColumnsWidth
|
|
57
57
|
};
|
|
58
58
|
const rowProps = {
|
|
59
|
-
key:
|
|
59
|
+
key: `ds-table-row-${row.uid}`,
|
|
60
60
|
row,
|
|
61
61
|
measureRef,
|
|
62
62
|
index,
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
|
-
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
5
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
6
3
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
7
4
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
8
5
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
9
6
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
10
7
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
8
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
9
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
11
10
|
var React = require('react');
|
|
12
11
|
var reactRedux = require('react-redux');
|
|
13
12
|
var styled = require('../styled.js');
|
|
@@ -17,7 +17,6 @@ var constants = require('../configs/constants.js');
|
|
|
17
17
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
18
18
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
19
19
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
20
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
21
20
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
22
21
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
23
22
|
require('react-virtual');
|
|
@@ -18,7 +18,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
18
18
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
19
19
|
|
|
20
20
|
const patchUpdateOneHeader = (payload, state) => {
|
|
21
|
-
state[payload.headerId] = _objectSpread(_objectSpread({},
|
|
21
|
+
state[payload.headerId] = _objectSpread(_objectSpread({}, state?.[payload.headerId] || {}), payload.newHeader);
|
|
22
22
|
};
|
|
23
23
|
const patchHeaderFilterButtonAndMenu = (_ref, state) => {
|
|
24
24
|
let {
|
|
@@ -29,7 +29,7 @@ const patchHeaderFilterButtonAndMenu = (_ref, state) => {
|
|
|
29
29
|
hideFilterMenu: newState,
|
|
30
30
|
hideFilterButton: newState
|
|
31
31
|
};
|
|
32
|
-
state[headerId] = _objectSpread(_objectSpread({},
|
|
32
|
+
state[headerId] = _objectSpread(_objectSpread({}, state?.[headerId] || {}), updatedState);
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
exports.patchHeaderFilterButtonAndMenu = patchHeaderFilterButtonAndMenu;
|
package/cjs/styled.js
CHANGED
|
@@ -16,7 +16,6 @@ var cellPadding = require('./helpers/cellPadding.js');
|
|
|
16
16
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
17
17
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
18
18
|
require('react');
|
|
19
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
20
19
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
21
20
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
22
21
|
require('react-virtual');
|
|
@@ -44,7 +43,19 @@ const styledFocusCss = _ref => {
|
|
|
44
43
|
let {
|
|
45
44
|
theme
|
|
46
45
|
} = _ref;
|
|
47
|
-
return
|
|
46
|
+
return `
|
|
47
|
+
&:after {
|
|
48
|
+
display: block;
|
|
49
|
+
content: ' ';
|
|
50
|
+
position: absolute;
|
|
51
|
+
top: 0;
|
|
52
|
+
left: 0;
|
|
53
|
+
right: 0;
|
|
54
|
+
bottom: 0;
|
|
55
|
+
border: 2px solid ${theme.colors.brand[700]};
|
|
56
|
+
pointer-events: none;
|
|
57
|
+
z-index: ${zIndexInternalConfig.ZIndexDataTable.FOCUS_BORDER};
|
|
58
|
+
}`;
|
|
48
59
|
};
|
|
49
60
|
|
|
50
61
|
const StyledFocusWithin = /*#__PURE__*/styled__default["default"](Grid__default["default"]).withConfig({
|
|
@@ -52,15 +63,7 @@ const StyledFocusWithin = /*#__PURE__*/styled__default["default"](Grid__default[
|
|
|
52
63
|
})([":focus-within{", "}"], props => props.hideFocus ? '' : styledFocusCss(props));
|
|
53
64
|
const StyledDataTableWrapper = /*#__PURE__*/styled__default["default"].div.withConfig({
|
|
54
65
|
componentId: "sc-38sgfo-1"
|
|
55
|
-
})(["width:", ";height:", ";user-select:", ";"], props => {
|
|
56
|
-
var _props$width;
|
|
57
|
-
|
|
58
|
-
return sizeToCss.sizeToCss((_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : ' 100%');
|
|
59
|
-
}, props => {
|
|
60
|
-
var _props$height;
|
|
61
|
-
|
|
62
|
-
return sizeToCss.sizeToCss((_props$height = props.height) !== null && _props$height !== void 0 ? _props$height : ' 100%');
|
|
63
|
-
}, _ref2 => {
|
|
66
|
+
})(["width:", ";height:", ";user-select:", ";"], props => sizeToCss.sizeToCss(props.width ?? ' 100%'), props => sizeToCss.sizeToCss(props.height ?? ' 100%'), _ref2 => {
|
|
64
67
|
let {
|
|
65
68
|
noSelectionAllowed
|
|
66
69
|
} = _ref2;
|
|
@@ -73,7 +76,10 @@ const StyledTableWrapper = /*#__PURE__*/styled__default["default"].div.withConfi
|
|
|
73
76
|
width = '100%',
|
|
74
77
|
height = '100%'
|
|
75
78
|
} = _ref3;
|
|
76
|
-
return
|
|
79
|
+
return `
|
|
80
|
+
width: ${sizeToCss.sizeToCss(width)};
|
|
81
|
+
height: ${sizeToCss.sizeToCss(height)};
|
|
82
|
+
`;
|
|
77
83
|
});
|
|
78
84
|
const StyledTableContentWrapper = /*#__PURE__*/styled__default["default"].div.withConfig({
|
|
79
85
|
componentId: "sc-38sgfo-3"
|
|
@@ -81,7 +87,9 @@ const StyledTableContentWrapper = /*#__PURE__*/styled__default["default"].div.wi
|
|
|
81
87
|
let {
|
|
82
88
|
height = 'auto'
|
|
83
89
|
} = _ref4;
|
|
84
|
-
return
|
|
90
|
+
return `
|
|
91
|
+
height: ${sizeToCss.sizeToCss(height)};
|
|
92
|
+
`;
|
|
85
93
|
});
|
|
86
94
|
const StyledVirtualListWrapper = /*#__PURE__*/styled__default["default"].div.withConfig({
|
|
87
95
|
componentId: "sc-38sgfo-4"
|
|
@@ -90,7 +98,10 @@ const StyledVirtualListWrapper = /*#__PURE__*/styled__default["default"].div.wit
|
|
|
90
98
|
height = 'auto',
|
|
91
99
|
width = '100%'
|
|
92
100
|
} = _ref5;
|
|
93
|
-
return
|
|
101
|
+
return `
|
|
102
|
+
height: ${sizeToCss.sizeToCss(height)};
|
|
103
|
+
width: ${sizeToCss.sizeToCss(width)};
|
|
104
|
+
`;
|
|
94
105
|
});
|
|
95
106
|
/**
|
|
96
107
|
* HEADER
|
|
@@ -104,11 +115,11 @@ const getGridTemplateColumnsStyle = _ref6 => {
|
|
|
104
115
|
if (!cols) return '';
|
|
105
116
|
|
|
106
117
|
if (colsLayoutStyle === 'fixed') {
|
|
107
|
-
const widthAttr = cols.map(col =>
|
|
108
|
-
return
|
|
118
|
+
const widthAttr = cols.map(col => `minmax(0, ${col})`).join(' ');
|
|
119
|
+
return `grid-template-columns: ${widthAttr}`;
|
|
109
120
|
}
|
|
110
121
|
|
|
111
|
-
return
|
|
122
|
+
return `grid-template-columns: ${cols.map(col => `minmax(0, ${col})`).join(' ')}`;
|
|
112
123
|
};
|
|
113
124
|
|
|
114
125
|
const StyledHeadWrapper = /*#__PURE__*/styled__default["default"].div.withConfig({
|
|
@@ -124,7 +135,21 @@ const StyledHeadTr = /*#__PURE__*/styled__default["default"](Grid__default["defa
|
|
|
124
135
|
|
|
125
136
|
const StyledHeadTh = /*#__PURE__*/styled__default["default"].div.withConfig({
|
|
126
137
|
componentId: "sc-38sgfo-7"
|
|
127
|
-
})(["min-height:24px;line-height:normal;font-weight:600;text-transform:uppercase;font-size:0.923rem;text-align:left;", " color:#353c46;min-height:1.84615rem;position:sticky;z-index:", ";display:flex;justify-content:space-between;box-sizing:border-box;outline:none;", ":focus{&:after{display:block;content:' ';position:absolute;top:0;left:0;right:0;bottom:0;border:2px solid ", ";pointer-events:none;z-index:", ";}}"], cellPadding.columnPadding, zIndexInternalConfig.ZIndexDataTable.HEADER_ROW, props => props.isDraggingActive ? '' :
|
|
138
|
+
})(["min-height:24px;line-height:normal;font-weight:600;text-transform:uppercase;font-size:0.923rem;text-align:left;", " color:#353c46;min-height:1.84615rem;position:sticky;z-index:", ";display:flex;justify-content:space-between;box-sizing:border-box;outline:none;", ":focus{&:after{display:block;content:' ';position:absolute;top:0;left:0;right:0;bottom:0;border:2px solid ", ";pointer-events:none;z-index:", ";}}"], cellPadding.columnPadding, zIndexInternalConfig.ZIndexDataTable.HEADER_ROW, props => props.isDraggingActive ? '' : `:hover {
|
|
139
|
+
&:after {
|
|
140
|
+
display: block;
|
|
141
|
+
content: ' ';
|
|
142
|
+
position: absolute;
|
|
143
|
+
top: 0;
|
|
144
|
+
left: 0;
|
|
145
|
+
right: 0;
|
|
146
|
+
bottom: 0;
|
|
147
|
+
border-bottom: 1px solid ${props.theme.colors.brand[700]};
|
|
148
|
+
pointer-events: none;
|
|
149
|
+
z-index: ${zIndexInternalConfig.ZIndexDataTable.FOCUS_BORDER};
|
|
150
|
+
}
|
|
151
|
+
cursor: pointer;
|
|
152
|
+
}`, props => props.theme.colors.brand[700], zIndexInternalConfig.ZIndexDataTable.FOCUS_BORDER);
|
|
128
153
|
const StyledHeaderRightIconsWrapper = /*#__PURE__*/styled__default["default"].div.withConfig({
|
|
129
154
|
componentId: "sc-38sgfo-8"
|
|
130
155
|
})(["height:100%;display:flex;align-items:center;max-height:24px;"]);
|
|
@@ -205,8 +230,13 @@ const StyledCellContainer = /*#__PURE__*/styled__default["default"](Grid__defaul
|
|
|
205
230
|
shouldDisplayHover,
|
|
206
231
|
theme
|
|
207
232
|
} = _ref13;
|
|
208
|
-
return shouldDisplayHover ?
|
|
209
|
-
|
|
233
|
+
return shouldDisplayHover ? `:hover {
|
|
234
|
+
background-color: ${theme.colors.brand[200]};
|
|
235
|
+
}` : '';
|
|
236
|
+
}, props => props.isDragOverlay ? 'rgba(0,0,0,0.5)' : 'transparent', props => props.isDragging ? 0.8 : 1, props => !props.selected ? '' : `
|
|
237
|
+
background-color: ${props.theme.colors.brand[200]};
|
|
238
|
+
border: 1px solid ${props.theme.colors.brand[500]};
|
|
239
|
+
`, props => props.disabled ? props.theme.colors.neutral['500'] : '#333333');
|
|
210
240
|
|
|
211
241
|
exports.GroupHeaderContainer = GroupHeaderContainer;
|
|
212
242
|
exports.GroupHeaderTitle = GroupHeaderTitle;
|
|
@@ -10,7 +10,6 @@ import { ArrowheadDown, ArrowheadRight, ArrowShortReturn } from '@elliemae/ds-ic
|
|
|
10
10
|
import styled from 'styled-components';
|
|
11
11
|
import { StyledFocusWithin } from '../../../styled.js';
|
|
12
12
|
import { DATA_TESTID } from '../../../configs/constants.js';
|
|
13
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
14
13
|
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
15
14
|
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
16
15
|
import 'react-virtual';
|
|
@@ -106,8 +105,6 @@ const expandRowColumn = {
|
|
|
106
105
|
}, void 0, GlobalExpandIcon));
|
|
107
106
|
},
|
|
108
107
|
Cell: _ref2 => {
|
|
109
|
-
var _row$original$subRows;
|
|
110
|
-
|
|
111
108
|
let {
|
|
112
109
|
cell,
|
|
113
110
|
row,
|
|
@@ -124,7 +121,7 @@ const expandRowColumn = {
|
|
|
124
121
|
} = ctx;
|
|
125
122
|
const uniqueId = row.uid;
|
|
126
123
|
const isExpanded = expandedRows[uniqueId];
|
|
127
|
-
const shouldPrintCaret =
|
|
124
|
+
const shouldPrintCaret = row.original.subRows?.length && row.depth === 0 || // only allows 1 level of expands
|
|
128
125
|
row.original.tableRowDetails || row.original.dimsumHeaderValue;
|
|
129
126
|
const onRowExpandHandler = useCallback(e => {
|
|
130
127
|
e.stopPropagation();
|
|
@@ -140,7 +137,7 @@ const expandRowColumn = {
|
|
|
140
137
|
const isDragging = draggableProps ? draggableProps.isDragging : false;
|
|
141
138
|
const isDragOverlay = dragAndDropRows && !draggableProps;
|
|
142
139
|
const indentStyle = useMemo(() => ({
|
|
143
|
-
marginLeft:
|
|
140
|
+
marginLeft: `${row.depth * 32}px`,
|
|
144
141
|
marginRight: '18px',
|
|
145
142
|
paddingLeft: '2px',
|
|
146
143
|
paddingRight: '2px',
|
|
@@ -151,7 +148,7 @@ const expandRowColumn = {
|
|
|
151
148
|
}), [row.depth]);
|
|
152
149
|
const rowProps = useMemo(() => ({
|
|
153
150
|
role: 'button',
|
|
154
|
-
key:
|
|
151
|
+
key: `${row.uid}-expand-button`,
|
|
155
152
|
title: 'Toggle Row Expanded',
|
|
156
153
|
onClick: onRowExpandHandler,
|
|
157
154
|
onKeyDown: e => {
|
|
@@ -8,7 +8,6 @@ import 'core-js/modules/esnext.iterator.filter.js';
|
|
|
8
8
|
import { useMemo, useCallback } from 'react';
|
|
9
9
|
import { DSCheckbox } from '@elliemae/ds-form';
|
|
10
10
|
import { DATA_TESTID } from '../../../configs/constants.js';
|
|
11
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
12
11
|
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
13
12
|
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
14
13
|
import 'react-virtual';
|
|
@@ -102,7 +101,7 @@ const multiSelectColumn = {
|
|
|
102
101
|
const {
|
|
103
102
|
uid
|
|
104
103
|
} = row;
|
|
105
|
-
const selectedState = selection
|
|
104
|
+
const selectedState = selection?.[uid];
|
|
106
105
|
const PureCheckboxCell = useMemo(() => /*#__PURE__*/_jsx(DSCheckbox, {
|
|
107
106
|
"data-testid": DATA_TESTID.DATA_TABLE_CHECKBOX,
|
|
108
107
|
title: "Toggle Row Selected",
|
|
@@ -6,7 +6,6 @@ import { DATA_TESTID } from '../../../configs/constants.js';
|
|
|
6
6
|
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
7
7
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
8
8
|
import 'core-js/modules/esnext.iterator.filter.js';
|
|
9
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
10
9
|
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
11
10
|
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
12
11
|
import 'react-virtual';
|
|
@@ -59,7 +58,7 @@ const singleSelectColumn = {
|
|
|
59
58
|
const {
|
|
60
59
|
uid
|
|
61
60
|
} = row;
|
|
62
|
-
const selectedState = selection
|
|
61
|
+
const selectedState = selection?.[uid];
|
|
63
62
|
const PureCheckBox = useMemo(() => /*#__PURE__*/_jsx(CenteredContent, {}, void 0, /*#__PURE__*/_jsx(StyledDSRadio // eslint-disable-next-line react/prop-types
|
|
64
63
|
, {
|
|
65
64
|
containerProps: {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
3
2
|
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
4
3
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
5
4
|
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
@@ -82,11 +81,11 @@ const ComboboxEditableCell = props => {
|
|
|
82
81
|
const handleOnBlur = useCallback(() => {
|
|
83
82
|
const property = columnId;
|
|
84
83
|
onCellValueChange({
|
|
85
|
-
value: value
|
|
84
|
+
value: value?.value,
|
|
86
85
|
property,
|
|
87
86
|
rowIndex: cell.row.index
|
|
88
87
|
});
|
|
89
|
-
}, [columnId, onCellValueChange, value
|
|
88
|
+
}, [columnId, onCellValueChange, value?.value, cell]);
|
|
90
89
|
return /*#__PURE__*/_jsx(EditableCell, {
|
|
91
90
|
StandardRender: DefaultCellRender,
|
|
92
91
|
EditableRenderer: /*#__PURE__*/_jsx(DSComboBox, {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
3
2
|
import { useContext, useState, useCallback } from 'react';
|
|
4
3
|
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
5
4
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
3
2
|
import { useContext, useState, useCallback } from 'react';
|
|
4
3
|
import styled from 'styled-components';
|
|
5
4
|
import 'core-js/modules/esnext.async-iterator.filter.js';
|