@vinicunca/perkakas 0.4.0 → 0.4.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 (627) hide show
  1. package/dist/index.cjs +2375 -0
  2. package/dist/index.d.cts +4603 -0
  3. package/dist/index.d.mts +4603 -0
  4. package/dist/index.d.ts +4603 -0
  5. package/dist/index.mjs +2231 -0
  6. package/dist/metadata.json +6 -6
  7. package/package.json +17 -7
  8. package/dist/commonjs/aria/index.js +0 -17
  9. package/dist/commonjs/aria/key-codes.js +0 -25
  10. package/dist/commonjs/array/all-pass.js +0 -11
  11. package/dist/commonjs/array/any-pass.js +0 -11
  12. package/dist/commonjs/array/chunk.js +0 -17
  13. package/dist/commonjs/array/concat.js +0 -11
  14. package/dist/commonjs/array/difference-with.js +0 -21
  15. package/dist/commonjs/array/drop-first-by.js +0 -26
  16. package/dist/commonjs/array/drop-last-while.js +0 -16
  17. package/dist/commonjs/array/drop-last.js +0 -15
  18. package/dist/commonjs/array/drop-while.js +0 -16
  19. package/dist/commonjs/array/drop.js +0 -25
  20. package/dist/commonjs/array/filter.js +0 -28
  21. package/dist/commonjs/array/find-index.js +0 -33
  22. package/dist/commonjs/array/find-last-index.js +0 -24
  23. package/dist/commonjs/array/find-last.js +0 -24
  24. package/dist/commonjs/array/find.js +0 -26
  25. package/dist/commonjs/array/first-by.js +0 -22
  26. package/dist/commonjs/array/first.js +0 -20
  27. package/dist/commonjs/array/flat-map-to-obj.js +0 -26
  28. package/dist/commonjs/array/flat-map.js +0 -23
  29. package/dist/commonjs/array/flatten-deep.js +0 -38
  30. package/dist/commonjs/array/flatten.js +0 -20
  31. package/dist/commonjs/array/for-each.js +0 -36
  32. package/dist/commonjs/array/group-by.js +0 -33
  33. package/dist/commonjs/array/has-at-least.js +0 -11
  34. package/dist/commonjs/array/index-by.js +0 -37
  35. package/dist/commonjs/array/index.js +0 -81
  36. package/dist/commonjs/array/intersection-with.js +0 -21
  37. package/dist/commonjs/array/join.js +0 -11
  38. package/dist/commonjs/array/last.js +0 -11
  39. package/dist/commonjs/array/length.js +0 -11
  40. package/dist/commonjs/array/map-to-obj.js +0 -24
  41. package/dist/commonjs/array/map.js +0 -31
  42. package/dist/commonjs/array/max-by.js +0 -28
  43. package/dist/commonjs/array/mean-by.js +0 -26
  44. package/dist/commonjs/array/merge-all.js +0 -11
  45. package/dist/commonjs/array/min-by.js +0 -28
  46. package/dist/commonjs/array/nth-by.js +0 -12
  47. package/dist/commonjs/array/only.js +0 -11
  48. package/dist/commonjs/array/partition.js +0 -24
  49. package/dist/commonjs/array/range.js +0 -15
  50. package/dist/commonjs/array/rank-by.js +0 -17
  51. package/dist/commonjs/array/reduce.js +0 -19
  52. package/dist/commonjs/array/reject.js +0 -28
  53. package/dist/commonjs/array/reverse.js +0 -11
  54. package/dist/commonjs/array/sample.js +0 -34
  55. package/dist/commonjs/array/shuffle.js +0 -18
  56. package/dist/commonjs/array/sort-by.js +0 -14
  57. package/dist/commonjs/array/sort.js +0 -16
  58. package/dist/commonjs/array/sorted-index-by.js +0 -19
  59. package/dist/commonjs/array/sorted-index-with.js +0 -15
  60. package/dist/commonjs/array/sorted-index.js +0 -12
  61. package/dist/commonjs/array/sorted-last-index-by.js +0 -19
  62. package/dist/commonjs/array/sorted-last-index.js +0 -12
  63. package/dist/commonjs/array/splice.js +0 -13
  64. package/dist/commonjs/array/split-at.js +0 -13
  65. package/dist/commonjs/array/split-when.js +0 -17
  66. package/dist/commonjs/array/sum-by.js +0 -24
  67. package/dist/commonjs/array/swap-indices.js +0 -34
  68. package/dist/commonjs/array/take-first-by.js +0 -24
  69. package/dist/commonjs/array/take-while.js +0 -18
  70. package/dist/commonjs/array/take.js +0 -25
  71. package/dist/commonjs/array/uniq-by.js +0 -23
  72. package/dist/commonjs/array/uniq-with.js +0 -23
  73. package/dist/commonjs/array/uniq.js +0 -25
  74. package/dist/commonjs/array/zip-obj.js +0 -16
  75. package/dist/commonjs/array/zip-with.js +0 -23
  76. package/dist/commonjs/array/zip.js +0 -19
  77. package/dist/commonjs/function/conditional.js +0 -34
  78. package/dist/commonjs/function/create-pipe.js +0 -8
  79. package/dist/commonjs/function/debounce.js +0 -88
  80. package/dist/commonjs/function/identity.js +0 -7
  81. package/dist/commonjs/function/index.js +0 -26
  82. package/dist/commonjs/function/noop.js +0 -7
  83. package/dist/commonjs/function/once.js +0 -15
  84. package/dist/commonjs/function/pipe.js +0 -100
  85. package/dist/commonjs/function/purry.js +0 -19
  86. package/dist/commonjs/function/sleep.js +0 -9
  87. package/dist/commonjs/function/times.js +0 -18
  88. package/dist/commonjs/guard/has-sub-object.js +0 -19
  89. package/dist/commonjs/guard/index.js +0 -35
  90. package/dist/commonjs/guard/is-array.js +0 -7
  91. package/dist/commonjs/guard/is-boolean.js +0 -7
  92. package/dist/commonjs/guard/is-date.js +0 -7
  93. package/dist/commonjs/guard/is-deep-equal.js +0 -55
  94. package/dist/commonjs/guard/is-defined.js +0 -13
  95. package/dist/commonjs/guard/is-empty.js +0 -19
  96. package/dist/commonjs/guard/is-error.js +0 -7
  97. package/dist/commonjs/guard/is-function.js +0 -7
  98. package/dist/commonjs/guard/is-included-in.js +0 -11
  99. package/dist/commonjs/guard/is-nil.js +0 -7
  100. package/dist/commonjs/guard/is-non-null.js +0 -7
  101. package/dist/commonjs/guard/is-not.js +0 -7
  102. package/dist/commonjs/guard/is-number.js +0 -7
  103. package/dist/commonjs/guard/is-object.js +0 -11
  104. package/dist/commonjs/guard/is-promise.js +0 -7
  105. package/dist/commonjs/guard/is-string.js +0 -7
  106. package/dist/commonjs/guard/is-symbol.js +0 -7
  107. package/dist/commonjs/guard/is-truthy.js +0 -7
  108. package/dist/commonjs/index.js +0 -26
  109. package/dist/commonjs/number/add.js +0 -11
  110. package/dist/commonjs/number/ceil.js +0 -9
  111. package/dist/commonjs/number/clamp.js +0 -17
  112. package/dist/commonjs/number/divide.js +0 -11
  113. package/dist/commonjs/number/floor.js +0 -9
  114. package/dist/commonjs/number/index.js +0 -24
  115. package/dist/commonjs/number/multiply.js +0 -11
  116. package/dist/commonjs/number/round.js +0 -9
  117. package/dist/commonjs/number/subtract.js +0 -11
  118. package/dist/commonjs/object/add-prop.js +0 -14
  119. package/dist/commonjs/object/clone.js +0 -49
  120. package/dist/commonjs/object/for-each-obj.js +0 -30
  121. package/dist/commonjs/object/from-keys.js +0 -15
  122. package/dist/commonjs/object/from-pairs.js +0 -18
  123. package/dist/commonjs/object/index.js +0 -39
  124. package/dist/commonjs/object/invert.js +0 -17
  125. package/dist/commonjs/object/keys.js +0 -11
  126. package/dist/commonjs/object/map-keys.js +0 -16
  127. package/dist/commonjs/object/map-values.js +0 -16
  128. package/dist/commonjs/object/merge-deep.js +0 -31
  129. package/dist/commonjs/object/merge.js +0 -11
  130. package/dist/commonjs/object/omit-by.js +0 -22
  131. package/dist/commonjs/object/omit.js +0 -25
  132. package/dist/commonjs/object/path-or.js +0 -18
  133. package/dist/commonjs/object/pick-by.js +0 -22
  134. package/dist/commonjs/object/pick.js +0 -17
  135. package/dist/commonjs/object/prop.js +0 -7
  136. package/dist/commonjs/object/set-path.js +0 -25
  137. package/dist/commonjs/object/set.js +0 -14
  138. package/dist/commonjs/object/swap-props.js +0 -16
  139. package/dist/commonjs/object/to-pairs.js +0 -11
  140. package/dist/commonjs/object/values.js +0 -7
  141. package/dist/commonjs/string/cases-types.js +0 -2
  142. package/dist/commonjs/string/cases.js +0 -107
  143. package/dist/commonjs/string/human-readable-file-size.js +0 -16
  144. package/dist/commonjs/string/index.js +0 -21
  145. package/dist/commonjs/string/random-string.js +0 -16
  146. package/dist/commonjs/string/slugify.js +0 -13
  147. package/dist/commonjs/string/string-to-path.js +0 -18
  148. package/dist/commonjs/type/index.js +0 -17
  149. package/dist/commonjs/type/type.js +0 -13
  150. package/dist/commonjs/utils/binary-search-cutoff-index.js +0 -19
  151. package/dist/commonjs/utils/heap.js +0 -43
  152. package/dist/commonjs/utils/narrow.js +0 -2
  153. package/dist/commonjs/utils/paths.js +0 -2
  154. package/dist/commonjs/utils/purry-on.js +0 -10
  155. package/dist/commonjs/utils/purry-order-rules.js +0 -66
  156. package/dist/commonjs/utils/quick-select.js +0 -31
  157. package/dist/commonjs/utils/reduce-lazy.js +0 -21
  158. package/dist/commonjs/utils/swap-in-place.js +0 -7
  159. package/dist/commonjs/utils/to-lazy-indexed.js +0 -7
  160. package/dist/commonjs/utils/to-single.js +0 -7
  161. package/dist/commonjs/utils/types.js +0 -2
  162. package/dist/commonjs/utils/with-precision.js +0 -23
  163. package/dist/es/aria/index.js +0 -1
  164. package/dist/es/aria/key-codes.js +0 -22
  165. package/dist/es/array/all-pass.js +0 -7
  166. package/dist/es/array/any-pass.js +0 -7
  167. package/dist/es/array/chunk.js +0 -13
  168. package/dist/es/array/concat.js +0 -7
  169. package/dist/es/array/difference-with.js +0 -17
  170. package/dist/es/array/drop-first-by.js +0 -22
  171. package/dist/es/array/drop-last-while.js +0 -12
  172. package/dist/es/array/drop-last.js +0 -11
  173. package/dist/es/array/drop-while.js +0 -12
  174. package/dist/es/array/drop.js +0 -21
  175. package/dist/es/array/filter.js +0 -24
  176. package/dist/es/array/find-index.js +0 -29
  177. package/dist/es/array/find-last-index.js +0 -20
  178. package/dist/es/array/find-last.js +0 -20
  179. package/dist/es/array/find.js +0 -22
  180. package/dist/es/array/first-by.js +0 -18
  181. package/dist/es/array/first.js +0 -16
  182. package/dist/es/array/flat-map-to-obj.js +0 -22
  183. package/dist/es/array/flat-map.js +0 -19
  184. package/dist/es/array/flatten-deep.js +0 -34
  185. package/dist/es/array/flatten.js +0 -16
  186. package/dist/es/array/for-each.js +0 -32
  187. package/dist/es/array/group-by.js +0 -29
  188. package/dist/es/array/has-at-least.js +0 -7
  189. package/dist/es/array/index-by.js +0 -33
  190. package/dist/es/array/index.js +0 -65
  191. package/dist/es/array/intersection-with.js +0 -17
  192. package/dist/es/array/join.js +0 -7
  193. package/dist/es/array/last.js +0 -7
  194. package/dist/es/array/length.js +0 -7
  195. package/dist/es/array/map-to-obj.js +0 -20
  196. package/dist/es/array/map.js +0 -27
  197. package/dist/es/array/max-by.js +0 -24
  198. package/dist/es/array/mean-by.js +0 -22
  199. package/dist/es/array/merge-all.js +0 -7
  200. package/dist/es/array/min-by.js +0 -24
  201. package/dist/es/array/nth-by.js +0 -8
  202. package/dist/es/array/only.js +0 -7
  203. package/dist/es/array/partition.js +0 -20
  204. package/dist/es/array/range.js +0 -11
  205. package/dist/es/array/rank-by.js +0 -13
  206. package/dist/es/array/reduce.js +0 -15
  207. package/dist/es/array/reject.js +0 -24
  208. package/dist/es/array/reverse.js +0 -7
  209. package/dist/es/array/sample.js +0 -30
  210. package/dist/es/array/shuffle.js +0 -14
  211. package/dist/es/array/sort-by.js +0 -10
  212. package/dist/es/array/sort.js +0 -12
  213. package/dist/es/array/sorted-index-by.js +0 -15
  214. package/dist/es/array/sorted-index-with.js +0 -11
  215. package/dist/es/array/sorted-index.js +0 -8
  216. package/dist/es/array/sorted-last-index-by.js +0 -15
  217. package/dist/es/array/sorted-last-index.js +0 -8
  218. package/dist/es/array/splice.js +0 -9
  219. package/dist/es/array/split-at.js +0 -9
  220. package/dist/es/array/split-when.js +0 -13
  221. package/dist/es/array/sum-by.js +0 -20
  222. package/dist/es/array/swap-indices.js +0 -30
  223. package/dist/es/array/take-first-by.js +0 -20
  224. package/dist/es/array/take-while.js +0 -14
  225. package/dist/es/array/take.js +0 -21
  226. package/dist/es/array/uniq-by.js +0 -19
  227. package/dist/es/array/uniq-with.js +0 -19
  228. package/dist/es/array/uniq.js +0 -21
  229. package/dist/es/array/zip-obj.js +0 -12
  230. package/dist/es/array/zip-with.js +0 -19
  231. package/dist/es/array/zip.js +0 -15
  232. package/dist/es/function/conditional.js +0 -30
  233. package/dist/es/function/create-pipe.js +0 -4
  234. package/dist/es/function/debounce.js +0 -84
  235. package/dist/es/function/identity.js +0 -3
  236. package/dist/es/function/index.js +0 -10
  237. package/dist/es/function/noop.js +0 -3
  238. package/dist/es/function/once.js +0 -11
  239. package/dist/es/function/pipe.js +0 -96
  240. package/dist/es/function/purry.js +0 -15
  241. package/dist/es/function/sleep.js +0 -5
  242. package/dist/es/function/times.js +0 -14
  243. package/dist/es/guard/has-sub-object.js +0 -15
  244. package/dist/es/guard/index.js +0 -19
  245. package/dist/es/guard/is-array.js +0 -3
  246. package/dist/es/guard/is-boolean.js +0 -3
  247. package/dist/es/guard/is-date.js +0 -3
  248. package/dist/es/guard/is-deep-equal.js +0 -51
  249. package/dist/es/guard/is-defined.js +0 -9
  250. package/dist/es/guard/is-empty.js +0 -15
  251. package/dist/es/guard/is-error.js +0 -3
  252. package/dist/es/guard/is-function.js +0 -3
  253. package/dist/es/guard/is-included-in.js +0 -7
  254. package/dist/es/guard/is-nil.js +0 -3
  255. package/dist/es/guard/is-non-null.js +0 -3
  256. package/dist/es/guard/is-not.js +0 -3
  257. package/dist/es/guard/is-number.js +0 -3
  258. package/dist/es/guard/is-object.js +0 -7
  259. package/dist/es/guard/is-promise.js +0 -3
  260. package/dist/es/guard/is-string.js +0 -3
  261. package/dist/es/guard/is-symbol.js +0 -3
  262. package/dist/es/guard/is-truthy.js +0 -3
  263. package/dist/es/index.js +0 -9
  264. package/dist/es/number/add.js +0 -7
  265. package/dist/es/number/ceil.js +0 -5
  266. package/dist/es/number/clamp.js +0 -13
  267. package/dist/es/number/divide.js +0 -7
  268. package/dist/es/number/floor.js +0 -5
  269. package/dist/es/number/index.js +0 -8
  270. package/dist/es/number/multiply.js +0 -7
  271. package/dist/es/number/round.js +0 -5
  272. package/dist/es/number/subtract.js +0 -7
  273. package/dist/es/object/add-prop.js +0 -10
  274. package/dist/es/object/clone.js +0 -45
  275. package/dist/es/object/for-each-obj.js +0 -26
  276. package/dist/es/object/from-keys.js +0 -11
  277. package/dist/es/object/from-pairs.js +0 -14
  278. package/dist/es/object/index.js +0 -23
  279. package/dist/es/object/invert.js +0 -13
  280. package/dist/es/object/keys.js +0 -7
  281. package/dist/es/object/map-keys.js +0 -12
  282. package/dist/es/object/map-values.js +0 -12
  283. package/dist/es/object/merge-deep.js +0 -27
  284. package/dist/es/object/merge.js +0 -7
  285. package/dist/es/object/omit-by.js +0 -18
  286. package/dist/es/object/omit.js +0 -21
  287. package/dist/es/object/path-or.js +0 -14
  288. package/dist/es/object/pick-by.js +0 -18
  289. package/dist/es/object/pick.js +0 -13
  290. package/dist/es/object/prop.js +0 -3
  291. package/dist/es/object/set-path.js +0 -20
  292. package/dist/es/object/set.js +0 -10
  293. package/dist/es/object/swap-props.js +0 -12
  294. package/dist/es/object/to-pairs.js +0 -7
  295. package/dist/es/object/values.js +0 -3
  296. package/dist/es/string/cases-types.js +0 -1
  297. package/dist/es/string/cases.js +0 -93
  298. package/dist/es/string/human-readable-file-size.js +0 -12
  299. package/dist/es/string/index.js +0 -5
  300. package/dist/es/string/random-string.js +0 -12
  301. package/dist/es/string/slugify.js +0 -9
  302. package/dist/es/string/string-to-path.js +0 -14
  303. package/dist/es/type/index.js +0 -1
  304. package/dist/es/type/type.js +0 -9
  305. package/dist/es/utils/binary-search-cutoff-index.js +0 -15
  306. package/dist/es/utils/heap.js +0 -38
  307. package/dist/es/utils/narrow.js +0 -1
  308. package/dist/es/utils/paths.js +0 -1
  309. package/dist/es/utils/purry-on.js +0 -6
  310. package/dist/es/utils/purry-order-rules.js +0 -61
  311. package/dist/es/utils/quick-select.js +0 -27
  312. package/dist/es/utils/reduce-lazy.js +0 -17
  313. package/dist/es/utils/swap-in-place.js +0 -3
  314. package/dist/es/utils/to-lazy-indexed.js +0 -3
  315. package/dist/es/utils/to-single.js +0 -3
  316. package/dist/es/utils/types.js +0 -1
  317. package/dist/es/utils/with-precision.js +0 -19
  318. package/dist/types/aria/index.d.ts +0 -2
  319. package/dist/types/aria/index.d.ts.map +0 -1
  320. package/dist/types/aria/key-codes.d.ts +0 -26
  321. package/dist/types/aria/key-codes.d.ts.map +0 -1
  322. package/dist/types/array/all-pass.d.ts +0 -32
  323. package/dist/types/array/all-pass.d.ts.map +0 -1
  324. package/dist/types/array/any-pass.d.ts +0 -32
  325. package/dist/types/array/any-pass.d.ts.map +0 -1
  326. package/dist/types/array/chunk.d.ts +0 -29
  327. package/dist/types/array/chunk.d.ts.map +0 -1
  328. package/dist/types/array/concat.d.ts +0 -24
  329. package/dist/types/array/concat.d.ts.map +0 -1
  330. package/dist/types/array/difference-with.d.ts +0 -48
  331. package/dist/types/array/difference-with.d.ts.map +0 -1
  332. package/dist/types/array/drop-first-by.d.ts +0 -38
  333. package/dist/types/array/drop-first-by.d.ts.map +0 -1
  334. package/dist/types/array/drop-last-while.d.ts +0 -30
  335. package/dist/types/array/drop-last-while.d.ts.map +0 -1
  336. package/dist/types/array/drop-last.d.ts +0 -26
  337. package/dist/types/array/drop-last.d.ts.map +0 -1
  338. package/dist/types/array/drop-while.d.ts +0 -33
  339. package/dist/types/array/drop-while.d.ts.map +0 -1
  340. package/dist/types/array/drop.d.ts +0 -32
  341. package/dist/types/array/drop.d.ts.map +0 -1
  342. package/dist/types/array/filter.d.ts +0 -63
  343. package/dist/types/array/filter.d.ts.map +0 -1
  344. package/dist/types/array/find-index.d.ts +0 -54
  345. package/dist/types/array/find-index.d.ts.map +0 -1
  346. package/dist/types/array/find-last-index.d.ts +0 -45
  347. package/dist/types/array/find-last-index.d.ts.map +0 -1
  348. package/dist/types/array/find-last.d.ts +0 -45
  349. package/dist/types/array/find-last.d.ts.map +0 -1
  350. package/dist/types/array/find.d.ts +0 -52
  351. package/dist/types/array/find.d.ts.map +0 -1
  352. package/dist/types/array/first-by.d.ts +0 -56
  353. package/dist/types/array/first-by.d.ts.map +0 -1
  354. package/dist/types/array/first.d.ts +0 -32
  355. package/dist/types/array/first.d.ts.map +0 -1
  356. package/dist/types/array/flat-map-to-obj.d.ts +0 -50
  357. package/dist/types/array/flat-map-to-obj.d.ts.map +0 -1
  358. package/dist/types/array/flat-map.d.ts +0 -32
  359. package/dist/types/array/flat-map.d.ts.map +0 -1
  360. package/dist/types/array/flatten-deep.d.ts +0 -37
  361. package/dist/types/array/flatten-deep.d.ts.map +0 -1
  362. package/dist/types/array/flatten.d.ts +0 -39
  363. package/dist/types/array/flatten.d.ts.map +0 -1
  364. package/dist/types/array/for-each.d.ts +0 -57
  365. package/dist/types/array/for-each.d.ts.map +0 -1
  366. package/dist/types/array/group-by.d.ts +0 -37
  367. package/dist/types/array/group-by.d.ts.map +0 -1
  368. package/dist/types/array/has-at-least.d.ts +0 -46
  369. package/dist/types/array/has-at-least.d.ts.map +0 -1
  370. package/dist/types/array/index-by.d.ts +0 -52
  371. package/dist/types/array/index-by.d.ts.map +0 -1
  372. package/dist/types/array/index.d.ts +0 -66
  373. package/dist/types/array/index.d.ts.map +0 -1
  374. package/dist/types/array/intersection-with.d.ts +0 -54
  375. package/dist/types/array/intersection-with.d.ts.map +0 -1
  376. package/dist/types/array/join.d.ts +0 -45
  377. package/dist/types/array/join.d.ts.map +0 -1
  378. package/dist/types/array/last.d.ts +0 -34
  379. package/dist/types/array/last.d.ts.map +0 -1
  380. package/dist/types/array/length.d.ts +0 -15
  381. package/dist/types/array/length.d.ts.map +0 -1
  382. package/dist/types/array/map-to-obj.d.ts +0 -42
  383. package/dist/types/array/map-to-obj.d.ts.map +0 -1
  384. package/dist/types/array/map.d.ts +0 -62
  385. package/dist/types/array/map.d.ts.map +0 -1
  386. package/dist/types/array/max-by.d.ts +0 -39
  387. package/dist/types/array/max-by.d.ts.map +0 -1
  388. package/dist/types/array/mean-by.d.ts +0 -39
  389. package/dist/types/array/mean-by.d.ts.map +0 -1
  390. package/dist/types/array/merge-all.d.ts +0 -16
  391. package/dist/types/array/merge-all.d.ts.map +0 -1
  392. package/dist/types/array/min-by.d.ts +0 -39
  393. package/dist/types/array/min-by.d.ts.map +0 -1
  394. package/dist/types/array/nth-by.d.ts +0 -44
  395. package/dist/types/array/nth-by.d.ts.map +0 -1
  396. package/dist/types/array/only.d.ts +0 -37
  397. package/dist/types/array/only.d.ts.map +0 -1
  398. package/dist/types/array/partition.d.ts +0 -60
  399. package/dist/types/array/partition.d.ts.map +0 -1
  400. package/dist/types/array/range.d.ts +0 -22
  401. package/dist/types/array/range.d.ts.map +0 -1
  402. package/dist/types/array/rank-by.d.ts +0 -40
  403. package/dist/types/array/rank-by.d.ts.map +0 -1
  404. package/dist/types/array/reduce.d.ts +0 -37
  405. package/dist/types/array/reduce.d.ts.map +0 -1
  406. package/dist/types/array/reject.d.ts +0 -42
  407. package/dist/types/array/reject.d.ts.map +0 -1
  408. package/dist/types/array/reverse.d.ts +0 -27
  409. package/dist/types/array/reverse.d.ts.map +0 -1
  410. package/dist/types/array/sample.d.ts +0 -54
  411. package/dist/types/array/sample.d.ts.map +0 -1
  412. package/dist/types/array/shuffle.d.ts +0 -22
  413. package/dist/types/array/shuffle.d.ts.map +0 -1
  414. package/dist/types/array/sort-by.d.ts +0 -98
  415. package/dist/types/array/sort-by.d.ts.map +0 -1
  416. package/dist/types/array/sort.d.ts +0 -52
  417. package/dist/types/array/sort.d.ts.map +0 -1
  418. package/dist/types/array/sorted-index-by.d.ts +0 -62
  419. package/dist/types/array/sorted-index-by.d.ts.map +0 -1
  420. package/dist/types/array/sorted-index-with.d.ts +0 -64
  421. package/dist/types/array/sorted-index-with.d.ts.map +0 -1
  422. package/dist/types/array/sorted-index.d.ts +0 -46
  423. package/dist/types/array/sorted-index.d.ts.map +0 -1
  424. package/dist/types/array/sorted-last-index-by.d.ts +0 -62
  425. package/dist/types/array/sorted-last-index-by.d.ts.map +0 -1
  426. package/dist/types/array/sorted-last-index.d.ts +0 -46
  427. package/dist/types/array/sorted-last-index.d.ts.map +0 -1
  428. package/dist/types/array/splice.d.ts +0 -32
  429. package/dist/types/array/splice.d.ts.map +0 -1
  430. package/dist/types/array/split-at.d.ts +0 -28
  431. package/dist/types/array/split-at.d.ts.map +0 -1
  432. package/dist/types/array/split-when.d.ts +0 -24
  433. package/dist/types/array/split-when.d.ts.map +0 -1
  434. package/dist/types/array/sum-by.d.ts +0 -39
  435. package/dist/types/array/sum-by.d.ts.map +0 -1
  436. package/dist/types/array/swap-indices.d.ts +0 -68
  437. package/dist/types/array/swap-indices.d.ts.map +0 -1
  438. package/dist/types/array/take-first-by.d.ts +0 -42
  439. package/dist/types/array/take-first-by.d.ts.map +0 -1
  440. package/dist/types/array/take-while.d.ts +0 -24
  441. package/dist/types/array/take-while.d.ts.map +0 -1
  442. package/dist/types/array/take.d.ts +0 -30
  443. package/dist/types/array/take.d.ts.map +0 -1
  444. package/dist/types/array/uniq-by.d.ts +0 -22
  445. package/dist/types/array/uniq-by.d.ts.map +0 -1
  446. package/dist/types/array/uniq-with.d.ts +0 -44
  447. package/dist/types/array/uniq-with.d.ts.map +0 -1
  448. package/dist/types/array/uniq.d.ts +0 -35
  449. package/dist/types/array/uniq.d.ts.map +0 -1
  450. package/dist/types/array/zip-obj.d.ts +0 -26
  451. package/dist/types/array/zip-obj.d.ts.map +0 -1
  452. package/dist/types/array/zip-with.d.ts +0 -42
  453. package/dist/types/array/zip-with.d.ts.map +0 -1
  454. package/dist/types/array/zip.d.ts +0 -52
  455. package/dist/types/array/zip.d.ts.map +0 -1
  456. package/dist/types/function/conditional.d.ts +0 -107
  457. package/dist/types/function/conditional.d.ts.map +0 -1
  458. package/dist/types/function/create-pipe.d.ts +0 -19
  459. package/dist/types/function/create-pipe.d.ts.map +0 -1
  460. package/dist/types/function/debounce.d.ts +0 -92
  461. package/dist/types/function/debounce.d.ts.map +0 -1
  462. package/dist/types/function/identity.d.ts +0 -10
  463. package/dist/types/function/identity.d.ts.map +0 -1
  464. package/dist/types/function/index.d.ts +0 -11
  465. package/dist/types/function/index.d.ts.map +0 -1
  466. package/dist/types/function/noop.d.ts +0 -10
  467. package/dist/types/function/noop.d.ts.map +0 -1
  468. package/dist/types/function/once.d.ts +0 -13
  469. package/dist/types/function/once.d.ts.map +0 -1
  470. package/dist/types/function/pipe.d.ts +0 -53
  471. package/dist/types/function/pipe.d.ts.map +0 -1
  472. package/dist/types/function/purry.d.ts +0 -48
  473. package/dist/types/function/purry.d.ts.map +0 -1
  474. package/dist/types/function/sleep.d.ts +0 -12
  475. package/dist/types/function/sleep.d.ts.map +0 -1
  476. package/dist/types/function/times.d.ts +0 -28
  477. package/dist/types/function/times.d.ts.map +0 -1
  478. package/dist/types/guard/has-sub-object.d.ts +0 -35
  479. package/dist/types/guard/has-sub-object.d.ts.map +0 -1
  480. package/dist/types/guard/index.d.ts +0 -20
  481. package/dist/types/guard/index.d.ts.map +0 -1
  482. package/dist/types/guard/is-array.d.ts +0 -15
  483. package/dist/types/guard/is-array.d.ts.map +0 -1
  484. package/dist/types/guard/is-boolean.d.ts +0 -15
  485. package/dist/types/guard/is-boolean.d.ts.map +0 -1
  486. package/dist/types/guard/is-date.d.ts +0 -13
  487. package/dist/types/guard/is-date.d.ts.map +0 -1
  488. package/dist/types/guard/is-deep-equal.d.ts +0 -50
  489. package/dist/types/guard/is-deep-equal.d.ts.map +0 -1
  490. package/dist/types/guard/is-defined.d.ts +0 -22
  491. package/dist/types/guard/is-defined.d.ts.map +0 -1
  492. package/dist/types/guard/is-empty.d.ts +0 -30
  493. package/dist/types/guard/is-empty.d.ts.map +0 -1
  494. package/dist/types/guard/is-error.d.ts +0 -15
  495. package/dist/types/guard/is-error.d.ts.map +0 -1
  496. package/dist/types/guard/is-function.d.ts +0 -15
  497. package/dist/types/guard/is-function.d.ts.map +0 -1
  498. package/dist/types/guard/is-included-in.d.ts +0 -54
  499. package/dist/types/guard/is-included-in.d.ts.map +0 -1
  500. package/dist/types/guard/is-nil.d.ts +0 -14
  501. package/dist/types/guard/is-nil.d.ts.map +0 -1
  502. package/dist/types/guard/is-non-null.d.ts +0 -15
  503. package/dist/types/guard/is-non-null.d.ts.map +0 -1
  504. package/dist/types/guard/is-not.d.ts +0 -15
  505. package/dist/types/guard/is-not.d.ts.map +0 -1
  506. package/dist/types/guard/is-number.d.ts +0 -14
  507. package/dist/types/guard/is-number.d.ts.map +0 -1
  508. package/dist/types/guard/is-object.d.ts +0 -28
  509. package/dist/types/guard/is-object.d.ts.map +0 -1
  510. package/dist/types/guard/is-promise.d.ts +0 -14
  511. package/dist/types/guard/is-promise.d.ts.map +0 -1
  512. package/dist/types/guard/is-string.d.ts +0 -14
  513. package/dist/types/guard/is-string.d.ts.map +0 -1
  514. package/dist/types/guard/is-symbol.d.ts +0 -14
  515. package/dist/types/guard/is-symbol.d.ts.map +0 -1
  516. package/dist/types/guard/is-truthy.d.ts +0 -17
  517. package/dist/types/guard/is-truthy.d.ts.map +0 -1
  518. package/dist/types/index.d.ts +0 -10
  519. package/dist/types/index.d.ts.map +0 -1
  520. package/dist/types/number/add.d.ts +0 -28
  521. package/dist/types/number/add.d.ts.map +0 -1
  522. package/dist/types/number/ceil.d.ts +0 -36
  523. package/dist/types/number/ceil.d.ts.map +0 -1
  524. package/dist/types/number/clamp.d.ts +0 -37
  525. package/dist/types/number/clamp.d.ts.map +0 -1
  526. package/dist/types/number/divide.d.ts +0 -26
  527. package/dist/types/number/divide.d.ts.map +0 -1
  528. package/dist/types/number/floor.d.ts +0 -36
  529. package/dist/types/number/floor.d.ts.map +0 -1
  530. package/dist/types/number/index.d.ts +0 -9
  531. package/dist/types/number/index.d.ts.map +0 -1
  532. package/dist/types/number/multiply.d.ts +0 -28
  533. package/dist/types/number/multiply.d.ts.map +0 -1
  534. package/dist/types/number/round.d.ts +0 -36
  535. package/dist/types/number/round.d.ts.map +0 -1
  536. package/dist/types/number/subtract.d.ts +0 -30
  537. package/dist/types/number/subtract.d.ts.map +0 -1
  538. package/dist/types/object/add-prop.d.ts +0 -30
  539. package/dist/types/object/add-prop.d.ts.map +0 -1
  540. package/dist/types/object/clone.d.ts +0 -10
  541. package/dist/types/object/clone.d.ts.map +0 -1
  542. package/dist/types/object/for-each-obj.d.ts +0 -44
  543. package/dist/types/object/for-each-obj.d.ts.map +0 -1
  544. package/dist/types/object/from-keys.d.ts +0 -42
  545. package/dist/types/object/from-keys.d.ts.map +0 -1
  546. package/dist/types/object/from-pairs.d.ts +0 -47
  547. package/dist/types/object/from-pairs.d.ts.map +0 -1
  548. package/dist/types/object/index.d.ts +0 -24
  549. package/dist/types/object/index.d.ts.map +0 -1
  550. package/dist/types/object/invert.d.ts +0 -30
  551. package/dist/types/object/invert.d.ts.map +0 -1
  552. package/dist/types/object/keys.d.ts +0 -39
  553. package/dist/types/object/keys.d.ts.map +0 -1
  554. package/dist/types/object/map-keys.d.ts +0 -24
  555. package/dist/types/object/map-keys.d.ts.map +0 -1
  556. package/dist/types/object/map-values.d.ts +0 -25
  557. package/dist/types/object/map-values.d.ts.map +0 -1
  558. package/dist/types/object/merge-deep.d.ts +0 -32
  559. package/dist/types/object/merge-deep.d.ts.map +0 -1
  560. package/dist/types/object/merge.d.ts +0 -52
  561. package/dist/types/object/merge.d.ts.map +0 -1
  562. package/dist/types/object/omit-by.d.ts +0 -22
  563. package/dist/types/object/omit-by.d.ts.map +0 -1
  564. package/dist/types/object/omit.d.ts +0 -24
  565. package/dist/types/object/omit.d.ts.map +0 -1
  566. package/dist/types/object/path-or.d.ts +0 -78
  567. package/dist/types/object/path-or.d.ts.map +0 -1
  568. package/dist/types/object/pick-by.d.ts +0 -24
  569. package/dist/types/object/pick-by.d.ts.map +0 -1
  570. package/dist/types/object/pick.d.ts +0 -22
  571. package/dist/types/object/pick.d.ts.map +0 -1
  572. package/dist/types/object/prop.d.ts +0 -11
  573. package/dist/types/object/prop.d.ts.map +0 -1
  574. package/dist/types/object/set-path.d.ts +0 -31
  575. package/dist/types/object/set-path.d.ts.map +0 -1
  576. package/dist/types/object/set.d.ts +0 -26
  577. package/dist/types/object/set.d.ts.map +0 -1
  578. package/dist/types/object/swap-props.d.ts +0 -44
  579. package/dist/types/object/swap-props.d.ts.map +0 -1
  580. package/dist/types/object/to-pairs.d.ts +0 -33
  581. package/dist/types/object/to-pairs.d.ts.map +0 -1
  582. package/dist/types/object/values.d.ts +0 -21
  583. package/dist/types/object/values.d.ts.map +0 -1
  584. package/dist/types/string/cases-types.d.ts +0 -36
  585. package/dist/types/string/cases-types.d.ts.map +0 -1
  586. package/dist/types/string/cases.d.ts +0 -22
  587. package/dist/types/string/cases.d.ts.map +0 -1
  588. package/dist/types/string/human-readable-file-size.d.ts +0 -13
  589. package/dist/types/string/human-readable-file-size.d.ts.map +0 -1
  590. package/dist/types/string/index.d.ts +0 -6
  591. package/dist/types/string/index.d.ts.map +0 -1
  592. package/dist/types/string/random-string.d.ts +0 -15
  593. package/dist/types/string/random-string.d.ts.map +0 -1
  594. package/dist/types/string/slugify.d.ts +0 -12
  595. package/dist/types/string/slugify.d.ts.map +0 -1
  596. package/dist/types/string/string-to-path.d.ts +0 -11
  597. package/dist/types/string/string-to-path.d.ts.map +0 -1
  598. package/dist/types/type/index.d.ts +0 -2
  599. package/dist/types/type/index.d.ts.map +0 -1
  600. package/dist/types/type/type.d.ts +0 -19
  601. package/dist/types/type/type.d.ts.map +0 -1
  602. package/dist/types/utils/binary-search-cutoff-index.d.ts +0 -2
  603. package/dist/types/utils/binary-search-cutoff-index.d.ts.map +0 -1
  604. package/dist/types/utils/heap.d.ts +0 -24
  605. package/dist/types/utils/heap.d.ts.map +0 -1
  606. package/dist/types/utils/narrow.d.ts +0 -52
  607. package/dist/types/utils/narrow.d.ts.map +0 -1
  608. package/dist/types/utils/paths.d.ts +0 -9
  609. package/dist/types/utils/paths.d.ts.map +0 -1
  610. package/dist/types/utils/purry-on.d.ts +0 -7
  611. package/dist/types/utils/purry-on.d.ts.map +0 -1
  612. package/dist/types/utils/purry-order-rules.d.ts +0 -52
  613. package/dist/types/utils/purry-order-rules.d.ts.map +0 -1
  614. package/dist/types/utils/quick-select.d.ts +0 -18
  615. package/dist/types/utils/quick-select.d.ts.map +0 -1
  616. package/dist/types/utils/reduce-lazy.d.ts +0 -3
  617. package/dist/types/utils/reduce-lazy.d.ts.map +0 -1
  618. package/dist/types/utils/swap-in-place.d.ts +0 -5
  619. package/dist/types/utils/swap-in-place.d.ts.map +0 -1
  620. package/dist/types/utils/to-lazy-indexed.d.ts +0 -4
  621. package/dist/types/utils/to-lazy-indexed.d.ts.map +0 -1
  622. package/dist/types/utils/to-single.d.ts +0 -6
  623. package/dist/types/utils/to-single.d.ts.map +0 -1
  624. package/dist/types/utils/types.d.ts +0 -32
  625. package/dist/types/utils/types.d.ts.map +0 -1
  626. package/dist/types/utils/with-precision.d.ts +0 -2
  627. package/dist/types/utils/with-precision.d.ts.map +0 -1
@@ -1,9 +0,0 @@
1
- import { purry } from '../function/purry';
2
- export function splitAt(...args) {
3
- return purry(splitAt_, args);
4
- }
5
- function splitAt_(array, index) {
6
- const copy = array.slice();
7
- const tail = copy.splice(index);
8
- return [copy, tail];
9
- }
@@ -1,13 +0,0 @@
1
- import { purry } from '../function/purry';
2
- import { splitAt } from './split-at';
3
- export function splitWhen(...args) {
4
- return purry(splitWhen_, args);
5
- }
6
- function splitWhen_(array, fn) {
7
- for (const [index, item] of array.entries()) {
8
- if (fn(item)) {
9
- return splitAt(array, index);
10
- }
11
- }
12
- return [array.slice(), []];
13
- }
@@ -1,20 +0,0 @@
1
- import { purry } from '../function/purry';
2
- function sumBy_(indexed) {
3
- return (array, fn) => {
4
- let sum = 0;
5
- for (const [index, item] of array.entries()) {
6
- const summand = indexed ? fn(item, index, array) : fn(item);
7
- sum += summand;
8
- }
9
- return sum;
10
- };
11
- }
12
- export function sumBy(...args) {
13
- return purry(sumBy_(false), args);
14
- }
15
- (function (sumBy) {
16
- function indexed(...args) {
17
- return purry(sumBy_(true), args);
18
- }
19
- sumBy.indexed = indexed;
20
- })(sumBy || (sumBy = {}));
@@ -1,30 +0,0 @@
1
- import { purry } from '../function/purry';
2
- export function swapIndices(...args) {
3
- return purry(swapIndices_, args);
4
- }
5
- function swapIndices_(item, index1, index2) {
6
- return typeof item === 'string'
7
- ? swapString_(item, index1, index2)
8
- : swapArray_(item, index1, index2);
9
- }
10
- function swapArray_(item, index1, index2) {
11
- const result = item.slice();
12
- if (Number.isNaN(index1) || Number.isNaN(index2)) {
13
- return result;
14
- }
15
- const positiveIndexA = index1 < 0 ? item.length + index1 : index1;
16
- const positiveIndexB = index2 < 0 ? item.length + index2 : index2;
17
- if (positiveIndexA < 0 || positiveIndexA > item.length) {
18
- return result;
19
- }
20
- if (positiveIndexB < 0 || positiveIndexB > item.length) {
21
- return result;
22
- }
23
- result[positiveIndexA] = item[positiveIndexB];
24
- result[positiveIndexB] = item[positiveIndexA];
25
- return result;
26
- }
27
- function swapString_(item, index1, index2) {
28
- const result = swapArray_(item.split(''), index1, index2);
29
- return result.join('');
30
- }
@@ -1,20 +0,0 @@
1
- import { heapMaybeInsert, heapify } from '../utils/heap';
2
- import { purryOrderRulesWithArgument } from '../utils/purry-order-rules';
3
- export function takeFirstBy(...args) {
4
- return purryOrderRulesWithArgument(takeFirstByImplementation, args);
5
- }
6
- function takeFirstByImplementation(data, compareFn, n) {
7
- if (n <= 0) {
8
- return [];
9
- }
10
- if (n >= data.length) {
11
- return data.slice();
12
- }
13
- const heap = data.slice(0, n);
14
- heapify(heap, compareFn);
15
- const rest = data.slice(n);
16
- for (const item of rest) {
17
- heapMaybeInsert(heap, compareFn, item);
18
- }
19
- return heap;
20
- }
@@ -1,14 +0,0 @@
1
- import { purry } from '../function/purry';
2
- export function takeWhile(...args) {
3
- return purry(takeWhile_, args);
4
- }
5
- function takeWhile_(array, fn) {
6
- const ret = [];
7
- for (const item of array) {
8
- if (!fn(item)) {
9
- break;
10
- }
11
- ret.push(item);
12
- }
13
- return ret;
14
- }
@@ -1,21 +0,0 @@
1
- import { purry } from '../function/purry';
2
- import { reduceLazy } from '../utils/reduce-lazy';
3
- export function take(...args) {
4
- return purry(take_, args, take.lazy);
5
- }
6
- function take_(array, n) {
7
- return reduceLazy(array, take.lazy(n));
8
- }
9
- (function (take) {
10
- function lazy(n) {
11
- if (n <= 0) {
12
- return () => ({ done: true, hasNext: false });
13
- }
14
- let remaining = n;
15
- return (value) => {
16
- remaining -= 1;
17
- return { done: remaining <= 0, hasNext: true, next: value };
18
- };
19
- }
20
- take.lazy = lazy;
21
- })(take || (take = {}));
@@ -1,19 +0,0 @@
1
- import { purry } from '../function/purry';
2
- import { reduceLazy } from '../utils/reduce-lazy';
3
- export function uniqBy(...args) {
4
- return purry(uniqBy_, args, lazyUniqBy);
5
- }
6
- function uniqBy_(array, transformer) {
7
- return reduceLazy(array, lazyUniqBy(transformer));
8
- }
9
- function lazyUniqBy(transformer) {
10
- const set = new Set();
11
- return (value) => {
12
- const appliedItem = transformer(value);
13
- if (set.has(appliedItem)) {
14
- return { done: false, hasNext: false };
15
- }
16
- set.add(appliedItem);
17
- return { done: false, hasNext: true, next: value };
18
- };
19
- }
@@ -1,19 +0,0 @@
1
- import { purry } from '../function/purry';
2
- import { reduceLazy } from '../utils/reduce-lazy';
3
- import { toLazyIndexed } from '../utils/to-lazy-indexed';
4
- export function uniqWith(...args) {
5
- return purry(uniqWith_, args, uniqWith.lazy);
6
- }
7
- function uniqWith_(array, isEquals) {
8
- const lazy = uniqWith.lazy(isEquals);
9
- return reduceLazy(array, lazy, true);
10
- }
11
- function lazy_(isEquals) {
12
- return (value, index, array) => array !== undefined
13
- && array.findIndex((otherValue) => isEquals(value, otherValue)) === index
14
- ? { done: false, hasNext: true, next: value }
15
- : { done: false, hasNext: false };
16
- }
17
- (function (uniqWith) {
18
- uniqWith.lazy = toLazyIndexed(lazy_);
19
- })(uniqWith || (uniqWith = {}));
@@ -1,21 +0,0 @@
1
- import { purry } from '../function/purry';
2
- import { reduceLazy } from '../utils/reduce-lazy';
3
- export function uniq(...args) {
4
- return purry(uniq_, args, uniq.lazy);
5
- }
6
- function uniq_(array) {
7
- return reduceLazy(array, uniq.lazy());
8
- }
9
- (function (uniq) {
10
- function lazy() {
11
- const set = new Set();
12
- return (value) => {
13
- if (set.has(value)) {
14
- return { done: false, hasNext: false };
15
- }
16
- set.add(value);
17
- return { done: false, hasNext: true, next: value };
18
- };
19
- }
20
- uniq.lazy = lazy;
21
- })(uniq || (uniq = {}));
@@ -1,12 +0,0 @@
1
- import { purry } from '../function/purry';
2
- export function zipObj(...args) {
3
- return purry(zipObj_, args);
4
- }
5
- function zipObj_(first, second) {
6
- const resultLength = first.length > second.length ? second.length : first.length;
7
- const result = {};
8
- for (let i = 0; i < resultLength; i++) {
9
- result[first[i]] = second[i];
10
- }
11
- return result;
12
- }
@@ -1,19 +0,0 @@
1
- export function zipWith(arg0, arg1, arg2) {
2
- if (typeof arg0 === 'function') {
3
- return arg1 === undefined
4
- ? (f, s) => zipWith_(f, s, arg0)
5
- : (f) => zipWith_(f, arg1, arg0);
6
- }
7
- if (arg1 === undefined || arg2 === undefined) {
8
- throw new Error('zipWith: Missing arguments in dataFirst function call');
9
- }
10
- return zipWith_(arg0, arg1, arg2);
11
- }
12
- function zipWith_(first, second, fn) {
13
- const resultLength = first.length > second.length ? second.length : first.length;
14
- const result = [];
15
- for (let i = 0; i < resultLength; i++) {
16
- result.push(fn(first[i], second[i]));
17
- }
18
- return result;
19
- }
@@ -1,15 +0,0 @@
1
- import { purry } from '../function/purry';
2
- export function zip(...args) {
3
- return purry(zip_, args);
4
- }
5
- function zip_(first, second) {
6
- const resultLength = first.length > second.length ? second.length : first.length;
7
- const result = [];
8
- for (let i = 0; i < resultLength; i++) {
9
- result.push([first[i], second[i]]);
10
- }
11
- return result;
12
- }
13
- (function (zip) {
14
- zip.strict = zip;
15
- })(zip || (zip = {}));
@@ -1,30 +0,0 @@
1
- import { purryOn } from '../utils/purry-on';
2
- export function conditional(...args) {
3
- return purryOn(isCase, conditionalImplementation, args);
4
- }
5
- function conditionalImplementation(data, ...cases) {
6
- for (const [when, then] of cases) {
7
- if (when(data)) {
8
- return then(data);
9
- }
10
- }
11
- throw new Error('conditional: data failed for all cases');
12
- }
13
- function isCase(maybeCase) {
14
- if (!Array.isArray(maybeCase)) {
15
- return false;
16
- }
17
- const [when, then, ...rest] = maybeCase;
18
- return (typeof when === 'function'
19
- && when.length <= 1
20
- && typeof then === 'function'
21
- && then.length <= 1
22
- && rest.length === 0);
23
- }
24
- const trivialDefaultCase = () => undefined;
25
- (function (conditional) {
26
- function defaultCase(then = trivialDefaultCase) {
27
- return [() => true, then];
28
- }
29
- conditional.defaultCase = defaultCase;
30
- })(conditional || (conditional = {}));
@@ -1,4 +0,0 @@
1
- import { pipe } from './pipe';
2
- export function createPipe(...operations) {
3
- return (value) => pipe(value, ...operations);
4
- }
@@ -1,84 +0,0 @@
1
- export function debounce(func, { maxWaitMs, timing = 'trailing', waitMs, }) {
2
- if (maxWaitMs !== undefined && waitMs !== undefined && maxWaitMs < waitMs) {
3
- throw new Error(`debounce: maxWaitMs (${maxWaitMs}) cannot be less than waitMs (${waitMs})`);
4
- }
5
- let coolDownTimeoutId;
6
- let maxWaitTimeoutId;
7
- let latestCallArgs;
8
- let result;
9
- function handleDebouncedCall(args) {
10
- latestCallArgs = args;
11
- if (maxWaitMs !== undefined && maxWaitTimeoutId === undefined) {
12
- maxWaitTimeoutId = setTimeout(handleInvoke, maxWaitMs);
13
- }
14
- }
15
- function handleInvoke() {
16
- if (latestCallArgs === undefined) {
17
- return;
18
- }
19
- if (maxWaitTimeoutId !== undefined) {
20
- const timeoutId = maxWaitTimeoutId;
21
- maxWaitTimeoutId = undefined;
22
- clearTimeout(timeoutId);
23
- }
24
- const args = latestCallArgs;
25
- latestCallArgs = undefined;
26
- result = func(...args);
27
- }
28
- function handleCoolDownEnd() {
29
- if (coolDownTimeoutId === undefined) {
30
- return;
31
- }
32
- const timeoutId = coolDownTimeoutId;
33
- coolDownTimeoutId = undefined;
34
- clearTimeout(timeoutId);
35
- if (latestCallArgs !== undefined) {
36
- handleInvoke();
37
- }
38
- }
39
- return {
40
- get cachedValue() {
41
- return result;
42
- },
43
- call: (...args) => {
44
- if (coolDownTimeoutId === undefined) {
45
- if (timing === 'trailing') {
46
- handleDebouncedCall(args);
47
- }
48
- else {
49
- result = func(...args);
50
- }
51
- }
52
- else {
53
- if (timing !== 'leading') {
54
- handleDebouncedCall(args);
55
- }
56
- const timeoutId = coolDownTimeoutId;
57
- coolDownTimeoutId = undefined;
58
- clearTimeout(timeoutId);
59
- }
60
- coolDownTimeoutId = setTimeout(handleCoolDownEnd, waitMs ?? maxWaitMs ?? 0);
61
- return result;
62
- },
63
- cancel: () => {
64
- if (coolDownTimeoutId !== undefined) {
65
- const timeoutId = coolDownTimeoutId;
66
- coolDownTimeoutId = undefined;
67
- clearTimeout(timeoutId);
68
- }
69
- if (maxWaitTimeoutId !== undefined) {
70
- const timeoutId = maxWaitTimeoutId;
71
- maxWaitTimeoutId = undefined;
72
- clearTimeout(timeoutId);
73
- }
74
- latestCallArgs = undefined;
75
- },
76
- flush: () => {
77
- handleCoolDownEnd();
78
- return result;
79
- },
80
- get isPending() {
81
- return coolDownTimeoutId !== undefined;
82
- },
83
- };
84
- }
@@ -1,3 +0,0 @@
1
- export function identity(value) {
2
- return value;
3
- }
@@ -1,10 +0,0 @@
1
- export * from './conditional';
2
- export * from './create-pipe';
3
- export * from './identity';
4
- export * from './noop';
5
- export * from './once';
6
- export * from './debounce';
7
- export * from './pipe';
8
- export * from './purry';
9
- export * from './sleep';
10
- export * from './times';
@@ -1,3 +0,0 @@
1
- export function noop() {
2
- return undefined;
3
- }
@@ -1,11 +0,0 @@
1
- export function once(fn) {
2
- let called = false;
3
- let ret;
4
- return () => {
5
- if (!called) {
6
- ret = fn();
7
- called = true;
8
- }
9
- return ret;
10
- };
11
- }
@@ -1,96 +0,0 @@
1
- export function pipe(input, ...operations) {
2
- let output = input;
3
- const lazyOperations = operations.map((op) => 'lazy' in op ? prepareLazyOperation(op) : undefined);
4
- let operationIndex = 0;
5
- while (operationIndex < operations.length) {
6
- const lazyOperation = lazyOperations[operationIndex];
7
- if (lazyOperation === undefined || !isIterable(output)) {
8
- const operation = operations[operationIndex];
9
- output = operation(output);
10
- operationIndex += 1;
11
- continue;
12
- }
13
- const lazySequence = [];
14
- for (let index = operationIndex; index < operations.length; index++) {
15
- const lazyOp = lazyOperations[index];
16
- if (lazyOp === undefined) {
17
- break;
18
- }
19
- lazySequence.push(lazyOp);
20
- if (lazyOp.isSingle) {
21
- break;
22
- }
23
- }
24
- const accumulator = [];
25
- const iterator = output[Symbol.iterator]();
26
- while (true) {
27
- const result = iterator.next();
28
- if (result.done ?? false) {
29
- break;
30
- }
31
- const shouldExitEarly = processItem_(result.value, accumulator, lazySequence);
32
- if (shouldExitEarly) {
33
- break;
34
- }
35
- }
36
- const { isSingle } = lazySequence[lazySequence.length - 1];
37
- output = isSingle ? accumulator[0] : accumulator;
38
- operationIndex += lazySequence.length;
39
- }
40
- return output;
41
- }
42
- function processItem_(item, accumulator, lazySequence) {
43
- if (lazySequence.length === 0) {
44
- accumulator.push(item);
45
- return false;
46
- }
47
- let currentItem = item;
48
- let lazyResult = { done: false, hasNext: false };
49
- let isDone = false;
50
- for (const [operationsIndex, lazyFn] of lazySequence.entries()) {
51
- const { index, isIndexed, items } = lazyFn;
52
- items.push(currentItem);
53
- lazyResult = isIndexed
54
- ? lazyFn(currentItem, index, items)
55
- : lazyFn(currentItem);
56
- lazyFn.index += 1;
57
- if (lazyResult.hasNext) {
58
- if (lazyResult.hasMany ?? false) {
59
- for (const subItem of lazyResult.next) {
60
- const subResult = processItem_(subItem, accumulator, lazySequence.slice(operationsIndex + 1));
61
- if (subResult) {
62
- return true;
63
- }
64
- }
65
- return false;
66
- }
67
- currentItem = lazyResult.next;
68
- }
69
- if (!lazyResult.hasNext) {
70
- break;
71
- }
72
- if (lazyResult.done) {
73
- isDone = true;
74
- }
75
- }
76
- if (lazyResult.hasNext) {
77
- accumulator.push(currentItem);
78
- }
79
- return isDone;
80
- }
81
- function prepareLazyOperation(op) {
82
- const { lazy, lazyArgs } = op;
83
- const fn = lazy(...(lazyArgs ?? []));
84
- return Object.assign(fn, {
85
- index: 0,
86
- isIndexed: lazy.indexed,
87
- isSingle: lazy.single,
88
- items: [],
89
- });
90
- }
91
- function isIterable(something) {
92
- return (typeof something === 'string'
93
- || (typeof something === 'object'
94
- && something !== null
95
- && Symbol.iterator in something));
96
- }
@@ -1,15 +0,0 @@
1
- export function purry(fn, args, lazyFactory) {
2
- const callArgs = Array.from(args);
3
- const diff = fn.length - args.length;
4
- if (diff === 0) {
5
- return fn(...callArgs);
6
- }
7
- if (diff === 1) {
8
- const ret = (data) => fn(data, ...callArgs);
9
- const lazy = lazyFactory ?? fn.lazy;
10
- return lazy === undefined
11
- ? ret
12
- : Object.assign(ret, { lazy, lazyArgs: args });
13
- }
14
- throw new Error('Wrong number of arguments');
15
- }
@@ -1,5 +0,0 @@
1
- export function sleep(timeout) {
2
- return new Promise((resolve) => {
3
- setTimeout(resolve, timeout);
4
- });
5
- }
@@ -1,14 +0,0 @@
1
- import { purry } from './purry';
2
- export function times(...args) {
3
- return purry(times_, args);
4
- }
5
- function times_(count, fn) {
6
- if (count < 0) {
7
- throw new RangeError('n must be a non-negative number');
8
- }
9
- const res = [];
10
- for (let i = 0; i < count; i++) {
11
- res.push(fn(i));
12
- }
13
- return res;
14
- }
@@ -1,15 +0,0 @@
1
- import { purry } from '../function/purry';
2
- export function hasSubObject(...args) {
3
- return purry(_hasSubObject, args);
4
- }
5
- function _hasSubObject(data, subObject) {
6
- for (const key of Object.keys(subObject)) {
7
- if (!Object.prototype.hasOwnProperty.call(data, key)) {
8
- return false;
9
- }
10
- if (!isDeepEqual(subObject[key], data[key])) {
11
- return false;
12
- }
13
- }
14
- return true;
15
- }
@@ -1,19 +0,0 @@
1
- export * from './has-sub-object';
2
- export * from './is-array';
3
- export * from './is-boolean';
4
- export * from './is-date';
5
- export * from './is-deep-equal';
6
- export * from './is-defined';
7
- export * from './is-empty';
8
- export * from './is-error';
9
- export * from './is-function';
10
- export * from './is-included-in';
11
- export * from './is-nil';
12
- export * from './is-non-null';
13
- export * from './is-not';
14
- export * from './is-number';
15
- export * from './is-object';
16
- export * from './is-promise';
17
- export * from './is-string';
18
- export * from './is-symbol';
19
- export * from './is-truthy';
@@ -1,3 +0,0 @@
1
- export function isArray(data) {
2
- return Array.isArray(data);
3
- }
@@ -1,3 +0,0 @@
1
- export function isBoolean(data) {
2
- return typeof data === 'boolean';
3
- }
@@ -1,3 +0,0 @@
1
- export function isDate(data) {
2
- return data instanceof Date;
3
- }
@@ -1,51 +0,0 @@
1
- import { purry } from '../function/purry';
2
- export function isDeepEqual(...args) {
3
- return purry(isDeepEqualImplementation, args);
4
- }
5
- function isDeepEqualImplementation(data, other) {
6
- if (data === other) {
7
- return true;
8
- }
9
- if (typeof data === 'number' && typeof other === 'number') {
10
- return data !== data && other !== other;
11
- }
12
- if (typeof data !== 'object' || typeof other !== 'object') {
13
- return false;
14
- }
15
- if (data === null || other === null) {
16
- return false;
17
- }
18
- if (Object.getPrototypeOf(data) !== Object.getPrototypeOf(other)) {
19
- return false;
20
- }
21
- if (Array.isArray(data)) {
22
- if (data.length !== other.length) {
23
- return false;
24
- }
25
- for (let i = 0; i < data.length; i++) {
26
- if (!isDeepEqualImplementation(data[i], other[i])) {
27
- return false;
28
- }
29
- }
30
- return true;
31
- }
32
- if (data instanceof Date) {
33
- return data.getTime() === other.getTime();
34
- }
35
- if (data instanceof RegExp) {
36
- return data.toString() === other.toString();
37
- }
38
- const keys = Object.keys(data);
39
- if (keys.length !== Object.keys(other).length) {
40
- return false;
41
- }
42
- for (const key of keys) {
43
- if (!Object.prototype.hasOwnProperty.call(other, key)) {
44
- return false;
45
- }
46
- if (!isDeepEqualImplementation(data[key], other[key])) {
47
- return false;
48
- }
49
- }
50
- return true;
51
- }
@@ -1,9 +0,0 @@
1
- export function isDefined(data) {
2
- return data !== undefined && data !== null;
3
- }
4
- (function (isDefined) {
5
- function strict(data) {
6
- return data !== undefined;
7
- }
8
- isDefined.strict = strict;
9
- })(isDefined || (isDefined = {}));
@@ -1,15 +0,0 @@
1
- import { isArray } from './is-array';
2
- import { isObject } from './is-object';
3
- import { isString } from './is-string';
4
- export function isEmpty(data) {
5
- if (data === undefined) {
6
- return true;
7
- }
8
- if (isArray(data) || isString(data)) {
9
- return data.length === 0;
10
- }
11
- if (isObject(data)) {
12
- return Object.keys(data).length === 0;
13
- }
14
- return false;
15
- }