@elliemae/ds-shuttle 1.55.0-next.7 → 2.0.0-alpha.10
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/AnimationState.js +25 -42
- package/cjs/DSShuttle.js +89 -189
- package/cjs/SearchState.js +9 -22
- package/cjs/Shuttle.actions.js +57 -75
- package/cjs/ShuttleContainer.js +44 -79
- package/cjs/ShuttleImpl.js +236 -342
- package/cjs/ShuttleRenderer.js +114 -188
- package/cjs/ShuttleState.js +19 -41
- package/cjs/animation/animationConfig.js +58 -65
- package/cjs/classedComponents.js +37 -49
- package/cjs/components/LoadingIndicator.js +11 -12
- package/cjs/components/OverflowList.js +27 -34
- package/cjs/components/ShuttleBreadcrumb.js +23 -35
- package/cjs/components/ShuttleInfiniteScrollIndicator.js +21 -23
- package/cjs/components/ShuttleListItem/ActionButtons.js +34 -34
- package/cjs/components/ShuttleListItem/ShuttleListItem.js +57 -64
- package/cjs/components/ShuttleListItem/ShuttleSourceListItem.js +34 -64
- package/cjs/components/ShuttleListItem/ShuttleTargetListItem.js +30 -53
- package/cjs/components/ShuttleListPanel.js +11 -24
- package/cjs/components/ShuttleSearchBox.js +81 -107
- package/cjs/components/ShuttleSource.js +93 -175
- package/cjs/components/ShuttleTarget.js +55 -85
- package/cjs/components/VirtualizedItem.js +22 -22
- package/cjs/components/VirtualizedList.js +56 -66
- package/cjs/components/VirtualizedSortableList.js +20 -23
- package/cjs/helper.js +37 -89
- package/cjs/index.js +1 -64
- package/cjs/package.json +7 -0
- package/cjs/updateShuttleStateFromProps.js +31 -40
- package/cjs/utils.js +4 -9
- package/cjs/withProviders.js +10 -16
- package/esm/AnimationState.js +24 -40
- package/esm/DSShuttle.js +86 -186
- package/esm/SearchState.js +8 -20
- package/esm/Shuttle.actions.js +56 -73
- package/esm/ShuttleContainer.js +42 -77
- package/esm/ShuttleImpl.js +240 -337
- package/esm/ShuttleRenderer.js +110 -183
- package/esm/ShuttleState.js +14 -34
- package/esm/animation/animationConfig.js +58 -65
- package/esm/classedComponents.js +31 -43
- package/esm/components/LoadingIndicator.js +10 -11
- package/esm/components/OverflowList.js +23 -30
- package/esm/components/ShuttleBreadcrumb.js +21 -33
- package/esm/components/ShuttleInfiniteScrollIndicator.js +20 -22
- package/esm/components/ShuttleListItem/ActionButtons.js +32 -32
- package/esm/components/ShuttleListItem/ShuttleListItem.js +55 -62
- package/esm/components/ShuttleListItem/ShuttleSourceListItem.js +30 -59
- package/esm/components/ShuttleListItem/ShuttleTargetListItem.js +26 -49
- package/esm/components/ShuttleListPanel.js +10 -23
- package/esm/components/ShuttleSearchBox.js +79 -99
- package/esm/components/ShuttleSource.js +82 -162
- package/esm/components/ShuttleTarget.js +49 -79
- package/esm/components/VirtualizedItem.js +20 -20
- package/esm/components/VirtualizedList.js +52 -62
- package/esm/components/VirtualizedSortableList.js +16 -18
- package/esm/helper.js +35 -85
- package/esm/index.js +0 -63
- package/esm/package.json +7 -0
- package/esm/updateShuttleStateFromProps.js +30 -38
- package/esm/utils.js +1 -4
- package/esm/withProviders.js +8 -15
- package/package.json +150 -13
- package/types/AnimationState.d.ts +26 -0
- package/types/DSShuttle.d.ts +119 -0
- package/types/SearchState.d.ts +22 -0
- package/types/Shuttle.actions.d.ts +11 -0
- package/types/ShuttleContainer.d.ts +3 -0
- package/types/ShuttleImpl.d.ts +3 -0
- package/types/ShuttleRenderer.d.ts +37 -0
- package/types/ShuttleState.d.ts +53 -0
- package/types/animation/animationConfig.d.ts +68 -0
- package/types/classedComponents.d.ts +14 -0
- package/types/components/LoadingIndicator.d.ts +3 -0
- package/types/components/OverflowList.d.ts +7 -0
- package/types/components/ShuttleBreadcrumb.d.ts +7 -0
- package/types/components/ShuttleInfiniteScrollIndicator.d.ts +5 -0
- package/types/components/ShuttleListItem/ActionButtons.d.ts +4 -0
- package/types/components/ShuttleListItem/ShuttleListItem.d.ts +14 -0
- package/types/components/ShuttleListItem/ShuttleSourceListItem.d.ts +13 -0
- package/types/components/ShuttleListItem/ShuttleTargetListItem.d.ts +13 -0
- package/types/components/ShuttleListPanel.d.ts +7 -0
- package/types/components/ShuttleSearchBox.d.ts +20 -0
- package/types/components/ShuttleSource.d.ts +54 -0
- package/types/components/ShuttleTarget.d.ts +16 -0
- package/types/components/VirtualizedItem.d.ts +3 -0
- package/types/components/VirtualizedList.d.ts +12 -0
- package/types/components/VirtualizedSortableList.d.ts +6 -0
- package/types/helper.d.ts +16 -0
- package/types/index.d.ts +1 -0
- package/types/tests/DSShuttle.events.test.d.ts +1 -0
- package/types/tests/DSShuttle.test.d.ts +1 -0
- package/types/tests/utils.d.ts +116 -0
- package/types/updateShuttleStateFromProps.d.ts +1 -0
- package/types/utils.d.ts +2 -0
- package/types/withProviders.d.ts +3 -0
- package/AnimationState/package.json +0 -10
- package/DSShuttle/package.json +0 -10
- package/SearchState/package.json +0 -10
- package/Shuttle.actions/package.json +0 -10
- package/ShuttleContainer/package.json +0 -10
- package/ShuttleImpl/package.json +0 -10
- package/ShuttleRenderer/package.json +0 -10
- package/ShuttleState/package.json +0 -10
- package/animation/animationConfig/package.json +0 -10
- package/cjs/AnimationState.js.map +0 -1
- package/cjs/DSShuttle.js.map +0 -1
- package/cjs/SearchState.js.map +0 -1
- package/cjs/Shuttle.actions.js.map +0 -1
- package/cjs/ShuttleContainer.js.map +0 -1
- package/cjs/ShuttleImpl.js.map +0 -1
- package/cjs/ShuttleRenderer.js.map +0 -1
- package/cjs/ShuttleState.js.map +0 -1
- package/cjs/animation/animationConfig.js.map +0 -1
- package/cjs/classedComponents.js.map +0 -1
- package/cjs/components/LoadingIndicator.js.map +0 -1
- package/cjs/components/OverflowList.js.map +0 -1
- package/cjs/components/ShuttleBreadcrumb.js.map +0 -1
- package/cjs/components/ShuttleInfiniteScrollIndicator.js.map +0 -1
- package/cjs/components/ShuttleListItem/ActionButtons.js.map +0 -1
- package/cjs/components/ShuttleListItem/ShuttleListItem.js.map +0 -1
- package/cjs/components/ShuttleListItem/ShuttleSourceListItem.js.map +0 -1
- package/cjs/components/ShuttleListItem/ShuttleTargetListItem.js.map +0 -1
- package/cjs/components/ShuttleListPanel.js.map +0 -1
- package/cjs/components/ShuttleSearchBox.js.map +0 -1
- package/cjs/components/ShuttleSource.js.map +0 -1
- package/cjs/components/ShuttleTarget.js.map +0 -1
- package/cjs/components/VirtualizedItem.js.map +0 -1
- package/cjs/components/VirtualizedList.js.map +0 -1
- package/cjs/components/VirtualizedSortableList.js.map +0 -1
- package/cjs/helper.js.map +0 -1
- package/cjs/index.js.map +0 -1
- package/cjs/tests/utils.js +0 -1112
- package/cjs/tests/utils.js.map +0 -1
- package/cjs/updateShuttleStateFromProps.js.map +0 -1
- package/cjs/utils.js.map +0 -1
- package/cjs/withProviders.js.map +0 -1
- package/classedComponents/package.json +0 -10
- package/components/LoadingIndicator/package.json +0 -10
- package/components/OverflowList/package.json +0 -10
- package/components/ShuttleBreadcrumb/package.json +0 -10
- package/components/ShuttleInfiniteScrollIndicator/package.json +0 -10
- package/components/ShuttleListItem/ActionButtons/package.json +0 -10
- package/components/ShuttleListItem/ShuttleListItem/package.json +0 -10
- package/components/ShuttleListItem/ShuttleSourceListItem/package.json +0 -10
- package/components/ShuttleListItem/ShuttleTargetListItem/package.json +0 -10
- package/components/ShuttleListPanel/package.json +0 -10
- package/components/ShuttleSearchBox/package.json +0 -10
- package/components/ShuttleSource/package.json +0 -10
- package/components/ShuttleTarget/package.json +0 -10
- package/components/VirtualizedItem/package.json +0 -10
- package/components/VirtualizedList/package.json +0 -10
- package/components/VirtualizedSortableList/package.json +0 -10
- package/esm/AnimationState.js.map +0 -1
- package/esm/DSShuttle.js.map +0 -1
- package/esm/SearchState.js.map +0 -1
- package/esm/Shuttle.actions.js.map +0 -1
- package/esm/ShuttleContainer.js.map +0 -1
- package/esm/ShuttleImpl.js.map +0 -1
- package/esm/ShuttleRenderer.js.map +0 -1
- package/esm/ShuttleState.js.map +0 -1
- package/esm/animation/animationConfig.js.map +0 -1
- package/esm/classedComponents.js.map +0 -1
- package/esm/components/LoadingIndicator.js.map +0 -1
- package/esm/components/OverflowList.js.map +0 -1
- package/esm/components/ShuttleBreadcrumb.js.map +0 -1
- package/esm/components/ShuttleInfiniteScrollIndicator.js.map +0 -1
- package/esm/components/ShuttleListItem/ActionButtons.js.map +0 -1
- package/esm/components/ShuttleListItem/ShuttleListItem.js.map +0 -1
- package/esm/components/ShuttleListItem/ShuttleSourceListItem.js.map +0 -1
- package/esm/components/ShuttleListItem/ShuttleTargetListItem.js.map +0 -1
- package/esm/components/ShuttleListPanel.js.map +0 -1
- package/esm/components/ShuttleSearchBox.js.map +0 -1
- package/esm/components/ShuttleSource.js.map +0 -1
- package/esm/components/ShuttleTarget.js.map +0 -1
- package/esm/components/VirtualizedItem.js.map +0 -1
- package/esm/components/VirtualizedList.js.map +0 -1
- package/esm/components/VirtualizedSortableList.js.map +0 -1
- package/esm/helper.js.map +0 -1
- package/esm/index.js.map +0 -1
- package/esm/tests/utils.js +0 -1100
- package/esm/tests/utils.js.map +0 -1
- package/esm/updateShuttleStateFromProps.js.map +0 -1
- package/esm/utils.js.map +0 -1
- package/esm/withProviders.js.map +0 -1
- package/helper/package.json +0 -10
- package/tests/utils/package.json +0 -10
- package/updateShuttleStateFromProps/package.json +0 -10
- package/utils/package.json +0 -10
- package/withProviders/package.json +0 -10
|
@@ -1,91 +1,81 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
3
4
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
|
-
var
|
|
5
|
-
var
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var web = require('react-spring/web');
|
|
6
7
|
var reactWindow = require('react-window');
|
|
7
8
|
var InfiniteLoader = require('react-window-infinite-loader');
|
|
8
9
|
var AutoSizer = require('react-virtualized-auto-sizer');
|
|
9
|
-
var
|
|
10
|
+
var animationConfig = require('../animation/animationConfig.js');
|
|
10
11
|
var AnimationState = require('../AnimationState.js');
|
|
11
|
-
var
|
|
12
|
-
require('
|
|
13
|
-
require('constate');
|
|
12
|
+
var VirtualizedItem = require('./VirtualizedItem.js');
|
|
13
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
14
14
|
|
|
15
15
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
16
16
|
|
|
17
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
17
18
|
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
18
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
19
19
|
var InfiniteLoader__default = /*#__PURE__*/_interopDefaultLegacy(InfiniteLoader);
|
|
20
20
|
var AutoSizer__default = /*#__PURE__*/_interopDefaultLegacy(AutoSizer);
|
|
21
21
|
|
|
22
22
|
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; }
|
|
23
23
|
|
|
24
|
-
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__default[
|
|
24
|
+
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__default["default"](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; }
|
|
25
25
|
|
|
26
|
-
function VirtualizedList(
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
React.useEffect(function () {
|
|
26
|
+
function VirtualizedList({
|
|
27
|
+
items,
|
|
28
|
+
itemRenderer,
|
|
29
|
+
searching,
|
|
30
|
+
target = false,
|
|
31
|
+
innerRef,
|
|
32
|
+
children,
|
|
33
|
+
hasNextPage = true,
|
|
34
|
+
getMoreItems = () => {}
|
|
35
|
+
}) {
|
|
36
|
+
const hasMounted = react.useRef(false);
|
|
37
|
+
const {
|
|
38
|
+
state: {
|
|
39
|
+
isMoving,
|
|
40
|
+
isMovingBack
|
|
41
|
+
},
|
|
42
|
+
reset
|
|
43
|
+
} = react.useContext(AnimationState.Context);
|
|
44
|
+
react.useEffect(() => {
|
|
47
45
|
hasMounted.current = true;
|
|
48
46
|
}, []);
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}, _objectSpread(_objectSpread({}, animation_animationConfig.animationConfig.moveItem(target)), {}, {
|
|
52
|
-
onDestroyed: function onDestroyed() {
|
|
53
|
-
return reset();
|
|
54
|
-
}
|
|
47
|
+
const transitions = web.useTransition(items, item => item.id, _objectSpread(_objectSpread({}, animationConfig.animationConfig.moveItem(target)), {}, {
|
|
48
|
+
onDestroyed: () => reset()
|
|
55
49
|
}));
|
|
56
|
-
|
|
50
|
+
const itemCount = hasNextPage ? items.length + 1 : items.length;
|
|
57
51
|
|
|
58
|
-
|
|
59
|
-
return !hasNextPage || index < items.length;
|
|
60
|
-
};
|
|
52
|
+
const isItemLoaded = index => !hasNextPage || index < items.length;
|
|
61
53
|
|
|
62
|
-
return /*#__PURE__*/
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
});
|
|
54
|
+
return /*#__PURE__*/_jsx__default["default"](AutoSizer__default["default"], {}, void 0, ({
|
|
55
|
+
height,
|
|
56
|
+
width
|
|
57
|
+
}) => /*#__PURE__*/_jsx__default["default"](InfiniteLoader__default["default"], {
|
|
58
|
+
isItemLoaded: isItemLoaded,
|
|
59
|
+
itemCount: itemCount,
|
|
60
|
+
loadMoreItems: getMoreItems
|
|
61
|
+
}, void 0, ({
|
|
62
|
+
onItemsRendered,
|
|
63
|
+
ref
|
|
64
|
+
}) => /*#__PURE__*/jsxRuntime.jsx(reactWindow.FixedSizeList, {
|
|
65
|
+
height: searching ? 300 : height,
|
|
66
|
+
width: width,
|
|
67
|
+
innerRef: innerRef,
|
|
68
|
+
itemCount: transitions.length,
|
|
69
|
+
itemData: {
|
|
70
|
+
items: transitions,
|
|
71
|
+
itemRenderer,
|
|
72
|
+
isItemMoving: hasMounted.current && (isMoving || isMovingBack)
|
|
73
|
+
},
|
|
74
|
+
itemSize: 35,
|
|
75
|
+
onItemsRendered: onItemsRendered,
|
|
76
|
+
ref: ref,
|
|
77
|
+
children: children || VirtualizedItem
|
|
78
|
+
})));
|
|
88
79
|
}
|
|
89
80
|
|
|
90
81
|
module.exports = VirtualizedList;
|
|
91
|
-
//# sourceMappingURL=VirtualizedList.js.map
|
|
@@ -1,39 +1,36 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
4
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
5
|
-
|
|
5
|
+
require('react');
|
|
6
6
|
var reactSortableHoc = require('react-sortable-hoc');
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
require('
|
|
10
|
-
require('react-spring/web.cjs');
|
|
11
|
-
require('react-window');
|
|
12
|
-
require('react-window-infinite-loader');
|
|
13
|
-
require('react-virtualized-auto-sizer');
|
|
14
|
-
require('../animation/animationConfig.js');
|
|
15
|
-
require('../AnimationState.js');
|
|
16
|
-
require('@babel/runtime/helpers/slicedToArray');
|
|
17
|
-
require('constate');
|
|
7
|
+
var VirtualizedList = require('./VirtualizedList.js');
|
|
8
|
+
var VirtualizedItem = require('./VirtualizedItem.js');
|
|
9
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
18
10
|
|
|
19
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
20
12
|
|
|
21
|
-
var
|
|
13
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
22
14
|
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
23
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
24
15
|
|
|
25
|
-
|
|
26
|
-
|
|
16
|
+
const _excluded = ["items"];
|
|
17
|
+
|
|
18
|
+
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; }
|
|
19
|
+
|
|
20
|
+
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__default["default"](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; }
|
|
21
|
+
const SortableList = reactSortableHoc.sortableContainer(VirtualizedList);
|
|
27
22
|
|
|
28
23
|
function VirtualizedSortableList(_ref) {
|
|
29
|
-
|
|
30
|
-
|
|
24
|
+
let {
|
|
25
|
+
items
|
|
26
|
+
} = _ref,
|
|
27
|
+
otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
|
|
31
28
|
|
|
32
|
-
return /*#__PURE__*/
|
|
29
|
+
return /*#__PURE__*/jsxRuntime.jsx(SortableList, _objectSpread(_objectSpread({}, otherProps), {}, {
|
|
33
30
|
items: items,
|
|
34
|
-
useDragHandle: true
|
|
35
|
-
|
|
31
|
+
useDragHandle: true,
|
|
32
|
+
children: reactSortableHoc.sortableElement(VirtualizedItem)
|
|
33
|
+
}));
|
|
36
34
|
}
|
|
37
35
|
|
|
38
36
|
module.exports = VirtualizedSortableList;
|
|
39
|
-
//# sourceMappingURL=VirtualizedSortableList.js.map
|
package/cjs/helper.js
CHANGED
|
@@ -17,14 +17,12 @@ function _interopNamespace(e) {
|
|
|
17
17
|
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
18
18
|
Object.defineProperty(n, k, d.get ? d : {
|
|
19
19
|
enumerable: true,
|
|
20
|
-
get: function () {
|
|
21
|
-
return e[k];
|
|
22
|
-
}
|
|
20
|
+
get: function () { return e[k]; }
|
|
23
21
|
});
|
|
24
22
|
}
|
|
25
23
|
});
|
|
26
24
|
}
|
|
27
|
-
n[
|
|
25
|
+
n["default"] = e;
|
|
28
26
|
return Object.freeze(n);
|
|
29
27
|
}
|
|
30
28
|
|
|
@@ -33,102 +31,53 @@ var tree__namespace = /*#__PURE__*/_interopNamespace(tree);
|
|
|
33
31
|
|
|
34
32
|
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; }
|
|
35
33
|
|
|
36
|
-
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__default[
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
var hierarchy = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
47
|
-
return hierarchy[hierarchy.length - 1] || {};
|
|
48
|
-
};
|
|
49
|
-
var filterItemsByHierarchy = function filterItemsByHierarchy(list, hierarchyId) {
|
|
50
|
-
var parentField = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'parent';
|
|
51
|
-
return list.filter(function (item) {
|
|
52
|
-
return item[parentField] === hierarchyId;
|
|
53
|
-
});
|
|
54
|
-
};
|
|
55
|
-
var getItemsById = function getItemsById(ids, list) {
|
|
56
|
-
return ids.reduce(function (acc, id) {
|
|
57
|
-
return acc.concat(list.find(function (item) {
|
|
58
|
-
return String(item.id) === String(id);
|
|
59
|
-
}));
|
|
60
|
-
}, []).filter(function (item) {
|
|
61
|
-
return item;
|
|
62
|
-
});
|
|
63
|
-
};
|
|
64
|
-
var toggleInObject = function toggleInObject(obj, key, value) {
|
|
65
|
-
return obj[key] ? utils.omit(obj, [key]) : _objectSpread(_objectSpread({}, obj), {}, _defineProperty__default['default']({}, key, value));
|
|
66
|
-
};
|
|
67
|
-
var isMovable = function isMovable(item) {
|
|
68
|
-
return !item.forceNotMovable && (item.hasChildren && item.isMoveableContainer || !item.hasChildren);
|
|
69
|
-
}; // utility to execute all specified actions in sequence
|
|
34
|
+
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__default["default"](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; }
|
|
35
|
+
const getHierarchyTypeName = dest => !dest ? 'hierarchy' : 'hierarchyDest';
|
|
36
|
+
const checkHasChildren = (list, currentItem) => list.some(item => currentItem.id === item.parent);
|
|
37
|
+
const getActiveIdFromHierarchy = (hierarchy = []) => hierarchy[hierarchy.length - 1] || {};
|
|
38
|
+
const filterItemsByHierarchy = (list, hierarchyId, parentField = 'parent') => list.filter(item => item[parentField] === hierarchyId);
|
|
39
|
+
const getItemsById = (ids, list) => ids.reduce((acc, id) => acc.concat(list.find(item => String(item.id) === String(id))), []).filter(item => item);
|
|
40
|
+
const toggleInObject = (obj, key, value) => obj[key] ? utils.omit(obj, [key]) : _objectSpread(_objectSpread({}, obj), {}, {
|
|
41
|
+
[key]: value
|
|
42
|
+
});
|
|
43
|
+
const isMovable = item => !item.forceNotMovable && (item.hasChildren && item.isMoveableContainer || !item.hasChildren); // utility to execute all specified actions in sequence
|
|
70
44
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
45
|
+
const pipe = actions => (initState, props) => actions.reduce((prevState, action) => action(prevState, props), initState);
|
|
46
|
+
const moveItems = ({
|
|
47
|
+
oldIndex,
|
|
48
|
+
newIndex
|
|
49
|
+
}) => items => {
|
|
50
|
+
const sourceItem = items[oldIndex];
|
|
51
|
+
items.splice(oldIndex, 1);
|
|
52
|
+
items.splice(newIndex, 0, sourceItem);
|
|
53
|
+
return items;
|
|
77
54
|
};
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
var sourceItem = items[oldIndex];
|
|
83
|
-
items.splice(oldIndex, 1);
|
|
84
|
-
items.splice(newIndex, 0, sourceItem);
|
|
85
|
-
return items;
|
|
86
|
-
};
|
|
87
|
-
};
|
|
88
|
-
var prepareItems = function prepareItems(items) {
|
|
89
|
-
return utils.compose(tree__namespace.fixOrder(), function (items) {
|
|
90
|
-
return items.map(function (item) {
|
|
91
|
-
return _objectSpread(_objectSpread({}, item), {}, {
|
|
92
|
-
hasChildren: checkHasChildren(items, item)
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
})(items);
|
|
96
|
-
};
|
|
97
|
-
var defaultOptions = {
|
|
55
|
+
const prepareItems = items => utils.compose(tree__namespace.fixOrder(), items => items.map(item => _objectSpread(_objectSpread({}, item), {}, {
|
|
56
|
+
hasChildren: checkHasChildren(items, item)
|
|
57
|
+
})))(items);
|
|
58
|
+
const defaultOptions = {
|
|
98
59
|
parentField: 'parent',
|
|
99
60
|
idField: 'id',
|
|
100
|
-
op:
|
|
101
|
-
return !hasMoved;
|
|
102
|
-
}
|
|
61
|
+
op: hasMoved => !hasMoved
|
|
103
62
|
};
|
|
104
63
|
function getChildrenFromParent(parentId, options) {
|
|
105
|
-
|
|
106
|
-
|
|
64
|
+
const {
|
|
65
|
+
parentField
|
|
66
|
+
} = _objectSpread(_objectSpread({}, defaultOptions), options);
|
|
107
67
|
|
|
108
|
-
return
|
|
109
|
-
return items.filter(function (item) {
|
|
110
|
-
return item[parentField] === parentId;
|
|
111
|
-
});
|
|
112
|
-
};
|
|
68
|
+
return items => items.filter(item => item[parentField] === parentId);
|
|
113
69
|
}
|
|
114
70
|
function filterMovedItems(movedItems, options) {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
71
|
+
const {
|
|
72
|
+
idField,
|
|
73
|
+
op: filterOp
|
|
74
|
+
} = _objectSpread(_objectSpread({}, defaultOptions), options);
|
|
118
75
|
|
|
119
|
-
|
|
120
|
-
return
|
|
121
|
-
return items.filter(function (item) {
|
|
122
|
-
return filterOp(!!movedItemsHash[item[idField]]);
|
|
123
|
-
});
|
|
124
|
-
};
|
|
76
|
+
const movedItemsHash = utils.hashArray(movedItems, idField);
|
|
77
|
+
return items => items.filter(item => filterOp(!!movedItemsHash[item[idField]]));
|
|
125
78
|
}
|
|
126
79
|
function filterBySearch(term, searching) {
|
|
127
|
-
return
|
|
128
|
-
return searching ? items.filter(function (item) {
|
|
129
|
-
return item.name.toLowerCase().indexOf(String(term).toLowerCase()) !== -1;
|
|
130
|
-
}) : items;
|
|
131
|
-
};
|
|
80
|
+
return items => searching ? items.filter(item => item.name.toLowerCase().indexOf(String(term).toLowerCase()) !== -1) : items;
|
|
132
81
|
}
|
|
133
82
|
|
|
134
83
|
exports.checkHasChildren = checkHasChildren;
|
|
@@ -144,4 +93,3 @@ exports.moveItems = moveItems;
|
|
|
144
93
|
exports.pipe = pipe;
|
|
145
94
|
exports.prepareItems = prepareItems;
|
|
146
95
|
exports.toggleInObject = toggleInObject;
|
|
147
|
-
//# sourceMappingURL=helper.js.map
|
package/cjs/index.js
CHANGED
|
@@ -4,72 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var DSShuttle = require('./DSShuttle.js');
|
|
6
6
|
var utils = require('./utils.js');
|
|
7
|
-
require('react');
|
|
8
|
-
require('lodash');
|
|
9
|
-
require('react-desc');
|
|
10
|
-
require('@elliemae/ds-basic/TruncatedTooltipText');
|
|
11
|
-
require('./ShuttleImpl.js');
|
|
12
|
-
require('@babel/runtime/helpers/extends');
|
|
13
|
-
require('@babel/runtime/helpers/objectWithoutProperties');
|
|
14
|
-
require('@babel/runtime/helpers/toConsumableArray');
|
|
15
|
-
require('@babel/runtime/helpers/classCallCheck');
|
|
16
|
-
require('@babel/runtime/helpers/createClass');
|
|
17
|
-
require('@babel/runtime/helpers/assertThisInitialized');
|
|
18
|
-
require('@babel/runtime/helpers/inherits');
|
|
19
|
-
require('@babel/runtime/helpers/possibleConstructorReturn');
|
|
20
|
-
require('@babel/runtime/helpers/getPrototypeOf');
|
|
21
|
-
require('@babel/runtime/helpers/defineProperty');
|
|
22
|
-
require('@elliemae/ds-utilities/utils');
|
|
23
|
-
require('./withProviders.js');
|
|
24
|
-
require('./AnimationState.js');
|
|
25
|
-
require('@babel/runtime/helpers/slicedToArray');
|
|
26
|
-
require('constate');
|
|
27
|
-
require('./SearchState.js');
|
|
28
|
-
require('./ShuttleState.js');
|
|
29
|
-
require('./helper.js');
|
|
30
|
-
require('treetabular');
|
|
31
|
-
require('./Shuttle.actions.js');
|
|
32
|
-
require('./ShuttleRenderer.js');
|
|
33
|
-
require('./components/ShuttleSource.js');
|
|
34
|
-
require('prop-types');
|
|
35
|
-
require('@elliemae/ds-icons/ArrowShortRight');
|
|
36
|
-
require('@elliemae/ds-basic/Button');
|
|
37
|
-
require('@elliemae/ds-icons/Search');
|
|
38
|
-
require('./components/ShuttleSearchBox.js');
|
|
39
|
-
require('@elliemae/ds-classnames');
|
|
40
|
-
require('@elliemae/ds-basic/form/TextBox');
|
|
41
|
-
require('./components/ShuttleInfiniteScrollIndicator.js');
|
|
42
|
-
require('@elliemae/ds-basic/IndeterminateProgressIndicator');
|
|
43
|
-
require('./components/ShuttleListItem/ShuttleSourceListItem.js');
|
|
44
|
-
require('./components/ShuttleListItem/ActionButtons.js');
|
|
45
|
-
require('@elliemae/ds-icons/CloseCircle');
|
|
46
|
-
require('@elliemae/ds-icons/ArrowShortReturn');
|
|
47
|
-
require('./components/ShuttleListItem/ShuttleListItem.js');
|
|
48
|
-
require('react-spring/web.cjs');
|
|
49
|
-
require('react-sortable-hoc');
|
|
50
|
-
require('@elliemae/ds-icons/GripperVertical');
|
|
51
|
-
require('./classedComponents.js');
|
|
52
|
-
require('./components/ShuttleBreadcrumb.js');
|
|
53
|
-
require('@elliemae/ds-basic/Breadcrumb');
|
|
54
|
-
require('./animation/animationConfig.js');
|
|
55
|
-
require('./components/OverflowList.js');
|
|
56
|
-
require('./components/ShuttleListPanel.js');
|
|
57
|
-
require('./components/VirtualizedList.js');
|
|
58
|
-
require('react-window');
|
|
59
|
-
require('react-window-infinite-loader');
|
|
60
|
-
require('react-virtualized-auto-sizer');
|
|
61
|
-
require('./components/VirtualizedItem.js');
|
|
62
|
-
require('./components/VirtualizedSortableList.js');
|
|
63
|
-
require('./components/LoadingIndicator.js');
|
|
64
|
-
require('@elliemae/ds-basic/CircularProgressIndicator');
|
|
65
|
-
require('styled-components');
|
|
66
|
-
require('./components/ShuttleTarget.js');
|
|
67
|
-
require('./components/ShuttleListItem/ShuttleTargetListItem.js');
|
|
68
|
-
require('./updateShuttleStateFromProps.js');
|
|
69
7
|
|
|
70
8
|
|
|
71
9
|
|
|
72
10
|
exports.DSShuttleWithSchema = DSShuttle.DSShuttleWithSchema;
|
|
73
|
-
exports
|
|
11
|
+
exports["default"] = DSShuttle["default"];
|
|
74
12
|
exports.utils = utils;
|
|
75
|
-
//# sourceMappingURL=index.js.map
|
package/cjs/package.json
ADDED
|
@@ -1,93 +1,84 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
4
3
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
5
4
|
var utils = require('@elliemae/ds-utilities/utils');
|
|
6
5
|
var helper = require('./helper.js');
|
|
7
6
|
var Shuttle_actions = require('./Shuttle.actions.js');
|
|
8
|
-
require('treetabular');
|
|
9
|
-
require('./utils.js');
|
|
10
7
|
|
|
11
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
9
|
|
|
13
|
-
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
|
14
10
|
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
15
11
|
|
|
16
12
|
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; }
|
|
17
13
|
|
|
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__default[
|
|
14
|
+
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__default["default"](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; }
|
|
19
15
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
});
|
|
24
|
-
};
|
|
16
|
+
const mergeToPrevState = (prevState, nextState) => _objectSpread(_objectSpread(_objectSpread({}, prevState), nextState), {}, {
|
|
17
|
+
prevProps: _objectSpread(_objectSpread({}, prevState.prevProps), nextState.prevProps)
|
|
18
|
+
});
|
|
25
19
|
|
|
26
20
|
function compareSelectedItems(nextProps, prevProps) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
21
|
+
const {
|
|
22
|
+
selectedItems,
|
|
23
|
+
idField
|
|
24
|
+
} = nextProps;
|
|
25
|
+
return nextState => {
|
|
30
26
|
if (utils.isEqual(selectedItems, prevProps.selectedItems)) return nextState; // if we are using nonSelectedItems skip this legacy logic and paint just what's passed
|
|
31
27
|
// to nonSelectedItems (source) and selectedItems (target)
|
|
32
28
|
// TODO make controlledV2 the default behavior for controlled shuttle
|
|
33
29
|
|
|
34
30
|
if (nextProps.nonSelectedItems) return nextState;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return mergeToPrevState(nextState, _objectSpread(_objectSpread({}, helper.pipe([Shuttle_actions.resetMovedItems()]
|
|
31
|
+
const {
|
|
32
|
+
preparedItems
|
|
33
|
+
} = nextState;
|
|
34
|
+
const prevSelectedItemsHash = utils.hashArray(prevProps.selectedItems || []);
|
|
35
|
+
const itemsToMove = helper.getItemsById(selectedItems, preparedItems);
|
|
36
|
+
const actions = itemsToMove.map(item => prevSelectedItemsHash[item[idField]] ? Shuttle_actions.addToTarget(item, nextState.targetItems) : Shuttle_actions.addToTarget(item));
|
|
37
|
+
return mergeToPrevState(nextState, _objectSpread(_objectSpread({}, helper.pipe([Shuttle_actions.resetMovedItems(), ...actions])(nextState, nextProps)), {}, {
|
|
42
38
|
prevProps: _objectSpread(_objectSpread({}, nextState.prevProps), {}, {
|
|
43
|
-
selectedItems
|
|
39
|
+
selectedItems
|
|
44
40
|
})
|
|
45
41
|
}));
|
|
46
42
|
};
|
|
47
43
|
}
|
|
48
44
|
|
|
49
45
|
function compareItems(nextProps, prevProps) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
46
|
+
const {
|
|
47
|
+
items
|
|
48
|
+
} = nextProps;
|
|
49
|
+
return nextState => {
|
|
50
|
+
const preparedItems = helper.prepareItems(items);
|
|
51
|
+
const isControlledV2 = nextProps.nonSelectedItems; // TODO make controlledV2 the default behavior for controlled shuttle
|
|
54
52
|
|
|
55
53
|
if (isControlledV2) {
|
|
56
|
-
|
|
57
|
-
return preparedItems.find(function (it) {
|
|
58
|
-
return it.id === id;
|
|
59
|
-
});
|
|
60
|
-
});
|
|
54
|
+
const targetItems = nextProps.selectedItems.map(id => preparedItems.find(it => it.id === id));
|
|
61
55
|
return mergeToPrevState(nextState, {
|
|
62
|
-
preparedItems
|
|
56
|
+
preparedItems,
|
|
63
57
|
// PUI-4462 on async load and items change, the shuttle loads
|
|
64
58
|
// all children from currently selected targetItems from items prop
|
|
65
59
|
// (items prop update)
|
|
66
|
-
targetItems
|
|
60
|
+
targetItems,
|
|
67
61
|
movedItems: targetItems,
|
|
68
62
|
prevProps: {
|
|
69
|
-
items
|
|
63
|
+
items
|
|
70
64
|
}
|
|
71
65
|
});
|
|
72
66
|
}
|
|
73
67
|
|
|
74
68
|
if (utils.isEqual(items, prevProps.items)) return nextState;
|
|
75
69
|
return mergeToPrevState(nextState, {
|
|
76
|
-
preparedItems
|
|
70
|
+
preparedItems,
|
|
77
71
|
prevProps: {
|
|
78
|
-
items
|
|
72
|
+
items
|
|
79
73
|
}
|
|
80
74
|
});
|
|
81
75
|
};
|
|
82
76
|
}
|
|
83
77
|
|
|
84
78
|
function updateShuttleStateFromProps (nextProps, prevState) {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
});
|
|
88
|
-
var nextState = utils.compose.apply(void 0, _toConsumableArray__default['default'](stateReducers))(prevState);
|
|
79
|
+
const stateReducers = [compareSelectedItems, compareItems].map(fn => fn(nextProps, prevState.prevProps));
|
|
80
|
+
const nextState = utils.compose(...stateReducers)(prevState);
|
|
89
81
|
return !utils.isEqual(nextState, prevState) ? nextState : null;
|
|
90
82
|
}
|
|
91
83
|
|
|
92
84
|
module.exports = updateShuttleStateFromProps;
|
|
93
|
-
//# sourceMappingURL=updateShuttleStateFromProps.js.map
|
package/cjs/utils.js
CHANGED
|
@@ -16,14 +16,12 @@ function _interopNamespace(e) {
|
|
|
16
16
|
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
17
17
|
Object.defineProperty(n, k, d.get ? d : {
|
|
18
18
|
enumerable: true,
|
|
19
|
-
get: function () {
|
|
20
|
-
return e[k];
|
|
21
|
-
}
|
|
19
|
+
get: function () { return e[k]; }
|
|
22
20
|
});
|
|
23
21
|
}
|
|
24
22
|
});
|
|
25
23
|
}
|
|
26
|
-
n[
|
|
24
|
+
n["default"] = e;
|
|
27
25
|
return Object.freeze(n);
|
|
28
26
|
}
|
|
29
27
|
|
|
@@ -32,12 +30,9 @@ var tree__namespace = /*#__PURE__*/_interopNamespace(tree);
|
|
|
32
30
|
|
|
33
31
|
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; }
|
|
34
32
|
|
|
35
|
-
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__default[
|
|
33
|
+
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__default["default"](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; }
|
|
36
34
|
var utils = _objectSpread({
|
|
37
|
-
prepareItems:
|
|
38
|
-
return utils$1.compose(tree__namespace.fixOrder(options), helper.prepareItems)(items);
|
|
39
|
-
}
|
|
35
|
+
prepareItems: (items, options) => utils$1.compose(tree__namespace.fixOrder(options), helper.prepareItems)(items)
|
|
40
36
|
}, tree__namespace);
|
|
41
37
|
|
|
42
38
|
module.exports = utils;
|
|
43
|
-
//# sourceMappingURL=utils.js.map
|