@elliemae/ds-data-table 2.4.2-rc.9 → 2.4.2
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 +7 -8
- package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +5 -6
- package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +5 -6
- 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 +7 -8
- package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +6 -7
- 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 +10 -33
- 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 +0 -1
- 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 +9 -12
- 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 +9 -9
- 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 +8 -8
- 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 +6 -7
- package/esm/addons/Editables/DateEditableCell/DateEditableCell.js +4 -5
- package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +4 -5
- 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 +6 -7
- package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +5 -6
- 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 +8 -30
- 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 +0 -1
- 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 +8 -11
- 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 +11 -11
- 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 +7 -7
- 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
|
@@ -14,8 +14,6 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
14
14
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
15
15
|
|
|
16
16
|
const NumberRangePill = _ref => {
|
|
17
|
-
var _value$from, _value$to;
|
|
18
|
-
|
|
19
17
|
let {
|
|
20
18
|
columnHeader,
|
|
21
19
|
column,
|
|
@@ -27,17 +25,15 @@ const NumberRangePill = _ref => {
|
|
|
27
25
|
nextRef
|
|
28
26
|
} = _ref;
|
|
29
27
|
const handleOnRemove = React.useCallback(() => {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if (prevRef !== null && prevRef !== void 0 && prevRef.current) prevRef.current.focus();else (_nextRef$current = nextRef.current) === null || _nextRef$current === void 0 ? void 0 : _nextRef$current.focus();
|
|
28
|
+
if (prevRef?.current) prevRef.current.focus();else nextRef.current?.focus();
|
|
33
29
|
onFiltersChange(filters.filter(filter => filter.id !== column));
|
|
34
30
|
}, [onFiltersChange, filters, column, prevRef, nextRef]);
|
|
35
|
-
return (
|
|
31
|
+
return (value?.from ?? '') !== '' && (value?.to ?? '') !== '' ? /*#__PURE__*/_jsx__default["default"](dsPills.DSPillGroupV2, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsPills.DSPillV2, {
|
|
36
32
|
type: "label",
|
|
37
33
|
label: columnHeader
|
|
38
34
|
}), /*#__PURE__*/_jsx__default["default"](dsPills.DSPillV2, {
|
|
39
35
|
type: "removable",
|
|
40
|
-
label:
|
|
36
|
+
label: `${value.from} - ${value.to}`,
|
|
41
37
|
onRemove: handleOnRemove,
|
|
42
38
|
innerRef: innerRef
|
|
43
39
|
})) : null;
|
|
@@ -25,9 +25,7 @@ const SelectPill = _ref => {
|
|
|
25
25
|
nextRef
|
|
26
26
|
} = _ref;
|
|
27
27
|
const handleOnRemove = React.useCallback(() => {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
if (prevRef !== null && prevRef !== void 0 && prevRef.current) prevRef.current.focus();else (_nextRef$current = nextRef.current) === null || _nextRef$current === void 0 ? void 0 : _nextRef$current.focus();
|
|
28
|
+
if (prevRef?.current) prevRef.current.focus();else nextRef.current?.focus();
|
|
31
29
|
onFiltersChange(filters.filter(filter => filter.id !== column));
|
|
32
30
|
}, [onFiltersChange, filters, prevRef, nextRef, column]);
|
|
33
31
|
return value ? /*#__PURE__*/_jsx__default["default"](dsPills.DSPillGroupV2, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsPills.DSPillV2, {
|
|
@@ -6,7 +6,6 @@ var _jsx = require('@babel/runtime/helpers/jsx');
|
|
|
6
6
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
7
7
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
8
8
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
9
|
-
require('core-js/modules/es.string.replace.js');
|
|
10
9
|
var React = require('react');
|
|
11
10
|
var dsPills = require('@elliemae/ds-pills');
|
|
12
11
|
|
|
@@ -26,9 +25,7 @@ const SingleDatePill = _ref => {
|
|
|
26
25
|
nextRef
|
|
27
26
|
} = _ref;
|
|
28
27
|
const handleOnRemove = React.useCallback(() => {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
if (prevRef !== null && prevRef !== void 0 && prevRef.current) prevRef.current.focus();else (_nextRef$current = nextRef.current) === null || _nextRef$current === void 0 ? void 0 : _nextRef$current.focus();
|
|
28
|
+
if (prevRef?.current) prevRef.current.focus();else nextRef.current?.focus();
|
|
32
29
|
onFiltersChange(filters.filter(filter => filter.id !== column));
|
|
33
30
|
}, [onFiltersChange, filters, prevRef, nextRef, column]);
|
|
34
31
|
return value ? /*#__PURE__*/_jsx__default["default"](dsPills.DSPillGroupV2, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsPills.DSPillV2, {
|
|
@@ -8,7 +8,7 @@ require('core-js/modules/esnext.iterator.constructor.js');
|
|
|
8
8
|
require('core-js/modules/esnext.iterator.find.js');
|
|
9
9
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
10
10
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
11
|
-
require('core-js/modules/
|
|
11
|
+
require('core-js/modules/es.error.cause.js');
|
|
12
12
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
13
13
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
14
14
|
var React = require('react');
|
|
@@ -25,25 +25,25 @@ require('@elliemae/ds-popperjs');
|
|
|
25
25
|
require('styled-components');
|
|
26
26
|
require('../../redux/reducers/index.js');
|
|
27
27
|
require('../../configs/constants.js');
|
|
28
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
29
|
+
require('../../styled.js');
|
|
30
|
+
require('../../DataTableContext.js');
|
|
31
|
+
require('@elliemae/ds-icons');
|
|
32
|
+
require('@elliemae/ds-utilities');
|
|
28
33
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
29
34
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
30
35
|
require('react-virtual');
|
|
31
36
|
require('../../configs/useRowFlattenization.js');
|
|
32
37
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
33
38
|
require('core-js/modules/esnext.iterator.map.js');
|
|
34
|
-
require('@elliemae/ds-icons');
|
|
35
|
-
require('../../styled.js');
|
|
36
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
37
39
|
require('@elliemae/ds-form');
|
|
38
40
|
require('../TableContent.js');
|
|
39
41
|
require('@elliemae/ds-grid');
|
|
40
42
|
require('@elliemae/ds-circular-progress-indicator');
|
|
41
43
|
require('@elliemae/ds-system');
|
|
42
|
-
require('../../DataTableContext.js');
|
|
43
44
|
require('../Row.js');
|
|
44
45
|
require('../Footer.js');
|
|
45
46
|
require('../HoC/SortableItemContext.js');
|
|
46
|
-
require('@elliemae/ds-utilities');
|
|
47
47
|
require('uid');
|
|
48
48
|
var FilterTypes = require('../../exported-related/FilterTypes.js');
|
|
49
49
|
require('../../exported-related/Filters/applyOutOfTheBoxFilters.js');
|
|
@@ -100,7 +100,7 @@ const FilterMapItem = props => {
|
|
|
100
100
|
}, [column.id, filters, onFiltersChange]);
|
|
101
101
|
|
|
102
102
|
const filterProps = _objectSpread(_objectSpread({}, props), {}, {
|
|
103
|
-
filterValue: filterValue
|
|
103
|
+
filterValue: filterValue?.value,
|
|
104
104
|
onValueChange,
|
|
105
105
|
patchHeader,
|
|
106
106
|
patchHeaderFilterButtonAndMenu
|
|
@@ -108,7 +108,7 @@ const FilterMapItem = props => {
|
|
|
108
108
|
|
|
109
109
|
if (typeof column.filter === 'string') {
|
|
110
110
|
if (!(column.filter in FilterMapper)) {
|
|
111
|
-
throw new Error(
|
|
111
|
+
throw new Error(`column.filter must be a supported out-of-the-box filter in ${column}`);
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
const FilterComp = FilterMapper[column.filter];
|
|
@@ -117,7 +117,7 @@ const FilterMapItem = props => {
|
|
|
117
117
|
|
|
118
118
|
if (column.Filter) {
|
|
119
119
|
if (typeof column.Filter !== 'function') {
|
|
120
|
-
throw new Error(
|
|
120
|
+
throw new Error(`column.Filter must be a component`);
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
const FilterComp = column.Filter;
|
|
@@ -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,39 +2,39 @@
|
|
|
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');
|
|
17
17
|
require('../../redux/reducers/index.js');
|
|
18
18
|
require('../../configs/constants.js');
|
|
19
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
20
|
+
require('../../styled.js');
|
|
21
|
+
require('../../DataTableContext.js');
|
|
22
|
+
require('@elliemae/ds-icons');
|
|
23
|
+
require('@elliemae/ds-utilities');
|
|
19
24
|
require('core-js/modules/esnext.async-iterator.reduce.js');
|
|
20
25
|
require('core-js/modules/esnext.iterator.reduce.js');
|
|
21
26
|
require('react-virtual');
|
|
22
27
|
require('../../configs/useRowFlattenization.js');
|
|
23
28
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
24
29
|
require('core-js/modules/esnext.iterator.map.js');
|
|
25
|
-
require('@elliemae/ds-icons');
|
|
26
|
-
require('../../styled.js');
|
|
27
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
28
30
|
require('@elliemae/ds-form');
|
|
29
31
|
require('../TableContent.js');
|
|
30
32
|
require('@elliemae/ds-grid');
|
|
31
33
|
require('@elliemae/ds-circular-progress-indicator');
|
|
32
34
|
require('@elliemae/ds-system');
|
|
33
|
-
require('../../DataTableContext.js');
|
|
34
35
|
require('../Row.js');
|
|
35
36
|
require('../Footer.js');
|
|
36
37
|
require('../HoC/SortableItemContext.js');
|
|
37
|
-
require('@elliemae/ds-utilities');
|
|
38
38
|
require('uid');
|
|
39
39
|
var RowVariants = require('../../exported-related/RowVariants.js');
|
|
40
40
|
require('../../exported-related/Filters/applyOutOfTheBoxFilters.js');
|
|
@@ -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;
|