@elliemae/ds-shared 2.0.0-next.7 → 2.0.0-rc.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/Animations/BaseAnimation.js +23 -20
- package/cjs/Animations/Grow.js +29 -26
- package/cjs/Animations/GrowRight.js +29 -26
- package/cjs/CheckableGroup.js +31 -23
- package/cjs/DeferRenderAfterComputation.js +7 -6
- package/cjs/FocusGroup/FocusGrid.js +38 -31
- package/cjs/FocusGroup/FocusGroup.js +28 -9
- package/cjs/FocusGroup/FocusGroupManager.js +3 -3
- package/cjs/FocusGroup/focusGroupManagerHoc.js +7 -1
- package/cjs/FocusGroup/useFocusGroupItem.js +8 -2
- package/cjs/FocusGroup/utils/getNextCellPosition.js +10 -9
- package/cjs/GroupContext/Group.js +10 -4
- package/cjs/GroupContext/GroupItem.js +6 -3
- package/cjs/ScrollSync/ScrollSync.js +5 -0
- package/cjs/ScrollSync/ScrollSyncPane.js +10 -2
- package/cjs/ScrollSync/ScrollSyncProvider.js +12 -6
- package/cjs/createDataInstance/createInstancePlugin.js +5 -0
- package/cjs/createDataInstance/createInstanceRef.js +7 -0
- package/cjs/createDataInstance/utils.js +56 -24
- package/cjs/defer-render-hoc/index.js +7 -2
- package/cjs/toolbar/ToolbarProvider.js +30 -21
- package/cjs/useDataGrid/VolatileRowsListener.js +5 -2
- package/cjs/useDataGrid/initColumnDefinition.js +24 -17
- package/cjs/useDataGrid/useDataGrid.js +41 -34
- package/cjs/useDataList/recordIterator.js +4 -1
- package/cjs/useDataList/useDataList.js +17 -4
- package/cjs/utils.js +7 -0
- package/cjs/virtualization/AutoHeightList.js +10 -8
- package/cjs/virtualization/FluidHeightList.js +15 -7
- package/cjs/virtualization/index.js +7 -6
- package/esm/Animations/BaseAnimation.js +23 -20
- package/esm/Animations/Grow.js +29 -26
- package/esm/Animations/GrowRight.js +29 -26
- package/esm/CheckableGroup.js +28 -19
- package/esm/DeferRenderAfterComputation.js +7 -6
- package/esm/FocusGroup/FocusGrid.js +27 -19
- package/esm/FocusGroup/FocusGroup.js +25 -6
- package/esm/FocusGroup/FocusGroupManager.js +1 -1
- package/esm/FocusGroup/focusGroupManagerHoc.js +7 -1
- package/esm/FocusGroup/useFocusGroupItem.js +8 -2
- package/esm/FocusGroup/utils/getNextCellPosition.js +10 -9
- package/esm/GroupContext/Group.js +10 -4
- package/esm/GroupContext/GroupItem.js +6 -3
- package/esm/ScrollSync/ScrollSync.js +5 -0
- package/esm/ScrollSync/ScrollSyncPane.js +10 -2
- package/esm/ScrollSync/ScrollSyncProvider.js +12 -6
- package/esm/createDataInstance/createInstancePlugin.js +5 -0
- package/esm/createDataInstance/createInstanceRef.js +7 -0
- package/esm/createDataInstance/utils.js +56 -24
- package/esm/defer-render-hoc/index.js +7 -2
- package/esm/toolbar/ToolbarProvider.js +29 -20
- package/esm/useDataGrid/VolatileRowsListener.js +4 -1
- package/esm/useDataGrid/initColumnDefinition.js +10 -3
- package/esm/useDataGrid/useDataGrid.js +25 -16
- package/esm/useDataList/recordIterator.js +4 -1
- package/esm/useDataList/useDataList.js +16 -3
- package/esm/utils.js +7 -0
- package/esm/virtualization/AutoHeightList.js +6 -3
- package/esm/virtualization/FluidHeightList.js +14 -6
- package/esm/virtualization/index.js +7 -6
- package/package.json +8 -4
- package/types/toolbar/ToolbarProvider.d.ts +1 -1
- package/types/useDataGrid/initColumnDefinition.d.ts +4 -3
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
2
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
3
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
6
|
+
import 'core-js/modules/esnext.async-iterator.find.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.find.js';
|
|
3
8
|
import React, { Component } from 'react';
|
|
4
9
|
|
|
5
10
|
const ScrollSyncContext = /*#__PURE__*/React.createContext();
|
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
2
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
3
3
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.constructor.js';
|
|
5
|
+
import 'core-js/modules/esnext.async-iterator.to-array.js';
|
|
6
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.to-array.js';
|
|
8
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
9
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
10
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
11
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
4
12
|
import { Component } from 'react';
|
|
5
13
|
import { ScrollSyncContext } from './ScrollSync.js';
|
|
6
14
|
import { jsx } from 'react/jsx-runtime';
|
|
@@ -10,8 +18,8 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
10
18
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
11
19
|
|
|
12
20
|
class ScrollSyncPane extends Component {
|
|
13
|
-
constructor(
|
|
14
|
-
super(...
|
|
21
|
+
constructor() {
|
|
22
|
+
super(...arguments);
|
|
15
23
|
|
|
16
24
|
_defineProperty(this, "toArray", groups => [].concat(groups));
|
|
17
25
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.async-iterator.find.js';
|
|
6
|
+
import 'core-js/modules/esnext.iterator.find.js';
|
|
2
7
|
import React from 'react';
|
|
3
8
|
import raf from 'raf';
|
|
4
9
|
|
|
@@ -7,12 +12,13 @@ const {
|
|
|
7
12
|
Provider
|
|
8
13
|
} = ScrollSyncContext;
|
|
9
14
|
|
|
10
|
-
function ScrollSyncProvider({
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
function ScrollSyncProvider(_ref) {
|
|
16
|
+
let {
|
|
17
|
+
enabled,
|
|
18
|
+
horizontal,
|
|
19
|
+
vertical,
|
|
20
|
+
children
|
|
21
|
+
} = _ref;
|
|
16
22
|
useRef();
|
|
17
23
|
|
|
18
24
|
raf((scrolledPane, pane) => {
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
1
3
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
6
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
2
7
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
3
8
|
|
|
4
9
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
@@ -1,6 +1,13 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
1
3
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
4
|
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
3
5
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
6
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
8
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
9
|
+
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
10
|
+
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
4
11
|
import { v4 } from 'uuid';
|
|
5
12
|
import { useRef, useState, useMemo } from 'react';
|
|
6
13
|
import { orderBy } from 'lodash';
|
|
@@ -1,19 +1,37 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
6
|
+
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
2
7
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
8
|
+
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
9
|
+
import 'core-js/modules/esnext.iterator.map.js';
|
|
10
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
11
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
3
12
|
|
|
4
13
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
5
14
|
|
|
6
15
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
7
|
-
const reducePropsGetter =
|
|
8
|
-
let
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
16
|
+
const reducePropsGetter = function () {
|
|
17
|
+
let decorators = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
18
|
+
let grid = arguments.length > 1 ? arguments[1] : undefined;
|
|
19
|
+
return function () {
|
|
20
|
+
let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
21
|
+
let extraParams = arguments.length > 1 ? arguments[1] : undefined;
|
|
22
|
+
let nextProps = props;
|
|
23
|
+
decorators.forEach(decorator => {
|
|
24
|
+
nextProps = decorator(nextProps, grid, extraParams);
|
|
25
|
+
});
|
|
26
|
+
return nextProps;
|
|
27
|
+
};
|
|
13
28
|
};
|
|
14
29
|
/* eslint-disable-next-line max-params */
|
|
15
30
|
|
|
16
|
-
function evaluateTransforms(transforms, value
|
|
31
|
+
function evaluateTransforms(transforms, value) {
|
|
32
|
+
let extraParams = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
33
|
+
let props = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
34
|
+
let grid = arguments.length > 4 ? arguments[4] : undefined;
|
|
17
35
|
let nextProps = props;
|
|
18
36
|
transforms.forEach(transform => {
|
|
19
37
|
nextProps = transform(value, extraParams, nextProps, grid);
|
|
@@ -22,15 +40,26 @@ function evaluateTransforms(transforms, value, extraParams = {}, props = {}, gri
|
|
|
22
40
|
}
|
|
23
41
|
/* eslint-disable-next-line max-params */
|
|
24
42
|
|
|
25
|
-
function evaluateFormatters(formatters, value
|
|
43
|
+
function evaluateFormatters(formatters, value) {
|
|
44
|
+
let extraParams = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
45
|
+
let grid = arguments.length > 3 ? arguments[3] : undefined;
|
|
26
46
|
return formatters.reduce((result, formatter) => formatter(result, extraParams, grid), value);
|
|
27
47
|
}
|
|
28
|
-
function composeFormatters(formatters, instance
|
|
48
|
+
function composeFormatters(formatters, instance) {
|
|
49
|
+
let getItemValue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : record => record.data.name;
|
|
29
50
|
// todo: make the formatters subscribe to the item props instead of getting the whole instance
|
|
30
51
|
// todo: addd should formatter update to memoize specific ones
|
|
31
52
|
return props => formatters.reduce((result, formatter) => formatter(result, props, instance), getItemValue(props.record));
|
|
32
53
|
}
|
|
33
|
-
const applyDecorators = (subject
|
|
54
|
+
const applyDecorators = function (subject) {
|
|
55
|
+
let decorators = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
56
|
+
|
|
57
|
+
for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
|
|
58
|
+
args[_key - 2] = arguments[_key];
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return decorators.reduce((nextSubject, decorator) => decorator(nextSubject, ...args), subject);
|
|
62
|
+
};
|
|
34
63
|
const decorateColumns = (columns, decorators, grid) => {
|
|
35
64
|
const nextColumns = applyDecorators(columns, decorators.decorateColumns, grid);
|
|
36
65
|
return nextColumns.map((column, index) => applyDecorators(column, decorators.decorateColumn, grid, index));
|
|
@@ -47,20 +76,23 @@ const registerStateHookToInstance = (instance, stateHook) => {
|
|
|
47
76
|
});
|
|
48
77
|
};
|
|
49
78
|
|
|
50
|
-
const reduceHotKey = (instance, {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
79
|
+
const reduceHotKey = (instance, _ref) => {
|
|
80
|
+
let {
|
|
81
|
+
key,
|
|
82
|
+
handler,
|
|
83
|
+
options,
|
|
84
|
+
allowDocumentHandler
|
|
85
|
+
} = _ref;
|
|
86
|
+
return _objectSpread(_objectSpread({}, instance), {}, {
|
|
87
|
+
hotKeys: _objectSpread(_objectSpread({}, instance.hotKeys), {}, {
|
|
88
|
+
[key]: {
|
|
89
|
+
handler,
|
|
90
|
+
options,
|
|
91
|
+
allowDocumentHandler
|
|
92
|
+
}
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
};
|
|
64
96
|
|
|
65
97
|
const registerHotKeysHookToInstance = (instance, hotKeysHook) => {
|
|
66
98
|
const hotKeys = hotKeysHook(instance);
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
2
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
3
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
6
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
3
8
|
import { PureComponent } from 'react';
|
|
4
9
|
import raf from 'raf';
|
|
5
10
|
import hoistNonReactStatic from 'hoist-non-react-statics';
|
|
@@ -10,8 +15,8 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
10
15
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
11
16
|
function deferComponentRender(WrappedComponent, fallback) {
|
|
12
17
|
class DeferredRenderWrapper extends PureComponent {
|
|
13
|
-
constructor(
|
|
14
|
-
super(...
|
|
18
|
+
constructor() {
|
|
19
|
+
super(...arguments);
|
|
15
20
|
|
|
16
21
|
_defineProperty(this, "state", {
|
|
17
22
|
shouldRender: false
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
1
6
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
7
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
3
8
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
4
9
|
import React, { useRef, useState, useEffect, useMemo } from 'react';
|
|
5
|
-
import DSPopover from '@elliemae/ds-
|
|
6
|
-
import { useOnClickOutside } from '@elliemae/ds-utilities
|
|
10
|
+
import DSPopover from '@elliemae/ds-popper';
|
|
11
|
+
import { useOnClickOutside } from '@elliemae/ds-utilities';
|
|
7
12
|
import { jsx } from 'react/jsx-runtime';
|
|
8
13
|
|
|
9
14
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
@@ -25,12 +30,13 @@ const useScrollListener = (callback, dependencies) => {
|
|
|
25
30
|
|
|
26
31
|
const noop = () => null;
|
|
27
32
|
|
|
28
|
-
function ToolbarProvider({
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
function ToolbarProvider(_ref) {
|
|
34
|
+
let {
|
|
35
|
+
delay = 200,
|
|
36
|
+
children,
|
|
37
|
+
onHide = noop,
|
|
38
|
+
onShow = noop
|
|
39
|
+
} = _ref;
|
|
34
40
|
const showTimer = useRef();
|
|
35
41
|
const hideTimer = useRef();
|
|
36
42
|
const toolbarRef = useRef();
|
|
@@ -80,18 +86,21 @@ function ToolbarProvider({
|
|
|
80
86
|
content: tooltipState.renderer,
|
|
81
87
|
placement: "left",
|
|
82
88
|
referenceEl: tooltipState.reference,
|
|
83
|
-
renderer:
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
89
|
+
renderer: _ref2 => {
|
|
90
|
+
let {
|
|
91
|
+
as: Component,
|
|
92
|
+
style,
|
|
93
|
+
children: Content
|
|
94
|
+
} = _ref2;
|
|
95
|
+
return /*#__PURE__*/jsx("div", {
|
|
96
|
+
ref: toolbarRef,
|
|
97
|
+
onMouseEnter: e => show(tooltipState),
|
|
98
|
+
onMouseLeave: hide,
|
|
99
|
+
children: /*#__PURE__*/_jsx(Component, {
|
|
100
|
+
style: style
|
|
101
|
+
}, void 0, Content)
|
|
102
|
+
});
|
|
103
|
+
},
|
|
95
104
|
style: tooltipState.style,
|
|
96
105
|
visible: tooltipState.visible
|
|
97
106
|
})));
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
|
-
import
|
|
2
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
5
|
+
import { safeCall } from '@elliemae/ds-utilities';
|
|
3
6
|
|
|
4
7
|
class VolatileRowsListener {
|
|
5
8
|
constructor() {
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
1
6
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
7
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
3
8
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
4
9
|
import 'core-js/modules/es.string.replace.js';
|
|
5
10
|
import 'react';
|
|
6
11
|
import { v4 } from 'uuid';
|
|
7
|
-
import { curry, get, cloneDeep, set, isFunction } from '@elliemae/ds-utilities
|
|
12
|
+
import { curry, get, cloneDeep, set, isFunction } from '@elliemae/ds-utilities';
|
|
8
13
|
|
|
9
14
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
10
15
|
|
|
@@ -15,7 +20,8 @@ const appendHeaderFormatter = curry((formatter, column) => _objectSpread(_object
|
|
|
15
20
|
formatters: [...get(column, 'header.formatters', []), formatter]
|
|
16
21
|
})
|
|
17
22
|
}));
|
|
18
|
-
const appendCellFormatter = curry((formatter, column
|
|
23
|
+
const appendCellFormatter = curry(function (formatter, column) {
|
|
24
|
+
let path = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'formatters';
|
|
19
25
|
const nextColumn = cloneDeep(column);
|
|
20
26
|
const formatters = get(nextColumn, ['cell', path], []);
|
|
21
27
|
const scrollingFormatters = get(nextColumn, 'cell.scrollingFormatters', []);
|
|
@@ -49,7 +55,8 @@ const mergeClassNameToColumnHeader = curry((className, column) => {
|
|
|
49
55
|
})
|
|
50
56
|
});
|
|
51
57
|
});
|
|
52
|
-
function initColumnDefinition(
|
|
58
|
+
function initColumnDefinition() {
|
|
59
|
+
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
53
60
|
// eslint-disable-next-line complexity
|
|
54
61
|
return column => {
|
|
55
62
|
// todo: clean this
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
2
|
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
3
3
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
4
|
-
import
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.map.js';
|
|
6
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
8
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
9
|
+
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
10
|
+
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
11
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
12
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
13
|
+
import { useDerivedStateFromProps, compose, cloneDeep, usePrevious, isObject, isEqual, setRef } from '@elliemae/ds-utilities';
|
|
5
14
|
import { useRef, useState, useMemo } from 'react';
|
|
6
15
|
import { v4 } from 'uuid';
|
|
7
16
|
import * as resolve from 'table-resolver';
|
|
8
|
-
import useDerivedStateFromProps from '@elliemae/ds-utilities/hooks/useDerivedStateFromProps';
|
|
9
|
-
import usePrevious from '@elliemae/ds-utilities/hooks/usePrevious';
|
|
10
|
-
import { setRef } from '@elliemae/ds-utilities/system';
|
|
11
17
|
import initColumnDefinition from './initColumnDefinition.js';
|
|
12
18
|
import { applyDecorators, decorateColumns, reducePropsGetter } from '../createDataInstance/utils.js';
|
|
13
19
|
import VolatileRowsListener from './VolatileRowsListener.js';
|
|
@@ -133,18 +139,21 @@ function useDataGrid(_ref) {
|
|
|
133
139
|
});
|
|
134
140
|
}, instance.current);
|
|
135
141
|
|
|
136
|
-
const reduceHotKey = (nextInstance, {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
142
|
+
const reduceHotKey = (nextInstance, _ref2) => {
|
|
143
|
+
let {
|
|
144
|
+
key,
|
|
145
|
+
handler,
|
|
146
|
+
options
|
|
147
|
+
} = _ref2;
|
|
148
|
+
return _objectSpread(_objectSpread({}, nextInstance), {}, {
|
|
149
|
+
hotKeys: _objectSpread(_objectSpread({}, nextInstance.hotKeys), {}, {
|
|
150
|
+
[key]: {
|
|
151
|
+
handler,
|
|
152
|
+
options
|
|
153
|
+
}
|
|
154
|
+
})
|
|
155
|
+
});
|
|
156
|
+
};
|
|
148
157
|
|
|
149
158
|
instance.current = decorators.registerHotKeys.reduce((nextInstance, decorator) => {
|
|
150
159
|
const hotKeys = decorator(nextInstance);
|
|
@@ -2,7 +2,10 @@ const defaultStrategy = () => {
|
|
|
2
2
|
throw Error('Implement an iterator strategy for record iterator');
|
|
3
3
|
};
|
|
4
4
|
|
|
5
|
-
function recordIterator(records
|
|
5
|
+
function recordIterator(records) {
|
|
6
|
+
let strategy = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultStrategy;
|
|
7
|
+
let decorators = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
8
|
+
let instance = arguments.length > 3 ? arguments[3] : undefined;
|
|
6
9
|
const nextRows = [];
|
|
7
10
|
strategy({
|
|
8
11
|
data: records,
|
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
3
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
1
5
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
6
|
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
3
7
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
8
|
+
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
9
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
10
|
+
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
4
11
|
import { useRef, useMemo } from 'react';
|
|
5
|
-
import { setRef } from '@elliemae/ds-utilities
|
|
12
|
+
import { setRef } from '@elliemae/ds-utilities';
|
|
6
13
|
import get from 'lodash/get';
|
|
7
14
|
import { reducePropsGetter, composeFormatters } from '../createDataInstance/utils.js';
|
|
8
15
|
import { recordIterator } from './recordIterator.js';
|
|
@@ -13,8 +20,14 @@ const _excluded = ["data", "plugins", "renderers", "itemRenderer", "customDecora
|
|
|
13
20
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
14
21
|
|
|
15
22
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
16
|
-
const getItemLabel = (record
|
|
17
|
-
|
|
23
|
+
const getItemLabel = function (record) {
|
|
24
|
+
let nameKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'name';
|
|
25
|
+
return get(record, ['data', nameKey]);
|
|
26
|
+
};
|
|
27
|
+
const getItemChildren = function (record) {
|
|
28
|
+
let childrenKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'children';
|
|
29
|
+
return get(record, ['data', childrenKey]);
|
|
30
|
+
};
|
|
18
31
|
const listRenderers = {
|
|
19
32
|
list: 'ul',
|
|
20
33
|
item: 'li'
|
package/esm/utils.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
1
3
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.map.js';
|
|
6
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
8
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
2
9
|
|
|
3
10
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
4
11
|
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
1
6
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
7
|
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
3
8
|
import { forwardRef, useRef } from 'react';
|
|
4
9
|
import { FixedSizeList } from 'react-window';
|
|
5
|
-
import { cx } from '@elliemae/ds-utilities
|
|
6
|
-
import { mergeRefs } from '@elliemae/ds-utilities/system';
|
|
7
|
-
import useWindowScrollerList from '@elliemae/ds-utilities/hooks/useWindowScrollerList';
|
|
10
|
+
import { useWindowScrollerList, mergeRefs, cx } from '@elliemae/ds-utilities';
|
|
8
11
|
import { jsx } from 'react/jsx-runtime';
|
|
9
12
|
|
|
10
13
|
const _excluded = ["itemCount", "className", "innerRef", "itemData", "itemKey", "itemSize", "outerRef", "component"];
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
1
6
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
7
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
3
8
|
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
@@ -18,13 +23,16 @@ const FluidHeightList = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
18
23
|
|
|
19
24
|
return /*#__PURE__*/_jsx(AutoSizer, {
|
|
20
25
|
disableWidth: true
|
|
21
|
-
}, void 0,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
}, void 0, _ref2 => {
|
|
27
|
+
let {
|
|
28
|
+
height: fluidHeight
|
|
29
|
+
} = _ref2;
|
|
30
|
+
return /*#__PURE__*/jsx(Component, _objectSpread(_objectSpread({}, props), {}, {
|
|
31
|
+
ref: ref,
|
|
32
|
+
height: fluidHeight - 32 // taking in count the margins of the list
|
|
26
33
|
|
|
27
|
-
|
|
34
|
+
}));
|
|
35
|
+
});
|
|
28
36
|
});
|
|
29
37
|
|
|
30
38
|
export { FluidHeightList };
|
|
@@ -3,12 +3,13 @@ export { FluidHeightList } from './FluidHeightList.js';
|
|
|
3
3
|
import { AutoHeightList } from './AutoHeightList.js';
|
|
4
4
|
export { AutoHeightList } from './AutoHeightList.js';
|
|
5
5
|
|
|
6
|
-
function getVirtualListComponent({
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
function getVirtualListComponent(_ref) {
|
|
7
|
+
let {
|
|
8
|
+
component: Component,
|
|
9
|
+
fluid,
|
|
10
|
+
height,
|
|
11
|
+
autoHeight
|
|
12
|
+
} = _ref;
|
|
12
13
|
if (autoHeight) return AutoHeightList;
|
|
13
14
|
if (fluid) return FluidHeightList;
|
|
14
15
|
return Component;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/ds-shared",
|
|
3
|
-
"version": "2.0.0-
|
|
3
|
+
"version": "2.0.0-rc.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "ICE MT - Dimsum - Shared components and utilities",
|
|
6
6
|
"module": "./esm/index.js",
|
|
@@ -213,12 +213,16 @@
|
|
|
213
213
|
"generateSubmodules": true
|
|
214
214
|
},
|
|
215
215
|
"dependencies": {
|
|
216
|
-
"@elliemae/ds-basic": "2.0.0-
|
|
217
|
-
"@elliemae/ds-utilities": "2.0.0-
|
|
216
|
+
"@elliemae/ds-basic": "2.0.0-rc.2",
|
|
217
|
+
"@elliemae/ds-utilities": "2.0.0-rc.2",
|
|
218
218
|
"hoist-non-react-statics": "~3.3.2",
|
|
219
|
+
"hotkeys-js": "~3.8.2",
|
|
220
|
+
"prop-types": "~15.7.2",
|
|
219
221
|
"raf": "~3.4.1",
|
|
220
222
|
"react-spring": "~8.0.27",
|
|
221
|
-
"react-virtualized-auto-sizer": "~1.0.
|
|
223
|
+
"react-virtualized-auto-sizer": "~1.0.4",
|
|
224
|
+
"react-window": "~1.8.6",
|
|
225
|
+
"table-resolver": "~4.1.1",
|
|
222
226
|
"uuid": "~8.3.2"
|
|
223
227
|
},
|
|
224
228
|
"peerDependencies": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export declare const ToolbarContext: React.Context<unknown>;
|
|
3
|
-
declare function ToolbarProvider({ delay, children, onHide, onShow
|
|
3
|
+
declare function ToolbarProvider({ delay, children, onHide, onShow }: {
|
|
4
4
|
delay?: number | undefined;
|
|
5
5
|
children: any;
|
|
6
6
|
onHide?: (() => null) | undefined;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const
|
|
1
|
+
/// <reference types="lodash" />
|
|
2
|
+
export declare const appendHeaderFormatter: import("lodash").CurriedFunction2<any, any, any>;
|
|
3
|
+
export declare const appendCellFormatter: import("lodash").CurriedFunction2<any, any, any>;
|
|
4
|
+
export declare const mergeClassNameToColumnHeader: import("lodash").CurriedFunction2<any, any, any>;
|
|
4
5
|
export default function initColumnDefinition(options?: {}): (column: any) => any;
|