@elliemae/ds-shuttle 2.2.0-alpha.4 → 3.0.0-next.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.
Files changed (148) hide show
  1. package/cjs/AnimationState.js +19 -46
  2. package/cjs/DSShuttle.js +219 -166
  3. package/cjs/SearchState.js +25 -44
  4. package/cjs/Shuttle.actions.js +98 -87
  5. package/cjs/ShuttleContainer.js +61 -56
  6. package/cjs/ShuttleImpl.js +206 -109
  7. package/cjs/ShuttleRenderer.js +135 -140
  8. package/cjs/ShuttleState.js +53 -57
  9. package/cjs/animation/animationConfig.js +56 -53
  10. package/cjs/classedComponents.js +69 -70
  11. package/cjs/components/LoadingIndicator.js +22 -49
  12. package/cjs/components/OverflowList.js +48 -50
  13. package/cjs/components/ShuttleBreadcrumb.js +40 -52
  14. package/cjs/components/ShuttleInfiniteScrollIndicator.js +37 -46
  15. package/cjs/components/ShuttleListItem/ActionButtons.js +51 -56
  16. package/cjs/components/ShuttleListItem/ShuttleListItem.js +80 -78
  17. package/cjs/components/ShuttleListItem/ShuttleSourceListItem.js +64 -78
  18. package/cjs/components/ShuttleListItem/ShuttleTargetListItem.js +56 -72
  19. package/cjs/components/ShuttleListPanel.js +26 -44
  20. package/cjs/components/ShuttleSearchBox.js +72 -61
  21. package/cjs/components/ShuttleSource.js +146 -150
  22. package/cjs/components/ShuttleTarget.js +100 -88
  23. package/cjs/components/VirtualizedItem.js +40 -45
  24. package/cjs/components/VirtualizedList.js +86 -81
  25. package/cjs/components/VirtualizedSortableList.js +40 -47
  26. package/cjs/helper.js +103 -69
  27. package/cjs/index.js +12 -38
  28. package/cjs/updateShuttleStateFromProps.js +69 -73
  29. package/cjs/utils.js +42 -40
  30. package/cjs/withProviders.js +27 -43
  31. package/esm/AnimationState.js +8 -12
  32. package/esm/DSShuttle.js +198 -126
  33. package/esm/SearchState.js +19 -15
  34. package/esm/Shuttle.actions.js +80 -63
  35. package/esm/ShuttleContainer.js +50 -34
  36. package/esm/ShuttleImpl.js +183 -78
  37. package/esm/ShuttleRenderer.js +128 -111
  38. package/esm/ShuttleState.js +53 -34
  39. package/esm/animation/animationConfig.js +52 -24
  40. package/esm/classedComponents.js +51 -43
  41. package/esm/components/LoadingIndicator.js +15 -20
  42. package/esm/components/OverflowList.js +41 -21
  43. package/esm/components/ShuttleBreadcrumb.js +33 -23
  44. package/esm/components/ShuttleInfiniteScrollIndicator.js +31 -18
  45. package/esm/components/ShuttleListItem/ActionButtons.js +39 -27
  46. package/esm/components/ShuttleListItem/ShuttleListItem.js +72 -50
  47. package/esm/components/ShuttleListItem/ShuttleSourceListItem.js +52 -45
  48. package/esm/components/ShuttleListItem/ShuttleTargetListItem.js +47 -42
  49. package/esm/components/ShuttleListPanel.js +19 -15
  50. package/esm/components/ShuttleSearchBox.js +66 -32
  51. package/esm/components/ShuttleSource.js +129 -125
  52. package/esm/components/ShuttleTarget.js +89 -68
  53. package/esm/components/VirtualizedItem.js +33 -15
  54. package/esm/components/VirtualizedList.js +75 -50
  55. package/esm/components/VirtualizedSortableList.js +32 -17
  56. package/esm/helper.js +67 -43
  57. package/esm/index.js +2 -9
  58. package/esm/updateShuttleStateFromProps.js +58 -39
  59. package/esm/utils.js +18 -12
  60. package/esm/withProviders.js +20 -14
  61. package/package.json +11 -11
  62. package/types/AnimationState.d.ts +2 -3
  63. package/types/DSShuttle.d.ts +1 -1
  64. package/types/SearchState.d.ts +2 -3
  65. package/types/ShuttleImpl.d.ts +2 -3
  66. package/types/ShuttleRenderer.d.ts +0 -1
  67. package/types/ShuttleState.d.ts +2 -3
  68. package/types/components/LoadingIndicator.d.ts +0 -1
  69. package/types/components/OverflowList.d.ts +0 -1
  70. package/types/components/ShuttleBreadcrumb.d.ts +0 -1
  71. package/types/components/ShuttleInfiniteScrollIndicator.d.ts +0 -1
  72. package/types/components/ShuttleListItem/ShuttleListItem.d.ts +0 -1
  73. package/types/components/ShuttleListItem/ShuttleSourceListItem.d.ts +0 -1
  74. package/types/components/ShuttleListItem/ShuttleTargetListItem.d.ts +0 -1
  75. package/types/components/ShuttleListPanel.d.ts +0 -1
  76. package/types/components/ShuttleSearchBox.d.ts +1 -3
  77. package/types/components/ShuttleSource.d.ts +0 -1
  78. package/types/components/ShuttleTarget.d.ts +0 -1
  79. package/types/components/VirtualizedItem.d.ts +0 -1
  80. package/types/components/VirtualizedList.d.ts +0 -1
  81. package/types/components/VirtualizedSortableList.d.ts +0 -1
  82. package/types/index.d.ts +1 -1
  83. package/types/updateShuttleStateFromProps.d.ts +1 -3
  84. package/types/withProviders.d.ts +0 -1
  85. package/cjs/AnimationState.js.map +0 -7
  86. package/cjs/DSShuttle.js.map +0 -7
  87. package/cjs/SearchState.js.map +0 -7
  88. package/cjs/Shuttle.actions.js.map +0 -7
  89. package/cjs/ShuttleContainer.js.map +0 -7
  90. package/cjs/ShuttleImpl.js.map +0 -7
  91. package/cjs/ShuttleRenderer.js.map +0 -7
  92. package/cjs/ShuttleState.js.map +0 -7
  93. package/cjs/animation/animationConfig.js.map +0 -7
  94. package/cjs/classedComponents.js.map +0 -7
  95. package/cjs/components/LoadingIndicator.js.map +0 -7
  96. package/cjs/components/OverflowList.js.map +0 -7
  97. package/cjs/components/ShuttleBreadcrumb.js.map +0 -7
  98. package/cjs/components/ShuttleInfiniteScrollIndicator.js.map +0 -7
  99. package/cjs/components/ShuttleListItem/ActionButtons.js.map +0 -7
  100. package/cjs/components/ShuttleListItem/ShuttleListItem.js.map +0 -7
  101. package/cjs/components/ShuttleListItem/ShuttleSourceListItem.js.map +0 -7
  102. package/cjs/components/ShuttleListItem/ShuttleTargetListItem.js.map +0 -7
  103. package/cjs/components/ShuttleListPanel.js.map +0 -7
  104. package/cjs/components/ShuttleSearchBox.js.map +0 -7
  105. package/cjs/components/ShuttleSource.js.map +0 -7
  106. package/cjs/components/ShuttleTarget.js.map +0 -7
  107. package/cjs/components/VirtualizedItem.js.map +0 -7
  108. package/cjs/components/VirtualizedList.js.map +0 -7
  109. package/cjs/components/VirtualizedSortableList.js.map +0 -7
  110. package/cjs/helper.js.map +0 -7
  111. package/cjs/index.js.map +0 -7
  112. package/cjs/tests/utils.js +0 -1218
  113. package/cjs/tests/utils.js.map +0 -7
  114. package/cjs/updateShuttleStateFromProps.js.map +0 -7
  115. package/cjs/utils.js.map +0 -7
  116. package/cjs/withProviders.js.map +0 -7
  117. package/esm/AnimationState.js.map +0 -7
  118. package/esm/DSShuttle.js.map +0 -7
  119. package/esm/SearchState.js.map +0 -7
  120. package/esm/Shuttle.actions.js.map +0 -7
  121. package/esm/ShuttleContainer.js.map +0 -7
  122. package/esm/ShuttleImpl.js.map +0 -7
  123. package/esm/ShuttleRenderer.js.map +0 -7
  124. package/esm/ShuttleState.js.map +0 -7
  125. package/esm/animation/animationConfig.js.map +0 -7
  126. package/esm/classedComponents.js.map +0 -7
  127. package/esm/components/LoadingIndicator.js.map +0 -7
  128. package/esm/components/OverflowList.js.map +0 -7
  129. package/esm/components/ShuttleBreadcrumb.js.map +0 -7
  130. package/esm/components/ShuttleInfiniteScrollIndicator.js.map +0 -7
  131. package/esm/components/ShuttleListItem/ActionButtons.js.map +0 -7
  132. package/esm/components/ShuttleListItem/ShuttleListItem.js.map +0 -7
  133. package/esm/components/ShuttleListItem/ShuttleSourceListItem.js.map +0 -7
  134. package/esm/components/ShuttleListItem/ShuttleTargetListItem.js.map +0 -7
  135. package/esm/components/ShuttleListPanel.js.map +0 -7
  136. package/esm/components/ShuttleSearchBox.js.map +0 -7
  137. package/esm/components/ShuttleSource.js.map +0 -7
  138. package/esm/components/ShuttleTarget.js.map +0 -7
  139. package/esm/components/VirtualizedItem.js.map +0 -7
  140. package/esm/components/VirtualizedList.js.map +0 -7
  141. package/esm/components/VirtualizedSortableList.js.map +0 -7
  142. package/esm/helper.js.map +0 -7
  143. package/esm/index.js.map +0 -7
  144. package/esm/tests/utils.js +0 -1189
  145. package/esm/tests/utils.js.map +0 -7
  146. package/esm/updateShuttleStateFromProps.js.map +0 -7
  147. package/esm/utils.js.map +0 -7
  148. package/esm/withProviders.js.map +0 -7
@@ -1,126 +1,137 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var Shuttle_actions_exports = {};
29
- __export(Shuttle_actions_exports, {
30
- addToTarget: () => addToTarget,
31
- moveItem: () => moveItem,
32
- navigateTo: () => navigateTo,
33
- removeFromTarget: () => removeFromTarget,
34
- resetCheckedItems: () => resetCheckedItems,
35
- resetMovedItems: () => resetMovedItems,
36
- toggleItemSelection: () => toggleItemSelection
37
- });
38
- var React = __toESM(require("react"));
39
- var import_ds_utilities = require("@elliemae/ds-utilities");
40
- var import_helper = require("./helper");
41
- var import_utils = __toESM(require("./utils"));
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
+ require('core-js/modules/web.dom-collections.iterator.js');
7
+ require('core-js/modules/esnext.async-iterator.filter.js');
8
+ require('core-js/modules/esnext.iterator.constructor.js');
9
+ require('core-js/modules/esnext.iterator.filter.js');
10
+ require('core-js/modules/esnext.async-iterator.for-each.js');
11
+ require('core-js/modules/esnext.iterator.for-each.js');
12
+ var dsUtilities = require('@elliemae/ds-utilities');
13
+ var helper = require('./helper.js');
14
+ var utils = require('./utils.js');
15
+
16
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
+
18
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
19
+
20
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
+
22
+ 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; }
42
23
  function toggleItemSelection(itemId) {
43
- return (state) => ({
44
- ...state,
45
- checkedItems: (0, import_ds_utilities.addOrRemove)(state.checkedItems, itemId)
24
+ return state => _objectSpread(_objectSpread({}, state), {}, {
25
+ checkedItems: dsUtilities.addOrRemove(state.checkedItems, itemId)
46
26
  });
47
27
  }
48
28
  function navigateTo(item, dest) {
49
- const hierarchyType = (0, import_helper.getHierarchyTypeName)(dest);
50
- return (state) => {
51
- const indexInHierarchy = state[hierarchyType].findIndex((hItem) => hItem.id === item.id);
29
+ const hierarchyType = helper.getHierarchyTypeName(dest);
30
+ return state => {
31
+ const indexInHierarchy = state[hierarchyType].findIndex(hItem => hItem.id === item.id);
52
32
  const hierarchy = state[hierarchyType];
53
- return {
54
- ...state,
33
+ return _objectSpread(_objectSpread({}, state), {}, {
55
34
  [hierarchyType]: indexInHierarchy !== -1 ? hierarchy.slice(0, indexInHierarchy + 1) : [...hierarchy, item]
56
- };
35
+ });
57
36
  };
58
37
  }
59
38
  function moveItem(item) {
60
- return (state) => {
61
- const movedItems = (0, import_helper.toggleInObject)(state.movedItems, item.id, item);
62
- return {
63
- ...state,
39
+ return state => {
40
+ const movedItems = helper.toggleInObject(state.movedItems, item.id, item);
41
+ return _objectSpread(_objectSpread({}, state), {}, {
64
42
  movedItems
65
- };
43
+ });
66
44
  };
67
45
  }
68
46
  const defaultOptions = {
69
- parentField: "parent",
70
- idField: "id",
71
- op: (hasMoved) => !hasMoved
72
- };
73
- function getItemDeep({ collection, id, options }) {
74
- const { idField } = { ...defaultOptions, ...options };
75
- const itemIndex = collection.findIndex((fItem) => fItem[idField] === id);
47
+ parentField: 'parent',
48
+ idField: 'id',
49
+ op: hasMoved => !hasMoved
50
+ }; // todo: optimize this
51
+
52
+ function getItemDeep(_ref) {
53
+ let {
54
+ collection,
55
+ id,
56
+ options
57
+ } = _ref;
58
+
59
+ const {
60
+ idField
61
+ } = _objectSpread(_objectSpread({}, defaultOptions), options);
62
+
63
+ const itemIndex = collection.findIndex(fItem => fItem[idField] === id); // get item with nested children
64
+
76
65
  const item = collection[itemIndex];
77
- const children = item?.hasChildren ? (0, import_ds_utilities.compose)(import_utils.default.getChildren({ index: itemIndex }))(collection) || [] : [];
78
- return { item, children };
66
+ const children = item !== null && item !== void 0 && item.hasChildren ? dsUtilities.compose(utils.getChildren({
67
+ index: itemIndex
68
+ }))(collection) || [] : [];
69
+ return {
70
+ item,
71
+ children
72
+ };
79
73
  }
74
+
80
75
  function addToTarget(itemToAdd, collection) {
81
- return (state, { idField }) => {
76
+ return (state, _ref2) => {
77
+ let {
78
+ idField
79
+ } = _ref2;
82
80
  const items = collection || state.preparedItems;
83
- const { item, children } = getItemDeep({
81
+ const {
82
+ item,
83
+ children
84
+ } = getItemDeep({
84
85
  collection: items,
85
86
  id: itemToAdd[idField]
86
87
  });
87
- return {
88
- ...state,
88
+ return _objectSpread(_objectSpread({}, state), {}, {
89
89
  movedItems: [...state.movedItems, item],
90
90
  targetItems: [...state.targetItems, item, ...children]
91
- };
91
+ });
92
92
  };
93
- }
93
+ } // todo: optimize this
94
+
94
95
  function removeFromTarget(itemToRemove) {
95
- return (state, { idField }) => {
96
- let targetItems = (0, import_ds_utilities.cloneDeep)(state.targetItems);
97
- const itemIndex = targetItems.findIndex((fItem) => fItem.id === itemToRemove.id);
96
+ return (state, _ref3) => {
97
+ let {
98
+ idField
99
+ } = _ref3;
100
+ let targetItems = dsUtilities.cloneDeep(state.targetItems);
101
+ const itemIndex = targetItems.findIndex(fItem => fItem.id === itemToRemove.id);
98
102
  const item = targetItems[itemIndex];
99
- const children = item?.hasChildren ? (0, import_ds_utilities.compose)((0, import_helper.filterMovedItems)(state.movedItems), import_utils.default.getChildren({ index: itemIndex }))(targetItems) || [] : [];
103
+ const children = item !== null && item !== void 0 && item.hasChildren ? dsUtilities.compose(helper.filterMovedItems(state.movedItems), utils.getChildren({
104
+ index: itemIndex
105
+ }))(targetItems) || [] : [];
100
106
  targetItems.splice(itemIndex, 1);
101
- if (item?.hasChildren && children.length) {
102
- const childrenHash = (0, import_ds_utilities.hashArray)(children, "id");
103
- targetItems = targetItems.filter((i) => !childrenHash[i.id]);
107
+
108
+ if (item !== null && item !== void 0 && item.hasChildren && children.length) {
109
+ const childrenHash = dsUtilities.hashArray(children, 'id');
110
+ targetItems = targetItems.filter(i => !childrenHash[i.id]);
104
111
  }
105
- return {
106
- ...state,
107
- movedItems: state.movedItems.filter((mItem) => mItem[idField] !== itemToRemove[idField]),
112
+
113
+ return _objectSpread(_objectSpread({}, state), {}, {
114
+ movedItems: state.movedItems.filter(mItem => mItem[idField] !== itemToRemove[idField]),
108
115
  targetItems
109
- };
116
+ });
110
117
  };
111
118
  }
112
119
  function resetCheckedItems() {
113
- return (state) => ({
114
- ...state,
120
+ return state => _objectSpread(_objectSpread({}, state), {}, {
115
121
  checkedItems: []
116
122
  });
117
123
  }
118
124
  function resetMovedItems() {
119
- return (state) => ({
120
- ...state,
125
+ return state => _objectSpread(_objectSpread({}, state), {}, {
121
126
  movedItems: [],
122
127
  targetItems: []
123
128
  });
124
129
  }
125
- module.exports = __toCommonJS(Shuttle_actions_exports);
126
- //# sourceMappingURL=Shuttle.actions.js.map
130
+
131
+ exports.addToTarget = addToTarget;
132
+ exports.moveItem = moveItem;
133
+ exports.navigateTo = navigateTo;
134
+ exports.removeFromTarget = removeFromTarget;
135
+ exports.resetCheckedItems = resetCheckedItems;
136
+ exports.resetMovedItems = resetMovedItems;
137
+ exports.toggleItemSelection = toggleItemSelection;
@@ -1,47 +1,50 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var ShuttleContainer_exports = {};
29
- __export(ShuttleContainer_exports, {
30
- default: () => ShuttleContainer_default
31
- });
32
- var React = __toESM(require("react"));
33
- var import_react = require("react");
34
- var import_ds_utilities = require("@elliemae/ds-utilities");
35
- var import_withProviders = require("./withProviders");
36
- var import_helper = require("./helper");
37
- var import_SearchState = require("./SearchState");
38
- var import_ShuttleState = require("./ShuttleState");
1
+ 'use strict';
2
+
3
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
+ require('core-js/modules/esnext.async-iterator.filter.js');
6
+ require('core-js/modules/esnext.iterator.constructor.js');
7
+ require('core-js/modules/esnext.iterator.filter.js');
8
+ require('core-js/modules/esnext.async-iterator.for-each.js');
9
+ require('core-js/modules/esnext.iterator.for-each.js');
10
+ var react = require('react');
11
+ var dsUtilities = require('@elliemae/ds-utilities');
12
+ var withProviders = require('./withProviders.js');
13
+ var helper = require('./helper.js');
14
+ var SearchState = require('./SearchState.js');
15
+ var ShuttleState = require('./ShuttleState.js');
16
+
17
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
+
19
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
20
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
21
+
22
+ const _excluded = ["state"];
23
+
24
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
25
+
26
+ 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; }
27
+
39
28
  function filterItemsByTerm(items, term) {
40
- return items.filter((item) => item.name.toLowerCase().indexOf(String(term).toLowerCase()) !== -1 || String(item.id).indexOf(String(term).toLowerCase()) !== -1);
29
+ return items.filter(item => item.name.toLowerCase().indexOf(String(term).toLowerCase()) !== -1 || String(item.id).indexOf(String(term).toLowerCase()) !== -1);
41
30
  }
42
- function ShuttleContainer({ items = [], children }) {
43
- const { state: shuttleState, ...handlers } = (0, import_react.useContext)(import_ShuttleState.ShuttleState.Context);
44
- const { state: searchState } = (0, import_react.useContext)(import_SearchState.SearchState.Context);
31
+
32
+ function ShuttleContainer(_ref) {
33
+ let {
34
+ items = [],
35
+ children
36
+ } = _ref;
37
+
38
+ const _useContext = react.useContext(ShuttleState.Context),
39
+ {
40
+ state: shuttleState
41
+ } = _useContext,
42
+ handlers = _objectWithoutProperties__default["default"](_useContext, _excluded);
43
+
44
+ const {
45
+ state: searchState
46
+ } = react.useContext(SearchState.Context);
47
+
45
48
  const {
46
49
  movedItems,
47
50
  hierarchy,
@@ -55,28 +58,30 @@ function ShuttleContainer({ items = [], children }) {
55
58
  moveCheckedItems,
56
59
  moveItem,
57
60
  navigate
58
- } = { ...shuttleState, ...searchState, ...handlers };
59
- const sourceItems = (0, import_react.useMemo)(() => (0, import_ds_utilities.compose)((items2) => items2.filter((item) => !movedItems[item.id]), (items2) => searchTerm && searching ? filterItemsByTerm(items2, searchTerm) : items2, (items2) => (0, import_helper.filterItemsByHierarchy)(items2, (0, import_helper.getActiveIdFromHierarchy)(hierarchy).id), (items2) => (0, import_helper.prepareItems)(items2))(items), [items, searchTerm, searching, hierarchy, movedItems]);
60
- const targetItems = (0, import_react.useMemo)(() => {
61
- const hierarchyId = (0, import_helper.getActiveIdFromHierarchy)(hierarchyDest).id;
62
- return (0, import_ds_utilities.compose)((items2) => (0, import_ds_utilities.sortBy)(items2, ["name"]), (items2) => hierarchyId ? (0, import_helper.filterItemsByHierarchy)(items2, hierarchyId).filter((item) => !movedItems[item.id]) : (0, import_ds_utilities.uniqBy)((0, import_ds_utilities.values)(movedItems), "id"))(items);
61
+ } = _objectSpread(_objectSpread(_objectSpread({}, shuttleState), searchState), handlers);
62
+
63
+ const sourceItems = react.useMemo(() => dsUtilities.compose(items => items.filter(item => !movedItems[item.id]), items => searchTerm && searching ? filterItemsByTerm(items, searchTerm) : items, items => helper.filterItemsByHierarchy(items, helper.getActiveIdFromHierarchy(hierarchy).id), items => helper.prepareItems(items))(items), [items, searchTerm, searching, hierarchy, movedItems]);
64
+ const targetItems = react.useMemo(() => {
65
+ const hierarchyId = helper.getActiveIdFromHierarchy(hierarchyDest).id;
66
+ return dsUtilities.compose(items => dsUtilities.sortBy(items, ['name']), items => hierarchyId ? helper.filterItemsByHierarchy(items, hierarchyId).filter(item => !movedItems[item.id]) : dsUtilities.uniqBy(dsUtilities.values(movedItems), 'id'))(items);
63
67
  }, [items, searching, hierarchyDest, movedItems]);
64
- return (0, import_ds_utilities.isFunction)(children) && children({
68
+ return dsUtilities.isFunction(children) && children({
65
69
  checkedItems,
66
70
  hierarchy,
67
71
  hierarchyDest,
68
72
  onCheckItem: toggleItemSelection,
69
73
  onClearCheckedItems: resetCheckedItems,
70
74
  onClearMovedItems: resetMovedItems,
71
- onMoveCheckedItems: () => moveCheckedItems((0, import_helper.getItemsById)(checkedItems, items)),
72
- onMoveItemToSource: (item) => moveItem(item, false),
73
- onMoveItemToTarget: (item) => moveItem(item, true),
74
- onNavigateOnSourceTo: (item) => navigate(item, false),
75
- onNavigateOnTargetTo: (item) => navigate(item, true),
75
+ onMoveCheckedItems: () => moveCheckedItems(helper.getItemsById(checkedItems, items)),
76
+ onMoveItemToSource: item => moveItem(item, false),
77
+ onMoveItemToTarget: item => moveItem(item, true),
78
+ onNavigateOnSourceTo: item => navigate(item, false),
79
+ onNavigateOnTargetTo: item => navigate(item, true),
76
80
  sourceItems,
77
81
  targetItems
78
82
  });
79
83
  }
80
- var ShuttleContainer_default = (0, import_withProviders.withProviders)(ShuttleContainer);
81
- module.exports = __toCommonJS(ShuttleContainer_exports);
82
- //# sourceMappingURL=ShuttleContainer.js.map
84
+
85
+ var ShuttleContainer$1 = withProviders(ShuttleContainer);
86
+
87
+ module.exports = ShuttleContainer$1;