@ezez/utils 1.0.0

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 (391) hide show
  1. package/.prettierignore +3 -0
  2. package/.prettierrc.json +1 -0
  3. package/CHANGELOG.md +244 -0
  4. package/LICENSE +21 -0
  5. package/README.md +79 -0
  6. package/babel.config.cjs +6 -0
  7. package/dist/cap.d.ts +3 -0
  8. package/dist/cap.d.ts.map +1 -0
  9. package/dist/cap.js +14 -0
  10. package/dist/cap.js.map +1 -0
  11. package/dist/capitalize.d.ts +3 -0
  12. package/dist/capitalize.d.ts.map +1 -0
  13. package/dist/capitalize.js +9 -0
  14. package/dist/capitalize.js.map +1 -0
  15. package/dist/coalesce.d.ts +3 -0
  16. package/dist/coalesce.d.ts.map +1 -0
  17. package/dist/coalesce.js +14 -0
  18. package/dist/coalesce.js.map +1 -0
  19. package/dist/ensureArray.d.ts +3 -0
  20. package/dist/ensureArray.d.ts.map +1 -0
  21. package/dist/ensureArray.js +11 -0
  22. package/dist/ensureArray.js.map +1 -0
  23. package/dist/ensureError.d.ts +3 -0
  24. package/dist/ensureError.d.ts.map +1 -0
  25. package/dist/ensureError.js +11 -0
  26. package/dist/ensureError.js.map +1 -0
  27. package/dist/get.d.ts +7 -0
  28. package/dist/get.d.ts.map +1 -0
  29. package/dist/get.js +19 -0
  30. package/dist/get.js.map +1 -0
  31. package/dist/getMultiple.d.ts +7 -0
  32. package/dist/getMultiple.d.ts.map +1 -0
  33. package/dist/getMultiple.js +18 -0
  34. package/dist/getMultiple.js.map +1 -0
  35. package/dist/index.d.ts +33 -0
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +49 -0
  38. package/dist/index.js.map +1 -0
  39. package/dist/insertSeparator.d.ts +3 -0
  40. package/dist/insertSeparator.d.ts.map +1 -0
  41. package/dist/insertSeparator.js +18 -0
  42. package/dist/insertSeparator.js.map +1 -0
  43. package/dist/isEmpty.d.ts +3 -0
  44. package/dist/isEmpty.d.ts.map +1 -0
  45. package/dist/isEmpty.js +26 -0
  46. package/dist/isEmpty.js.map +1 -0
  47. package/dist/isPlainObject.d.ts +3 -0
  48. package/dist/isPlainObject.d.ts.map +1 -0
  49. package/dist/isPlainObject.js +10 -0
  50. package/dist/isPlainObject.js.map +1 -0
  51. package/dist/last.d.ts +3 -0
  52. package/dist/last.d.ts.map +1 -0
  53. package/dist/last.js +6 -0
  54. package/dist/last.js.map +1 -0
  55. package/dist/mapAsync.d.ts +3 -0
  56. package/dist/mapAsync.d.ts.map +1 -0
  57. package/dist/mapAsync.js +22 -0
  58. package/dist/mapAsync.js.map +1 -0
  59. package/dist/mapValues.d.ts +6 -0
  60. package/dist/mapValues.d.ts.map +1 -0
  61. package/dist/mapValues.js +18 -0
  62. package/dist/mapValues.js.map +1 -0
  63. package/dist/match.d.ts +8 -0
  64. package/dist/match.d.ts.map +1 -0
  65. package/dist/match.js +20 -0
  66. package/dist/match.js.map +1 -0
  67. package/dist/merge.d.ts +15 -0
  68. package/dist/merge.d.ts.map +1 -0
  69. package/dist/merge.js +28 -0
  70. package/dist/merge.js.map +1 -0
  71. package/dist/mostFrequent.d.ts +3 -0
  72. package/dist/mostFrequent.d.ts.map +1 -0
  73. package/dist/mostFrequent.js +21 -0
  74. package/dist/mostFrequent.js.map +1 -0
  75. package/dist/noop.d.ts +3 -0
  76. package/dist/noop.d.ts.map +1 -0
  77. package/dist/noop.js +6 -0
  78. package/dist/noop.js.map +1 -0
  79. package/dist/omit.d.ts +5 -0
  80. package/dist/omit.d.ts.map +1 -0
  81. package/dist/omit.js +21 -0
  82. package/dist/omit.js.map +1 -0
  83. package/dist/package.json +1 -0
  84. package/dist/pick.d.ts +5 -0
  85. package/dist/pick.d.ts.map +1 -0
  86. package/dist/pick.js +20 -0
  87. package/dist/pick.js.map +1 -0
  88. package/dist/pull.d.ts +3 -0
  89. package/dist/pull.d.ts.map +1 -0
  90. package/dist/pull.js +14 -0
  91. package/dist/pull.js.map +1 -0
  92. package/dist/remove.d.ts +3 -0
  93. package/dist/remove.d.ts.map +1 -0
  94. package/dist/remove.js +18 -0
  95. package/dist/remove.js.map +1 -0
  96. package/dist/rethrow.d.ts +3 -0
  97. package/dist/rethrow.d.ts.map +1 -0
  98. package/dist/rethrow.js +8 -0
  99. package/dist/rethrow.js.map +1 -0
  100. package/dist/scale.d.ts +3 -0
  101. package/dist/scale.d.ts.map +1 -0
  102. package/dist/scale.js +8 -0
  103. package/dist/scale.js.map +1 -0
  104. package/dist/seq.d.ts +8 -0
  105. package/dist/seq.d.ts.map +1 -0
  106. package/dist/seq.js +45 -0
  107. package/dist/seq.js.map +1 -0
  108. package/dist/set.d.ts +7 -0
  109. package/dist/set.d.ts.map +1 -0
  110. package/dist/set.js +25 -0
  111. package/dist/set.js.map +1 -0
  112. package/dist/setImmutable.d.ts +8 -0
  113. package/dist/setImmutable.d.ts.map +1 -0
  114. package/dist/setImmutable.js +59 -0
  115. package/dist/setImmutable.js.map +1 -0
  116. package/dist/sortBy.d.ts +3 -0
  117. package/dist/sortBy.d.ts.map +1 -0
  118. package/dist/sortBy.js +15 -0
  119. package/dist/sortBy.js.map +1 -0
  120. package/dist/throttle.d.ts +13 -0
  121. package/dist/throttle.d.ts.map +1 -0
  122. package/dist/throttle.js +82 -0
  123. package/dist/throttle.js.map +1 -0
  124. package/dist/truthy.d.ts +3 -0
  125. package/dist/truthy.d.ts.map +1 -0
  126. package/dist/truthy.js +8 -0
  127. package/dist/truthy.js.map +1 -0
  128. package/dist/wait.d.ts +3 -0
  129. package/dist/wait.d.ts.map +1 -0
  130. package/dist/wait.js +10 -0
  131. package/dist/wait.js.map +1 -0
  132. package/dist/waitFor.d.ts +3 -0
  133. package/dist/waitFor.d.ts.map +1 -0
  134. package/dist/waitFor.js +34 -0
  135. package/dist/waitFor.js.map +1 -0
  136. package/dist/waitSync.d.ts +3 -0
  137. package/dist/waitSync.d.ts.map +1 -0
  138. package/dist/waitSync.js +9 -0
  139. package/dist/waitSync.js.map +1 -0
  140. package/docs/.nojekyll +1 -0
  141. package/docs/assets/highlight.css +78 -0
  142. package/docs/assets/main.js +58 -0
  143. package/docs/assets/pages.css +14 -0
  144. package/docs/assets/search.js +1 -0
  145. package/docs/assets/style.css +1280 -0
  146. package/docs/functions/cap.html +116 -0
  147. package/docs/functions/capitalize.html +121 -0
  148. package/docs/functions/coalesce.html +127 -0
  149. package/docs/functions/ensureArray.html +114 -0
  150. package/docs/functions/ensureError.html +110 -0
  151. package/docs/functions/get.html +138 -0
  152. package/docs/functions/getMultiple.html +129 -0
  153. package/docs/functions/insertSeparator.html +123 -0
  154. package/docs/functions/isEmpty.html +139 -0
  155. package/docs/functions/isPlainObject.html +108 -0
  156. package/docs/functions/last.html +126 -0
  157. package/docs/functions/mapAsync.html +144 -0
  158. package/docs/functions/mapValues.html +130 -0
  159. package/docs/functions/match.html +122 -0
  160. package/docs/functions/merge.html +464 -0
  161. package/docs/functions/mostFrequent.html +111 -0
  162. package/docs/functions/noop.html +101 -0
  163. package/docs/functions/omit.html +129 -0
  164. package/docs/functions/pick.html +129 -0
  165. package/docs/functions/pull.html +113 -0
  166. package/docs/functions/remove.html +129 -0
  167. package/docs/functions/rethrow.html +106 -0
  168. package/docs/functions/scale.html +117 -0
  169. package/docs/functions/seq.html +128 -0
  170. package/docs/functions/seqEarlyBreak.html +126 -0
  171. package/docs/functions/set.html +138 -0
  172. package/docs/functions/setImmutable.html +137 -0
  173. package/docs/functions/sortBy.html +135 -0
  174. package/docs/functions/throttle.html +131 -0
  175. package/docs/functions/truthy.html +118 -0
  176. package/docs/functions/wait.html +109 -0
  177. package/docs/functions/waitFor.html +130 -0
  178. package/docs/functions/waitSync.html +109 -0
  179. package/docs/index.html +182 -0
  180. package/docs/interfaces/GetMultipleSource.html +106 -0
  181. package/docs/interfaces/GetSource.html +106 -0
  182. package/docs/interfaces/SetImmutableSource.html +106 -0
  183. package/docs/interfaces/SetSource.html +106 -0
  184. package/docs/interfaces/ThrottleOptions.html +80 -0
  185. package/docs/interfaces/ThrottledFunctionExtras.html +96 -0
  186. package/docs/modules.html +152 -0
  187. package/docs/pages/Introduction.html +94 -0
  188. package/docs/types/MapValuesFn.html +134 -0
  189. package/docs/types/MatchCallback.html +113 -0
  190. package/docs/types/SeqEarlyBreaker.html +114 -0
  191. package/docs/types/SeqFn.html +112 -0
  192. package/docs/types/SeqFunctions.html +105 -0
  193. package/docs/types/SetImmutablePath.html +99 -0
  194. package/docs/types/ThrottledFunction.html +113 -0
  195. package/docs/variables/mapValuesUNSET.html +101 -0
  196. package/docs/variables/mergeUNSET.html +103 -0
  197. package/esm/cap.d.ts +3 -0
  198. package/esm/cap.d.ts.map +1 -0
  199. package/esm/cap.js +11 -0
  200. package/esm/cap.js.map +1 -0
  201. package/esm/capitalize.d.ts +3 -0
  202. package/esm/capitalize.d.ts.map +1 -0
  203. package/esm/capitalize.js +6 -0
  204. package/esm/capitalize.js.map +1 -0
  205. package/esm/coalesce.d.ts +3 -0
  206. package/esm/coalesce.d.ts.map +1 -0
  207. package/esm/coalesce.js +11 -0
  208. package/esm/coalesce.js.map +1 -0
  209. package/esm/ensureArray.d.ts +3 -0
  210. package/esm/ensureArray.d.ts.map +1 -0
  211. package/esm/ensureArray.js +8 -0
  212. package/esm/ensureArray.js.map +1 -0
  213. package/esm/ensureError.d.ts +3 -0
  214. package/esm/ensureError.d.ts.map +1 -0
  215. package/esm/ensureError.js +8 -0
  216. package/esm/ensureError.js.map +1 -0
  217. package/esm/get.d.ts +7 -0
  218. package/esm/get.d.ts.map +1 -0
  219. package/esm/get.js +16 -0
  220. package/esm/get.js.map +1 -0
  221. package/esm/getMultiple.d.ts +7 -0
  222. package/esm/getMultiple.d.ts.map +1 -0
  223. package/esm/getMultiple.js +15 -0
  224. package/esm/getMultiple.js.map +1 -0
  225. package/esm/index.d.ts +33 -0
  226. package/esm/index.d.ts.map +1 -0
  227. package/esm/index.js +33 -0
  228. package/esm/index.js.map +1 -0
  229. package/esm/insertSeparator.d.ts +3 -0
  230. package/esm/insertSeparator.d.ts.map +1 -0
  231. package/esm/insertSeparator.js +15 -0
  232. package/esm/insertSeparator.js.map +1 -0
  233. package/esm/isEmpty.d.ts +3 -0
  234. package/esm/isEmpty.d.ts.map +1 -0
  235. package/esm/isEmpty.js +23 -0
  236. package/esm/isEmpty.js.map +1 -0
  237. package/esm/isPlainObject.d.ts +3 -0
  238. package/esm/isPlainObject.d.ts.map +1 -0
  239. package/esm/isPlainObject.js +7 -0
  240. package/esm/isPlainObject.js.map +1 -0
  241. package/esm/last.d.ts +3 -0
  242. package/esm/last.d.ts.map +1 -0
  243. package/esm/last.js +3 -0
  244. package/esm/last.js.map +1 -0
  245. package/esm/mapAsync.d.ts +3 -0
  246. package/esm/mapAsync.d.ts.map +1 -0
  247. package/esm/mapAsync.js +19 -0
  248. package/esm/mapAsync.js.map +1 -0
  249. package/esm/mapValues.d.ts +6 -0
  250. package/esm/mapValues.d.ts.map +1 -0
  251. package/esm/mapValues.js +14 -0
  252. package/esm/mapValues.js.map +1 -0
  253. package/esm/match.d.ts +8 -0
  254. package/esm/match.d.ts.map +1 -0
  255. package/esm/match.js +17 -0
  256. package/esm/match.js.map +1 -0
  257. package/esm/merge.d.ts +15 -0
  258. package/esm/merge.d.ts.map +1 -0
  259. package/esm/merge.js +24 -0
  260. package/esm/merge.js.map +1 -0
  261. package/esm/mostFrequent.d.ts +3 -0
  262. package/esm/mostFrequent.d.ts.map +1 -0
  263. package/esm/mostFrequent.js +18 -0
  264. package/esm/mostFrequent.js.map +1 -0
  265. package/esm/noop.d.ts +3 -0
  266. package/esm/noop.d.ts.map +1 -0
  267. package/esm/noop.js +3 -0
  268. package/esm/noop.js.map +1 -0
  269. package/esm/omit.d.ts +5 -0
  270. package/esm/omit.d.ts.map +1 -0
  271. package/esm/omit.js +20 -0
  272. package/esm/omit.js.map +1 -0
  273. package/esm/pick.d.ts +5 -0
  274. package/esm/pick.d.ts.map +1 -0
  275. package/esm/pick.js +17 -0
  276. package/esm/pick.js.map +1 -0
  277. package/esm/pull.d.ts +3 -0
  278. package/esm/pull.d.ts.map +1 -0
  279. package/esm/pull.js +11 -0
  280. package/esm/pull.js.map +1 -0
  281. package/esm/remove.d.ts +3 -0
  282. package/esm/remove.d.ts.map +1 -0
  283. package/esm/remove.js +15 -0
  284. package/esm/remove.js.map +1 -0
  285. package/esm/rethrow.d.ts +3 -0
  286. package/esm/rethrow.d.ts.map +1 -0
  287. package/esm/rethrow.js +5 -0
  288. package/esm/rethrow.js.map +1 -0
  289. package/esm/scale.d.ts +3 -0
  290. package/esm/scale.d.ts.map +1 -0
  291. package/esm/scale.js +5 -0
  292. package/esm/scale.js.map +1 -0
  293. package/esm/seq.d.ts +8 -0
  294. package/esm/seq.d.ts.map +1 -0
  295. package/esm/seq.js +41 -0
  296. package/esm/seq.js.map +1 -0
  297. package/esm/set.d.ts +7 -0
  298. package/esm/set.d.ts.map +1 -0
  299. package/esm/set.js +22 -0
  300. package/esm/set.js.map +1 -0
  301. package/esm/setImmutable.d.ts +8 -0
  302. package/esm/setImmutable.d.ts.map +1 -0
  303. package/esm/setImmutable.js +56 -0
  304. package/esm/setImmutable.js.map +1 -0
  305. package/esm/sortBy.d.ts +3 -0
  306. package/esm/sortBy.d.ts.map +1 -0
  307. package/esm/sortBy.js +12 -0
  308. package/esm/sortBy.js.map +1 -0
  309. package/esm/throttle.d.ts +13 -0
  310. package/esm/throttle.d.ts.map +1 -0
  311. package/esm/throttle.js +79 -0
  312. package/esm/throttle.js.map +1 -0
  313. package/esm/truthy.d.ts +3 -0
  314. package/esm/truthy.d.ts.map +1 -0
  315. package/esm/truthy.js +5 -0
  316. package/esm/truthy.js.map +1 -0
  317. package/esm/wait.d.ts +3 -0
  318. package/esm/wait.d.ts.map +1 -0
  319. package/esm/wait.js +7 -0
  320. package/esm/wait.js.map +1 -0
  321. package/esm/waitFor.d.ts +3 -0
  322. package/esm/waitFor.d.ts.map +1 -0
  323. package/esm/waitFor.js +31 -0
  324. package/esm/waitFor.js.map +1 -0
  325. package/esm/waitSync.d.ts +3 -0
  326. package/esm/waitSync.d.ts.map +1 -0
  327. package/esm/waitSync.js +6 -0
  328. package/esm/waitSync.js.map +1 -0
  329. package/package.json +75 -0
  330. package/src/cap.spec.ts +36 -0
  331. package/src/cap.ts +19 -0
  332. package/src/capitalize.spec.ts +18 -0
  333. package/src/capitalize.ts +16 -0
  334. package/src/coalesce.spec.ts +23 -0
  335. package/src/coalesce.ts +21 -0
  336. package/src/ensureArray.spec.ts +87 -0
  337. package/src/ensureArray.ts +13 -0
  338. package/src/ensureError.spec.ts +29 -0
  339. package/src/ensureError.ts +15 -0
  340. package/src/get.spec.ts +183 -0
  341. package/src/get.ts +53 -0
  342. package/src/getMultiple.spec.ts +25 -0
  343. package/src/getMultiple.ts +47 -0
  344. package/src/index.ts +33 -0
  345. package/src/insertSeparator.spec.ts +29 -0
  346. package/src/insertSeparator.ts +22 -0
  347. package/src/isEmpty.spec.ts +130 -0
  348. package/src/isEmpty.ts +50 -0
  349. package/src/isPlainObject.spec.ts +42 -0
  350. package/src/isPlainObject.ts +18 -0
  351. package/src/last.spec.ts +88 -0
  352. package/src/last.ts +12 -0
  353. package/src/mapAsync.spec.ts +39 -0
  354. package/src/mapAsync.ts +41 -0
  355. package/src/mapValues.spec.ts +178 -0
  356. package/src/mapValues.ts +57 -0
  357. package/src/match.spec.ts +11 -0
  358. package/src/match.ts +30 -0
  359. package/src/merge.spec.ts +69 -0
  360. package/src/merge.ts +58 -0
  361. package/src/mostFrequent.spec.ts +35 -0
  362. package/src/mostFrequent.ts +27 -0
  363. package/src/noop.ts +8 -0
  364. package/src/omit.spec.ts +181 -0
  365. package/src/omit.ts +43 -0
  366. package/src/pick.spec.ts +168 -0
  367. package/src/pick.ts +39 -0
  368. package/src/pull.spec.ts +54 -0
  369. package/src/pull.ts +18 -0
  370. package/src/remove.spec.ts +63 -0
  371. package/src/remove.ts +26 -0
  372. package/src/rethrow.ts +12 -0
  373. package/src/scale.ts +18 -0
  374. package/src/seq.spec.ts +157 -0
  375. package/src/seq.ts +104 -0
  376. package/src/set.spec.ts +348 -0
  377. package/src/set.ts +59 -0
  378. package/src/setImmutable.spec.ts +241 -0
  379. package/src/setImmutable.ts +104 -0
  380. package/src/sortBy.spec.ts +56 -0
  381. package/src/sortBy.ts +24 -0
  382. package/src/throttle.spec.ts +136 -0
  383. package/src/throttle.ts +153 -0
  384. package/src/truthy.spec.ts +21 -0
  385. package/src/truthy.ts +13 -0
  386. package/src/wait.spec.ts +21 -0
  387. package/src/wait.ts +14 -0
  388. package/src/waitFor.ts +47 -0
  389. package/src/waitSync.spec.ts +21 -0
  390. package/src/waitSync.ts +14 -0
  391. package/tutorials/Introduction.md +1 -0
@@ -0,0 +1,3 @@
1
+ *.js
2
+ *.ts
3
+ *.tsx
@@ -0,0 +1 @@
1
+ {}
package/CHANGELOG.md ADDED
@@ -0,0 +1,244 @@
1
+ All notable changes to this project will be documented in this file.
2
+
3
+ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
4
+ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
5
+
6
+ ## [0.24.1+]
7
+ ### Dev
8
+ - added missing docs
9
+ - fixed some jsdoc strings (so they contain types for non-ts users)
10
+ - fixed typedoc warnings
11
+ - README update, preparing to rename library
12
+ ### Breaking
13
+ - changed `isEmpty` to throw on primitives
14
+ - `makeArray` is renamed to `ensureArray`
15
+ - `wait.sync` is extracted as `waitSync`
16
+ - removed `pack` method
17
+ - removed `pages` method
18
+ - replaced `merge.UNSET` with `mergeUNSET`
19
+ - replaced `mapValues.REMOVE` with `mapValuesUNSET`
20
+ ### Changed
21
+ - added some examples to docs
22
+ - in jsdoc added a warning to get/set and family about using them with TS
23
+ ### Added
24
+ - `isPlainObject` method
25
+
26
+ ## [0.24.1] - 2022-11-08
27
+ ### Dev
28
+ - exported some typings
29
+ - library template bump
30
+
31
+ ## [0.24.0] - 2022-09-23
32
+ ### Added
33
+ - `pull` method
34
+ ### Changed
35
+ - `throttle` with multiple timeouts working more as intended with `opts.leading` = true
36
+ ### Fixed
37
+ - first timeout of `throttle` with multiple timeouts repeated two times
38
+
39
+ ## [0.23.2] - 2022-08-21
40
+ ### Fixed
41
+ - `throttle` with trailing call not respecting multiple timeouts
42
+ - `truthy` typings
43
+
44
+ ## [0.23.1] - 2022-07-17
45
+ ### Fixed
46
+ - missing `mostFrequent` export
47
+
48
+ ## [0.23.0] - 2022-07-17
49
+ ### Added
50
+ - `mostFrequent` method
51
+
52
+ ## [0.22.0] - 2022-07-16
53
+ ### Added
54
+ - `capitalize` method
55
+ ### Fixed
56
+ - `throttle` reset not resetting array of times
57
+
58
+ ## [0.21.0] - 2022-07-08
59
+ ### Added
60
+ - `throttle` method
61
+
62
+ ## [0.20.0] - 2022-07-03
63
+ ### Added
64
+ - `ensureError` method
65
+
66
+ ## [0.19.1] - 2022-04-27
67
+ ### Fixed
68
+ - new methods not exported
69
+
70
+ ## [0.19.0] - 2022-04-27
71
+ ### Added
72
+ - `scale`, `truthy`, `waitFor`, `cap` methods
73
+ ### Changed
74
+ - improved types for `insertSeparator`
75
+ - added/improved jsdoc to `mapAsync`, `match`, `merge`, `noop`, `rethrow`
76
+ ### Breaking
77
+ - `seq` no longer uses nor exports custom error
78
+
79
+ ## [0.18.0] - 2021-12-04
80
+ ### Added
81
+ - `wait` method
82
+ - `mapAsync` method
83
+
84
+ ## [0.17.1] - 2021-10-31
85
+ ### Fixed
86
+ - missing `merge` export
87
+
88
+ ## [0.17.0] - 2021-10-31
89
+ ### Added
90
+ - `merge` method
91
+ ### Changed
92
+ - `REMOVE` special property in `mapValues` now uses Symbols if available
93
+
94
+ ## [0.16.0] - 2021-09-24
95
+ ### Added
96
+ - `noop` and `rethrow` methods
97
+
98
+ ## [0.15.0] - 2021-07-04
99
+ ### Added
100
+ - `seq` with early break mode
101
+ ### Changed
102
+ - upgraded typings for `last`
103
+
104
+ ## [0.14.1] - 2021-06-13
105
+ ### Changed
106
+ - upgraded typings for `pick`, `omit`, `pack`, `sortBy`
107
+
108
+ ## [0.14.0] - 2021-06-05
109
+ ### Changed
110
+ - upgraded typings for sortBy
111
+ ### Added
112
+ - `seq` method
113
+
114
+ ## [0.13.2] - 2021-05-16
115
+ ### Changed
116
+ - upgraded typings for pick, omit, get, getMultiple, mapValues, set, setImmutable, sortBy
117
+
118
+ ## [0.13.1] - 2021-04-14
119
+ ### Changed
120
+ - upgraded typings for mapValues
121
+ ### Dev
122
+ - fixed invalid name in `types` package.json field
123
+ - bumped some deps
124
+ - added missing testcase for mapValues
125
+
126
+ ## [0.13.0] - 2021-02-03
127
+ ### Added
128
+ - `match` method
129
+ - `pack` method
130
+ - `sortBy` method
131
+
132
+ ## [0.12.0] - 2021-01-19
133
+ ### Added
134
+ - `makeArray` method
135
+
136
+ ## [0.11.0-beta.2] - 2021-01-08
137
+ ### Dev
138
+ - add basic TypeScript support
139
+ - replaced mocha with jest
140
+ - replaced jsdoc with typedoc
141
+ ### Changed
142
+ - small README update
143
+
144
+ ## [0.10.1] - 2020-09-14
145
+ ### Fixed
146
+ - `pages` export
147
+
148
+ ## [0.10.0] - 2020-09-14
149
+ ### Added
150
+ - `pages` method
151
+
152
+ ## [0.9.0] - 2020-07-09
153
+ ### Added
154
+ - `remove` method
155
+
156
+ ## [0.8.0] - 2020-03-13
157
+ ### Fixed
158
+ - CommonJS code still not working properly
159
+ ### Changed
160
+ - `REMOVE` enum from mapValues attached to the function instead of extra export
161
+ - better native ESM support
162
+
163
+ ## [0.7.1] - 2020-03-12
164
+ ### Fixed
165
+ - CommonJS code not working properly
166
+
167
+ ## [0.7.0] - 2020-03-10
168
+ ### Added
169
+ - native ESM support
170
+ ### Changed
171
+ - upgraded deps
172
+ ### Removed
173
+ - support for deep imports like: `bottom-line-utils/get`, use `bottom-line-utils/src/get` or
174
+ `bottom-line-utils/dist/get` for now
175
+
176
+ ## [0.6.3] - 2019-08-29
177
+ ### Fixed
178
+ - dev deps audit issues
179
+
180
+ ## [0.6.2] - 2019-06-06
181
+ ### Fixed
182
+ - deps audit issue, related to development (eslint), not the code (0.6.2 is not released to npm as a result)
183
+
184
+ ## [0.6.1] - 2019-06-05
185
+ ### Fixed
186
+ - deps audit issue, related to docs generating, not the code (0.6.1 is not released to npm as a result)
187
+
188
+ ## [0.6.0] - 2019-05-12
189
+ ### Added
190
+ - `pick` and `omit` methods
191
+ ### Changed
192
+ - babel config for `dist` transpiled code upgraded, to transpile less features
193
+
194
+ ## [0.5.0] - 2019-04-09
195
+ ### Added
196
+ - `coalesce` method
197
+
198
+ ## [0.4.1] - 2019-01-31
199
+ ### Fixed
200
+ - `setImmutable` not allowing number as path and allowing other incorrect/unexpected values as paths
201
+
202
+ ## [0.4.0] - 2019-01-30
203
+ ### Added
204
+ - `insertSeparator` method
205
+
206
+ ## [0.3.1] - 2018-12-09
207
+ ### Fixed
208
+ - added missing export of `setImmutable` to index
209
+
210
+ ## [0.3.0] - 2018-12-09
211
+ ### Fixed
212
+ - missing labels in `set` tests
213
+ - disabled removing unused labels in tests
214
+ ### Changed
215
+ - improved one `set` test
216
+ ### Added
217
+ - `setImmutable` method
218
+
219
+ ## [0.2.0] 2018-12-09
220
+ ### Added
221
+ - `set` function
222
+ - @todo for get/set methods, that should test and support correctly Sets, Maps, etc.
223
+ - dev stuff: linter, editorconfig
224
+
225
+ ### Changed
226
+ - upgraded library template
227
+ - switched code to es modules
228
+ - linted code
229
+
230
+ ## [0.1.2] - 2018-11-09
231
+ ### Fixed
232
+ - fixed `mapValues` calling the method twice
233
+
234
+ ## [0.1.1] - 2018-05-31
235
+ ### Changed
236
+ - README update
237
+
238
+ ## [0.1.0] - 2018-05-31
239
+ ### Added
240
+ - `get` function
241
+ - `getMultiple` function
242
+ - `isEmpty` function
243
+ - `last` function
244
+ - `mapValues` function
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2021 Jacek Nowacki
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,79 @@
1
+ # @ezez/utils
2
+
3
+ > Formerly: bottom-line-utils, but I never liked the name
4
+
5
+ A tiny and fast utils library.
6
+
7
+ ## Documentation
8
+
9
+ Documentation can be found here: [documentation](https://ezez.dev/docs/utils/latest).
10
+
11
+ ## Installing
12
+
13
+ `npm install @ezez/utils`
14
+
15
+ ## Motivation
16
+
17
+ Lodash complexity that causes big bundle sizes just for using single function (even with tree shaking!).
18
+
19
+ Lodash is trying to cover each possible use case, even very rare while typical observed use case of lodash is basic
20
+ methods used on basic data. As an example, let's take a `_.pick` method that simply returns an object, based on source
21
+ object, with just some properties copied. Easy, right? Few lines of code? Lodash makes that 114 imports!
22
+
23
+ `@ezez/utils` aims to:
24
+ - cover only most typical use cases of given functions,
25
+ - add useful methods that are missing in lodash,
26
+ - NOT being 100% compatible replacement for lodash/underscore, while keeping MOST behavior identical,
27
+ - not being a "polyfill" (no `map`/`forEach` functions etc.),
28
+ - perform fast and have code size small.
29
+
30
+ ## Supported methods
31
+
32
+ - `cap` - cap a value between lower and upper bound
33
+ - `capitalize` - capitalize a string, optionally lower casing the rest
34
+ - `coalesce` - return first non-nullish value
35
+ - `ensureArray` - ensure that given value is an array
36
+ - `ensureError` - ensure that given value is an error
37
+ - `get` - extract a value from a deep object using specified path, optionally with a default value
38
+ - `getMultiple` - same as above, but test multiple paths
39
+ - `insertSeparator` - insert a separator between every character in an array
40
+ - `isEmpty` - check if given value is empty
41
+ - `isPlainObject` - check if given value is a plain object
42
+ - `last` - get last element of an array
43
+ - `mapAsync` - map an array asynchronously if sync version blocks your event loop for too long
44
+ - `mapValues` - map values of an object
45
+ - `match` - split your array into two groups - one that matches given predicate, and one that doesn't
46
+ - `merge` - merge two objects shallowly, allowing to remove properties while doing so
47
+ - `mostFrequent` - find most frequent value in an array
48
+ - `noop` - do nothing
49
+ - `omit` - omit properties from an object
50
+ - `pick` - pick some properties from an object
51
+ - `pull` - remove values from an array (by mutating)
52
+ - `remove` - remove values from an array (by mutating) using predicate function and return removed values
53
+ - `rethrow` - throw given value
54
+ - `scale` - scale given value from old range to new range
55
+ - `seq` - sequentially execute Promise-returning functions until one returns a value
56
+ - `set` - set a value in a deep object using specified path
57
+ - `setImmutable` - set a value in a deep object using specified path, but return a new object
58
+ - `sortBy` - sort an array by given property (create callback function for `Array.prototype.sort`)
59
+ - `throttle` - throttle a function, very configurable
60
+ - `truthy` - is value truthy? (useful for filtering with more correct TypeScript support than `filter(Boolean)`)
61
+ - `wait` - wait given amount of time (async)
62
+ - `waitSync` - wait given amount of time (sync)
63
+ - `waitFor` - wait for a condition to be true, checking every given amount of time
64
+
65
+ Methods will be added as I need them. I am open for suggestions and PRs. See next heading for list of methods that I
66
+ want to add.
67
+
68
+ ## Methods to be supported
69
+
70
+ (TODO)
71
+ - debounce
72
+
73
+ ## Tested
74
+
75
+ This library is fully unit tested and can be used on production. See License.
76
+
77
+ ## License
78
+
79
+ MIT
@@ -0,0 +1,6 @@
1
+ module.exports = {
2
+ presets: [
3
+ ['@babel/preset-env', { targets: { node: 'current' } }],
4
+ '@babel/preset-typescript',
5
+ ],
6
+ };
package/dist/cap.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ declare const cap: (value: number, upperLimit: number, lowerLimit?: number) => number;
2
+ export { cap, };
3
+ //# sourceMappingURL=cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cap.d.ts","sourceRoot":"","sources":["../src/cap.ts"],"names":[],"mappings":"AAMA,QAAA,MAAM,GAAG,UAAW,MAAM,cAAc,MAAM,eAAe,MAAM,WAQlE,CAAC;AAEF,OAAO,EACH,GAAG,GACN,CAAC"}
package/dist/cap.js ADDED
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cap = void 0;
4
+ const cap = (value, upperLimit, lowerLimit) => {
5
+ if (lowerLimit == null) {
6
+ return Math.min(value, upperLimit);
7
+ }
8
+ if (upperLimit < lowerLimit) {
9
+ throw new TypeError("upperLimit must be greater than lowerLimit");
10
+ }
11
+ return Math.min(upperLimit, Math.max(lowerLimit, value));
12
+ };
13
+ exports.cap = cap;
14
+ //# sourceMappingURL=cap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cap.js","sourceRoot":"","sources":["../src/cap.ts"],"names":[],"mappings":";;;AAMA,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,UAAkB,EAAE,UAAmB,EAAE,EAAE;IACnE,IAAI,UAAU,IAAI,IAAI,EAAE;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;KACtC;IACD,IAAI,UAAU,GAAG,UAAU,EAAE;QACzB,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;KACrE;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC;AAGE,kBAAG"}
@@ -0,0 +1,3 @@
1
+ declare const capitalize: (text: string, restLowercase?: boolean) => string;
2
+ export { capitalize, };
3
+ //# sourceMappingURL=capitalize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitalize.d.ts","sourceRoot":"","sources":["../src/capitalize.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,UAAU,SAAU,MAAM,oCAG/B,CAAC;AAEF,OAAO,EACH,UAAU,GACb,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.capitalize = void 0;
4
+ const capitalize = (text, restLowercase = false) => {
5
+ const rest = restLowercase ? text.slice(1).toLowerCase() : text.slice(1);
6
+ return text.charAt(0).toUpperCase() + rest;
7
+ };
8
+ exports.capitalize = capitalize;
9
+ //# sourceMappingURL=capitalize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitalize.js","sourceRoot":"","sources":["../src/capitalize.ts"],"names":[],"mappings":";;;AAQA,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,aAAa,GAAG,KAAK,EAAE,EAAE;IACvD,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC;AAC/C,CAAC,CAAC;AAGE,gCAAU"}
@@ -0,0 +1,3 @@
1
+ declare const coalesce: <T>(...args: T[]) => NonNullable<T> | null;
2
+ export { coalesce };
3
+ //# sourceMappingURL=coalesce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coalesce.d.ts","sourceRoot":"","sources":["../src/coalesce.ts"],"names":[],"mappings":"AAUA,QAAA,MAAM,QAAQ,4CAQb,CAAC;AAEF,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.coalesce = void 0;
4
+ const coalesce = (...args) => {
5
+ for (let i = 0; i < args.length; i++) {
6
+ const item = args[i];
7
+ if (item != null) {
8
+ return item;
9
+ }
10
+ }
11
+ return null;
12
+ };
13
+ exports.coalesce = coalesce;
14
+ //# sourceMappingURL=coalesce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coalesce.js","sourceRoot":"","sources":["../src/coalesce.ts"],"names":[],"mappings":";;;AAUA,MAAM,QAAQ,GAAG,CAAI,GAAG,IAAS,EAAyB,EAAE;IACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,IAAI,IAAI,IAAI,EAAE;YACd,OAAO,IAAI,CAAC;SACf;KACJ;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEO,4BAAQ"}
@@ -0,0 +1,3 @@
1
+ declare const ensureArray: <T>(value: T | T[]) => T[];
2
+ export { ensureArray };
3
+ //# sourceMappingURL=ensureArray.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureArray.d.ts","sourceRoot":"","sources":["../src/ensureArray.ts"],"names":[],"mappings":"AAKA,QAAA,MAAM,WAAW,4BAKhB,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ensureArray = void 0;
4
+ const ensureArray = (value) => {
5
+ if (Array.isArray(value)) {
6
+ return value;
7
+ }
8
+ return [value];
9
+ };
10
+ exports.ensureArray = ensureArray;
11
+ //# sourceMappingURL=ensureArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureArray.js","sourceRoot":"","sources":["../src/ensureArray.ts"],"names":[],"mappings":";;;AAKA,MAAM,WAAW,GAAG,CAAI,KAAc,EAAO,EAAE;IAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACtB,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC,CAAC;AAEO,kCAAW"}
@@ -0,0 +1,3 @@
1
+ declare const ensureError: (e: unknown) => Error;
2
+ export { ensureError, };
3
+ //# sourceMappingURL=ensureError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureError.d.ts","sourceRoot":"","sources":["../src/ensureError.ts"],"names":[],"mappings":"AAKA,QAAA,MAAM,WAAW,MAAO,OAAO,UAK9B,CAAC;AAEF,OAAO,EACH,WAAW,GACd,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ensureError = void 0;
4
+ const ensureError = (e) => {
5
+ if (e instanceof Error) {
6
+ return e;
7
+ }
8
+ return new Error("Expected error instance, got something else: " + String(e));
9
+ };
10
+ exports.ensureError = ensureError;
11
+ //# sourceMappingURL=ensureError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureError.js","sourceRoot":"","sources":["../src/ensureError.ts"],"names":[],"mappings":";;;AAKA,MAAM,WAAW,GAAG,CAAC,CAAU,EAAE,EAAE;IAC/B,IAAI,CAAC,YAAY,KAAK,EAAE;QACpB,OAAO,CAAC,CAAC;KACZ;IACD,OAAO,IAAI,KAAK,CAAC,+CAA+C,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC,CAAC;AAGE,kCAAW"}
package/dist/get.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ interface Source {
2
+ [key: string]: unknown;
3
+ }
4
+ declare const get: (source: Source, property: string | string[], defaultValue?: unknown) => unknown;
5
+ export { get };
6
+ export type { Source as GetSource, };
7
+ //# sourceMappingURL=get.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../src/get.ts"],"names":[],"mappings":"AAKA,UAAU,MAAM;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE;AA2B3C,QAAA,MAAM,GAAG,WAAY,MAAM,YAAY,MAAM,GAAG,MAAM,EAAE,iBAAgB,OAAO,KAAe,OAc7F,CAAC;AAEF,OAAO,EAAE,GAAG,EAAE,CAAC;AAEf,YAAY,EACR,MAAM,IAAI,SAAS,GACtB,CAAC"}
package/dist/get.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.get = void 0;
4
+ const get = (source, property, defaultValue = undefined) => {
5
+ const properties = typeof property === "string" ? property.split(".") : [...property];
6
+ let result = source;
7
+ while (properties.length) {
8
+ const current = properties.shift();
9
+ if (result && typeof result === "object" && current in result) {
10
+ result = result[current];
11
+ }
12
+ else {
13
+ return defaultValue;
14
+ }
15
+ }
16
+ return result;
17
+ };
18
+ exports.get = get;
19
+ //# sourceMappingURL=get.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../src/get.ts"],"names":[],"mappings":";;;AAgCA,MAAM,GAAG,GAAG,CAAC,MAAc,EAAE,QAA2B,EAAE,eAAwB,SAAS,EAAW,EAAE;IACpG,MAAM,UAAU,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;IAEtF,IAAI,MAAM,GAAY,MAAM,CAAC;IAC7B,OAAO,UAAU,CAAC,MAAM,EAAE;QACtB,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAG,CAAC;QACpC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,MAAM,EAAE;YAC3D,MAAM,GAAI,MAAiB,CAAC,OAAO,CAAC,CAAC;SACxC;aACI;YACD,OAAO,YAAY,CAAC;SACvB;KACJ;IACD,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEO,kBAAG"}
@@ -0,0 +1,7 @@
1
+ interface Source {
2
+ [key: string]: unknown;
3
+ }
4
+ declare const getMultiple: (source: Source, defaultValue: unknown, ...paths: (string | string[])[]) => unknown;
5
+ export { getMultiple };
6
+ export type { Source as GetMultipleSource, };
7
+ //# sourceMappingURL=getMultiple.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMultiple.d.ts","sourceRoot":"","sources":["../src/getMultiple.ts"],"names":[],"mappings":"AAOA,UAAU,MAAM;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE;AAuB3C,QAAA,MAAM,WAAW,WAAY,MAAM,gBAAgB,OAAO,YAAY,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,KAAG,OAU7F,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,YAAY,EACR,MAAM,IAAI,iBAAiB,GAC9B,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMultiple = void 0;
4
+ const get_js_1 = require("./get.js");
5
+ const DEFAULT = {};
6
+ const getMultiple = (source, defaultValue, ...paths) => {
7
+ const length = paths.length;
8
+ for (let i = 0; i < length; i++) {
9
+ const properties = paths[i];
10
+ const result = (0, get_js_1.get)(source, properties, DEFAULT);
11
+ if (result !== DEFAULT) {
12
+ return result;
13
+ }
14
+ }
15
+ return defaultValue;
16
+ };
17
+ exports.getMultiple = getMultiple;
18
+ //# sourceMappingURL=getMultiple.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMultiple.js","sourceRoot":"","sources":["../src/getMultiple.ts"],"names":[],"mappings":";;;AAAA,qCAA+B;AAS/B,MAAM,OAAO,GAAG,EAAE,CAAC;AAqBnB,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,YAAqB,EAAE,GAAG,KAA4B,EAAW,EAAE;IACpG,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAA,YAAG,EAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,OAAO,EAAE;YACpB,OAAO,MAAM,CAAC;SACjB;KACJ;IACD,OAAO,YAAY,CAAC;AACxB,CAAC,CAAC;AAEO,kCAAW"}
@@ -0,0 +1,33 @@
1
+ export * from "./cap.js";
2
+ export * from "./capitalize.js";
3
+ export * from "./coalesce.js";
4
+ export * from "./ensureArray.js";
5
+ export * from "./ensureError.js";
6
+ export * from "./get.js";
7
+ export * from "./getMultiple.js";
8
+ export * from "./insertSeparator.js";
9
+ export * from "./isEmpty.js";
10
+ export * from "./isPlainObject.js";
11
+ export * from "./last.js";
12
+ export * from "./mapAsync.js";
13
+ export * from "./mapValues.js";
14
+ export * from "./match.js";
15
+ export * from "./merge.js";
16
+ export * from "./mostFrequent.js";
17
+ export * from "./noop.js";
18
+ export * from "./omit.js";
19
+ export * from "./pick.js";
20
+ export * from "./pull.js";
21
+ export * from "./remove.js";
22
+ export * from "./rethrow.js";
23
+ export * from "./scale.js";
24
+ export * from "./seq.js";
25
+ export * from "./set.js";
26
+ export * from "./setImmutable.js";
27
+ export * from "./sortBy.js";
28
+ export * from "./throttle.js";
29
+ export * from "./truthy.js";
30
+ export * from "./wait.js";
31
+ export * from "./waitFor.js";
32
+ export * from "./waitSync.js";
33
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cap.js"), exports);
18
+ __exportStar(require("./capitalize.js"), exports);
19
+ __exportStar(require("./coalesce.js"), exports);
20
+ __exportStar(require("./ensureArray.js"), exports);
21
+ __exportStar(require("./ensureError.js"), exports);
22
+ __exportStar(require("./get.js"), exports);
23
+ __exportStar(require("./getMultiple.js"), exports);
24
+ __exportStar(require("./insertSeparator.js"), exports);
25
+ __exportStar(require("./isEmpty.js"), exports);
26
+ __exportStar(require("./isPlainObject.js"), exports);
27
+ __exportStar(require("./last.js"), exports);
28
+ __exportStar(require("./mapAsync.js"), exports);
29
+ __exportStar(require("./mapValues.js"), exports);
30
+ __exportStar(require("./match.js"), exports);
31
+ __exportStar(require("./merge.js"), exports);
32
+ __exportStar(require("./mostFrequent.js"), exports);
33
+ __exportStar(require("./noop.js"), exports);
34
+ __exportStar(require("./omit.js"), exports);
35
+ __exportStar(require("./pick.js"), exports);
36
+ __exportStar(require("./pull.js"), exports);
37
+ __exportStar(require("./remove.js"), exports);
38
+ __exportStar(require("./rethrow.js"), exports);
39
+ __exportStar(require("./scale.js"), exports);
40
+ __exportStar(require("./seq.js"), exports);
41
+ __exportStar(require("./set.js"), exports);
42
+ __exportStar(require("./setImmutable.js"), exports);
43
+ __exportStar(require("./sortBy.js"), exports);
44
+ __exportStar(require("./throttle.js"), exports);
45
+ __exportStar(require("./truthy.js"), exports);
46
+ __exportStar(require("./wait.js"), exports);
47
+ __exportStar(require("./waitFor.js"), exports);
48
+ __exportStar(require("./waitSync.js"), exports);
49
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,2CAAyB;AACzB,kDAAgC;AAChC,gDAA8B;AAC9B,mDAAiC;AACjC,mDAAiC;AACjC,2CAAyB;AACzB,mDAAiC;AACjC,uDAAqC;AACrC,+CAA6B;AAC7B,qDAAmC;AACnC,4CAA0B;AAC1B,gDAA8B;AAC9B,iDAA+B;AAC/B,6CAA2B;AAC3B,6CAA2B;AAC3B,oDAAkC;AAClC,4CAA0B;AAC1B,4CAA0B;AAC1B,4CAA0B;AAC1B,4CAA0B;AAC1B,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,2CAAyB;AACzB,2CAAyB;AACzB,oDAAkC;AAClC,8CAA4B;AAC5B,gDAA8B;AAC9B,8CAA4B;AAC5B,4CAA0B;AAC1B,+CAA6B;AAC7B,gDAA8B"}
@@ -0,0 +1,3 @@
1
+ declare const insertSeparator: <T, S>(source: T[], separator: S) => (T | S)[];
2
+ export { insertSeparator };
3
+ //# sourceMappingURL=insertSeparator.d.ts.map