@elliemae/ds-shuttle 3.0.0-alpha.0 → 3.0.0-alpha.1
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/dist/cjs/Shuttle.actions.js +29 -19
- package/dist/cjs/Shuttle.actions.js.map +1 -1
- package/dist/cjs/ShuttleContainer.js +28 -2
- package/dist/cjs/ShuttleContainer.js.map +1 -1
- package/dist/cjs/ShuttleImpl.js +32 -4
- package/dist/cjs/ShuttleImpl.js.map +1 -1
- package/dist/cjs/ShuttleRenderer.js +103 -44
- package/dist/cjs/ShuttleRenderer.js.map +1 -1
- package/dist/cjs/components/OverflowList.js +19 -3
- package/dist/cjs/components/OverflowList.js.map +1 -1
- package/dist/cjs/components/ShuttleListItem/ActionButtons.js +28 -12
- package/dist/cjs/components/ShuttleListItem/ActionButtons.js.map +1 -1
- package/dist/cjs/components/ShuttleListItem/ShuttleListItem.js +53 -15
- package/dist/cjs/components/ShuttleListItem/ShuttleListItem.js.map +1 -1
- package/dist/cjs/components/ShuttleListItem/ShuttleSourceListItem.js +51 -14
- package/dist/cjs/components/ShuttleListItem/ShuttleSourceListItem.js.map +1 -1
- package/dist/cjs/components/ShuttleListItem/ShuttleTargetListItem.js +51 -14
- package/dist/cjs/components/ShuttleListItem/ShuttleTargetListItem.js.map +1 -1
- package/dist/cjs/components/ShuttleSource.js +43 -12
- package/dist/cjs/components/ShuttleSource.js.map +1 -1
- package/dist/cjs/components/ShuttleTarget.js +41 -10
- package/dist/cjs/components/ShuttleTarget.js.map +1 -1
- package/dist/cjs/components/VirtualizedItem.js +15 -1
- package/dist/cjs/components/VirtualizedItem.js.map +1 -1
- package/dist/cjs/components/VirtualizedList.js +19 -3
- package/dist/cjs/components/VirtualizedList.js.map +1 -1
- package/dist/cjs/components/VirtualizedSortableList.js +33 -4
- package/dist/cjs/components/VirtualizedSortableList.js.map +1 -1
- package/dist/cjs/helper.js +21 -5
- package/dist/cjs/helper.js.map +1 -1
- package/dist/cjs/tests/utils.js +18 -1
- package/dist/cjs/tests/utils.js.map +1 -1
- package/dist/cjs/updateShuttleStateFromProps.js +23 -13
- package/dist/cjs/updateShuttleStateFromProps.js.map +1 -1
- package/dist/cjs/utils.js +17 -4
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/withProviders.js +15 -3
- package/dist/cjs/withProviders.js.map +1 -1
- package/dist/esm/Shuttle.actions.js +31 -19
- package/dist/esm/Shuttle.actions.js.map +1 -1
- package/dist/esm/ShuttleContainer.js +30 -2
- package/dist/esm/ShuttleContainer.js.map +1 -1
- package/dist/esm/ShuttleImpl.js +34 -4
- package/dist/esm/ShuttleImpl.js.map +1 -1
- package/dist/esm/ShuttleRenderer.js +105 -44
- package/dist/esm/ShuttleRenderer.js.map +1 -1
- package/dist/esm/components/OverflowList.js +21 -3
- package/dist/esm/components/OverflowList.js.map +1 -1
- package/dist/esm/components/ShuttleListItem/ActionButtons.js +30 -12
- package/dist/esm/components/ShuttleListItem/ActionButtons.js.map +1 -1
- package/dist/esm/components/ShuttleListItem/ShuttleListItem.js +55 -15
- package/dist/esm/components/ShuttleListItem/ShuttleListItem.js.map +1 -1
- package/dist/esm/components/ShuttleListItem/ShuttleSourceListItem.js +53 -14
- package/dist/esm/components/ShuttleListItem/ShuttleSourceListItem.js.map +1 -1
- package/dist/esm/components/ShuttleListItem/ShuttleTargetListItem.js +53 -14
- package/dist/esm/components/ShuttleListItem/ShuttleTargetListItem.js.map +1 -1
- package/dist/esm/components/ShuttleSource.js +45 -12
- package/dist/esm/components/ShuttleSource.js.map +1 -1
- package/dist/esm/components/ShuttleTarget.js +43 -10
- package/dist/esm/components/ShuttleTarget.js.map +1 -1
- package/dist/esm/components/VirtualizedItem.js +17 -1
- package/dist/esm/components/VirtualizedItem.js.map +1 -1
- package/dist/esm/components/VirtualizedList.js +21 -3
- package/dist/esm/components/VirtualizedList.js.map +1 -1
- package/dist/esm/components/VirtualizedSortableList.js +35 -4
- package/dist/esm/components/VirtualizedSortableList.js.map +1 -1
- package/dist/esm/helper.js +23 -5
- package/dist/esm/helper.js.map +1 -1
- package/dist/esm/tests/utils.js +20 -1
- package/dist/esm/tests/utils.js.map +1 -1
- package/dist/esm/updateShuttleStateFromProps.js +25 -13
- package/dist/esm/updateShuttleStateFromProps.js.map +1 -1
- package/dist/esm/utils.js +19 -4
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/withProviders.js +17 -3
- package/dist/esm/withProviders.js.map +1 -1
- package/package.json +12 -11
- package/dist/types/AnimationState.d.ts +0 -27
- package/dist/types/DSShuttle.d.ts +0 -304
- package/dist/types/SearchState.d.ts +0 -23
- package/dist/types/Shuttle.actions.d.ts +0 -11
- package/dist/types/ShuttleContainer.d.ts +0 -3
- package/dist/types/ShuttleImpl.d.ts +0 -4
- package/dist/types/ShuttleRenderer.d.ts +0 -38
- package/dist/types/ShuttleState.d.ts +0 -54
- package/dist/types/animation/animationConfig.d.ts +0 -68
- package/dist/types/classedComponents.d.ts +0 -14
- package/dist/types/components/LoadingIndicator.d.ts +0 -4
- package/dist/types/components/OverflowList.d.ts +0 -8
- package/dist/types/components/ShuttleBreadcrumb.d.ts +0 -8
- package/dist/types/components/ShuttleInfiniteScrollIndicator.d.ts +0 -6
- package/dist/types/components/ShuttleListItem/ActionButtons.d.ts +0 -4
- package/dist/types/components/ShuttleListItem/ShuttleListItem.d.ts +0 -15
- package/dist/types/components/ShuttleListItem/ShuttleSourceListItem.d.ts +0 -14
- package/dist/types/components/ShuttleListItem/ShuttleTargetListItem.d.ts +0 -14
- package/dist/types/components/ShuttleListPanel.d.ts +0 -8
- package/dist/types/components/ShuttleSearchBox.d.ts +0 -22
- package/dist/types/components/ShuttleSource.d.ts +0 -55
- package/dist/types/components/ShuttleTarget.d.ts +0 -17
- package/dist/types/components/VirtualizedItem.d.ts +0 -4
- package/dist/types/components/VirtualizedList.d.ts +0 -13
- package/dist/types/components/VirtualizedSortableList.d.ts +0 -7
- package/dist/types/helper.d.ts +0 -16
- package/dist/types/index.d.ts +0 -1
- package/dist/types/tests/DSShuttle.events.test.d.ts +0 -1
- package/dist/types/tests/DSShuttle.test.d.ts +0 -1
- package/dist/types/tests/utils.d.ts +0 -116
- package/dist/types/updateShuttleStateFromProps.d.ts +0 -3
- package/dist/types/utils.d.ts +0 -2
- package/dist/types/withProviders.d.ts +0 -4
|
@@ -1,3 +1,22 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
1
20
|
import * as React from "react";
|
|
2
21
|
import {
|
|
3
22
|
addOrRemove,
|
|
@@ -12,8 +31,7 @@ import {
|
|
|
12
31
|
} from "./helper";
|
|
13
32
|
import utils from "./utils";
|
|
14
33
|
function toggleItemSelection(itemId) {
|
|
15
|
-
return (state) => ({
|
|
16
|
-
...state,
|
|
34
|
+
return (state) => __spreadProps(__spreadValues({}, state), {
|
|
17
35
|
checkedItems: addOrRemove(state.checkedItems, itemId)
|
|
18
36
|
});
|
|
19
37
|
}
|
|
@@ -22,19 +40,17 @@ function navigateTo(item, dest) {
|
|
|
22
40
|
return (state) => {
|
|
23
41
|
const indexInHierarchy = state[hierarchyType].findIndex((hItem) => hItem.id === item.id);
|
|
24
42
|
const hierarchy = state[hierarchyType];
|
|
25
|
-
return {
|
|
26
|
-
...state,
|
|
43
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
27
44
|
[hierarchyType]: indexInHierarchy !== -1 ? hierarchy.slice(0, indexInHierarchy + 1) : [...hierarchy, item]
|
|
28
|
-
};
|
|
45
|
+
});
|
|
29
46
|
};
|
|
30
47
|
}
|
|
31
48
|
function moveItem(item) {
|
|
32
49
|
return (state) => {
|
|
33
50
|
const movedItems = toggleInObject(state.movedItems, item.id, item);
|
|
34
|
-
return {
|
|
35
|
-
...state,
|
|
51
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
36
52
|
movedItems
|
|
37
|
-
};
|
|
53
|
+
});
|
|
38
54
|
};
|
|
39
55
|
}
|
|
40
56
|
const defaultOptions = {
|
|
@@ -43,7 +59,7 @@ const defaultOptions = {
|
|
|
43
59
|
op: (hasMoved) => !hasMoved
|
|
44
60
|
};
|
|
45
61
|
function getItemDeep({ collection, id, options }) {
|
|
46
|
-
const { idField } = {
|
|
62
|
+
const { idField } = __spreadValues(__spreadValues({}, defaultOptions), options);
|
|
47
63
|
const itemIndex = collection.findIndex((fItem) => fItem[idField] === id);
|
|
48
64
|
const item = collection[itemIndex];
|
|
49
65
|
const children = item?.hasChildren ? compose(utils.getChildren({ index: itemIndex }))(collection) || [] : [];
|
|
@@ -56,11 +72,10 @@ function addToTarget(itemToAdd, collection) {
|
|
|
56
72
|
collection: items,
|
|
57
73
|
id: itemToAdd[idField]
|
|
58
74
|
});
|
|
59
|
-
return {
|
|
60
|
-
...state,
|
|
75
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
61
76
|
movedItems: [...state.movedItems, item],
|
|
62
77
|
targetItems: [...state.targetItems, item, ...children]
|
|
63
|
-
};
|
|
78
|
+
});
|
|
64
79
|
};
|
|
65
80
|
}
|
|
66
81
|
function removeFromTarget(itemToRemove) {
|
|
@@ -74,22 +89,19 @@ function removeFromTarget(itemToRemove) {
|
|
|
74
89
|
const childrenHash = hashArray(children, "id");
|
|
75
90
|
targetItems = targetItems.filter((i) => !childrenHash[i.id]);
|
|
76
91
|
}
|
|
77
|
-
return {
|
|
78
|
-
...state,
|
|
92
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
79
93
|
movedItems: state.movedItems.filter((mItem) => mItem[idField] !== itemToRemove[idField]),
|
|
80
94
|
targetItems
|
|
81
|
-
};
|
|
95
|
+
});
|
|
82
96
|
};
|
|
83
97
|
}
|
|
84
98
|
function resetCheckedItems() {
|
|
85
|
-
return (state) => ({
|
|
86
|
-
...state,
|
|
99
|
+
return (state) => __spreadProps(__spreadValues({}, state), {
|
|
87
100
|
checkedItems: []
|
|
88
101
|
});
|
|
89
102
|
}
|
|
90
103
|
function resetMovedItems() {
|
|
91
|
-
return (state) => ({
|
|
92
|
-
...state,
|
|
104
|
+
return (state) => __spreadProps(__spreadValues({}, state), {
|
|
93
105
|
movedItems: [],
|
|
94
106
|
targetItems: []
|
|
95
107
|
});
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/Shuttle.actions.js"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import {\n addOrRemove,\n cloneDeep,\n hashArray,\n compose,\n} from '@elliemae/ds-utilities';\nimport {\n getHierarchyTypeName,\n toggleInObject,\n filterMovedItems,\n} from './helper';\n\nimport utils from './utils';\n\nexport function toggleItemSelection(itemId) {\n return state => ({\n ...state,\n checkedItems: addOrRemove(state.checkedItems, itemId),\n });\n}\nexport function navigateTo(item, dest) {\n const hierarchyType = getHierarchyTypeName(dest);\n return state => {\n const indexInHierarchy = state[hierarchyType].findIndex(\n hItem => hItem.id === item.id,\n );\n const hierarchy = state[hierarchyType];\n return {\n ...state,\n [hierarchyType]:\n indexInHierarchy !== -1\n ? hierarchy.slice(0, indexInHierarchy + 1)\n : [...hierarchy, item],\n };\n };\n}\nexport function moveItem(item) {\n return state => {\n const movedItems = toggleInObject(state.movedItems, item.id, item);\n return {\n ...state,\n movedItems,\n };\n };\n}\n\nconst defaultOptions = {\n parentField: 'parent',\n idField: 'id',\n op: hasMoved => !hasMoved,\n};\n\n// todo: optimize this\nfunction getItemDeep({ collection, id, options }) {\n const { idField } = { ...defaultOptions, ...options };\n const itemIndex = collection.findIndex(fItem => fItem[idField] === id);\n\n // get item with nested children\n const item = collection[itemIndex];\n const children = item?.hasChildren\n ? compose(utils.getChildren({ index: itemIndex }))(collection) || []\n : [];\n\n return { item, children };\n}\n\nexport function addToTarget(itemToAdd, collection) {\n return (state, { idField }) => {\n const items = collection || state.preparedItems;\n\n const { item, children } = getItemDeep({\n collection: items,\n id: itemToAdd[idField],\n });\n\n return {\n ...state,\n movedItems: [...state.movedItems, item],\n targetItems: [...state.targetItems, item, ...children],\n };\n };\n}\n\n// todo: optimize this\nexport function removeFromTarget(itemToRemove) {\n return (state, { idField }) => {\n let targetItems = cloneDeep(state.targetItems);\n\n const itemIndex = targetItems.findIndex(\n fItem => fItem.id === itemToRemove.id,\n );\n\n const item = targetItems[itemIndex];\n const children = item?.hasChildren\n ? compose(\n filterMovedItems(state.movedItems),\n utils.getChildren({ index: itemIndex }),\n )(targetItems) || []\n : [];\n\n targetItems.splice(itemIndex, 1);\n if (item?.hasChildren && children.length) {\n const childrenHash = hashArray(children, 'id');\n targetItems = targetItems.filter(i => !childrenHash[i.id]);\n }\n\n return {\n ...state,\n movedItems: state.movedItems.filter(\n mItem => mItem[idField] !== itemToRemove[idField],\n ),\n targetItems,\n };\n };\n}\n\nexport function resetCheckedItems() {\n return state => ({\n ...state,\n checkedItems: [],\n });\n}\nexport function resetMovedItems() {\n return state => ({\n ...state,\n movedItems: [],\n targetItems: [],\n });\n}\n"],
|
|
5
|
-
"mappings": "AAAA;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA;AAAA;AAAA;AAAA;AAMA;AAEO,6BAA6B,QAAQ;AAC1C,SAAO,WAAU
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA;AAAA;AAAA;AAAA;AAMA;AAEO,6BAA6B,QAAQ;AAC1C,SAAO,WAAU,iCACZ,QADY;AAAA,IAEf,cAAc,YAAY,MAAM,cAAc;AAAA;AAAA;AAG3C,oBAAoB,MAAM,MAAM;AACrC,QAAM,gBAAgB,qBAAqB;AAC3C,SAAO,WAAS;AACd,UAAM,mBAAmB,MAAM,eAAe,UAC5C,WAAS,MAAM,OAAO,KAAK;AAE7B,UAAM,YAAY,MAAM;AACxB,WAAO,iCACF,QADE;AAAA,OAEJ,gBACC,qBAAqB,KACjB,UAAU,MAAM,GAAG,mBAAmB,KACtC,CAAC,GAAG,WAAW;AAAA;AAAA;AAAA;AAIpB,kBAAkB,MAAM;AAC7B,SAAO,WAAS;AACd,UAAM,aAAa,eAAe,MAAM,YAAY,KAAK,IAAI;AAC7D,WAAO,iCACF,QADE;AAAA,MAEL;AAAA;AAAA;AAAA;AAKN,MAAM,iBAAiB;AAAA,EACrB,aAAa;AAAA,EACb,SAAS;AAAA,EACT,IAAI,cAAY,CAAC;AAAA;AAInB,qBAAqB,EAAE,YAAY,IAAI,WAAW;AAChD,QAAM,EAAE,YAAY,kCAAK,iBAAmB;AAC5C,QAAM,YAAY,WAAW,UAAU,WAAS,MAAM,aAAa;AAGnE,QAAM,OAAO,WAAW;AACxB,QAAM,WAAW,MAAM,cACnB,QAAQ,MAAM,YAAY,EAAE,OAAO,cAAc,eAAe,KAChE;AAEJ,SAAO,EAAE,MAAM;AAAA;AAGV,qBAAqB,WAAW,YAAY;AACjD,SAAO,CAAC,OAAO,EAAE,cAAc;AAC7B,UAAM,QAAQ,cAAc,MAAM;AAElC,UAAM,EAAE,MAAM,aAAa,YAAY;AAAA,MACrC,YAAY;AAAA,MACZ,IAAI,UAAU;AAAA;AAGhB,WAAO,iCACF,QADE;AAAA,MAEL,YAAY,CAAC,GAAG,MAAM,YAAY;AAAA,MAClC,aAAa,CAAC,GAAG,MAAM,aAAa,MAAM,GAAG;AAAA;AAAA;AAAA;AAM5C,0BAA0B,cAAc;AAC7C,SAAO,CAAC,OAAO,EAAE,cAAc;AAC7B,QAAI,cAAc,UAAU,MAAM;AAElC,UAAM,YAAY,YAAY,UAC5B,WAAS,MAAM,OAAO,aAAa;AAGrC,UAAM,OAAO,YAAY;AACzB,UAAM,WAAW,MAAM,cACnB,QACE,iBAAiB,MAAM,aACvB,MAAM,YAAY,EAAE,OAAO,cAC3B,gBAAgB,KAClB;AAEJ,gBAAY,OAAO,WAAW;AAC9B,QAAI,MAAM,eAAe,SAAS,QAAQ;AACxC,YAAM,eAAe,UAAU,UAAU;AACzC,oBAAc,YAAY,OAAO,OAAK,CAAC,aAAa,EAAE;AAAA;AAGxD,WAAO,iCACF,QADE;AAAA,MAEL,YAAY,MAAM,WAAW,OAC3B,WAAS,MAAM,aAAa,aAAa;AAAA,MAE3C;AAAA;AAAA;AAAA;AAKC,6BAA6B;AAClC,SAAO,WAAU,iCACZ,QADY;AAAA,IAEf,cAAc;AAAA;AAAA;AAGX,2BAA2B;AAChC,SAAO,WAAU,iCACZ,QADY;AAAA,IAEf,YAAY;AAAA,IACZ,aAAa;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,3 +1,31 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __spreadValues = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
var __objRest = (source, exclude) => {
|
|
18
|
+
var target = {};
|
|
19
|
+
for (var prop in source)
|
|
20
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
21
|
+
target[prop] = source[prop];
|
|
22
|
+
if (source != null && __getOwnPropSymbols)
|
|
23
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
24
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
25
|
+
target[prop] = source[prop];
|
|
26
|
+
}
|
|
27
|
+
return target;
|
|
28
|
+
};
|
|
1
29
|
import * as React from "react";
|
|
2
30
|
import { useContext, useMemo } from "react";
|
|
3
31
|
import {
|
|
@@ -20,7 +48,7 @@ function filterItemsByTerm(items, term) {
|
|
|
20
48
|
return items.filter((item) => item.name.toLowerCase().indexOf(String(term).toLowerCase()) !== -1 || String(item.id).indexOf(String(term).toLowerCase()) !== -1);
|
|
21
49
|
}
|
|
22
50
|
function ShuttleContainer({ items = [], children }) {
|
|
23
|
-
const { state: shuttleState,
|
|
51
|
+
const _a = useContext(ShuttleState.Context), { state: shuttleState } = _a, handlers = __objRest(_a, ["state"]);
|
|
24
52
|
const { state: searchState } = useContext(SearchState.Context);
|
|
25
53
|
const {
|
|
26
54
|
movedItems,
|
|
@@ -35,7 +63,7 @@ function ShuttleContainer({ items = [], children }) {
|
|
|
35
63
|
moveCheckedItems,
|
|
36
64
|
moveItem,
|
|
37
65
|
navigate
|
|
38
|
-
} = {
|
|
66
|
+
} = __spreadValues(__spreadValues(__spreadValues({}, shuttleState), searchState), handlers);
|
|
39
67
|
const sourceItems = useMemo(() => compose((items2) => items2.filter((item) => !movedItems[item.id]), (items2) => searchTerm && searching ? filterItemsByTerm(items2, searchTerm) : items2, (items2) => filterItemsByHierarchy(items2, getActiveIdFromHierarchy(hierarchy).id), (items2) => prepareItems(items2))(items), [items, searchTerm, searching, hierarchy, movedItems]);
|
|
40
68
|
const targetItems = useMemo(() => {
|
|
41
69
|
const hierarchyId = getActiveIdFromHierarchy(hierarchyDest).id;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/ShuttleContainer.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-shadow */\nimport { useContext, useMemo } from 'react';\nimport {\n isFunction,\n compose,\n uniqBy,\n values,\n sortBy,\n} from '@elliemae/ds-utilities';\nimport { withProviders } from './withProviders';\nimport {\n prepareItems,\n getActiveIdFromHierarchy,\n filterItemsByHierarchy,\n getItemsById,\n} from './helper';\nimport { SearchState } from './SearchState';\nimport { ShuttleState } from './ShuttleState';\n\nfunction filterItemsByTerm(items, term) {\n return items.filter(\n item =>\n item.name.toLowerCase().indexOf(String(term).toLowerCase()) !== -1 ||\n String(item.id).indexOf(String(term).toLowerCase()) !== -1,\n );\n}\n\nfunction ShuttleContainer({ items = [], children }) {\n const { state: shuttleState, ...handlers } = useContext(\n ShuttleState.Context,\n );\n const { state: searchState } = useContext(SearchState.Context);\n const {\n movedItems,\n hierarchy,\n hierarchyDest,\n checkedItems,\n searchTerm,\n searching,\n toggleItemSelection,\n resetCheckedItems,\n resetMovedItems,\n moveCheckedItems,\n moveItem,\n navigate,\n } = { ...shuttleState, ...searchState, ...handlers };\n\n const sourceItems = useMemo(\n () =>\n compose(\n items => items.filter(item => !movedItems[item.id]),\n items =>\n searchTerm && searching\n ? filterItemsByTerm(items, searchTerm)\n : items,\n items =>\n filterItemsByHierarchy(items, getActiveIdFromHierarchy(hierarchy).id),\n items => prepareItems(items),\n )(items),\n [items, searchTerm, searching, hierarchy, movedItems],\n );\n\n const targetItems = useMemo(() => {\n const hierarchyId = getActiveIdFromHierarchy(hierarchyDest).id;\n return compose(\n items => sortBy(items, ['name']),\n items =>\n hierarchyId\n ? filterItemsByHierarchy(items, hierarchyId).filter(\n item => !movedItems[item.id],\n )\n : uniqBy(values(movedItems), 'id'),\n )(items);\n }, [items, searching, hierarchyDest, movedItems]);\n\n return (\n isFunction(children) &&\n children({\n checkedItems,\n hierarchy,\n hierarchyDest,\n onCheckItem: toggleItemSelection,\n onClearCheckedItems: resetCheckedItems,\n onClearMovedItems: resetMovedItems,\n onMoveCheckedItems: () =>\n moveCheckedItems(getItemsById(checkedItems, items)),\n onMoveItemToSource: item => moveItem(item, false),\n onMoveItemToTarget: item => moveItem(item, true),\n onNavigateOnSourceTo: item => navigate(item, false),\n onNavigateOnTargetTo: item => navigate(item, true),\n sourceItems,\n targetItems,\n })\n );\n}\n\nexport default withProviders(ShuttleContainer);\n"],
|
|
5
|
-
"mappings": "AAAA;ACCA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACA;AAEA,2BAA2B,OAAO,MAAM;AACtC,SAAO,MAAM,OACX,UACE,KAAK,KAAK,cAAc,QAAQ,OAAO,MAAM,mBAAmB,MAChE,OAAO,KAAK,IAAI,QAAQ,OAAO,MAAM,mBAAmB;AAAA;AAI9D,0BAA0B,EAAE,QAAQ,IAAI,YAAY;AAClD,
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;ACCA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACA;AAEA,2BAA2B,OAAO,MAAM;AACtC,SAAO,MAAM,OACX,UACE,KAAK,KAAK,cAAc,QAAQ,OAAO,MAAM,mBAAmB,MAChE,OAAO,KAAK,IAAI,QAAQ,OAAO,MAAM,mBAAmB;AAAA;AAI9D,0BAA0B,EAAE,QAAQ,IAAI,YAAY;AAClD,QAA6C,gBAC3C,aAAa,UADP,SAAO,iBAA8B,IAAb,qBAAa,IAAb,CAAxB;AAGR,QAAM,EAAE,OAAO,gBAAgB,WAAW,YAAY;AACtD,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACE,iDAAK,eAAiB,cAAgB;AAE1C,QAAM,cAAc,QAClB,MACE,QACE,YAAS,OAAM,OAAO,UAAQ,CAAC,WAAW,KAAK,MAC/C,YACE,cAAc,YACV,kBAAkB,QAAO,cACzB,QACN,YACE,uBAAuB,QAAO,yBAAyB,WAAW,KACpE,YAAS,aAAa,SACtB,QACJ,CAAC,OAAO,YAAY,WAAW,WAAW;AAG5C,QAAM,cAAc,QAAQ,MAAM;AAChC,UAAM,cAAc,yBAAyB,eAAe;AAC5D,WAAO,QACL,YAAS,OAAO,QAAO,CAAC,UACxB,YACE,cACI,uBAAuB,QAAO,aAAa,OACzC,UAAQ,CAAC,WAAW,KAAK,OAE3B,OAAO,OAAO,aAAa,OACjC;AAAA,KACD,CAAC,OAAO,WAAW,eAAe;AAErC,SACE,WAAW,aACX,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa;AAAA,IACb,qBAAqB;AAAA,IACrB,mBAAmB;AAAA,IACnB,oBAAoB,MAClB,iBAAiB,aAAa,cAAc;AAAA,IAC9C,oBAAoB,UAAQ,SAAS,MAAM;AAAA,IAC3C,oBAAoB,UAAQ,SAAS,MAAM;AAAA,IAC3C,sBAAsB,UAAQ,SAAS,MAAM;AAAA,IAC7C,sBAAsB,UAAQ,SAAS,MAAM;AAAA,IAC7C;AAAA,IACA;AAAA;AAAA;AAKN,IAAO,2BAAQ,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/ShuttleImpl.js
CHANGED
|
@@ -1,3 +1,34 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
var __objRest = (source, exclude) => {
|
|
21
|
+
var target = {};
|
|
22
|
+
for (var prop in source)
|
|
23
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
24
|
+
target[prop] = source[prop];
|
|
25
|
+
if (source != null && __getOwnPropSymbols)
|
|
26
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
27
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
28
|
+
target[prop] = source[prop];
|
|
29
|
+
}
|
|
30
|
+
return target;
|
|
31
|
+
};
|
|
1
32
|
import * as React from "react";
|
|
2
33
|
import React2, { Component } from "react";
|
|
3
34
|
import { compose, arrayMove } from "@elliemae/ds-utilities";
|
|
@@ -126,7 +157,7 @@ class ShuttleImpl extends Component {
|
|
|
126
157
|
onTargetSortEnd({ sourceItem, targetItem });
|
|
127
158
|
}
|
|
128
159
|
render() {
|
|
129
|
-
const { idField, nonSelectedItems, moreItemsLoading,
|
|
160
|
+
const _a = this.props, { idField, nonSelectedItems, moreItemsLoading } = _a, rest = __objRest(_a, ["idField", "nonSelectedItems", "moreItemsLoading"]);
|
|
130
161
|
const {
|
|
131
162
|
hierarchy,
|
|
132
163
|
hierarchyDest,
|
|
@@ -167,8 +198,7 @@ class ShuttleImpl extends Component {
|
|
|
167
198
|
return hierarchyId ? compose(filterMovedItems(movedItems), getChildrenFromParent(hierarchyId))(tItems) : movedItems;
|
|
168
199
|
})(targetItems);
|
|
169
200
|
}
|
|
170
|
-
return /* @__PURE__ */ React2.createElement(ShuttleRenderer, {
|
|
171
|
-
...rest,
|
|
201
|
+
return /* @__PURE__ */ React2.createElement(ShuttleRenderer, __spreadProps(__spreadValues({}, rest), {
|
|
172
202
|
moreItemsLoading,
|
|
173
203
|
checkedItems,
|
|
174
204
|
hierarchy,
|
|
@@ -186,7 +216,7 @@ class ShuttleImpl extends Component {
|
|
|
186
216
|
onTargetSortEnd: this.handleTargetSortEnd,
|
|
187
217
|
sourceItems: composedSourceItems,
|
|
188
218
|
targetItems: composedTargetItems
|
|
189
|
-
});
|
|
219
|
+
}));
|
|
190
220
|
}
|
|
191
221
|
}
|
|
192
222
|
ShuttleImpl.contextType = SearchState.Context;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/ShuttleImpl.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/static-property-placement */\n/* eslint-disable react/prop-types */\n/* eslint-disable indent */\n/* eslint-disable import/extensions,react/no-unused-state,no-shadow,max-lines */\nimport React, { Component } from 'react';\nimport { compose, arrayMove } from '@elliemae/ds-utilities';\nimport { withProviders } from './withProviders';\nimport {\n addToTarget,\n navigateTo,\n resetCheckedItems,\n resetMovedItems,\n toggleItemSelection,\n removeFromTarget,\n} from './Shuttle.actions';\nimport {\n getActiveIdFromHierarchy,\n filterBySearch,\n getItemsById,\n pipe,\n getChildrenFromParent,\n filterMovedItems,\n} from './helper';\nimport { ShuttleRenderer } from './ShuttleRenderer';\nimport { SearchState } from './SearchState';\nimport { updateShuttleStateFromProps } from './updateShuttleStateFromProps';\n\nclass ShuttleImpl extends Component {\n static contextType = SearchState.Context;\n\n constructor(props) {\n super(props);\n this.state = {\n prevProps: {},\n preparedItems: [],\n checkedItems: [],\n // left breadcrumb\n hierarchy: [{ name: props.sourceRootTitle, id: null }],\n // right breadcrumb\n hierarchyDest: [{ name: props.targetRootTitle, id: null }],\n\n movedItems: [],\n sourceItems: [],\n targetItems: [],\n };\n this.moveCheckedItems = this.moveCheckedItems.bind(this);\n this.resetMovedItems = this.resetMovedItems.bind(this);\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n return updateShuttleStateFromProps(nextProps, prevState);\n }\n\n componentDidMount() {\n const { setGetStatus } = this.props;\n setGetStatus(this.getState);\n }\n\n getState = () => {\n const { movedItems } = this.state;\n return Object.keys(movedItems);\n };\n\n handleChange() {\n const { onChange } = this.props;\n const { movedItems } = this.state;\n onChange(Object.keys(movedItems));\n }\n\n navigate(item, dest, direction) {\n const { onDrillDown, onDrillDownTarget } = this.props;\n\n if (!dest) onDrillDown(item, direction);\n if (dest) onDrillDownTarget(item, direction);\n\n const { reset: resetSearchState } = this.context;\n resetSearchState();\n\n this.setState(pipe([navigateTo(item, dest), resetCheckedItems()]));\n }\n\n resetCheckedItems() {\n this.setState(resetCheckedItems());\n }\n\n resetMovedItems() {\n const { selectedItems, onRemoveAllFromTarget } = this.props;\n if (!selectedItems) {\n this.setState(\n pipe([navigateTo({ id: null }, true), resetMovedItems()]),\n () => {\n this.handleChange();\n },\n );\n } else {\n this.setState(pipe([navigateTo({ id: null }, true)]));\n }\n onRemoveAllFromTarget();\n }\n\n addToTarget(item) {\n const { selectedItems, onAddToTarget } = this.props;\n if (!selectedItems) {\n this.setState(pipe([addToTarget(item), resetCheckedItems()]), () => {\n this.handleChange();\n });\n }\n onAddToTarget(item);\n }\n\n removeFromTarget(item) {\n const { selectedItems, onRemoveFromTarget } = this.props;\n if (!selectedItems) {\n this.setState(pipe([removeFromTarget(item)]), () => {\n this.handleChange();\n });\n }\n onRemoveFromTarget(item);\n }\n\n toggleItemSelection(item) {\n this.setState(toggleItemSelection(item.id));\n }\n\n moveCheckedItems() {\n const { onAddCheckedItems, selectedItems, nonSelectedItems } = this.props;\n const { checkedItems, preparedItems } = this.state;\n const isControlledV2 = !!selectedItems && !!nonSelectedItems;\n const checked = isControlledV2\n ? nonSelectedItems.filter((item) =>\n checkedItems.some((check) => check === item),\n )\n : checkedItems;\n const items = getItemsById(checked, preparedItems);\n const actions = !selectedItems\n ? items.map((item) => addToTarget(item))\n : [];\n this.setState(pipe([...actions, resetCheckedItems()]), () => {\n this.handleChange();\n });\n onAddCheckedItems(items);\n }\n\n handleTargetSortEnd({ sourceItem, targetItem }) {\n const { idField, onTargetSortEnd } = this.props;\n const { targetItems, hierarchyDest, movedItems } = this.state;\n\n const hierarchyId = getActiveIdFromHierarchy(hierarchyDest).id;\n\n const collection = !hierarchyId ? movedItems : targetItems;\n\n const oldIndex = collection.findIndex(\n (tItem) => tItem[idField] === sourceItem[idField],\n );\n const newIndex = collection.findIndex(\n (tItem) => tItem[idField] === targetItem[idField],\n );\n\n const sortedMovedItems = !hierarchyId\n ? arrayMove(movedItems, oldIndex, newIndex)\n : movedItems;\n const sortedItems = hierarchyId\n ? arrayMove(targetItems, oldIndex, newIndex)\n : targetItems;\n\n this.setState({\n targetItems: sortedItems,\n movedItems: sortedMovedItems,\n });\n onTargetSortEnd({ sourceItem, targetItem });\n }\n\n render() {\n const { idField, nonSelectedItems, moreItemsLoading, ...rest } = this.props;\n const {\n hierarchy,\n hierarchyDest,\n checkedItems,\n movedItems,\n preparedItems: items,\n targetItems,\n } = this.state;\n const {\n state: { searchTerm, searching },\n } = this.context;\n\n const handleControlledSourceItms = () => {\n const { id } = getActiveIdFromHierarchy(hierarchy);\n if (id) {\n return filterBySearch(\n searchTerm,\n searching,\n )(\n getChildrenFromParent(id)(\n nonSelectedItems.map((it) => items.find((itt) => itt.id === it)),\n ),\n );\n }\n\n return filterBySearch(\n searchTerm,\n searching,\n )(\n items.filter((it) =>\n nonSelectedItems.some(\n (itt) =>\n itt === it.id &&\n !nonSelectedItems.some((ittt) => ittt === it.parent),\n ),\n ),\n );\n };\n\n let composedSourceItems;\n\n // controlled V2 TODO make it default controlled behavior\n if (nonSelectedItems) {\n composedSourceItems = handleControlledSourceItms();\n } else {\n composedSourceItems = compose(\n filterBySearch(searchTerm, searching),\n filterMovedItems(movedItems),\n getChildrenFromParent(getActiveIdFromHierarchy(hierarchy).id),\n )(items);\n }\n\n const handleControlledTargetItms = () => {\n const { id } = getActiveIdFromHierarchy(hierarchyDest);\n if (id) {\n return getChildrenFromParent(\n getActiveIdFromHierarchy(hierarchyDest).id,\n )(\n this.props.selectedItems.map((it) =>\n items.find((itt) => itt.id === it),\n ),\n );\n }\n\n return targetItems.filter((it) =>\n this.props.selectedItems.some(\n (itt) =>\n itt === it.id &&\n !this.props.selectedItems.some((ittt) => ittt === it.parent),\n ),\n );\n };\n\n let composedTargetItems;\n\n // controlled V2 TODO make it default controlled behavior\n if (nonSelectedItems) {\n composedTargetItems = handleControlledTargetItms();\n } else {\n composedTargetItems = compose((tItems) => {\n const hierarchyId = getActiveIdFromHierarchy(hierarchyDest).id;\n return hierarchyId\n ? compose(\n filterMovedItems(movedItems),\n getChildrenFromParent(hierarchyId),\n )(tItems)\n : movedItems;\n })(targetItems);\n }\n\n return (\n <ShuttleRenderer\n {...rest}\n moreItemsLoading={moreItemsLoading}\n checkedItems={checkedItems}\n hierarchy={hierarchy}\n hierarchyDest={hierarchyDest}\n onCheckItem={this.toggleItemSelection}\n onClearCheckedItems={this.resetCheckedItems}\n onClearMovedItems={this.resetMovedItems}\n onItemCheck={this.toggleItemSelection}\n onMoveCheckedItems={this.moveCheckedItems}\n onMoveItemToSource={(item) => this.removeFromTarget(item, false)}\n onMoveItemToTarget={(item) => this.addToTarget(item, true)}\n onNavigateOnSourceTo={(item, direction) =>\n this.navigate(item, false, direction)\n }\n onNavigateOnTargetTo={(item, direction) =>\n this.navigate(item, true, direction)\n }\n onSourceSortEnd={() => null}\n onTargetSortEnd={this.handleTargetSortEnd}\n sourceItems={composedSourceItems}\n targetItems={composedTargetItems}\n />\n );\n }\n}\n\nconst ShuttleImplHoc = withProviders(ShuttleImpl);\nexport { ShuttleImplHoc as ShuttleImpl };\nexport default ShuttleImplHoc;\n"],
|
|
5
|
-
"mappings": "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
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,3 +1,34 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
var __objRest = (source, exclude) => {
|
|
21
|
+
var target = {};
|
|
22
|
+
for (var prop in source)
|
|
23
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
24
|
+
target[prop] = source[prop];
|
|
25
|
+
if (source != null && __getOwnPropSymbols)
|
|
26
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
27
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
28
|
+
target[prop] = source[prop];
|
|
29
|
+
}
|
|
30
|
+
return target;
|
|
31
|
+
};
|
|
1
32
|
import * as React from "react";
|
|
2
33
|
import React2, { useCallback, useContext } from "react";
|
|
3
34
|
import { ShuttleSource } from "./components/ShuttleSource";
|
|
@@ -6,49 +37,80 @@ import { ShuttleContainer } from "./classedComponents";
|
|
|
6
37
|
import { AnimationState } from "./AnimationState";
|
|
7
38
|
const noop = () => {
|
|
8
39
|
};
|
|
9
|
-
function ShuttleRenderer({
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
40
|
+
function ShuttleRenderer(_a) {
|
|
41
|
+
var _b = _a, {
|
|
42
|
+
containerProps,
|
|
43
|
+
onNavigateOnTargetTo = noop,
|
|
44
|
+
onNavigateOnSourceTo = noop,
|
|
45
|
+
onMoveItemToSource = noop,
|
|
46
|
+
onMoveItemToTarget = noop,
|
|
47
|
+
onClearMovedItems = noop,
|
|
48
|
+
onMoveCheckedItems = noop,
|
|
49
|
+
onClearCheckedItems = noop,
|
|
50
|
+
onToggleSearch = noop,
|
|
51
|
+
onSearch = noop,
|
|
52
|
+
onSearchClose = noop,
|
|
53
|
+
onSearchOpen = noop,
|
|
54
|
+
searching = false,
|
|
55
|
+
onCheckItem = noop,
|
|
56
|
+
hierarchy = [],
|
|
57
|
+
hierarchyDest = [],
|
|
58
|
+
checkedItems = [],
|
|
59
|
+
sourceItems = [],
|
|
60
|
+
targetItems = [],
|
|
61
|
+
sourceEmptyMessage,
|
|
62
|
+
targetEmptyMessage,
|
|
63
|
+
composeTargetItemProps,
|
|
64
|
+
composeSourceItemProps,
|
|
65
|
+
targetSortable,
|
|
66
|
+
sourceSortable,
|
|
67
|
+
onSourceSortEnd,
|
|
68
|
+
onTargetSortEnd,
|
|
69
|
+
loadingSource = false,
|
|
70
|
+
loadingTarget = false,
|
|
71
|
+
onGetMoreItems = () => {
|
|
72
|
+
},
|
|
73
|
+
moreItemsLoading = false,
|
|
74
|
+
hasNextPage = false
|
|
75
|
+
} = _b, otherProps = __objRest(_b, [
|
|
76
|
+
"containerProps",
|
|
77
|
+
"onNavigateOnTargetTo",
|
|
78
|
+
"onNavigateOnSourceTo",
|
|
79
|
+
"onMoveItemToSource",
|
|
80
|
+
"onMoveItemToTarget",
|
|
81
|
+
"onClearMovedItems",
|
|
82
|
+
"onMoveCheckedItems",
|
|
83
|
+
"onClearCheckedItems",
|
|
84
|
+
"onToggleSearch",
|
|
85
|
+
"onSearch",
|
|
86
|
+
"onSearchClose",
|
|
87
|
+
"onSearchOpen",
|
|
88
|
+
"searching",
|
|
89
|
+
"onCheckItem",
|
|
90
|
+
"hierarchy",
|
|
91
|
+
"hierarchyDest",
|
|
92
|
+
"checkedItems",
|
|
93
|
+
"sourceItems",
|
|
94
|
+
"targetItems",
|
|
95
|
+
"sourceEmptyMessage",
|
|
96
|
+
"targetEmptyMessage",
|
|
97
|
+
"composeTargetItemProps",
|
|
98
|
+
"composeSourceItemProps",
|
|
99
|
+
"targetSortable",
|
|
100
|
+
"sourceSortable",
|
|
101
|
+
"onSourceSortEnd",
|
|
102
|
+
"onTargetSortEnd",
|
|
103
|
+
"loadingSource",
|
|
104
|
+
"loadingTarget",
|
|
105
|
+
"onGetMoreItems",
|
|
106
|
+
"moreItemsLoading",
|
|
107
|
+
"hasNextPage"
|
|
108
|
+
]);
|
|
45
109
|
const { setIsMoving, setIsDrillingDown, setIsMovingBack, reset } = useContext(AnimationState.Context);
|
|
46
110
|
const removeAnimationState = useCallback(() => setTimeout(() => reset(), 500));
|
|
47
|
-
return /* @__PURE__ */ React2.createElement(ShuttleContainer, {
|
|
48
|
-
"data-testid": "em-ds-shuttle"
|
|
49
|
-
|
|
50
|
-
}, /* @__PURE__ */ React2.createElement(ShuttleSource, {
|
|
51
|
-
...otherProps,
|
|
111
|
+
return /* @__PURE__ */ React2.createElement(ShuttleContainer, __spreadValues({
|
|
112
|
+
"data-testid": "em-ds-shuttle"
|
|
113
|
+
}, containerProps), /* @__PURE__ */ React2.createElement(ShuttleSource, __spreadProps(__spreadValues({}, otherProps), {
|
|
52
114
|
checkedItems,
|
|
53
115
|
composeSourceItemProps,
|
|
54
116
|
emptyMessage: sourceEmptyMessage,
|
|
@@ -81,8 +143,7 @@ function ShuttleRenderer({
|
|
|
81
143
|
onGetMoreItems,
|
|
82
144
|
moreItemsLoading,
|
|
83
145
|
hasNextPage
|
|
84
|
-
}), /* @__PURE__ */ React2.createElement(ShuttleTarget, {
|
|
85
|
-
...otherProps,
|
|
146
|
+
})), /* @__PURE__ */ React2.createElement(ShuttleTarget, __spreadProps(__spreadValues({}, otherProps), {
|
|
86
147
|
composeTargetItemProps,
|
|
87
148
|
emptyMessage: targetEmptyMessage,
|
|
88
149
|
hierarchy: hierarchyDest,
|
|
@@ -105,7 +166,7 @@ function ShuttleRenderer({
|
|
|
105
166
|
onSortEnd: onTargetSortEnd,
|
|
106
167
|
targetSortable,
|
|
107
168
|
loading: loadingTarget
|
|
108
|
-
}));
|
|
169
|
+
})));
|
|
109
170
|
}
|
|
110
171
|
var ShuttleRenderer_default = ShuttleRenderer;
|
|
111
172
|
export {
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/ShuttleRenderer.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React, { useCallback, useContext } from 'react';\nimport { ShuttleSource } from './components/ShuttleSource';\nimport { ShuttleTarget } from './components/ShuttleTarget';\nimport { ShuttleContainer } from './classedComponents';\nimport { AnimationState } from './AnimationState';\n\n// todo: clean methods on jsx\nconst noop = () => {};\nfunction ShuttleRenderer({\n containerProps,\n onNavigateOnTargetTo = noop,\n onNavigateOnSourceTo = noop,\n onMoveItemToSource = noop,\n onMoveItemToTarget = noop,\n onClearMovedItems = noop,\n onMoveCheckedItems = noop,\n onClearCheckedItems = noop,\n onToggleSearch = noop,\n onSearch = noop,\n onSearchClose = noop,\n onSearchOpen = noop,\n searching = false,\n onCheckItem = noop,\n hierarchy = [],\n hierarchyDest = [],\n checkedItems = [],\n sourceItems = [],\n targetItems = [],\n sourceEmptyMessage,\n targetEmptyMessage,\n composeTargetItemProps,\n composeSourceItemProps,\n targetSortable,\n sourceSortable,\n onSourceSortEnd,\n onTargetSortEnd,\n loadingSource = false,\n loadingTarget = false,\n onGetMoreItems = () => {},\n moreItemsLoading = false,\n hasNextPage = false,\n ...otherProps\n}) {\n const { setIsMoving, setIsDrillingDown, setIsMovingBack, reset } = useContext(\n AnimationState.Context,\n );\n\n const removeAnimationState = useCallback(() =>\n setTimeout(() => reset(), 500),\n );\n\n return (\n <ShuttleContainer data-testid=\"em-ds-shuttle\" {...containerProps}>\n <ShuttleSource\n {...otherProps}\n checkedItems={checkedItems}\n composeSourceItemProps={composeSourceItemProps}\n emptyMessage={sourceEmptyMessage}\n hierarchy={hierarchy}\n items={sourceItems}\n onCheckItem={onCheckItem}\n onClearCheckedItems={onClearCheckedItems}\n onMoveCheckedItems={(item) => {\n setIsMoving(true);\n onMoveCheckedItems(item);\n }}\n onMoveItem={(item) => {\n setIsMoving(true);\n onMoveItemToTarget(item);\n removeAnimationState();\n }}\n onNavigateTo={(item, direction = 'down') => {\n const indexInHierarchy = hierarchy.findIndex(\n (hItem) => hItem.id === item.id,\n );\n setIsDrillingDown(indexInHierarchy === -1);\n onNavigateOnSourceTo(item, direction);\n }}\n onSearch={onSearch}\n onSearchClose={onSearchClose}\n onSearchOpen={onSearchOpen}\n onSortEnd={onSourceSortEnd}\n onToggleSearch={onToggleSearch}\n searching={searching}\n sourceSortable={sourceSortable}\n loading={loadingSource}\n onGetMoreItems={onGetMoreItems}\n moreItemsLoading={moreItemsLoading}\n hasNextPage={hasNextPage}\n />\n <ShuttleTarget\n {...otherProps}\n composeTargetItemProps={composeTargetItemProps}\n emptyMessage={targetEmptyMessage}\n hierarchy={hierarchyDest}\n items={targetItems}\n onClearMovedItems={() => {\n setIsMovingBack(true);\n removeAnimationState();\n onClearMovedItems();\n }}\n onMoveItem={(item) => {\n setIsMovingBack(true);\n removeAnimationState();\n onMoveItemToSource(item);\n }}\n onNavigateTo={(item, direction = 'down') => {\n const indexInHierarchy = hierarchyDest.findIndex(\n (hItem) => hItem.id === item.id,\n );\n setIsDrillingDown(indexInHierarchy === -1);\n onNavigateOnTargetTo(item, direction);\n }}\n onSortEnd={onTargetSortEnd}\n targetSortable={targetSortable}\n loading={loadingTarget}\n />\n </ShuttleContainer>\n );\n}\n\nexport { ShuttleRenderer };\nexport default ShuttleRenderer;\n"],
|
|
5
|
-
"mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AAGA,MAAM,OAAO,MAAM;AAAA;AACnB,yBAAyB;
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;ACEA;AACA;AACA;AACA;AACA;AAGA,MAAM,OAAO,MAAM;AAAA;AACnB,yBAAyB,IAkCtB;AAlCsB,eACvB;AAAA;AAAA,IACA,uBAAuB;AAAA,IACvB,uBAAuB;AAAA,IACvB,qBAAqB;AAAA,IACrB,qBAAqB;AAAA,IACrB,oBAAoB;AAAA,IACpB,qBAAqB;AAAA,IACrB,sBAAsB;AAAA,IACtB,iBAAiB;AAAA,IACjB,WAAW;AAAA,IACX,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf,cAAc;AAAA,IACd,cAAc;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,gBAAgB;AAAA,IAChB,iBAAiB,MAAM;AAAA;AAAA,IACvB,mBAAmB;AAAA,IACnB,cAAc;AAAA,MAhCS,IAiCpB,uBAjCoB,IAiCpB;AAAA,IAhCH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,EAAE,aAAa,mBAAmB,iBAAiB,UAAU,WACjE,eAAe;AAGjB,QAAM,uBAAuB,YAAY,MACvC,WAAW,MAAM,SAAS;AAG5B,SACE,qCAAC,kBAAD;AAAA,IAAkB,eAAY;AAAA,KAAoB,iBAChD,qCAAC,eAAD,iCACM,aADN;AAAA,IAEE;AAAA,IACA;AAAA,IACA,cAAc;AAAA,IACd;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA,oBAAoB,CAAC,SAAS;AAC5B,kBAAY;AACZ,yBAAmB;AAAA;AAAA,IAErB,YAAY,CAAC,SAAS;AACpB,kBAAY;AACZ,yBAAmB;AACnB;AAAA;AAAA,IAEF,cAAc,CAAC,MAAM,YAAY,WAAW;AAC1C,YAAM,mBAAmB,UAAU,UACjC,CAAC,UAAU,MAAM,OAAO,KAAK;AAE/B,wBAAkB,qBAAqB;AACvC,2BAAqB,MAAM;AAAA;AAAA,IAE7B;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,OAEF,qCAAC,eAAD,iCACM,aADN;AAAA,IAEE;AAAA,IACA,cAAc;AAAA,IACd,WAAW;AAAA,IACX,OAAO;AAAA,IACP,mBAAmB,MAAM;AACvB,sBAAgB;AAChB;AACA;AAAA;AAAA,IAEF,YAAY,CAAC,SAAS;AACpB,sBAAgB;AAChB;AACA,yBAAmB;AAAA;AAAA,IAErB,cAAc,CAAC,MAAM,YAAY,WAAW;AAC1C,YAAM,mBAAmB,cAAc,UACrC,CAAC,UAAU,MAAM,OAAO,KAAK;AAE/B,wBAAkB,qBAAqB;AACvC,2BAAqB,MAAM;AAAA;AAAA,IAE7B,WAAW;AAAA,IACX;AAAA,IACA,SAAS;AAAA;AAAA;AAOjB,IAAO,0BAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,3 +1,22 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
1
20
|
import * as React from "react";
|
|
2
21
|
import React2, { useContext } from "react";
|
|
3
22
|
import { useTransition, animated } from "react-spring/web";
|
|
@@ -8,10 +27,9 @@ function OverflowList({ className = "", activeHierarchy = "", children }) {
|
|
|
8
27
|
state: { isDrillingDown = false },
|
|
9
28
|
setIsDrillingDown
|
|
10
29
|
} = useContext(AnimationState.Context);
|
|
11
|
-
const overflowTransition = useTransition(activeHierarchy, null, {
|
|
12
|
-
...animationConfig.moveList(isDrillingDown),
|
|
30
|
+
const overflowTransition = useTransition(activeHierarchy, null, __spreadProps(__spreadValues({}, animationConfig.moveList(isDrillingDown)), {
|
|
13
31
|
onDestroyed: () => setIsDrillingDown(false)
|
|
14
|
-
});
|
|
32
|
+
}));
|
|
15
33
|
return overflowTransition.map(({ props, key }) => /* @__PURE__ */ React2.createElement(animated.div, {
|
|
16
34
|
key,
|
|
17
35
|
className,
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/OverflowList.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext } from 'react';\nimport { useTransition, animated } from 'react-spring/web';\nimport { animationConfig } from '../animation/animationConfig';\nimport { AnimationState } from '../AnimationState';\n\nfunction OverflowList({ className = '', activeHierarchy = '', children }) {\n const {\n state: { isDrillingDown = false },\n setIsDrillingDown,\n } = useContext(AnimationState.Context);\n\n const overflowTransition = useTransition(activeHierarchy, null, {\n ...animationConfig.moveList(isDrillingDown),\n onDestroyed: () => setIsDrillingDown(false),\n });\n return overflowTransition.map(({ props, key }) => (\n <animated.div key={key} className={className} style={props}>\n {children}\n </animated.div>\n ));\n}\n\nexport { OverflowList };\nexport default OverflowList;\n"],
|
|
5
|
-
"mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,sBAAsB,EAAE,YAAY,IAAI,kBAAkB,IAAI,YAAY;AACxE,QAAM;AAAA,IACJ,OAAO,EAAE,iBAAiB;AAAA,IAC1B;AAAA,MACE,WAAW,eAAe;AAE9B,QAAM,qBAAqB,cAAc,iBAAiB,MAAM
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AAEA,sBAAsB,EAAE,YAAY,IAAI,kBAAkB,IAAI,YAAY;AACxE,QAAM;AAAA,IACJ,OAAO,EAAE,iBAAiB;AAAA,IAC1B;AAAA,MACE,WAAW,eAAe;AAE9B,QAAM,qBAAqB,cAAc,iBAAiB,MAAM,iCAC3D,gBAAgB,SAAS,kBADkC;AAAA,IAE9D,aAAa,MAAM,kBAAkB;AAAA;AAEvC,SAAO,mBAAmB,IAAI,CAAC,EAAE,OAAO,UACtC,qCAAC,SAAS,KAAV;AAAA,IAAc;AAAA,IAAU;AAAA,IAAsB,OAAO;AAAA,KAClD;AAAA;AAMP,IAAO,uBAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,28 +1,46 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
1
20
|
import * as React from "react";
|
|
2
21
|
import React2 from "react";
|
|
3
22
|
import { aggregatedClasses } from "@elliemae/ds-classnames";
|
|
4
23
|
import { DSButton } from "@elliemae/ds-button";
|
|
5
24
|
import { ArrowShortRight, ArrowShortReturn, CloseCircle } from "@elliemae/ds-icons";
|
|
6
25
|
const ActionButton = aggregatedClasses(DSButton)("shuttle-list-item", "action-button");
|
|
7
|
-
const DeleteButton = (props) => /* @__PURE__ */ React2.createElement(ActionButton, {
|
|
26
|
+
const DeleteButton = (props) => /* @__PURE__ */ React2.createElement(ActionButton, __spreadValues({
|
|
8
27
|
buttonType: "text",
|
|
9
|
-
icon: /* @__PURE__ */ React2.createElement(CloseCircle, null)
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const MoveButton = (props) => /* @__PURE__ */ React2.createElement(ActionButton, {
|
|
28
|
+
icon: /* @__PURE__ */ React2.createElement(CloseCircle, null)
|
|
29
|
+
}, props));
|
|
30
|
+
const MoveButton = (props) => /* @__PURE__ */ React2.createElement(ActionButton, __spreadProps(__spreadValues({
|
|
13
31
|
buttonType: "text",
|
|
14
|
-
icon: /* @__PURE__ */ React2.createElement(ArrowShortRight, null)
|
|
15
|
-
|
|
32
|
+
icon: /* @__PURE__ */ React2.createElement(ArrowShortRight, null)
|
|
33
|
+
}, props), {
|
|
16
34
|
containerProps: { "data-testid": "ds-shuttle__move-button" }
|
|
17
|
-
});
|
|
18
|
-
const DrillDownButton = (props) => /* @__PURE__ */ React2.createElement(ActionButton, {
|
|
35
|
+
}));
|
|
36
|
+
const DrillDownButton = (props) => /* @__PURE__ */ React2.createElement(ActionButton, __spreadProps(__spreadValues({
|
|
19
37
|
buttonType: "text",
|
|
20
38
|
icon: /* @__PURE__ */ React2.createElement(ArrowShortReturn, {
|
|
21
39
|
"data-testid": "shuttle__drill-btn-icon"
|
|
22
|
-
})
|
|
23
|
-
|
|
40
|
+
})
|
|
41
|
+
}, props), {
|
|
24
42
|
containerProps: { "data-testid": "shuttle__drill-btn" }
|
|
25
|
-
});
|
|
43
|
+
}));
|
|
26
44
|
export {
|
|
27
45
|
DeleteButton,
|
|
28
46
|
DrillDownButton,
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/ShuttleListItem/ActionButtons.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { DSButton } from '@elliemae/ds-button';\nimport { ArrowShortRight, ArrowShortReturn, CloseCircle } from '@elliemae/ds-icons';\n\nconst ActionButton = aggregatedClasses(DSButton)('shuttle-list-item', 'action-button');\n\nexport const DeleteButton = (props) => (\n <ActionButton\n buttonType=\"text\"\n icon={<CloseCircle />}\n {...props}\n // containerProps={{ 'data-testid': 'ds-shuttle__close-button' }}\n />\n);\n\nexport const MoveButton = (props) => (\n <ActionButton\n buttonType=\"text\"\n icon={<ArrowShortRight />}\n {...props}\n containerProps={{ 'data-testid': 'ds-shuttle__move-button' }}\n />\n);\n\nexport const DrillDownButton = (props) => (\n <ActionButton\n buttonType=\"text\"\n icon={<ArrowShortReturn data-testid=\"shuttle__drill-btn-icon\" />}\n {...props}\n containerProps={{ 'data-testid': 'shuttle__drill-btn' }}\n />\n);\n"],
|
|
5
|
-
"mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,eAAe,kBAAkB,UAAU,qBAAqB;AAE/D,MAAM,eAAe,CAAC,UAC3B,qCAAC,cAAD;AAAA,EACE,YAAW;AAAA,EACX,MAAM,qCAAC,aAAD;AAAA,
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,eAAe,kBAAkB,UAAU,qBAAqB;AAE/D,MAAM,eAAe,CAAC,UAC3B,qCAAC,cAAD;AAAA,EACE,YAAW;AAAA,EACX,MAAM,qCAAC,aAAD;AAAA,GACF;AAKD,MAAM,aAAa,CAAC,UACzB,qCAAC,cAAD;AAAA,EACE,YAAW;AAAA,EACX,MAAM,qCAAC,iBAAD;AAAA,GACF,QAHN;AAAA,EAIE,gBAAgB,EAAE,eAAe;AAAA;AAI9B,MAAM,kBAAkB,CAAC,UAC9B,qCAAC,cAAD;AAAA,EACE,YAAW;AAAA,EACX,MAAM,qCAAC,kBAAD;AAAA,IAAkB,eAAY;AAAA;AAAA,GAChC,QAHN;AAAA,EAIE,gBAAgB,EAAE,eAAe;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|