@elliemae/ds-shuttle 1.60.0 → 2.0.0-alpha.12

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 (188) hide show
  1. package/cjs/AnimationState.js +26 -42
  2. package/cjs/DSShuttle.js +54 -146
  3. package/cjs/SearchState.js +10 -22
  4. package/cjs/Shuttle.actions.js +65 -73
  5. package/cjs/ShuttleContainer.js +49 -77
  6. package/cjs/ShuttleImpl.js +250 -338
  7. package/cjs/ShuttleRenderer.js +121 -184
  8. package/cjs/ShuttleState.js +22 -39
  9. package/cjs/animation/animationConfig.js +56 -63
  10. package/cjs/classedComponents.js +32 -35
  11. package/cjs/components/LoadingIndicator.js +11 -12
  12. package/cjs/components/OverflowList.js +33 -29
  13. package/cjs/components/ShuttleBreadcrumb.js +26 -32
  14. package/cjs/components/ShuttleInfiniteScrollIndicator.js +17 -13
  15. package/cjs/components/ShuttleListItem/ActionButtons.js +39 -34
  16. package/cjs/components/ShuttleListItem/ShuttleListItem.js +59 -58
  17. package/cjs/components/ShuttleListItem/ShuttleSourceListItem.js +40 -61
  18. package/cjs/components/ShuttleListItem/ShuttleTargetListItem.js +35 -50
  19. package/cjs/components/ShuttleListPanel.js +11 -23
  20. package/cjs/components/ShuttleSearchBox.js +79 -102
  21. package/cjs/components/ShuttleSource.js +99 -169
  22. package/cjs/components/ShuttleTarget.js +62 -82
  23. package/cjs/components/VirtualizedItem.js +28 -22
  24. package/cjs/components/VirtualizedList.js +52 -50
  25. package/cjs/components/VirtualizedSortableList.js +25 -23
  26. package/cjs/helper.js +52 -82
  27. package/cjs/index.js +1 -60
  28. package/cjs/updateShuttleStateFromProps.js +41 -40
  29. package/cjs/utils.js +9 -9
  30. package/cjs/withProviders.js +15 -16
  31. package/esm/AnimationState.js +25 -40
  32. package/esm/DSShuttle.js +51 -143
  33. package/esm/SearchState.js +9 -20
  34. package/esm/Shuttle.actions.js +64 -71
  35. package/esm/ShuttleContainer.js +47 -75
  36. package/esm/ShuttleImpl.js +254 -334
  37. package/esm/ShuttleRenderer.js +117 -179
  38. package/esm/ShuttleState.js +17 -32
  39. package/esm/animation/animationConfig.js +56 -63
  40. package/esm/classedComponents.js +30 -33
  41. package/esm/components/LoadingIndicator.js +10 -11
  42. package/esm/components/OverflowList.js +30 -26
  43. package/esm/components/ShuttleBreadcrumb.js +23 -29
  44. package/esm/components/ShuttleInfiniteScrollIndicator.js +16 -12
  45. package/esm/components/ShuttleListItem/ActionButtons.js +38 -33
  46. package/esm/components/ShuttleListItem/ShuttleListItem.js +56 -55
  47. package/esm/components/ShuttleListItem/ShuttleSourceListItem.js +36 -56
  48. package/esm/components/ShuttleListItem/ShuttleTargetListItem.js +31 -46
  49. package/esm/components/ShuttleListPanel.js +10 -22
  50. package/esm/components/ShuttleSearchBox.js +78 -95
  51. package/esm/components/ShuttleSource.js +89 -157
  52. package/esm/components/ShuttleTarget.js +55 -75
  53. package/esm/components/VirtualizedItem.js +26 -20
  54. package/esm/components/VirtualizedList.js +48 -46
  55. package/esm/components/VirtualizedSortableList.js +21 -18
  56. package/esm/helper.js +49 -77
  57. package/esm/index.js +0 -59
  58. package/esm/updateShuttleStateFromProps.js +40 -38
  59. package/esm/utils.js +6 -4
  60. package/esm/withProviders.js +13 -15
  61. package/package.json +163 -18
  62. package/types/AnimationState.d.ts +26 -0
  63. package/types/DSShuttle.d.ts +341 -0
  64. package/types/SearchState.d.ts +22 -0
  65. package/types/Shuttle.actions.d.ts +11 -0
  66. package/types/ShuttleContainer.d.ts +3 -0
  67. package/types/ShuttleImpl.d.ts +3 -0
  68. package/types/ShuttleRenderer.d.ts +37 -0
  69. package/types/ShuttleState.d.ts +53 -0
  70. package/types/animation/animationConfig.d.ts +68 -0
  71. package/types/classedComponents.d.ts +14 -0
  72. package/types/components/LoadingIndicator.d.ts +3 -0
  73. package/types/components/OverflowList.d.ts +7 -0
  74. package/types/components/ShuttleBreadcrumb.d.ts +7 -0
  75. package/types/components/ShuttleInfiniteScrollIndicator.d.ts +5 -0
  76. package/types/components/ShuttleListItem/ActionButtons.d.ts +4 -0
  77. package/types/components/ShuttleListItem/ShuttleListItem.d.ts +14 -0
  78. package/types/components/ShuttleListItem/ShuttleSourceListItem.d.ts +13 -0
  79. package/types/components/ShuttleListItem/ShuttleTargetListItem.d.ts +13 -0
  80. package/types/components/ShuttleListPanel.d.ts +7 -0
  81. package/types/components/ShuttleSearchBox.d.ts +20 -0
  82. package/types/components/ShuttleSource.d.ts +54 -0
  83. package/types/components/ShuttleTarget.d.ts +16 -0
  84. package/types/components/VirtualizedItem.d.ts +3 -0
  85. package/types/components/VirtualizedList.d.ts +12 -0
  86. package/types/components/VirtualizedSortableList.d.ts +6 -0
  87. package/types/helper.d.ts +16 -0
  88. package/types/index.d.ts +1 -0
  89. package/types/tests/DSShuttle.events.test.d.ts +1 -0
  90. package/types/tests/DSShuttle.test.d.ts +1 -0
  91. package/types/tests/utils.d.ts +116 -0
  92. package/types/updateShuttleStateFromProps.d.ts +1 -0
  93. package/types/utils.d.ts +2 -0
  94. package/types/withProviders.d.ts +3 -0
  95. package/AnimationState/package.json +0 -10
  96. package/DSShuttle/package.json +0 -10
  97. package/SearchState/package.json +0 -10
  98. package/Shuttle.actions/package.json +0 -10
  99. package/ShuttleContainer/package.json +0 -10
  100. package/ShuttleImpl/package.json +0 -10
  101. package/ShuttleRenderer/package.json +0 -10
  102. package/ShuttleState/package.json +0 -10
  103. package/animation/animationConfig/package.json +0 -10
  104. package/cjs/AnimationState.js.map +0 -1
  105. package/cjs/DSShuttle.js.map +0 -1
  106. package/cjs/SearchState.js.map +0 -1
  107. package/cjs/Shuttle.actions.js.map +0 -1
  108. package/cjs/ShuttleContainer.js.map +0 -1
  109. package/cjs/ShuttleImpl.js.map +0 -1
  110. package/cjs/ShuttleRenderer.js.map +0 -1
  111. package/cjs/ShuttleState.js.map +0 -1
  112. package/cjs/animation/animationConfig.js.map +0 -1
  113. package/cjs/classedComponents.js.map +0 -1
  114. package/cjs/components/LoadingIndicator.js.map +0 -1
  115. package/cjs/components/OverflowList.js.map +0 -1
  116. package/cjs/components/ShuttleBreadcrumb.js.map +0 -1
  117. package/cjs/components/ShuttleInfiniteScrollIndicator.js.map +0 -1
  118. package/cjs/components/ShuttleListItem/ActionButtons.js.map +0 -1
  119. package/cjs/components/ShuttleListItem/ShuttleListItem.js.map +0 -1
  120. package/cjs/components/ShuttleListItem/ShuttleSourceListItem.js.map +0 -1
  121. package/cjs/components/ShuttleListItem/ShuttleTargetListItem.js.map +0 -1
  122. package/cjs/components/ShuttleListPanel.js.map +0 -1
  123. package/cjs/components/ShuttleSearchBox.js.map +0 -1
  124. package/cjs/components/ShuttleSource.js.map +0 -1
  125. package/cjs/components/ShuttleTarget.js.map +0 -1
  126. package/cjs/components/VirtualizedItem.js.map +0 -1
  127. package/cjs/components/VirtualizedList.js.map +0 -1
  128. package/cjs/components/VirtualizedSortableList.js.map +0 -1
  129. package/cjs/helper.js.map +0 -1
  130. package/cjs/index.js.map +0 -1
  131. package/cjs/tests/utils.js +0 -1112
  132. package/cjs/tests/utils.js.map +0 -1
  133. package/cjs/updateShuttleStateFromProps.js.map +0 -1
  134. package/cjs/utils.js.map +0 -1
  135. package/cjs/withProviders.js.map +0 -1
  136. package/classedComponents/package.json +0 -10
  137. package/components/LoadingIndicator/package.json +0 -10
  138. package/components/OverflowList/package.json +0 -10
  139. package/components/ShuttleBreadcrumb/package.json +0 -10
  140. package/components/ShuttleInfiniteScrollIndicator/package.json +0 -10
  141. package/components/ShuttleListItem/ActionButtons/package.json +0 -10
  142. package/components/ShuttleListItem/ShuttleListItem/package.json +0 -10
  143. package/components/ShuttleListItem/ShuttleSourceListItem/package.json +0 -10
  144. package/components/ShuttleListItem/ShuttleTargetListItem/package.json +0 -10
  145. package/components/ShuttleListPanel/package.json +0 -10
  146. package/components/ShuttleSearchBox/package.json +0 -10
  147. package/components/ShuttleSource/package.json +0 -10
  148. package/components/ShuttleTarget/package.json +0 -10
  149. package/components/VirtualizedItem/package.json +0 -10
  150. package/components/VirtualizedList/package.json +0 -10
  151. package/components/VirtualizedSortableList/package.json +0 -10
  152. package/esm/AnimationState.js.map +0 -1
  153. package/esm/DSShuttle.js.map +0 -1
  154. package/esm/SearchState.js.map +0 -1
  155. package/esm/Shuttle.actions.js.map +0 -1
  156. package/esm/ShuttleContainer.js.map +0 -1
  157. package/esm/ShuttleImpl.js.map +0 -1
  158. package/esm/ShuttleRenderer.js.map +0 -1
  159. package/esm/ShuttleState.js.map +0 -1
  160. package/esm/animation/animationConfig.js.map +0 -1
  161. package/esm/classedComponents.js.map +0 -1
  162. package/esm/components/LoadingIndicator.js.map +0 -1
  163. package/esm/components/OverflowList.js.map +0 -1
  164. package/esm/components/ShuttleBreadcrumb.js.map +0 -1
  165. package/esm/components/ShuttleInfiniteScrollIndicator.js.map +0 -1
  166. package/esm/components/ShuttleListItem/ActionButtons.js.map +0 -1
  167. package/esm/components/ShuttleListItem/ShuttleListItem.js.map +0 -1
  168. package/esm/components/ShuttleListItem/ShuttleSourceListItem.js.map +0 -1
  169. package/esm/components/ShuttleListItem/ShuttleTargetListItem.js.map +0 -1
  170. package/esm/components/ShuttleListPanel.js.map +0 -1
  171. package/esm/components/ShuttleSearchBox.js.map +0 -1
  172. package/esm/components/ShuttleSource.js.map +0 -1
  173. package/esm/components/ShuttleTarget.js.map +0 -1
  174. package/esm/components/VirtualizedItem.js.map +0 -1
  175. package/esm/components/VirtualizedList.js.map +0 -1
  176. package/esm/components/VirtualizedSortableList.js.map +0 -1
  177. package/esm/helper.js.map +0 -1
  178. package/esm/index.js.map +0 -1
  179. package/esm/tests/utils.js +0 -1100
  180. package/esm/tests/utils.js.map +0 -1
  181. package/esm/updateShuttleStateFromProps.js.map +0 -1
  182. package/esm/utils.js.map +0 -1
  183. package/esm/withProviders.js.map +0 -1
  184. package/helper/package.json +0 -10
  185. package/tests/utils/package.json +0 -10
  186. package/updateShuttleStateFromProps/package.json +0 -10
  187. package/utils/package.json +0 -10
  188. package/withProviders/package.json +0 -10
@@ -0,0 +1,20 @@
1
+ import { Component } from 'react';
2
+ export default class ShuttleSearchBox extends Component {
3
+ static defaultProps: {
4
+ filterOnKeyStroke: boolean;
5
+ onChange: () => null;
6
+ onFilter: () => null;
7
+ };
8
+ constructor(props: any);
9
+ static getDerivedStateFromProps(nextProps: any, { prevProps }: {
10
+ prevProps: any;
11
+ }): {
12
+ value: any;
13
+ prevProps: {
14
+ value: any;
15
+ };
16
+ } | null;
17
+ handleChange(e: any): void;
18
+ handleKeyPress(e: any): void;
19
+ render(): JSX.Element;
20
+ }
@@ -0,0 +1,54 @@
1
+ /// <reference types="react" />
2
+ import PropTypes from 'prop-types';
3
+ declare function ShuttleSource({ items, checkedItems, // build Map() and memoize it for better performance
4
+ hierarchy, onMoveItem, onCheckItem, onMoveCheckedItems, onNavigateTo, onClearCheckedItems, emptyMessage, composeSourceItemProps, loading, onSearch, onSearchClose, onSearchOpen, sourceSortable, onSortEnd, sourceClearItemsText, searchPlaceholder, renderSourceCounter, onGetMoreItems, moreItemsLoading, hasNextPage, }: {
5
+ items?: never[] | undefined;
6
+ checkedItems?: never[] | undefined;
7
+ hierarchy?: never[] | undefined;
8
+ onMoveItem?: (() => void) | undefined;
9
+ onCheckItem?: (() => void) | undefined;
10
+ onMoveCheckedItems?: (() => void) | undefined;
11
+ onNavigateTo?: (() => void) | undefined;
12
+ onClearCheckedItems?: (() => void) | undefined;
13
+ emptyMessage?: string | undefined;
14
+ composeSourceItemProps?: (() => void) | undefined;
15
+ loading?: boolean | undefined;
16
+ onSearch?: (() => void) | undefined;
17
+ onSearchClose?: (() => void) | undefined;
18
+ onSearchOpen?: (() => void) | undefined;
19
+ sourceSortable?: boolean | undefined;
20
+ onSortEnd?: (() => void) | undefined;
21
+ sourceClearItemsText?: string | undefined;
22
+ searchPlaceholder: any;
23
+ renderSourceCounter?: ((amount: any) => string) | undefined;
24
+ onGetMoreItems?: (() => void) | undefined;
25
+ moreItemsLoading?: boolean | undefined;
26
+ hasNextPage?: boolean | undefined;
27
+ }): JSX.Element;
28
+ declare namespace ShuttleSource {
29
+ var propTypes: {
30
+ items: PropTypes.Requireable<(PropTypes.InferProps<{}> | null | undefined)[]>;
31
+ checkedItems: PropTypes.Requireable<(PropTypes.InferProps<{}> | null | undefined)[]>;
32
+ hierarchy: PropTypes.Requireable<(PropTypes.InferProps<{}> | null | undefined)[]>;
33
+ onMoveItem: PropTypes.Requireable<(...args: any[]) => any>;
34
+ onCheckItem: PropTypes.Requireable<(...args: any[]) => any>;
35
+ onMoveCheckedItems: PropTypes.Requireable<(...args: any[]) => any>;
36
+ onNavigateTo: PropTypes.Requireable<(...args: any[]) => any>;
37
+ onClearCheckedItems: PropTypes.Requireable<(...args: any[]) => any>;
38
+ emptyMessage: PropTypes.Requireable<string>;
39
+ composeSourceItemProps: PropTypes.Requireable<(...args: any[]) => any>;
40
+ loading: PropTypes.Requireable<boolean>;
41
+ onSearch: PropTypes.Requireable<(...args: any[]) => any>;
42
+ onSearchClose: PropTypes.Requireable<(...args: any[]) => any>;
43
+ onSearchOpen: PropTypes.Requireable<(...args: any[]) => any>;
44
+ sourceSortable: PropTypes.Requireable<boolean>;
45
+ onSortEnd: PropTypes.Requireable<(...args: any[]) => any>;
46
+ sourceClearItemsText: PropTypes.Requireable<string>;
47
+ searchPlaceholder: PropTypes.Requireable<string>;
48
+ renderSourceCounter: PropTypes.Requireable<(...args: any[]) => any>;
49
+ onGetMoreItems: PropTypes.Requireable<(...args: any[]) => any>;
50
+ moreItemsLoading: PropTypes.Requireable<boolean>;
51
+ hasNextPage: PropTypes.Requireable<boolean>;
52
+ };
53
+ }
54
+ export default ShuttleSource;
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ declare function ShuttleTarget({ items, hierarchy, onNavigateTo, onMoveItem, onClearMovedItems, emptyMessage, composeTargetItemProps, targetSortable, onSortEnd, targetClearItemsText, renderTargetCounter, loading, }: {
3
+ items?: never[] | undefined;
4
+ hierarchy?: never[] | undefined;
5
+ onNavigateTo?: (() => void) | undefined;
6
+ onMoveItem?: (() => void) | undefined;
7
+ onClearMovedItems?: (() => void) | undefined;
8
+ emptyMessage?: string | undefined;
9
+ composeTargetItemProps?: (() => {}) | undefined;
10
+ targetSortable?: boolean | undefined;
11
+ onSortEnd?: (() => void) | undefined;
12
+ targetClearItemsText?: string | undefined;
13
+ renderTargetCounter?: ((amount: any) => string) | undefined;
14
+ loading?: boolean | undefined;
15
+ }): JSX.Element;
16
+ export default ShuttleTarget;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const VirtualizedItem: import("react").NamedExoticComponent<object>;
3
+ export default VirtualizedItem;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ declare function VirtualizedList({ items, itemRenderer, searching, target, innerRef, children, hasNextPage, getMoreItems, }: {
3
+ items: any;
4
+ itemRenderer: any;
5
+ searching: any;
6
+ target?: boolean | undefined;
7
+ innerRef: any;
8
+ children: any;
9
+ hasNextPage?: boolean | undefined;
10
+ getMoreItems?: (() => void) | undefined;
11
+ }): JSX.Element;
12
+ export default VirtualizedList;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ declare function VirtualizedSortableList({ items, ...otherProps }: {
3
+ [x: string]: any;
4
+ items: any;
5
+ }): JSX.Element;
6
+ export default VirtualizedSortableList;
@@ -0,0 +1,16 @@
1
+ export declare const getHierarchyTypeName: (dest: any) => "hierarchy" | "hierarchyDest";
2
+ export declare const checkHasChildren: (list: any, currentItem: any) => any;
3
+ export declare const getActiveIdFromHierarchy: (hierarchy?: never[]) => never;
4
+ export declare const filterItemsByHierarchy: (list: any, hierarchyId: any, parentField?: string) => any;
5
+ export declare const getItemsById: (ids: any, list: any) => any;
6
+ export declare const toggleInObject: (obj: any, key: any, value: any) => any;
7
+ export declare const isMovable: (item: any) => any;
8
+ export declare const pipe: (actions: any) => (initState: any, props: any) => any;
9
+ export declare const moveItems: ({ oldIndex, newIndex }: {
10
+ oldIndex: any;
11
+ newIndex: any;
12
+ }) => (items: any) => any;
13
+ export declare const prepareItems: (items: any) => any;
14
+ export declare function getChildrenFromParent(parentId: any, options: any): (items: any) => any;
15
+ export declare function filterMovedItems(movedItems: any, options: any): (items: any) => any;
16
+ export declare function filterBySearch(term: any, searching: any): (items: any) => any;
@@ -0,0 +1 @@
1
+ export { default, utils, DSShuttleWithSchema } from './DSShuttle';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,116 @@
1
+ export const eventsOptions: ({
2
+ parent: null;
3
+ id: string;
4
+ name: string;
5
+ lastName: string;
6
+ firstName: string;
7
+ fullName: string;
8
+ email: string;
9
+ phone: string;
10
+ cellPhone: string;
11
+ fax: string;
12
+ userId: string;
13
+ isMoveableContainer?: undefined;
14
+ } | {
15
+ parent: null;
16
+ id: string;
17
+ name: string;
18
+ lastName: string;
19
+ firstName: string;
20
+ isMoveableContainer: boolean;
21
+ fullName: string;
22
+ email: string;
23
+ phone: string;
24
+ cellPhone: string;
25
+ fax: string;
26
+ userId: string;
27
+ } | {
28
+ parent: string;
29
+ id: string;
30
+ name: string;
31
+ lastName: string;
32
+ firstName: string;
33
+ fullName: string;
34
+ email: string;
35
+ phone: string;
36
+ cellPhone: string;
37
+ fax: string;
38
+ userId: string;
39
+ isMoveableContainer?: undefined;
40
+ })[];
41
+ export const shortOptions: ({
42
+ parent: null;
43
+ id: string;
44
+ name: string;
45
+ lastName: string;
46
+ firstName: string;
47
+ fullName: string;
48
+ email: string;
49
+ phone: string;
50
+ cellPhone: string;
51
+ fax: string;
52
+ userId: string;
53
+ } | {
54
+ parent: string;
55
+ id: string;
56
+ name: string;
57
+ lastName: string;
58
+ firstName: string;
59
+ fullName: string;
60
+ email: string;
61
+ phone: string;
62
+ cellPhone: string;
63
+ fax: string;
64
+ userId: string;
65
+ })[];
66
+ export const options: {
67
+ parent: null;
68
+ id: string;
69
+ name: string;
70
+ lastName: string;
71
+ firstName: string;
72
+ fullName: string;
73
+ email: string;
74
+ phone: string;
75
+ cellPhone: string;
76
+ fax: string;
77
+ userId: string;
78
+ }[];
79
+ export const newLoadedOptions: {
80
+ parent: null;
81
+ id: string;
82
+ name: string;
83
+ lastName: string;
84
+ firstName: string;
85
+ fullName: string;
86
+ email: string;
87
+ phone: string;
88
+ cellPhone: string;
89
+ fax: string;
90
+ userId: string;
91
+ }[];
92
+ export const options2: ({
93
+ parent: null;
94
+ id: string;
95
+ name: string;
96
+ lastName: string;
97
+ firstName: string;
98
+ fullName: string;
99
+ email: string;
100
+ phone: string;
101
+ cellPhone: string;
102
+ fax: string;
103
+ userId: string;
104
+ } | {
105
+ parent: string;
106
+ id: string;
107
+ name: string;
108
+ lastName: string;
109
+ firstName: string;
110
+ fullName: string;
111
+ email: string;
112
+ phone: string;
113
+ cellPhone: string;
114
+ fax: string;
115
+ userId: string;
116
+ })[];
@@ -0,0 +1 @@
1
+ export default function (nextProps: any, prevState: any): any;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function withProviders(Component: any): (props: any) => JSX.Element;
3
+ export default withProviders;
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/AnimationState",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/AnimationState.js",
9
- "module": "../esm/AnimationState.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/DSShuttle",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/DSShuttle.js",
9
- "module": "../esm/DSShuttle.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/SearchState",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/SearchState.js",
9
- "module": "../esm/SearchState.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/Shuttle.actions",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/Shuttle.actions.js",
9
- "module": "../esm/Shuttle.actions.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/ShuttleContainer",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/ShuttleContainer.js",
9
- "module": "../esm/ShuttleContainer.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/ShuttleImpl",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/ShuttleImpl.js",
9
- "module": "../esm/ShuttleImpl.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/ShuttleRenderer",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/ShuttleRenderer.js",
9
- "module": "../esm/ShuttleRenderer.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/ShuttleState",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../cjs/ShuttleState.js",
9
- "module": "../esm/ShuttleState.js"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@elliemae/ds-shuttle/animation/animationConfig",
3
- "sideEffects": [
4
- "*.css",
5
- "*.scss"
6
- ],
7
- "private": true,
8
- "main": "../../cjs/animation/animationConfig.js",
9
- "module": "../../esm/animation/animationConfig.js"
10
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnimationState.js","sources":["../../src/AnimationState.tsx"],"sourcesContent":["import { useCallback, useState } from 'react';\nimport createContainer from 'constate';\n\nfunction useShuttleAnimationState() {\n const [animationState, setAnimationState] = useState({\n isMoving: false,\n isMovingBack: false,\n isDrillingDown: false,\n });\n const reset = useCallback(\n () =>\n setAnimationState({\n isMoving: false,\n isMovingBack: false,\n isDrillingDown: false,\n }),\n [],\n );\n const move = useCallback(\n () =>\n setAnimationState({\n isMovingBack: false,\n isMoving: true,\n isDrillingDown: false,\n }),\n [],\n );\n\n const moveBack = useCallback(\n () =>\n setAnimationState({\n isMovingBack: true,\n isMoving: false,\n isDrillingDown: false,\n }),\n [],\n );\n\n const drilldown = useCallback(\n () =>\n setAnimationState({\n isMovingBack: false,\n isMoving: false,\n isDrillingDown: true,\n }),\n [],\n );\n\n return {\n state: animationState,\n setIsMoving: move,\n setIsMovingBack: moveBack,\n setIsDrillingDown: drilldown,\n reset,\n };\n}\n\nexport default createContainer(useShuttleAnimationState, value => [\n value.state,\n]);\n"],"names":["useShuttleAnimationState","useState","isMoving","isMovingBack","isDrillingDown","animationState","setAnimationState","reset","useCallback","move","moveBack","drilldown","state","setIsMoving","setIsMovingBack","setIsDrillingDown","createContainer","value"],"mappings":";;;;;;;;;;;AAGA,SAASA,wBAAT,GAAoC;AAClC,kBAA4CC,cAAQ,CAAC;AACnDC,IAAAA,QAAQ,EAAE,KADyC;AAEnDC,IAAAA,YAAY,EAAE,KAFqC;AAGnDC,IAAAA,cAAc,EAAE;AAHmC,GAAD,CAApD;AAAA;AAAA,MAAOC,cAAP;AAAA,MAAuBC,iBAAvB;;AAKA,MAAMC,KAAK,GAAGC,iBAAW,CACvB;AAAA,WACEF,iBAAiB,CAAC;AAChBJ,MAAAA,QAAQ,EAAE,KADM;AAEhBC,MAAAA,YAAY,EAAE,KAFE;AAGhBC,MAAAA,cAAc,EAAE;AAHA,KAAD,CADnB;AAAA,GADuB,EAOvB,EAPuB,CAAzB;AASA,MAAMK,IAAI,GAAGD,iBAAW,CACtB;AAAA,WACEF,iBAAiB,CAAC;AAChBH,MAAAA,YAAY,EAAE,KADE;AAEhBD,MAAAA,QAAQ,EAAE,IAFM;AAGhBE,MAAAA,cAAc,EAAE;AAHA,KAAD,CADnB;AAAA,GADsB,EAOtB,EAPsB,CAAxB;AAUA,MAAMM,QAAQ,GAAGF,iBAAW,CAC1B;AAAA,WACEF,iBAAiB,CAAC;AAChBH,MAAAA,YAAY,EAAE,IADE;AAEhBD,MAAAA,QAAQ,EAAE,KAFM;AAGhBE,MAAAA,cAAc,EAAE;AAHA,KAAD,CADnB;AAAA,GAD0B,EAO1B,EAP0B,CAA5B;AAUA,MAAMO,SAAS,GAAGH,iBAAW,CAC3B;AAAA,WACEF,iBAAiB,CAAC;AAChBH,MAAAA,YAAY,EAAE,KADE;AAEhBD,MAAAA,QAAQ,EAAE,KAFM;AAGhBE,MAAAA,cAAc,EAAE;AAHA,KAAD,CADnB;AAAA,GAD2B,EAO3B,EAP2B,CAA7B;AAUA,SAAO;AACLQ,IAAAA,KAAK,EAAEP,cADF;AAELQ,IAAAA,WAAW,EAAEJ,IAFR;AAGLK,IAAAA,eAAe,EAAEJ,QAHZ;AAILK,IAAAA,iBAAiB,EAAEJ,SAJd;AAKLJ,IAAAA,KAAK,EAALA;AALK,GAAP;AAOD;;AAED,uBAAeS,mCAAe,CAAChB,wBAAD,EAA2B,UAAAiB,KAAK;AAAA,SAAI,CAChEA,KAAK,CAACL,KAD0D,CAAJ;AAAA,CAAhC,CAA9B;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DSShuttle.js","sources":["../../src/DSShuttle.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React from 'react';\nimport { debounce } from 'lodash';\nimport { describe, PropTypes } from 'react-desc';\nimport { TooltipTextProvider } from '@elliemae/ds-truncated-tooltip-text';\nimport ShuttleImpl from './ShuttleImpl';\nimport utils from './utils';\n\nconst noop = () => {};\n\nconst DSShuttle = ({\n containerProps = {},\n idField = 'id',\n parentIdField = 'parent',\n showIcons = true,\n items = [],\n selectedItems = undefined, // if defined it becomes controlled (v1)\n // TODO make `nonSelectedItems` the default controlled behavior (v2)\n nonSelectedItems = undefined,\n onSearch = noop,\n onSearchOpen = noop,\n onSearchClose = noop,\n onDrillDown = noop,\n onDrillDownTarget = noop,\n onTargetSortEnd = noop,\n setGetStatus = noop,\n targetSortable = true,\n sourceEmptyMessage = 'No Items Found',\n sourceRootTitle = 'Category',\n targetEmptyMessage = 'No Items Selected',\n targetRootTitle = 'Selected Items',\n composeSourceItemProps = () => ({}),\n composeTargetItemProps = () => ({}),\n onAddToTarget = noop,\n onAddCheckedItems = noop,\n onRemoveFromTarget = noop,\n onRemoveAllFromTarget = noop,\n onChange = noop,\n renderSourceCounter = noop,\n renderTargetCounter = noop,\n sourceClearItemsText = 'CLEAR ALL',\n targetClearItemsText = 'CLEAR ALL',\n searchPlaceholder = 'Search field ID, name, etc.',\n loadingSource = false,\n loadingTarget = false,\n onGetMoreItems = () => null,\n hasNextPage = false,\n moreItemsLoading,\n}) => (\n <TooltipTextProvider>\n <ShuttleImpl\n composeSourceItemProps={composeSourceItemProps}\n composeTargetItemProps={composeTargetItemProps}\n containerProps={containerProps}\n idField={idField}\n items={items}\n onAddCheckedItems={onAddCheckedItems}\n onAddToTarget={onAddToTarget}\n onChange={onChange}\n onDrillDown={onDrillDown}\n nonSelectedItems={nonSelectedItems}\n onDrillDownTarget={onDrillDownTarget}\n onRemoveAllFromTarget={onRemoveAllFromTarget}\n onRemoveFromTarget={onRemoveFromTarget}\n onSearch={onSearch}\n onSearchClose={onSearchClose}\n onSearchOpen={onSearchOpen}\n onTargetSortEnd={onTargetSortEnd}\n parentIdField={parentIdField}\n renderSourceCounter={renderSourceCounter}\n renderTargetCounter={renderTargetCounter}\n searchPlaceholder={searchPlaceholder}\n selectedItems={selectedItems}\n setGetStatus={setGetStatus}\n showIcons={showIcons}\n sourceClearItemsText={sourceClearItemsText}\n sourceEmptyMessage={sourceEmptyMessage}\n sourceRootTitle={sourceRootTitle}\n targetClearItemsText={targetClearItemsText}\n targetEmptyMessage={targetEmptyMessage}\n targetRootTitle={targetRootTitle}\n targetSortable={targetSortable}\n loadingSource={loadingSource}\n loadingTarget={loadingTarget}\n onGetMoreItems={debounce((...args) => {\n onGetMoreItems(...args);\n }, 500)}\n moreItemsLoading={moreItemsLoading}\n hasNextPage={hasNextPage}\n />\n </TooltipTextProvider>\n);\n\nconst props = {\n /** inject props to shuttle wrapper */\n containerProps: PropTypes.object.description('inject props to shuttle wrapper'),\n /** The identifier field for the item object */\n idField: PropTypes.string.description('The identifier field for the item object'),\n /** The parent identifier field for the item object */\n parentIdField: PropTypes.string.description('The parent identifier field for the item object'),\n /** Whether to show the icons or not */\n showIcons: PropTypes.string.description('Whether to show the icons or not'),\n /** List of items */\n items: PropTypes.arrayOf(\n PropTypes.shape({\n disableDrillDown: PropTypes.bool,\n icon: PropTypes.element,\n name: PropTypes.string,\n readOnly: PropTypes.bool,\n description: PropTypes.string,\n }),\n ).description('list of items'),\n /** Array of item ids that are selected. If passed the component behaves as controlled */\n selectedItems: PropTypes.arrayOf(PropTypes.string).description(\n 'Array of item ids that are selected. If passed the component behaves as controlled',\n ),\n /** Array of item ids that aren't selected. Should include ALL non selected items, even those not rendered */\n nonSelectedItems: PropTypes.arrayOf(PropTypes.string).description(\n \"Array of item ids that aren't selected.. Should include ALL non selected items, even those not rendered\",\n ),\n /** Handler on search */\n onSearch: PropTypes.func.description('Handler on search'),\n /** Handler when the searchbox is visible */\n onSearchOpen: PropTypes.func.description('Handler when the searchbox is visible'),\n /** Handler when the searchbox is not visible */\n onSearchClose: PropTypes.func.description('Handler when the searchbox is not visible'),\n /** Source handler when a user navigates to a level down on the nested structure. First param: item drilled. Second param: direction (\"up\" | \"down\") */\n onDrillDown: PropTypes.func.description(\n 'Source handler when a user navigates to a level down on the nested structure. First param: item drilled. Second param: direction (\"up\" | \"down\")',\n ),\n /** Target handler when a user navigates to a level down on the nested structure. First param: item drilled. Second param: direction (\"up\" | \"down\") */\n onDrillDownTarget: PropTypes.func.description(\n 'Target handler when a user navigates to a level down on the nested structure. First param: item drilled. Second param: direction (\"up\" | \"down\")',\n ),\n /** Target handler when user stops dragging an item */\n onTargetSortEnd: PropTypes.func.description('Target handler when user stops dragging an item'),\n /** Callback function that gets more items for Infinite Scroll */\n onGetMoreItems: PropTypes.func.description('Callback function that gets more items for Infinite Scroll'),\n /** Wheter there are mor items loading for Infinite Scroll */\n moreItemsLoading: PropTypes.bool.description('Wheter there are mor items loading for Infinite Scroll'),\n /** Wheter there is a next page for Infinite Scroll, controls when to trigger onGetMoreItems */\n hasNextPage: PropTypes.bool.description(\n 'Wheter there is a next page for Infinite Scroll, controls when to trigger onGetMoreItems',\n ),\n /** Function that takes as a parameter an internal getter for the state */\n setGetStatus: PropTypes.func.description('Function that takes as a parameter an internal getter for the state'),\n /** Whether the target can be sortable with DnD */\n targetSortable: PropTypes.bool.description('Whether the target can be sortable with DnD'),\n /** Handler when the searchbox is visible */\n sourceRootTitle: PropTypes.string.description('Handler when the searchbox is visible'),\n /** Source text when there is no items */\n sourceEmptyMessage: PropTypes.string.description('Source text when there is no items'),\n /** Target text when there is no items */\n targetEmptyMessage: PropTypes.string.description('Target text when there is no items'),\n /** Target text for the first hierarchy item */\n targetRootTitle: PropTypes.string.description('Target text for the first hierarchy item'),\n /** Function that allow to compose the item props in the source */\n composeSourceItemProps: PropTypes.func.description('Function that allow to compose the item props in the source'),\n /** Function that allow to compose the item props in the target */\n composeTargetItemProps: PropTypes.func.description('Function that allow to compose the item props in the target'),\n /** Handler when a users moves an item to the target */\n onAddToTarget: PropTypes.func.description('Handler when a users moves an item to the target'),\n /** Handler when a users moves all the 'checked' items to the target */\n onAddCheckedItems: PropTypes.func.description(\"Handler when a users moves all the 'checked' items to the target\"),\n /** Handler when a user removes an item from the target */\n onRemoveFromTarget: PropTypes.func.description('Handler when a user removes an item from the target'),\n /** Handler when a user removes all the items from the target */\n onRemoveAllFromTarget: PropTypes.func.description('Handler when a user removes all the items from the target'),\n /** Handler for every change on the state */\n onChange: PropTypes.func.description('Handler for every change on the state'),\n /** Function that returns an element for the source counter */\n renderSourceCounter: PropTypes.func.description('Function that returns an element for the source counter'),\n /** Function that returns an element for the target counter */\n renderTargetCounter: PropTypes.func.description('Function that returns an element for the target counter'),\n /** Source text for the clear items button */\n sourceClearItemsText: PropTypes.string.description('Source text for the clear items button'),\n /** Target text for the clear items button */\n targetClearItemsText: PropTypes.string.description('Target text for the clear items button'),\n /** Searchbox placeholder */\n searchPlaceholder: PropTypes.string.description('Searchbox placeholder'),\n /** Displays loading indicator on source section */\n loadingSource: PropTypes.bool.description('Displays loading indicator on source section'),\n /** Displays loading indicator on target section */\n loadingTarget: PropTypes.bool.description('Displays loading indicator on target section'),\n};\n\nDSShuttle.propTypes = props;\nconst DSShuttleWithSchema = describe(DSShuttle);\nDSShuttleWithSchema.propTypes = props;\n\nexport { utils, DSShuttleWithSchema };\n\nexport default DSShuttle;\n"],"names":["noop","DSShuttle","containerProps","idField","parentIdField","showIcons","items","selectedItems","undefined","nonSelectedItems","onSearch","onSearchOpen","onSearchClose","onDrillDown","onDrillDownTarget","onTargetSortEnd","setGetStatus","targetSortable","sourceEmptyMessage","sourceRootTitle","targetEmptyMessage","targetRootTitle","composeSourceItemProps","composeTargetItemProps","onAddToTarget","onAddCheckedItems","onRemoveFromTarget","onRemoveAllFromTarget","onChange","renderSourceCounter","renderTargetCounter","sourceClearItemsText","targetClearItemsText","searchPlaceholder","loadingSource","loadingTarget","onGetMoreItems","hasNextPage","moreItemsLoading","React","TooltipTextProvider","debounce","props","PropTypes","object","description","string","arrayOf","shape","disableDrillDown","bool","icon","element","name","readOnly","func","propTypes","DSShuttleWithSchema","describe"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SearchState.js","sources":["../../src/SearchState.tsx"],"sourcesContent":["import { useState } from 'react';\nimport createContainer from 'constate';\n\nfunction useSearchState() {\n const [searchTerm, setSearchTerm] = useState('');\n const [searching, setSearchBoxVisibility] = useState(false); // todo: create a hook for Visibility behavior\n\n function toggleSearchBox(userVisible) {\n if (userVisible !== undefined) {\n setSearchBoxVisibility(userVisible);\n } else {\n setSearchBoxVisibility(!searching);\n }\n }\n\n function reset() {\n setSearchTerm('');\n setSearchBoxVisibility(false);\n }\n\n return {\n state: { searchTerm, searching },\n setSearchTerm,\n toggleSearchBox,\n reset,\n };\n}\n\nexport default createContainer(useSearchState, value => [value.state]);\n"],"names":["useSearchState","useState","searchTerm","setSearchTerm","searching","setSearchBoxVisibility","toggleSearchBox","userVisible","undefined","reset","state","createContainer","value"],"mappings":";;;;;;;;;;;AAGA,SAASA,cAAT,GAA0B;AACxB,kBAAoCC,cAAQ,CAAC,EAAD,CAA5C;AAAA;AAAA,MAAOC,UAAP;AAAA,MAAmBC,aAAnB;;AACA,mBAA4CF,cAAQ,CAAC,KAAD,CAApD;AAAA;AAAA,MAAOG,SAAP;AAAA,MAAkBC,sBAAlB,iBAFwB;;;AAIxB,WAASC,eAAT,CAAyBC,WAAzB,EAAsC;AACpC,QAAIA,WAAW,KAAKC,SAApB,EAA+B;AAC7BH,MAAAA,sBAAsB,CAACE,WAAD,CAAtB;AACD,KAFD,MAEO;AACLF,MAAAA,sBAAsB,CAAC,CAACD,SAAF,CAAtB;AACD;AACF;;AAED,WAASK,KAAT,GAAiB;AACfN,IAAAA,aAAa,CAAC,EAAD,CAAb;AACAE,IAAAA,sBAAsB,CAAC,KAAD,CAAtB;AACD;;AAED,SAAO;AACLK,IAAAA,KAAK,EAAE;AAAER,MAAAA,UAAU,EAAVA,UAAF;AAAcE,MAAAA,SAAS,EAATA;AAAd,KADF;AAELD,IAAAA,aAAa,EAAbA,aAFK;AAGLG,IAAAA,eAAe,EAAfA,eAHK;AAILG,IAAAA,KAAK,EAALA;AAJK,GAAP;AAMD;;AAED,kBAAeE,mCAAe,CAACX,cAAD,EAAiB,UAAAY,KAAK;AAAA,SAAI,CAACA,KAAK,CAACF,KAAP,CAAJ;AAAA,CAAtB,CAA9B;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Shuttle.actions.js","sources":["../../src/Shuttle.actions.js"],"sourcesContent":["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"],"names":["toggleItemSelection","itemId","state","checkedItems","addOrRemove","navigateTo","item","dest","hierarchyType","getHierarchyTypeName","indexInHierarchy","findIndex","hItem","id","hierarchy","slice","moveItem","movedItems","toggleInObject","defaultOptions","parentField","idField","op","hasMoved","getItemDeep","collection","options","itemIndex","fItem","children","hasChildren","compose","utils","getChildren","index","addToTarget","itemToAdd","items","preparedItems","targetItems","removeFromTarget","itemToRemove","cloneDeep","filterMovedItems","splice","length","childrenHash","hashArray","filter","i","mItem","resetCheckedItems","resetMovedItems"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShuttleContainer.js","sources":["../../src/ShuttleContainer.tsx"],"sourcesContent":["/* 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 useShuttleState 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 useShuttleState.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"],"names":["filterItemsByTerm","items","term","filter","item","name","toLowerCase","indexOf","String","id","ShuttleContainer","children","useContext","useShuttleState","Context","shuttleState","state","handlers","SearchState","searchState","movedItems","hierarchy","hierarchyDest","checkedItems","searchTerm","searching","toggleItemSelection","resetCheckedItems","resetMovedItems","moveCheckedItems","moveItem","navigate","sourceItems","useMemo","compose","filterItemsByHierarchy","getActiveIdFromHierarchy","prepareItems","targetItems","hierarchyId","sortBy","uniqBy","values","isFunction","onCheckItem","onClearCheckedItems","onClearMovedItems","onMoveCheckedItems","getItemsById","onMoveItemToSource","onMoveItemToTarget","onNavigateOnSourceTo","onNavigateOnTargetTo","withProviders"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShuttleImpl.js","sources":["../../src/ShuttleImpl.tsx"],"sourcesContent":["/* 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 }\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\nexport default withProviders(ShuttleImpl);\n"],"names":["ShuttleImpl","props","getState","movedItems","state","Object","keys","prevProps","preparedItems","checkedItems","hierarchy","name","sourceRootTitle","id","hierarchyDest","targetRootTitle","sourceItems","targetItems","setGetStatus","onChange","item","dest","direction","onDrillDown","onDrillDownTarget","resetSearchState","context","reset","setState","pipe","navigateTo","resetCheckedItems","selectedItems","onRemoveAllFromTarget","resetMovedItems","handleChange","onAddToTarget","addToTarget","onRemoveFromTarget","removeFromTarget","toggleItemSelection","onAddCheckedItems","nonSelectedItems","isControlledV2","checked","filter","some","check","items","getItemsById","actions","map","sourceItem","targetItem","idField","onTargetSortEnd","hierarchyId","getActiveIdFromHierarchy","collection","oldIndex","findIndex","tItem","newIndex","sortedMovedItems","arrayMove","sortedItems","moreItemsLoading","rest","searchTerm","searching","handleControlledSourceItms","filterBySearch","getChildrenFromParent","it","find","itt","ittt","parent","composedSourceItems","compose","filterMovedItems","handleControlledTargetItms","composedTargetItems","tItems","React","moveCheckedItems","navigate","handleTargetSortEnd","nextProps","prevState","updateShuttleStateFromProps","Component","contextType","SearchState","Context","withProviders"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShuttleRenderer.js","sources":["../../src/ShuttleRenderer.tsx"],"sourcesContent":["/* 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 AnimationContext 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 AnimationContext.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 default ShuttleRenderer;\n"],"names":["noop","ShuttleRenderer","containerProps","onNavigateOnTargetTo","onNavigateOnSourceTo","onMoveItemToSource","onMoveItemToTarget","onClearMovedItems","onMoveCheckedItems","onClearCheckedItems","onToggleSearch","onSearch","onSearchClose","onSearchOpen","searching","onCheckItem","hierarchy","hierarchyDest","checkedItems","sourceItems","targetItems","sourceEmptyMessage","targetEmptyMessage","composeTargetItemProps","composeSourceItemProps","targetSortable","sourceSortable","onSourceSortEnd","onTargetSortEnd","loadingSource","loadingTarget","onGetMoreItems","moreItemsLoading","hasNextPage","otherProps","useContext","AnimationContext","Context","setIsMoving","setIsDrillingDown","setIsMovingBack","reset","removeAnimationState","useCallback","setTimeout","React","ShuttleContainer","ShuttleSource","item","direction","indexInHierarchy","findIndex","hItem","id","ShuttleTarget"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShuttleState.js","sources":["../../src/ShuttleState.tsx"],"sourcesContent":["import { useState } from 'react';\nimport createContainer from 'constate';\nimport { getItemsById, pipe } from './helper';\nimport * as actions from './Shuttle.actions';\n\nfunction useShuttleState() {\n const [shuttleState, setShuttleState] = useState({\n checkedItems: [],\n movedItems: {},\n hierarchy: [{ name: 'Category', id: null }],\n hierarchyDest: [{ name: 'Added users', id: null }],\n });\n\n const setState = state => setShuttleState(state(shuttleState));\n\n function setMovedItems(itemsIds = [], items = []) {\n const itemsToMove = getItemsById(itemsIds, items);\n const pipeActions = itemsToMove.map(item => actions.moveItem(item, true));\n setState(pipe([actions.resetMovedItems(), ...pipeActions]));\n }\n\n function navigate(item, dest) {\n setState(\n pipe([actions.navigateTo(item, dest), actions.resetCheckedItems()]),\n );\n }\n\n function resetCheckedItems() {\n setState(actions.resetCheckedItems());\n }\n\n function resetMovedItems() {\n setState(\n pipe([actions.navigateTo({ id: null }, true), actions.resetMovedItems()]),\n );\n }\n\n function moveItem(item, dest) {\n setState(pipe([actions.moveItem(item, dest), actions.resetCheckedItems()]));\n }\n\n function toggleItemSelection(item) {\n setState(actions.toggleItemSelection(item.id));\n }\n\n function moveCheckedItems(items, dest = true) {\n const pipeActions = items.map(item => moveItem(item, dest));\n setState(pipe([...pipeActions, resetCheckedItems()]));\n }\n\n return {\n state: shuttleState,\n toggleItemSelection,\n moveCheckedItems,\n moveItem,\n resetMovedItems,\n resetCheckedItems,\n navigate,\n setMovedItems,\n };\n}\n\nexport default createContainer(useShuttleState, value => [value.state]);\n"],"names":["useShuttleState","useState","checkedItems","movedItems","hierarchy","name","id","hierarchyDest","shuttleState","setShuttleState","setState","state","setMovedItems","itemsIds","items","itemsToMove","getItemsById","pipeActions","map","item","actions","pipe","navigate","dest","resetCheckedItems","resetMovedItems","moveItem","toggleItemSelection","moveCheckedItems","createContainer","value"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"animationConfig.js","sources":["../../../src/animation/animationConfig.tsx"],"sourcesContent":["// shuttle list and items constants\nconst itemAnimationDuration = 300;\nconst listAnimationDuration = 300;\nconst xPosMovement = 500;\n\n// breadcrumb constants\nconst breadcrumbDuration = 200;\nconst xBreadcrumbPos = 300;\n\nexport const animationConfig = {\n slideRight: {\n from: { transform: 'translate3d(0,0,0)' },\n to: { transform: `translate3d(${xPosMovement}px,0,0)` },\n },\n slideLeft: {\n from: { transform: 'translate3d(0,0,0)' },\n to: { transform: `translate3d(${-xPosMovement}px,0,0)` },\n },\n moveItem: isMovingLeft => ({\n config: { duration: itemAnimationDuration },\n enter: { opacity: 1, transform: `translate3d(${0}px,0,0)` },\n from: {\n opacity: 1,\n transform: `translate3d(${\n isMovingLeft ? -xPosMovement : xPosMovement\n }px,0,0)`,\n },\n leave: {\n transform: `translate3d(${\n isMovingLeft ? -xPosMovement : xPosMovement\n }px,0,0)`,\n },\n }),\n moveList: isDrillingDown => ({\n config: { duration: listAnimationDuration },\n enter: { opacity: 1, transform: 'translate3d(0,0,0)' },\n from: {\n opacity: 0,\n transform: `translate3d(0px,${\n isDrillingDown ? xPosMovement : -xPosMovement\n }px,0)`,\n },\n leave: {\n opacity: 0,\n transform: `translate3d(0,${\n isDrillingDown ? -xPosMovement : xPosMovement\n }px,0)`,\n },\n }),\n breadcrumb: () => ({\n config: { duration: breadcrumbDuration },\n enter: { opacity: 1, transform: `translate3d(${0}px,0,0)` },\n from: { opacity: 0, transform: `translate3d(${xBreadcrumbPos}px,0px,0)` },\n leave: { opacity: 0, transform: `translate3d(${xBreadcrumbPos}px,0,0)` },\n }),\n};\n"],"names":["itemAnimationDuration","listAnimationDuration","xPosMovement","breadcrumbDuration","xBreadcrumbPos","animationConfig","slideRight","from","transform","to","slideLeft","moveItem","isMovingLeft","config","duration","enter","opacity","leave","moveList","isDrillingDown","breadcrumb"],"mappings":";;;;AAAA;AACA,IAAMA,qBAAqB,GAAG,GAA9B;AACA,IAAMC,qBAAqB,GAAG,GAA9B;AACA,IAAMC,YAAY,GAAG,GAArB;;AAGA,IAAMC,kBAAkB,GAAG,GAA3B;AACA,IAAMC,cAAc,GAAG,GAAvB;IAEaC,eAAe,GAAG;AAC7BC,EAAAA,UAAU,EAAE;AACVC,IAAAA,IAAI,EAAE;AAAEC,MAAAA,SAAS,EAAE;AAAb,KADI;AAEVC,IAAAA,EAAE,EAAE;AAAED,MAAAA,SAAS,wBAAiBN,YAAjB;AAAX;AAFM,GADiB;AAK7BQ,EAAAA,SAAS,EAAE;AACTH,IAAAA,IAAI,EAAE;AAAEC,MAAAA,SAAS,EAAE;AAAb,KADG;AAETC,IAAAA,EAAE,EAAE;AAAED,MAAAA,SAAS,wBAAiB,CAACN,YAAlB;AAAX;AAFK,GALkB;AAS7BS,EAAAA,QAAQ,EAAE,kBAAAC,YAAY;AAAA,WAAK;AACzBC,MAAAA,MAAM,EAAE;AAAEC,QAAAA,QAAQ,EAAEd;AAAZ,OADiB;AAEzBe,MAAAA,KAAK,EAAE;AAAEC,QAAAA,OAAO,EAAE,CAAX;AAAcR,QAAAA,SAAS,wBAAiB,CAAjB;AAAvB,OAFkB;AAGzBD,MAAAA,IAAI,EAAE;AACJS,QAAAA,OAAO,EAAE,CADL;AAEJR,QAAAA,SAAS,wBACPI,YAAY,GAAG,CAACV,YAAJ,GAAmBA,YADxB;AAFL,OAHmB;AASzBe,MAAAA,KAAK,EAAE;AACLT,QAAAA,SAAS,wBACPI,YAAY,GAAG,CAACV,YAAJ,GAAmBA,YADxB;AADJ;AATkB,KAAL;AAAA,GATO;AAwB7BgB,EAAAA,QAAQ,EAAE,kBAAAC,cAAc;AAAA,WAAK;AAC3BN,MAAAA,MAAM,EAAE;AAAEC,QAAAA,QAAQ,EAAEb;AAAZ,OADmB;AAE3Bc,MAAAA,KAAK,EAAE;AAAEC,QAAAA,OAAO,EAAE,CAAX;AAAcR,QAAAA,SAAS,EAAE;AAAzB,OAFoB;AAG3BD,MAAAA,IAAI,EAAE;AACJS,QAAAA,OAAO,EAAE,CADL;AAEJR,QAAAA,SAAS,4BACPW,cAAc,GAAGjB,YAAH,GAAkB,CAACA,YAD1B;AAFL,OAHqB;AAS3Be,MAAAA,KAAK,EAAE;AACLD,QAAAA,OAAO,EAAE,CADJ;AAELR,QAAAA,SAAS,0BACPW,cAAc,GAAG,CAACjB,YAAJ,GAAmBA,YAD1B;AAFJ;AAToB,KAAL;AAAA,GAxBK;AAwC7BkB,EAAAA,UAAU,EAAE;AAAA,WAAO;AACjBP,MAAAA,MAAM,EAAE;AAAEC,QAAAA,QAAQ,EAAEX;AAAZ,OADS;AAEjBY,MAAAA,KAAK,EAAE;AAAEC,QAAAA,OAAO,EAAE,CAAX;AAAcR,QAAAA,SAAS,wBAAiB,CAAjB;AAAvB,OAFU;AAGjBD,MAAAA,IAAI,EAAE;AAAES,QAAAA,OAAO,EAAE,CAAX;AAAcR,QAAAA,SAAS,wBAAiBJ,cAAjB;AAAvB,OAHW;AAIjBa,MAAAA,KAAK,EAAE;AAAED,QAAAA,OAAO,EAAE,CAAX;AAAcR,QAAAA,SAAS,wBAAiBJ,cAAjB;AAAvB;AAJU,KAAP;AAAA;AAxCiB;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"classedComponents.js","sources":["../../src/classedComponents.tsx"],"sourcesContent":["import DSButton from '@elliemae/ds-button';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport ShuttleBreadcrumb from './components/ShuttleBreadcrumb';\nimport OverflowList from './components/OverflowList';\n\n// block names\nconst blockName = 'shuttle';\nconst headerBlockName = `${blockName}-header`;\nconst listBlockName = `${blockName}-list`;\nconst footerBlockName = `${blockName}-footer`;\n\nexport const ShuttleContainer = aggregatedClasses('div')(blockName);\n\n// wrapper\nexport const ShuttleWrapper = aggregatedClasses('div')(`${blockName}-wrapper`);\n\n// header\nexport const ShuttleHeader = aggregatedClasses('div')(headerBlockName);\nexport const ShuttleHeaderBreadcrumb = aggregatedClasses(ShuttleBreadcrumb)(headerBlockName, 'breadcrumb');\nexport const ShuttleHeaderSearchToggle = aggregatedClasses(DSButton)(headerBlockName, 'search-toggle');\n\n// list\nexport const ShuttleList = aggregatedClasses('div')(listBlockName, null, ({ showPulse }) => ({\n 'show-pulse': showPulse,\n}));\n\nexport const ShuttleListPanel = aggregatedClasses('div')(listBlockName, 'panel', ({ open }) => ({ open }));\nexport const Overflow = aggregatedClasses(OverflowList)(listBlockName, 'overflow', ({ empty, searching }) => ({\n empty,\n searching,\n}));\nexport const EmptyMessage = aggregatedClasses('span')(listBlockName, 'empty-message');\nexport const LoadingList = aggregatedClasses('div')(listBlockName, 'loading-list');\n\n// footer\nexport const ShuttleFooter = aggregatedClasses('div')(footerBlockName);\nexport const ShuttleFooterActions = aggregatedClasses('div')(footerBlockName, 'actions');\nexport const ShuttleFooterCounter = aggregatedClasses('span')(footerBlockName, 'counter');\n"],"names":["blockName","headerBlockName","listBlockName","footerBlockName","ShuttleContainer","aggregatedClasses","ShuttleWrapper","ShuttleHeader","ShuttleHeaderBreadcrumb","ShuttleBreadcrumb","ShuttleHeaderSearchToggle","DSButton","ShuttleList","showPulse","ShuttleListPanel","open","Overflow","OverflowList","empty","searching","EmptyMessage","LoadingList","ShuttleFooter","ShuttleFooterActions","ShuttleFooterCounter"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAMA,IAAMA,SAAS,GAAG,SAAlB;AACA,IAAMC,eAAe,aAAMD,SAAN,YAArB;AACA,IAAME,aAAa,aAAMF,SAAN,UAAnB;AACA,IAAMG,eAAe,aAAMH,SAAN,YAArB;IAEaI,gBAAgB,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBL,SAAzB;;IAGnBM,cAAc,GAAGD,8BAAiB,CAAC,KAAD,CAAjB,WAA4BL,SAA5B;;IAGjBO,aAAa,GAAGF,8BAAiB,CAAC,KAAD,CAAjB,CAAyBJ,eAAzB;IAChBO,uBAAuB,GAAGH,8BAAiB,CAACI,4BAAD,CAAjB,CAAqCR,eAArC,EAAsD,YAAtD;IAC1BS,yBAAyB,GAAGL,8BAAiB,CAACM,4BAAD,CAAjB,CAA4BV,eAA5B,EAA6C,eAA7C;;IAG5BW,WAAW,GAAGP,8BAAiB,CAAC,KAAD,CAAjB,CAAyBH,aAAzB,EAAwC,IAAxC,EAA8C;AAAA,MAAGW,SAAH,QAAGA,SAAH;AAAA,SAAoB;AAC3F,kBAAcA;AAD6E,GAApB;AAAA,CAA9C;IAIdC,gBAAgB,GAAGT,8BAAiB,CAAC,KAAD,CAAjB,CAAyBH,aAAzB,EAAwC,OAAxC,EAAiD;AAAA,MAAGa,IAAH,SAAGA,IAAH;AAAA,SAAe;AAAEA,IAAAA,IAAI,EAAJA;AAAF,GAAf;AAAA,CAAjD;IACnBC,QAAQ,GAAGX,8BAAiB,CAACY,uBAAD,CAAjB,CAAgCf,aAAhC,EAA+C,UAA/C,EAA2D;AAAA,MAAGgB,KAAH,SAAGA,KAAH;AAAA,MAAUC,SAAV,SAAUA,SAAV;AAAA,SAA2B;AAC5GD,IAAAA,KAAK,EAALA,KAD4G;AAE5GC,IAAAA,SAAS,EAATA;AAF4G,GAA3B;AAAA,CAA3D;IAIXC,YAAY,GAAGf,8BAAiB,CAAC,MAAD,CAAjB,CAA0BH,aAA1B,EAAyC,eAAzC;IACfmB,WAAW,GAAGhB,8BAAiB,CAAC,KAAD,CAAjB,CAAyBH,aAAzB,EAAwC,cAAxC;;IAGdoB,aAAa,GAAGjB,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,eAAzB;IAChBoB,oBAAoB,GAAGlB,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,eAAzB,EAA0C,SAA1C;IACvBqB,oBAAoB,GAAGnB,8BAAiB,CAAC,MAAD,CAAjB,CAA0BF,eAA1B,EAA2C,SAA3C;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"LoadingIndicator.js","sources":["../../../src/components/LoadingIndicator.tsx"],"sourcesContent":["import React from 'react';\nimport { DSCircularProgressIndicator } from '@elliemae/ds-circular-progress-indicator';\nimport styled from 'styled-components';\n\nconst Wrapper = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n`;\n\nconst LoadingIndicator = () => (\n <Wrapper data-testid=\"shuttle__loading-indicator\">\n <DSCircularProgressIndicator size=\"xl\" showLabel />\n </Wrapper>\n);\n\nexport default LoadingIndicator;\n"],"names":["Wrapper","styled","div","LoadingIndicator","React","DSCircularProgressIndicator"],"mappings":";;;;;;;;;;;AAIA,IAAMA,OAAO,gBAAGC,0BAAM,CAACC,GAAV;AAAA;AAAA,sFAAb;;IAQMC,gBAAgB,GAAG,SAAnBA,gBAAmB;AAAA,sBACvBC,wCAAC,OAAD;AAAS,mBAAY;AAArB,kBACEA,wCAACC,uDAAD;AAA6B,IAAA,IAAI,EAAC,IAAlC;AAAuC,IAAA,SAAS;AAAhD,IADF,CADuB;AAAA;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"OverflowList.js","sources":["../../../src/components/OverflowList.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useTransition, animated } from 'react-spring/web.cjs';\nimport { animationConfig } from '../animation/animationConfig';\nimport AnimationContext from '../AnimationState';\n\nfunction OverflowList({ className = '', activeHierarchy = '', children }) {\n const {\n state: { isDrillingDown = false },\n setIsDrillingDown,\n } = useContext(AnimationContext.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 default OverflowList;\n"],"names":["OverflowList","className","activeHierarchy","children","useContext","AnimationContext","Context","state","isDrillingDown","setIsDrillingDown","overflowTransition","useTransition","animationConfig","moveList","onDestroyed","map","props","key","React","animated"],"mappings":";;;;;;;;;;;;;;;;;;;AAKA,SAASA,YAAT,OAA0E;AAAA,4BAAlDC,SAAkD;AAAA,MAAlDA,SAAkD,+BAAtC,EAAsC;AAAA,kCAAlCC,eAAkC;AAAA,MAAlCA,eAAkC,qCAAhB,EAAgB;AAAA,MAAZC,QAAY,QAAZA,QAAY;;AACxE,oBAGIC,gBAAU,CAACC,cAAgB,CAACC,OAAlB,CAHd;AAAA,0CACEC,KADF,CACWC,cADX;AAAA,MACWA,cADX,sCAC4B,KAD5B;AAAA,MAEEC,iBAFF,eAEEA,iBAFF;;AAKA,MAAMC,kBAAkB,GAAGC,qBAAa,CAACT,eAAD,EAAkB,IAAlB,kCACnCU,yCAAe,CAACC,QAAhB,CAAyBL,cAAzB,CADmC;AAEtCM,IAAAA,WAAW,EAAE;AAAA,aAAML,iBAAiB,CAAC,KAAD,CAAvB;AAAA;AAFyB,KAAxC;AAIA,SAAOC,kBAAkB,CAACK,GAAnB,CAAuB;AAAA,QAAGC,KAAH,SAAGA,KAAH;AAAA,QAAUC,GAAV,SAAUA,GAAV;AAAA,wBAC5BC,wCAACC,gBAAD,CAAU,GAAV;AAAc,MAAA,GAAG,EAAEF,GAAnB;AAAwB,MAAA,SAAS,EAAEhB,SAAnC;AAA8C,MAAA,KAAK,EAAEe;AAArD,OACGb,QADH,CAD4B;AAAA,GAAvB,CAAP;AAKD;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShuttleBreadcrumb.js","sources":["../../../src/components/ShuttleBreadcrumb.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport React from 'react';\nimport { useTransition, animated } from 'react-spring/web.cjs';\nimport DSBreadcrumb from '@elliemae/ds-breadcrumb';\nimport { animationConfig } from '../animation/animationConfig';\n\nfunction ShuttleBreadcrumb({ className = '', hierarchy = [], onNavigateTo = () => null }) {\n const animatedCrumbs = useTransition(hierarchy, (item) => item.id, animationConfig.breadcrumb());\n\n return (\n <div className={className}>\n <DSBreadcrumb isTitle>\n {animatedCrumbs.map(({ item, props, key }) => (\n <DSBreadcrumb.Item\n key={key}\n containerComponent={animated.li}\n label={item.name}\n onClick={() => onNavigateTo(item, 'up')}\n style={props}\n />\n ))}\n </DSBreadcrumb>\n </div>\n );\n}\n\nexport default ShuttleBreadcrumb;\n"],"names":["ShuttleBreadcrumb","className","hierarchy","onNavigateTo","animatedCrumbs","useTransition","item","id","animationConfig","breadcrumb","React","DSBreadcrumb","map","props","key","animated","li","name"],"mappings":";;;;;;;;;;;;AAAA;;AAMA,SAASA,iBAAT,OAA0F;AAAA,4BAA7DC,SAA6D;AAAA,MAA7DA,SAA6D,+BAAjD,EAAiD;AAAA,4BAA7CC,SAA6C;AAAA,MAA7CA,SAA6C,+BAAjC,EAAiC;AAAA,+BAA7BC,YAA6B;AAAA,MAA7BA,YAA6B,kCAAd;AAAA,WAAM,IAAN;AAAA,GAAc;AACxF,MAAMC,cAAc,GAAGC,qBAAa,CAACH,SAAD,EAAY,UAACI,IAAD;AAAA,WAAUA,IAAI,CAACC,EAAf;AAAA,GAAZ,EAA+BC,yCAAe,CAACC,UAAhB,EAA/B,CAApC;AAEA,sBACEC;AAAK,IAAA,SAAS,EAAET;AAAhB,kBACES,wCAACC,gCAAD;AAAc,IAAA,OAAO;AAArB,KACGP,cAAc,CAACQ,GAAf,CAAmB;AAAA,QAAGN,IAAH,SAAGA,IAAH;AAAA,QAASO,KAAT,SAASA,KAAT;AAAA,QAAgBC,GAAhB,SAAgBA,GAAhB;AAAA,wBAClBJ,wCAACC,gCAAD,CAAc,IAAd;AACE,MAAA,GAAG,EAAEG,GADP;AAEE,MAAA,kBAAkB,EAAEC,gBAAQ,CAACC,EAF/B;AAGE,MAAA,KAAK,EAAEV,IAAI,CAACW,IAHd;AAIE,MAAA,OAAO,EAAE;AAAA,eAAMd,YAAY,CAACG,IAAD,EAAO,IAAP,CAAlB;AAAA,OAJX;AAKE,MAAA,KAAK,EAAEO;AALT,MADkB;AAAA,GAAnB,CADH,CADF,CADF;AAeD;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShuttleInfiniteScrollIndicator.js","sources":["../../../src/components/ShuttleInfiniteScrollIndicator.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-state */\nimport React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport DSIndeterminateProgressIndicator from '@elliemae/ds-indeterminate-progress-indicator';\n\nconst blockName = 'shuttle-infinite-scroll-indicator';\n\nconst InfiniteScrollBarContainer = aggregatedClasses('div')(blockName, null, ({ isOpen }) => ({ opened: isOpen }));\n\nconst ShuttleInfiniteScrollIndicator = ({ isOpen }) => (\n <InfiniteScrollBarContainer classProps={{ isOpen }} data-testid={blockName}>\n <DSIndeterminateProgressIndicator processing title=\"Loading\" />\n </InfiniteScrollBarContainer>\n);\n\nexport default ShuttleInfiniteScrollIndicator;\n"],"names":["blockName","InfiniteScrollBarContainer","aggregatedClasses","isOpen","opened","ShuttleInfiniteScrollIndicator","React","DSIndeterminateProgressIndicator"],"mappings":";;;;;;;;;;;AAAA;AAKA,IAAMA,SAAS,GAAG,mCAAlB;AAEA,IAAMC,0BAA0B,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,SAAzB,EAAoC,IAApC,EAA0C;AAAA,MAAGG,MAAH,QAAGA,MAAH;AAAA,SAAiB;AAAEC,IAAAA,MAAM,EAAED;AAAV,GAAjB;AAAA,CAA1C,CAAnC;;IAEME,8BAA8B,GAAG,SAAjCA,8BAAiC;AAAA,MAAGF,MAAH,SAAGA,MAAH;AAAA,sBACrCG,wCAAC,0BAAD;AAA4B,IAAA,UAAU,EAAE;AAAEH,MAAAA,MAAM,EAANA;AAAF,KAAxC;AAAoD,mBAAaH;AAAjE,kBACEM,wCAACC,oDAAD;AAAkC,IAAA,UAAU,MAA5C;AAA6C,IAAA,KAAK,EAAC;AAAnD,IADF,CADqC;AAAA;;;;"}