@elliemae/ds-utilities 3.0.0-next.2 → 3.0.0-next.3

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 (207) hide show
  1. package/dist/cjs/capitalize.js +35 -0
  2. package/dist/cjs/capitalize.js.map +7 -0
  3. package/dist/cjs/compose.js +45 -0
  4. package/dist/cjs/compose.js.map +7 -0
  5. package/dist/cjs/getComponentFromProps.js +57 -0
  6. package/dist/cjs/getComponentFromProps.js.map +7 -0
  7. package/dist/cjs/hooks/index.js +75 -0
  8. package/dist/cjs/hooks/index.js.map +7 -0
  9. package/dist/cjs/hooks/useCallbackAfterRender.js +45 -0
  10. package/dist/cjs/hooks/useCallbackAfterRender.js.map +7 -0
  11. package/dist/cjs/hooks/useCancellableDelayedCallback.js +51 -0
  12. package/dist/cjs/hooks/useCancellableDelayedCallback.js.map +7 -0
  13. package/dist/cjs/hooks/useDerivedStateFromProps.js +67 -0
  14. package/dist/cjs/hooks/useDerivedStateFromProps.js.map +7 -0
  15. package/dist/cjs/hooks/useExecutionTimer.js +50 -0
  16. package/dist/cjs/hooks/useExecutionTimer.js.map +7 -0
  17. package/dist/cjs/hooks/useExpandState.js +137 -0
  18. package/dist/cjs/hooks/useExpandState.js.map +7 -0
  19. package/dist/cjs/hooks/useFocusTrap.js +49 -0
  20. package/dist/cjs/hooks/useFocusTrap.js.map +7 -0
  21. package/dist/cjs/hooks/useHotkeys.js +45 -0
  22. package/dist/cjs/hooks/useHotkeys.js.map +7 -0
  23. package/dist/cjs/hooks/useHoverHandlersDelay.js +58 -0
  24. package/dist/cjs/hooks/useHoverHandlersDelay.js.map +7 -0
  25. package/dist/cjs/hooks/useIsShowingEllipsis.js +58 -0
  26. package/dist/cjs/hooks/useIsShowingEllipsis.js.map +7 -0
  27. package/dist/cjs/hooks/useOnElementResize.js +55 -0
  28. package/dist/cjs/hooks/useOnElementResize.js.map +7 -0
  29. package/dist/cjs/hooks/useParentElement.js +43 -0
  30. package/dist/cjs/hooks/useParentElement.js.map +7 -0
  31. package/dist/cjs/hooks/usePrevious.js +44 -0
  32. package/dist/cjs/hooks/usePrevious.js.map +7 -0
  33. package/dist/cjs/hooks/useResizeObserver.js +60 -0
  34. package/dist/cjs/hooks/useResizeObserver.js.map +7 -0
  35. package/dist/cjs/hooks/useSetRef.js +42 -0
  36. package/dist/cjs/hooks/useSetRef.js.map +7 -0
  37. package/dist/cjs/hooks/useShouldRecalculate.js +44 -0
  38. package/dist/cjs/hooks/useShouldRecalculate.js.map +7 -0
  39. package/dist/cjs/hooks/useWindowScrollerList.js +83 -0
  40. package/dist/cjs/hooks/useWindowScrollerList.js.map +7 -0
  41. package/dist/cjs/hooks/useWindowSize.js +57 -0
  42. package/dist/cjs/hooks/useWindowSize.js.map +7 -0
  43. package/dist/cjs/index.js +148 -0
  44. package/dist/cjs/index.js.map +7 -0
  45. package/dist/cjs/onClickHandlerForNonInteractiveElements.js +49 -0
  46. package/dist/cjs/onClickHandlerForNonInteractiveElements.js.map +7 -0
  47. package/dist/cjs/operators.js +68 -0
  48. package/dist/cjs/operators.js.map +7 -0
  49. package/dist/cjs/platform.js +37 -0
  50. package/dist/cjs/platform.js.map +7 -0
  51. package/dist/cjs/reactTypesUtility.js +58 -0
  52. package/dist/cjs/reactTypesUtility.js.map +7 -0
  53. package/dist/cjs/scrollingTimer.js +46 -0
  54. package/dist/cjs/scrollingTimer.js.map +7 -0
  55. package/dist/cjs/system.js +60 -0
  56. package/dist/cjs/system.js.map +7 -0
  57. package/dist/cjs/timeUtils.js +43 -0
  58. package/dist/cjs/timeUtils.js.map +7 -0
  59. package/dist/cjs/utils.js +143 -0
  60. package/dist/cjs/utils.js.map +7 -0
  61. package/dist/cjs/validations.js +57 -0
  62. package/dist/cjs/validations.js.map +7 -0
  63. package/dist/esm/capitalize.js +6 -0
  64. package/dist/esm/capitalize.js.map +7 -0
  65. package/dist/esm/compose.js +16 -0
  66. package/dist/esm/compose.js.map +7 -0
  67. package/dist/esm/getComponentFromProps.js +30 -0
  68. package/dist/esm/getComponentFromProps.js.map +7 -0
  69. package/dist/esm/hooks/index.js +46 -0
  70. package/dist/esm/hooks/index.js.map +7 -0
  71. package/dist/esm/hooks/useCallbackAfterRender.js +16 -0
  72. package/dist/esm/hooks/useCallbackAfterRender.js.map +7 -0
  73. package/dist/esm/hooks/useCancellableDelayedCallback.js +22 -0
  74. package/dist/esm/hooks/useCancellableDelayedCallback.js.map +7 -0
  75. package/dist/esm/hooks/useDerivedStateFromProps.js +38 -0
  76. package/dist/esm/hooks/useDerivedStateFromProps.js.map +7 -0
  77. package/dist/esm/hooks/useExecutionTimer.js +21 -0
  78. package/dist/esm/hooks/useExecutionTimer.js.map +7 -0
  79. package/dist/esm/hooks/useExpandState.js +110 -0
  80. package/dist/esm/hooks/useExpandState.js.map +7 -0
  81. package/dist/esm/hooks/useFocusTrap.js +20 -0
  82. package/dist/esm/hooks/useFocusTrap.js.map +7 -0
  83. package/dist/esm/hooks/useHotkeys.js +16 -0
  84. package/dist/esm/hooks/useHotkeys.js.map +7 -0
  85. package/{esm → dist/esm}/hooks/useHoverHandlersDelay.js +15 -12
  86. package/dist/esm/hooks/useHoverHandlersDelay.js.map +7 -0
  87. package/dist/esm/hooks/useIsShowingEllipsis.js +29 -0
  88. package/dist/esm/hooks/useIsShowingEllipsis.js.map +7 -0
  89. package/dist/esm/hooks/useOnElementResize.js +26 -0
  90. package/dist/esm/hooks/useOnElementResize.js.map +7 -0
  91. package/dist/esm/hooks/useParentElement.js +14 -0
  92. package/dist/esm/hooks/useParentElement.js.map +7 -0
  93. package/dist/esm/hooks/usePrevious.js +15 -0
  94. package/dist/esm/hooks/usePrevious.js.map +7 -0
  95. package/dist/esm/hooks/useResizeObserver.js +31 -0
  96. package/dist/esm/hooks/useResizeObserver.js.map +7 -0
  97. package/dist/esm/hooks/useSetRef.js +13 -0
  98. package/dist/esm/hooks/useSetRef.js.map +7 -0
  99. package/dist/esm/hooks/useShouldRecalculate.js +15 -0
  100. package/dist/esm/hooks/useShouldRecalculate.js.map +7 -0
  101. package/{esm → dist/esm}/hooks/useWindowScrollerList.js +20 -29
  102. package/dist/esm/hooks/useWindowScrollerList.js.map +7 -0
  103. package/dist/esm/hooks/useWindowSize.js +28 -0
  104. package/dist/esm/hooks/useWindowSize.js.map +7 -0
  105. package/dist/esm/index.js +210 -0
  106. package/dist/esm/index.js.map +7 -0
  107. package/dist/esm/onClickHandlerForNonInteractiveElements.js +20 -0
  108. package/dist/esm/onClickHandlerForNonInteractiveElements.js.map +7 -0
  109. package/dist/esm/operators.js +39 -0
  110. package/dist/esm/operators.js.map +7 -0
  111. package/dist/esm/platform.js +8 -0
  112. package/dist/esm/platform.js.map +7 -0
  113. package/dist/esm/reactTypesUtility.js +29 -0
  114. package/dist/esm/reactTypesUtility.js.map +7 -0
  115. package/dist/esm/scrollingTimer.js +17 -0
  116. package/dist/esm/scrollingTimer.js.map +7 -0
  117. package/dist/esm/system.js +31 -0
  118. package/dist/esm/system.js.map +7 -0
  119. package/dist/esm/timeUtils.js +14 -0
  120. package/dist/esm/timeUtils.js.map +7 -0
  121. package/dist/esm/utils.js +154 -0
  122. package/dist/esm/utils.js.map +7 -0
  123. package/dist/esm/validations.js +28 -0
  124. package/dist/esm/validations.js.map +7 -0
  125. package/package.json +82 -69
  126. package/cjs/capitalize.js +0 -7
  127. package/cjs/compose.js +0 -38
  128. package/cjs/getComponentFromProps.js +0 -30
  129. package/cjs/hooks/index.js +0 -61
  130. package/cjs/hooks/useCancellableDelayedCallback.js +0 -26
  131. package/cjs/hooks/useDerivedStateFromProps.js +0 -56
  132. package/cjs/hooks/useExecutionTimer.js +0 -31
  133. package/cjs/hooks/useExpandState.js +0 -133
  134. package/cjs/hooks/useHotkeys.js +0 -25
  135. package/cjs/hooks/useHoverHandlersDelay.js +0 -28
  136. package/cjs/hooks/useOnElementResize.js +0 -37
  137. package/cjs/hooks/useParentElement.js +0 -16
  138. package/cjs/hooks/usePrevious.js +0 -13
  139. package/cjs/hooks/useResizeObserver.js +0 -33
  140. package/cjs/hooks/useSetRef.js +0 -15
  141. package/cjs/hooks/useShouldRecalculate.js +0 -17
  142. package/cjs/hooks/useWindowScrollerList.js +0 -65
  143. package/cjs/hooks/useWindowSize.js +0 -27
  144. package/cjs/index.js +0 -266
  145. package/cjs/onClickHandlerForNonInteractiveElements.js +0 -22
  146. package/cjs/operators.js +0 -63
  147. package/cjs/platform.js +0 -9
  148. package/cjs/reactTypesUtility.js +0 -35
  149. package/cjs/scrollingTimer.js +0 -24
  150. package/cjs/system.js +0 -43
  151. package/cjs/timeUtils.js +0 -25
  152. package/cjs/utils.js +0 -263
  153. package/cjs/validations.js +0 -44
  154. package/esm/capitalize.js +0 -3
  155. package/esm/compose.js +0 -34
  156. package/esm/getComponentFromProps.js +0 -23
  157. package/esm/hooks/index.js +0 -18
  158. package/esm/hooks/useCancellableDelayedCallback.js +0 -24
  159. package/esm/hooks/useDerivedStateFromProps.js +0 -54
  160. package/esm/hooks/useExecutionTimer.js +0 -29
  161. package/esm/hooks/useExpandState.js +0 -127
  162. package/esm/hooks/useHotkeys.js +0 -19
  163. package/esm/hooks/useOnElementResize.js +0 -33
  164. package/esm/hooks/useParentElement.js +0 -12
  165. package/esm/hooks/usePrevious.js +0 -11
  166. package/esm/hooks/useResizeObserver.js +0 -26
  167. package/esm/hooks/useSetRef.js +0 -11
  168. package/esm/hooks/useShouldRecalculate.js +0 -15
  169. package/esm/hooks/useWindowSize.js +0 -25
  170. package/esm/index.js +0 -31
  171. package/esm/onClickHandlerForNonInteractiveElements.js +0 -20
  172. package/esm/operators.js +0 -46
  173. package/esm/platform.js +0 -4
  174. package/esm/reactTypesUtility.js +0 -22
  175. package/esm/scrollingTimer.js +0 -20
  176. package/esm/system.js +0 -37
  177. package/esm/timeUtils.js +0 -20
  178. package/esm/utils.js +0 -99
  179. package/esm/validations.js +0 -38
  180. package/types/capitalize.d.ts +0 -1
  181. package/types/compose.d.ts +0 -11
  182. package/types/getComponentFromProps.d.ts +0 -2
  183. package/types/hooks/index.d.ts +0 -18
  184. package/types/hooks/useCancellableDelayedCallback.d.ts +0 -1
  185. package/types/hooks/useDerivedStateFromProps.d.ts +0 -1
  186. package/types/hooks/useExecutionTimer.d.ts +0 -1
  187. package/types/hooks/useExpandState.d.ts +0 -22
  188. package/types/hooks/useHotkeys.d.ts +0 -5
  189. package/types/hooks/useHoverHandlersDelay.d.ts +0 -9
  190. package/types/hooks/useOnElementResize.d.ts +0 -2
  191. package/types/hooks/useParentElement.d.ts +0 -1
  192. package/types/hooks/usePrevious.d.ts +0 -2
  193. package/types/hooks/useResizeObserver.d.ts +0 -2
  194. package/types/hooks/useSetRef.d.ts +0 -2
  195. package/types/hooks/useShouldRecalculate.d.ts +0 -1
  196. package/types/hooks/useWindowScrollerList.d.ts +0 -4
  197. package/types/hooks/useWindowSize.d.ts +0 -1
  198. package/types/index.d.ts +0 -13
  199. package/types/onClickHandlerForNonInteractiveElements.d.ts +0 -12
  200. package/types/operators.d.ts +0 -31
  201. package/types/platform.d.ts +0 -2
  202. package/types/reactTypesUtility.d.ts +0 -6
  203. package/types/scrollingTimer.d.ts +0 -1
  204. package/types/system.d.ts +0 -3
  205. package/types/timeUtils.d.ts +0 -7
  206. package/types/utils.d.ts +0 -23
  207. package/types/validations.d.ts +0 -23
@@ -0,0 +1,154 @@
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
+ import * as React from "react";
21
+ import {
22
+ cloneDeep,
23
+ filter,
24
+ debounce,
25
+ findIndex,
26
+ isEmpty,
27
+ isString,
28
+ isEqual,
29
+ noop,
30
+ omit,
31
+ orderBy,
32
+ pull,
33
+ sumBy,
34
+ maxBy,
35
+ meanBy,
36
+ sortBy,
37
+ transform,
38
+ isFunction,
39
+ uniq,
40
+ uniqBy,
41
+ groupBy,
42
+ property,
43
+ get,
44
+ set,
45
+ range,
46
+ parseInt,
47
+ padStart,
48
+ isNaN,
49
+ values,
50
+ throttle,
51
+ pick,
52
+ pickBy,
53
+ differenceBy,
54
+ differenceWith,
55
+ isEqualWith,
56
+ curry,
57
+ isObject,
58
+ isBoolean
59
+ } from "lodash";
60
+ const cx = (...classnames) => classnames.reduce((result, cn) => `${result} ${cn || ""}`, "");
61
+ const toggleInObject = (obj, key, value) => obj[key] !== void 0 ? omit(obj, [key]) : __spreadProps(__spreadValues({}, obj), { [key]: value });
62
+ const toggleInArray = (array, value) => array.indexOf(value) === -1 ? [value] : [];
63
+ const arrayMoveMutate = (array, from, to) => {
64
+ array.splice(to < 0 ? array.length + to : to, 0, array.splice(from, 1)[0]);
65
+ };
66
+ const arrayMove = (array, from, to) => {
67
+ array = array.slice();
68
+ arrayMoveMutate(array, from, to);
69
+ return array;
70
+ };
71
+ const accessorDefault = (item) => item;
72
+ const addOrRemove = (array, item, accessor = accessorDefault) => {
73
+ const index = array.findIndex((iItem) => accessor(iItem) === accessor(item));
74
+ if (index !== -1) {
75
+ const nextArray = cloneDeep(array);
76
+ nextArray.splice(index, 1);
77
+ return nextArray;
78
+ }
79
+ return [...array, item];
80
+ };
81
+ function runAll(...fns) {
82
+ return (...args) => fns.forEach((fn) => {
83
+ if (Array.isArray(fn))
84
+ runAll(fn);
85
+ if (isFunction(fn))
86
+ fn(...args);
87
+ });
88
+ }
89
+ function hashArray(arr, fieldName) {
90
+ return arr.reduce((result, item) => __spreadProps(__spreadValues({}, result), {
91
+ [fieldName ? item[fieldName] : item]: true
92
+ }), {});
93
+ }
94
+ function safeCall(fun, ...args) {
95
+ if (isFunction(fun)) {
96
+ fun(...args);
97
+ }
98
+ }
99
+ const removeUndefinedProperties = (obj) => {
100
+ const cleanObject = __spreadValues({}, obj);
101
+ Object.keys(obj).forEach((key) => cleanObject[key] === void 0 && delete cleanObject[key]);
102
+ return cleanObject;
103
+ };
104
+ var utils_default = {};
105
+ export {
106
+ addOrRemove,
107
+ arrayMove,
108
+ cloneDeep,
109
+ curry,
110
+ cx,
111
+ debounce,
112
+ utils_default as default,
113
+ differenceBy,
114
+ differenceWith,
115
+ filter,
116
+ findIndex,
117
+ get,
118
+ groupBy,
119
+ hashArray,
120
+ isBoolean,
121
+ isEmpty,
122
+ isEqual,
123
+ isEqualWith,
124
+ isFunction,
125
+ isNaN,
126
+ isObject,
127
+ isString,
128
+ maxBy,
129
+ meanBy,
130
+ noop,
131
+ omit,
132
+ orderBy,
133
+ padStart,
134
+ parseInt,
135
+ pick,
136
+ pickBy,
137
+ property,
138
+ pull,
139
+ range,
140
+ removeUndefinedProperties,
141
+ runAll,
142
+ safeCall,
143
+ set,
144
+ sortBy,
145
+ sumBy,
146
+ throttle,
147
+ toggleInArray,
148
+ toggleInObject,
149
+ transform,
150
+ uniq,
151
+ uniqBy,
152
+ values
153
+ };
154
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/utils.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-param-reassign */\n/* eslint-disable max-lines */\n/**\n * commonly used functions\n * Add a level of indirection to lodash so we can replace\n * it if desired, while keeping function names the same\n */\n// TODO: Import individual packages vs referencing all of lodash\nimport {\n cloneDeep,\n filter,\n debounce,\n findIndex,\n isEmpty,\n isString,\n isEqual,\n noop,\n omit,\n orderBy,\n pull,\n sumBy,\n maxBy,\n meanBy,\n sortBy,\n transform,\n isFunction,\n uniq,\n uniqBy,\n groupBy,\n property,\n get,\n set,\n range,\n parseInt,\n padStart,\n isNaN,\n values,\n throttle,\n pick,\n pickBy,\n differenceBy,\n differenceWith,\n isEqualWith,\n curry,\n isObject,\n isBoolean,\n} from 'lodash';\n\n/**\n * Concatenates classNames from arguments\n *\n * @param {...any} classnames\n */\nexport const cx = (...classnames) => classnames.reduce((result, cn) => `${result} ${cn || ''}`, '');\n\n// if entry exists, remove it, if not, add it\nconst toggleInObject = (obj, key, value) => (obj[key] !== undefined ? omit(obj, [key]) : { ...obj, [key]: value });\nconst toggleInArray = (array, value) => (array.indexOf(value) === -1 ? [value] : []);\n\nconst arrayMoveMutate = (array, from, to) => {\n array.splice(to < 0 ? array.length + to : to, 0, array.splice(from, 1)[0]);\n};\n\nconst arrayMove = (array, from, to) => {\n array = array.slice();\n arrayMoveMutate(array, from, to);\n return array;\n};\n\nconst accessorDefault = (item) => item;\nconst addOrRemove = (array, item, accessor = accessorDefault) => {\n const index = array.findIndex((iItem) => accessor(iItem) === accessor(item));\n\n if (index !== -1) {\n const nextArray = cloneDeep(array);\n nextArray.splice(index, 1);\n return nextArray;\n }\n\n return [...array, item];\n};\n\nexport function runAll(...fns) {\n return (...args) =>\n fns.forEach((fn) => {\n if (Array.isArray(fn)) runAll(fn);\n if (isFunction(fn)) fn(...args);\n });\n}\n\nexport function hashArray(arr, fieldName) {\n return arr.reduce(\n (result, item) => ({\n ...result,\n [fieldName ? item[fieldName] : item]: true,\n }),\n {},\n );\n}\n\nexport function safeCall(fun, ...args) {\n if (isFunction(fun)) {\n fun(...args);\n }\n}\n\nexport const removeUndefinedProperties = (obj) => {\n const cleanObject = { ...obj };\n Object.keys(obj).forEach((key) => cleanObject[key] === undefined && delete cleanObject[key]);\n return cleanObject;\n};\n\nexport default {};\nexport {\n isObject,\n curry,\n arrayMove,\n uniq,\n filter,\n uniqBy,\n groupBy,\n property,\n get,\n set,\n cloneDeep,\n debounce,\n findIndex,\n isEmpty,\n isString,\n isEqual,\n maxBy,\n meanBy,\n noop,\n omit,\n orderBy,\n pull,\n sortBy,\n sumBy,\n transform,\n isFunction,\n range,\n parseInt,\n padStart,\n isNaN,\n values,\n throttle,\n toggleInObject,\n toggleInArray,\n pick,\n pickBy,\n differenceBy,\n differenceWith,\n addOrRemove,\n isEqualWith,\n isBoolean,\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACQA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6CO,MAAM,KAAK,IAAI,eAAe,WAAW,OAAO,CAAC,QAAQ,OAAO,GAAG,UAAU,MAAM,MAAM;AAGhG,MAAM,iBAAiB,CAAC,KAAK,KAAK,UAAW,IAAI,SAAS,SAAY,KAAK,KAAK,CAAC,QAAQ,iCAAK,MAAL,GAAW,MAAM;AAC1G,MAAM,gBAAgB,CAAC,OAAO,UAAW,MAAM,QAAQ,WAAW,KAAK,CAAC,SAAS;AAEjF,MAAM,kBAAkB,CAAC,OAAO,MAAM,OAAO;AAC3C,QAAM,OAAO,KAAK,IAAI,MAAM,SAAS,KAAK,IAAI,GAAG,MAAM,OAAO,MAAM,GAAG;AAAA;AAGzE,MAAM,YAAY,CAAC,OAAO,MAAM,OAAO;AACrC,UAAQ,MAAM;AACd,kBAAgB,OAAO,MAAM;AAC7B,SAAO;AAAA;AAGT,MAAM,kBAAkB,CAAC,SAAS;AAClC,MAAM,cAAc,CAAC,OAAO,MAAM,WAAW,oBAAoB;AAC/D,QAAM,QAAQ,MAAM,UAAU,CAAC,UAAU,SAAS,WAAW,SAAS;AAEtE,MAAI,UAAU,IAAI;AAChB,UAAM,YAAY,UAAU;AAC5B,cAAU,OAAO,OAAO;AACxB,WAAO;AAAA;AAGT,SAAO,CAAC,GAAG,OAAO;AAAA;AAGb,mBAAmB,KAAK;AAC7B,SAAO,IAAI,SACT,IAAI,QAAQ,CAAC,OAAO;AAClB,QAAI,MAAM,QAAQ;AAAK,aAAO;AAC9B,QAAI,WAAW;AAAK,SAAG,GAAG;AAAA;AAAA;AAIzB,mBAAmB,KAAK,WAAW;AACxC,SAAO,IAAI,OACT,CAAC,QAAQ,SAAU,iCACd,SADc;AAAA,KAEhB,YAAY,KAAK,aAAa,OAAO;AAAA,MAExC;AAAA;AAIG,kBAAkB,QAAQ,MAAM;AACrC,MAAI,WAAW,MAAM;AACnB,QAAI,GAAG;AAAA;AAAA;AAIJ,MAAM,4BAA4B,CAAC,QAAQ;AAChD,QAAM,cAAc,mBAAK;AACzB,SAAO,KAAK,KAAK,QAAQ,CAAC,QAAQ,YAAY,SAAS,UAAa,OAAO,YAAY;AACvF,SAAO;AAAA;AAGT,IAAO,gBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,28 @@
1
+ import * as React from "react";
2
+ import { checkNotEmpty, greaterThan, validDate } from "./operators";
3
+ const isRequired = ({ value, help = "Field is Required" }) => ({
4
+ payload: help,
5
+ error: checkNotEmpty(value)
6
+ });
7
+ const isGreaterThan = ({ value, help, comparator = 0 }) => {
8
+ if (!help)
9
+ help = `Max value ${comparator}`;
10
+ return {
11
+ payload: help,
12
+ error: greaterThan(value, comparator)
13
+ };
14
+ };
15
+ const isValidDate = ({ value, help, format = "MM/DD/AAA" }) => {
16
+ if (!help)
17
+ help = `Valid Date is required ${format}`;
18
+ return {
19
+ payload: help,
20
+ error: !validDate(value)
21
+ };
22
+ };
23
+ export {
24
+ isGreaterThan,
25
+ isRequired,
26
+ isValidDate
27
+ };
28
+ //# sourceMappingURL=validations.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/validations.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { checkNotEmpty, greaterThan, validDate } from './operators';\n\nexport const isRequired = ({ value, help = 'Field is Required' }) => ({\n payload: help,\n error: checkNotEmpty(value),\n});\n\nexport const isGreaterThan = ({ value, help, comparator = 0 }) => {\n if (!help) help = `Max value ${comparator}`;\n return {\n payload: help,\n error: greaterThan(value, comparator),\n };\n};\n\nexport const isValidDate = ({ value, help, format = 'MM/DD/AAA' }) => {\n if (!help) help = `Valid Date is required ${format}`;\n return {\n payload: help,\n error: !validDate(value),\n };\n};\n"],
5
+ "mappings": "AAAA;ACAA;AAEO,MAAM,aAAa,CAAC,EAAE,OAAO,OAAO,0BAA2B;AAAA,EACpE,SAAS;AAAA,EACT,OAAO,cAAc;AAAA;AAGhB,MAAM,gBAAgB,CAAC,EAAE,OAAO,MAAM,aAAa,QAAQ;AAChE,MAAI,CAAC;AAAM,WAAO,aAAa;AAC/B,SAAO;AAAA,IACL,SAAS;AAAA,IACT,OAAO,YAAY,OAAO;AAAA;AAAA;AAIvB,MAAM,cAAc,CAAC,EAAE,OAAO,MAAM,SAAS,kBAAkB;AACpE,MAAI,CAAC;AAAM,WAAO,0BAA0B;AAC5C,SAAO;AAAA,IACL,SAAS;AAAA,IACT,OAAO,CAAC,UAAU;AAAA;AAAA;",
6
+ "names": []
7
+ }
package/package.json CHANGED
@@ -1,123 +1,130 @@
1
1
  {
2
2
  "name": "@elliemae/ds-utilities",
3
- "version": "3.0.0-next.2",
3
+ "version": "3.0.0-next.3",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Utilities",
6
- "module": "./esm/index.js",
7
- "main": "./cjs/index.js",
8
- "types": "./types/index.d.ts",
6
+ "files": [
7
+ "dist"
8
+ ],
9
+ "module": "./dist/esm/index.js",
10
+ "main": "./dist/cjs/index.js",
11
+ "types": "./dist/types/index.d.ts",
9
12
  "exports": {
10
13
  ".": {
11
- "import": "./esm/index.js",
12
- "require": "./cjs/index.js"
14
+ "import": "./dist/esm/index.js",
15
+ "require": "./dist/cjs/index.js"
13
16
  },
14
17
  "./validations": {
15
- "import": "./esm/validations.js",
16
- "require": "./cjs/validations.js"
18
+ "import": "./dist/esm/validations.js",
19
+ "require": "./dist/cjs/validations.js"
17
20
  },
18
21
  "./utils": {
19
- "import": "./esm/utils.js",
20
- "require": "./cjs/utils.js"
22
+ "import": "./dist/esm/utils.js",
23
+ "require": "./dist/cjs/utils.js"
21
24
  },
22
25
  "./timeUtils": {
23
- "import": "./esm/timeUtils.js",
24
- "require": "./cjs/timeUtils.js"
26
+ "import": "./dist/esm/timeUtils.js",
27
+ "require": "./dist/cjs/timeUtils.js"
25
28
  },
26
29
  "./system": {
27
- "import": "./esm/system.js",
28
- "require": "./cjs/system.js"
30
+ "import": "./dist/esm/system.js",
31
+ "require": "./dist/cjs/system.js"
29
32
  },
30
33
  "./scrollingTimer": {
31
- "import": "./esm/scrollingTimer.js",
32
- "require": "./cjs/scrollingTimer.js"
34
+ "import": "./dist/esm/scrollingTimer.js",
35
+ "require": "./dist/cjs/scrollingTimer.js"
33
36
  },
34
37
  "./reactTypesUtility": {
35
- "import": "./esm/reactTypesUtility.js",
36
- "require": "./cjs/reactTypesUtility.js"
38
+ "import": "./dist/esm/reactTypesUtility.js",
39
+ "require": "./dist/cjs/reactTypesUtility.js"
37
40
  },
38
41
  "./platform": {
39
- "import": "./esm/platform.js",
40
- "require": "./cjs/platform.js"
42
+ "import": "./dist/esm/platform.js",
43
+ "require": "./dist/cjs/platform.js"
41
44
  },
42
45
  "./operators": {
43
- "import": "./esm/operators.js",
44
- "require": "./cjs/operators.js"
46
+ "import": "./dist/esm/operators.js",
47
+ "require": "./dist/cjs/operators.js"
45
48
  },
46
49
  "./onClickHandlerForNonInteractiveElements": {
47
- "import": "./esm/onClickHandlerForNonInteractiveElements.js",
48
- "require": "./cjs/onClickHandlerForNonInteractiveElements.js"
50
+ "import": "./dist/esm/onClickHandlerForNonInteractiveElements.js",
51
+ "require": "./dist/cjs/onClickHandlerForNonInteractiveElements.js"
49
52
  },
50
53
  "./hooks/useWindowSize": {
51
- "import": "./esm/hooks/useWindowSize.js",
52
- "require": "./cjs/hooks/useWindowSize.js"
54
+ "import": "./dist/esm/hooks/useWindowSize.js",
55
+ "require": "./dist/cjs/hooks/useWindowSize.js"
53
56
  },
54
57
  "./hooks/useWindowScrollerList": {
55
- "import": "./esm/hooks/useWindowScrollerList.js",
56
- "require": "./cjs/hooks/useWindowScrollerList.js"
58
+ "import": "./dist/esm/hooks/useWindowScrollerList.js",
59
+ "require": "./dist/cjs/hooks/useWindowScrollerList.js"
57
60
  },
58
61
  "./hooks/useShouldRecalculate": {
59
- "import": "./esm/hooks/useShouldRecalculate.js",
60
- "require": "./cjs/hooks/useShouldRecalculate.js"
62
+ "import": "./dist/esm/hooks/useShouldRecalculate.js",
63
+ "require": "./dist/cjs/hooks/useShouldRecalculate.js"
61
64
  },
62
65
  "./hooks/useSetRef": {
63
- "import": "./esm/hooks/useSetRef.js",
64
- "require": "./cjs/hooks/useSetRef.js"
66
+ "import": "./dist/esm/hooks/useSetRef.js",
67
+ "require": "./dist/cjs/hooks/useSetRef.js"
65
68
  },
66
69
  "./hooks/useResizeObserver": {
67
- "import": "./esm/hooks/useResizeObserver.js",
68
- "require": "./cjs/hooks/useResizeObserver.js"
70
+ "import": "./dist/esm/hooks/useResizeObserver.js",
71
+ "require": "./dist/cjs/hooks/useResizeObserver.js"
69
72
  },
70
73
  "./hooks/usePrevious": {
71
- "import": "./esm/hooks/usePrevious.js",
72
- "require": "./cjs/hooks/usePrevious.js"
74
+ "import": "./dist/esm/hooks/usePrevious.js",
75
+ "require": "./dist/cjs/hooks/usePrevious.js"
73
76
  },
74
77
  "./hooks/useParentElement": {
75
- "import": "./esm/hooks/useParentElement.js",
76
- "require": "./cjs/hooks/useParentElement.js"
78
+ "import": "./dist/esm/hooks/useParentElement.js",
79
+ "require": "./dist/cjs/hooks/useParentElement.js"
77
80
  },
78
81
  "./hooks/useOnElementResize": {
79
- "import": "./esm/hooks/useOnElementResize.js",
80
- "require": "./cjs/hooks/useOnElementResize.js"
82
+ "import": "./dist/esm/hooks/useOnElementResize.js",
83
+ "require": "./dist/cjs/hooks/useOnElementResize.js"
84
+ },
85
+ "./hooks/useIsShowingEllipsis": {
86
+ "import": "./dist/esm/hooks/useIsShowingEllipsis.js",
87
+ "require": "./dist/cjs/hooks/useIsShowingEllipsis.js"
81
88
  },
82
89
  "./hooks/useHoverHandlersDelay": {
83
- "import": "./esm/hooks/useHoverHandlersDelay.js",
84
- "require": "./cjs/hooks/useHoverHandlersDelay.js"
90
+ "import": "./dist/esm/hooks/useHoverHandlersDelay.js",
91
+ "require": "./dist/cjs/hooks/useHoverHandlersDelay.js"
85
92
  },
86
93
  "./hooks/useHotkeys": {
87
- "import": "./esm/hooks/useHotkeys.js",
88
- "require": "./cjs/hooks/useHotkeys.js"
94
+ "import": "./dist/esm/hooks/useHotkeys.js",
95
+ "require": "./dist/cjs/hooks/useHotkeys.js"
89
96
  },
90
97
  "./hooks/useExpandState": {
91
- "import": "./esm/hooks/useExpandState.js",
92
- "require": "./cjs/hooks/useExpandState.js"
98
+ "import": "./dist/esm/hooks/useExpandState.js",
99
+ "require": "./dist/cjs/hooks/useExpandState.js"
93
100
  },
94
101
  "./hooks/useExecutionTimer": {
95
- "import": "./esm/hooks/useExecutionTimer.js",
96
- "require": "./cjs/hooks/useExecutionTimer.js"
102
+ "import": "./dist/esm/hooks/useExecutionTimer.js",
103
+ "require": "./dist/cjs/hooks/useExecutionTimer.js"
97
104
  },
98
105
  "./hooks/useDerivedStateFromProps": {
99
- "import": "./esm/hooks/useDerivedStateFromProps.js",
100
- "require": "./cjs/hooks/useDerivedStateFromProps.js"
106
+ "import": "./dist/esm/hooks/useDerivedStateFromProps.js",
107
+ "require": "./dist/cjs/hooks/useDerivedStateFromProps.js"
101
108
  },
102
109
  "./hooks/useCancellableDelayedCallback": {
103
- "import": "./esm/hooks/useCancellableDelayedCallback.js",
104
- "require": "./cjs/hooks/useCancellableDelayedCallback.js"
110
+ "import": "./dist/esm/hooks/useCancellableDelayedCallback.js",
111
+ "require": "./dist/cjs/hooks/useCancellableDelayedCallback.js"
105
112
  },
106
113
  "./hooks": {
107
- "import": "./esm/hooks/index.js",
108
- "require": "./cjs/hooks/index.js"
114
+ "import": "./dist/esm/hooks/index.js",
115
+ "require": "./dist/cjs/hooks/index.js"
109
116
  },
110
117
  "./getComponentFromProps": {
111
- "import": "./esm/getComponentFromProps.js",
112
- "require": "./cjs/getComponentFromProps.js"
118
+ "import": "./dist/esm/getComponentFromProps.js",
119
+ "require": "./dist/cjs/getComponentFromProps.js"
113
120
  },
114
121
  "./compose": {
115
- "import": "./esm/compose.js",
116
- "require": "./cjs/compose.js"
122
+ "import": "./dist/esm/compose.js",
123
+ "require": "./dist/cjs/compose.js"
117
124
  },
118
125
  "./capitalize": {
119
- "import": "./esm/capitalize.js",
120
- "require": "./cjs/capitalize.js"
126
+ "import": "./dist/esm/capitalize.js",
127
+ "require": "./dist/cjs/capitalize.js"
121
128
  }
122
129
  },
123
130
  "sideEffects": [
@@ -129,20 +136,19 @@
129
136
  "url": "https://git.elliemae.io/platform-ui/dimsum.git"
130
137
  },
131
138
  "engines": {
132
- "npm": ">=7",
133
- "node": ">=14"
139
+ "pnpm": ">=6",
140
+ "node": ">=16"
134
141
  },
135
142
  "author": "ICE MT",
136
- "scripts": {
137
- "prebuild": "exit 0",
138
- "predev": "exit 0",
139
- "build": "node ../../scripts/build/build.js",
140
- "dev": "cross-env NODE_ENV=development && node ../../scripts/build/build.js -w"
143
+ "jestSonar": {
144
+ "sonar56x": true,
145
+ "reportPath": "reports",
146
+ "reportFile": "tests.xml",
147
+ "indent": 4
141
148
  },
142
149
  "publishConfig": {
143
150
  "access": "public",
144
- "directory": "dist",
145
- "generateSubmodules": true
151
+ "typeSafety": false
146
152
  },
147
153
  "dependencies": {
148
154
  "hotkeys-js": "~3.8.7",
@@ -157,5 +163,12 @@
157
163
  "lodash": "^4.17.21",
158
164
  "react": "~17.0.2",
159
165
  "react-dom": "^17.0.2"
166
+ },
167
+ "scripts": {
168
+ "test": "node ../../scripts/testing/test.mjs",
169
+ "lint": "node ../../scripts/lint.mjs",
170
+ "dts": "node ../../scripts/dts.mjs",
171
+ "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs",
172
+ "dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch"
160
173
  }
161
174
  }
package/cjs/capitalize.js DELETED
@@ -1,7 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const capitalize = string => string.charAt(0).toUpperCase() + string.slice(1);
6
-
7
- exports.capitalize = capitalize;
package/cjs/compose.js DELETED
@@ -1,38 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('core-js/modules/esnext.async-iterator.reduce.js');
6
- require('core-js/modules/esnext.iterator.constructor.js');
7
- require('core-js/modules/esnext.iterator.reduce.js');
8
- require('core-js/modules/web.dom-collections.iterator.js');
9
-
10
- /**
11
- * Composes single-argument functions from right to left. The rightmost
12
- * function can take multiple arguments as it provides the signature for
13
- * the resulting composite function. [From redux v4.0.5]
14
- *
15
- * @param {...Function} funcs The functions to compose.
16
- * @returns {Function} A function obtained by composing the argument functions
17
- * from right to left. For example, compose(f, g, h) is identical to doing
18
- * (...args) => f(g(h(...args))).
19
- */
20
- function compose() {
21
- for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {
22
- funcs[_key] = arguments[_key];
23
- }
24
-
25
- if (funcs.length === 0) {
26
- return arg => arg;
27
- }
28
-
29
- if (funcs.length === 1) {
30
- return funcs[0];
31
- }
32
-
33
- return funcs.reduce((a, b) => function () {
34
- return a(b(...arguments));
35
- });
36
- }
37
-
38
- exports.compose = compose;
@@ -1,30 +0,0 @@
1
- 'use strict';
2
-
3
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- require('core-js/modules/web.dom-collections.iterator.js');
5
- require('core-js/modules/esnext.async-iterator.filter.js');
6
- require('core-js/modules/esnext.iterator.constructor.js');
7
- require('core-js/modules/esnext.iterator.filter.js');
8
- require('core-js/modules/esnext.async-iterator.for-each.js');
9
- require('core-js/modules/esnext.iterator.for-each.js');
10
- var React = require('react');
11
- var jsxRuntime = require('react/jsx-runtime');
12
-
13
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
-
15
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
16
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
-
18
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
-
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
- function getComponentFromProps(Component, props) {
22
- let children = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
23
- if (!Component) return null;
24
- const componentChildren = Component.props ? Array.isArray(Component.props.children) ? Component.props.children : [Component.props.children] : null;
25
- return typeof Component === 'function' ? /*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread(_objectSpread({}, props), {}, {
26
- children: children
27
- })) : /*#__PURE__*/React__default["default"].cloneElement(Component, _objectSpread(_objectSpread({}, Component.props), props), componentChildren ? [...componentChildren, ...children] : [...children]);
28
- }
29
-
30
- module.exports = getComponentFromProps;
@@ -1,61 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var useMeasure = require('use-measure');
6
- var useExecutionTimer = require('./useExecutionTimer.js');
7
- var useExpandState = require('./useExpandState.js');
8
- var useHotkeys = require('./useHotkeys.js');
9
- var useHoverHandlersDelay = require('./useHoverHandlersDelay.js');
10
- var useResizeObserver = require('./useResizeObserver.js');
11
- var useShouldRecalculate = require('./useShouldRecalculate.js');
12
- var useWindowScrollerList = require('./useWindowScrollerList.js');
13
- var useWindowSize = require('./useWindowSize.js');
14
- var useForceUpdate = require('use-force-update');
15
- var useOnclickoutside = require('use-onclickoutside');
16
- var uncontrollable = require('uncontrollable');
17
- var usePrevious = require('./usePrevious.js');
18
- var useCancellableDelayedCallback = require('./useCancellableDelayedCallback.js');
19
- var useDerivedStateFromProps = require('./useDerivedStateFromProps.js');
20
- var useSetRef = require('./useSetRef.js');
21
- var useParentElement = require('./useParentElement.js');
22
- var useOnElementResize = require('./useOnElementResize.js');
23
-
24
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
25
-
26
- var useMeasure__default = /*#__PURE__*/_interopDefaultLegacy(useMeasure);
27
- var useForceUpdate__default = /*#__PURE__*/_interopDefaultLegacy(useForceUpdate);
28
- var useOnclickoutside__default = /*#__PURE__*/_interopDefaultLegacy(useOnclickoutside);
29
-
30
-
31
-
32
- Object.defineProperty(exports, 'useMeasure', {
33
- enumerable: true,
34
- get: function () { return useMeasure__default["default"]; }
35
- });
36
- exports.useExecutionTimer = useExecutionTimer;
37
- exports.useExpandState = useExpandState;
38
- exports.useHotkeys = useHotkeys;
39
- exports.useHoverHandlersDelay = useHoverHandlersDelay;
40
- exports.useResizeObserver = useResizeObserver;
41
- exports.useShouldRecalculate = useShouldRecalculate;
42
- exports.useWindowScrollerList = useWindowScrollerList;
43
- exports.useWindowSize = useWindowSize;
44
- Object.defineProperty(exports, 'useForceUpdate', {
45
- enumerable: true,
46
- get: function () { return useForceUpdate__default["default"]; }
47
- });
48
- Object.defineProperty(exports, 'useOnClickOutside', {
49
- enumerable: true,
50
- get: function () { return useOnclickoutside__default["default"]; }
51
- });
52
- Object.defineProperty(exports, 'useUncontrolled', {
53
- enumerable: true,
54
- get: function () { return uncontrollable.useUncontrolled; }
55
- });
56
- exports.usePrevious = usePrevious;
57
- exports.useCancellableDelayedCallback = useCancellableDelayedCallback;
58
- exports.useDerivedStateFromProps = useDerivedStateFromProps;
59
- exports.useSetRef = useSetRef.useSetRef;
60
- exports.useParentElement = useParentElement.useParentElement;
61
- exports.useOnElementResize = useOnElementResize.useOnElementResize;
@@ -1,26 +0,0 @@
1
- 'use strict';
2
-
3
- require('core-js/modules/web.dom-collections.iterator.js');
4
- var React = require('react');
5
-
6
- function useCancellableDelayedCallback(cb, delay) {
7
- const timeoutRef = React.useRef();
8
- const cancel = React.useCallback(() => {
9
- const timeoutId = timeoutRef.current;
10
-
11
- if (timeoutId) {
12
- timeoutRef.current = undefined;
13
- clearTimeout(timeoutId);
14
- }
15
- }, [timeoutRef]);
16
- const delayedCb = React.useCallback(function () {
17
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
18
- args[_key] = arguments[_key];
19
- }
20
-
21
- timeoutRef.current = setTimeout(() => cb(...args), delay);
22
- }, [cb, delay]);
23
- return [delayedCb, cancel];
24
- }
25
-
26
- module.exports = useCancellableDelayedCallback;