fp-pack 0.1.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 (927) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +664 -0
  3. package/dist/fp-pack-stream.umd.js +2 -0
  4. package/dist/fp-pack-stream.umd.js.map +1 -0
  5. package/dist/fp-pack.umd.js +2 -0
  6. package/dist/fp-pack.umd.js.map +1 -0
  7. package/dist/implement/array/append.d.ts +7 -0
  8. package/dist/implement/array/append.d.ts.map +1 -0
  9. package/dist/implement/array/append.mjs +9 -0
  10. package/dist/implement/array/append.mjs.map +1 -0
  11. package/dist/implement/array/chunk.d.ts +7 -0
  12. package/dist/implement/array/chunk.d.ts.map +1 -0
  13. package/dist/implement/array/chunk.mjs +15 -0
  14. package/dist/implement/array/chunk.mjs.map +1 -0
  15. package/dist/implement/array/concat.d.ts +7 -0
  16. package/dist/implement/array/concat.d.ts.map +1 -0
  17. package/dist/implement/array/concat.mjs +9 -0
  18. package/dist/implement/array/concat.mjs.map +1 -0
  19. package/dist/implement/array/drop.d.ts +7 -0
  20. package/dist/implement/array/drop.d.ts.map +1 -0
  21. package/dist/implement/array/drop.mjs +10 -0
  22. package/dist/implement/array/drop.mjs.map +1 -0
  23. package/dist/implement/array/dropWhile.d.ts +7 -0
  24. package/dist/implement/array/dropWhile.d.ts.map +1 -0
  25. package/dist/implement/array/dropWhile.mjs +13 -0
  26. package/dist/implement/array/dropWhile.mjs.map +1 -0
  27. package/dist/implement/array/every.d.ts +7 -0
  28. package/dist/implement/array/every.d.ts.map +1 -0
  29. package/dist/implement/array/every.mjs +9 -0
  30. package/dist/implement/array/every.mjs.map +1 -0
  31. package/dist/implement/array/filter.d.ts +7 -0
  32. package/dist/implement/array/filter.d.ts.map +1 -0
  33. package/dist/implement/array/filter.mjs +9 -0
  34. package/dist/implement/array/filter.mjs.map +1 -0
  35. package/dist/implement/array/find.d.ts +7 -0
  36. package/dist/implement/array/find.d.ts.map +1 -0
  37. package/dist/implement/array/find.mjs +9 -0
  38. package/dist/implement/array/find.mjs.map +1 -0
  39. package/dist/implement/array/flatMap.d.ts +7 -0
  40. package/dist/implement/array/flatMap.d.ts.map +1 -0
  41. package/dist/implement/array/flatMap.mjs +9 -0
  42. package/dist/implement/array/flatMap.mjs.map +1 -0
  43. package/dist/implement/array/flatten.d.ts +6 -0
  44. package/dist/implement/array/flatten.d.ts.map +1 -0
  45. package/dist/implement/array/flatten.mjs +7 -0
  46. package/dist/implement/array/flatten.mjs.map +1 -0
  47. package/dist/implement/array/flattenDeep.d.ts +6 -0
  48. package/dist/implement/array/flattenDeep.d.ts.map +1 -0
  49. package/dist/implement/array/flattenDeep.mjs +11 -0
  50. package/dist/implement/array/flattenDeep.mjs.map +1 -0
  51. package/dist/implement/array/groupBy.d.ts +7 -0
  52. package/dist/implement/array/groupBy.d.ts.map +1 -0
  53. package/dist/implement/array/groupBy.mjs +12 -0
  54. package/dist/implement/array/groupBy.mjs.map +1 -0
  55. package/dist/implement/array/head.d.ts +6 -0
  56. package/dist/implement/array/head.d.ts.map +1 -0
  57. package/dist/implement/array/head.mjs +7 -0
  58. package/dist/implement/array/head.mjs.map +1 -0
  59. package/dist/implement/array/index.d.ts +34 -0
  60. package/dist/implement/array/index.d.ts.map +1 -0
  61. package/dist/implement/array/init.d.ts +6 -0
  62. package/dist/implement/array/init.d.ts.map +1 -0
  63. package/dist/implement/array/init.mjs +7 -0
  64. package/dist/implement/array/init.mjs.map +1 -0
  65. package/dist/implement/array/last.d.ts +6 -0
  66. package/dist/implement/array/last.d.ts.map +1 -0
  67. package/dist/implement/array/last.mjs +8 -0
  68. package/dist/implement/array/last.mjs.map +1 -0
  69. package/dist/implement/array/map.d.ts +7 -0
  70. package/dist/implement/array/map.d.ts.map +1 -0
  71. package/dist/implement/array/map.mjs +9 -0
  72. package/dist/implement/array/map.mjs.map +1 -0
  73. package/dist/implement/array/partition.d.ts +7 -0
  74. package/dist/implement/array/partition.d.ts.map +1 -0
  75. package/dist/implement/array/partition.mjs +12 -0
  76. package/dist/implement/array/partition.mjs.map +1 -0
  77. package/dist/implement/array/prepend.d.ts +7 -0
  78. package/dist/implement/array/prepend.d.ts.map +1 -0
  79. package/dist/implement/array/prepend.mjs +9 -0
  80. package/dist/implement/array/prepend.mjs.map +1 -0
  81. package/dist/implement/array/range.d.ts +6 -0
  82. package/dist/implement/array/range.d.ts.map +1 -0
  83. package/dist/implement/array/range.mjs +12 -0
  84. package/dist/implement/array/range.mjs.map +1 -0
  85. package/dist/implement/array/reduce.d.ts +8 -0
  86. package/dist/implement/array/reduce.d.ts.map +1 -0
  87. package/dist/implement/array/reduce.mjs +9 -0
  88. package/dist/implement/array/reduce.mjs.map +1 -0
  89. package/dist/implement/array/scan.d.ts +8 -0
  90. package/dist/implement/array/scan.d.ts.map +1 -0
  91. package/dist/implement/array/scan.mjs +13 -0
  92. package/dist/implement/array/scan.mjs.map +1 -0
  93. package/dist/implement/array/some.d.ts +7 -0
  94. package/dist/implement/array/some.d.ts.map +1 -0
  95. package/dist/implement/array/some.mjs +11 -0
  96. package/dist/implement/array/some.mjs.map +1 -0
  97. package/dist/implement/array/sort.d.ts +7 -0
  98. package/dist/implement/array/sort.d.ts.map +1 -0
  99. package/dist/implement/array/sort.mjs +9 -0
  100. package/dist/implement/array/sort.mjs.map +1 -0
  101. package/dist/implement/array/sortBy.d.ts +7 -0
  102. package/dist/implement/array/sortBy.d.ts.map +1 -0
  103. package/dist/implement/array/sortBy.mjs +12 -0
  104. package/dist/implement/array/sortBy.mjs.map +1 -0
  105. package/dist/implement/array/tail.d.ts +6 -0
  106. package/dist/implement/array/tail.d.ts.map +1 -0
  107. package/dist/implement/array/tail.mjs +7 -0
  108. package/dist/implement/array/tail.mjs.map +1 -0
  109. package/dist/implement/array/take.d.ts +7 -0
  110. package/dist/implement/array/take.d.ts.map +1 -0
  111. package/dist/implement/array/take.mjs +9 -0
  112. package/dist/implement/array/take.mjs.map +1 -0
  113. package/dist/implement/array/takeWhile.d.ts +7 -0
  114. package/dist/implement/array/takeWhile.d.ts.map +1 -0
  115. package/dist/implement/array/takeWhile.mjs +15 -0
  116. package/dist/implement/array/takeWhile.mjs.map +1 -0
  117. package/dist/implement/array/uniq.d.ts +6 -0
  118. package/dist/implement/array/uniq.d.ts.map +1 -0
  119. package/dist/implement/array/uniq.mjs +10 -0
  120. package/dist/implement/array/uniq.mjs.map +1 -0
  121. package/dist/implement/array/uniqBy.d.ts +7 -0
  122. package/dist/implement/array/uniqBy.d.ts.map +1 -0
  123. package/dist/implement/array/uniqBy.mjs +14 -0
  124. package/dist/implement/array/uniqBy.mjs.map +1 -0
  125. package/dist/implement/array/unzip.d.ts +6 -0
  126. package/dist/implement/array/unzip.d.ts.map +1 -0
  127. package/dist/implement/array/unzip.mjs +10 -0
  128. package/dist/implement/array/unzip.mjs.map +1 -0
  129. package/dist/implement/array/zip.d.ts +7 -0
  130. package/dist/implement/array/zip.d.ts.map +1 -0
  131. package/dist/implement/array/zip.mjs +12 -0
  132. package/dist/implement/array/zip.mjs.map +1 -0
  133. package/dist/implement/array/zipIndex.d.ts +6 -0
  134. package/dist/implement/array/zipIndex.d.ts.map +1 -0
  135. package/dist/implement/array/zipIndex.mjs +7 -0
  136. package/dist/implement/array/zipIndex.mjs.map +1 -0
  137. package/dist/implement/array/zipWith.d.ts +8 -0
  138. package/dist/implement/array/zipWith.d.ts.map +1 -0
  139. package/dist/implement/array/zipWith.mjs +12 -0
  140. package/dist/implement/array/zipWith.mjs.map +1 -0
  141. package/dist/implement/async/debounce.d.ts +7 -0
  142. package/dist/implement/async/debounce.d.ts.map +1 -0
  143. package/dist/implement/async/debounce.mjs +16 -0
  144. package/dist/implement/async/debounce.mjs.map +1 -0
  145. package/dist/implement/async/debounceLeading.d.ts +7 -0
  146. package/dist/implement/async/debounceLeading.d.ts.map +1 -0
  147. package/dist/implement/async/debounceLeading.mjs +14 -0
  148. package/dist/implement/async/debounceLeading.mjs.map +1 -0
  149. package/dist/implement/async/debounceLeadingTrailing.d.ts +7 -0
  150. package/dist/implement/async/debounceLeadingTrailing.d.ts.map +1 -0
  151. package/dist/implement/async/debounceLeadingTrailing.mjs +19 -0
  152. package/dist/implement/async/debounceLeadingTrailing.mjs.map +1 -0
  153. package/dist/implement/async/delay.d.ts +4 -0
  154. package/dist/implement/async/delay.d.ts.map +1 -0
  155. package/dist/implement/async/delay.mjs +9 -0
  156. package/dist/implement/async/delay.mjs.map +1 -0
  157. package/dist/implement/async/index.d.ts +10 -0
  158. package/dist/implement/async/index.d.ts.map +1 -0
  159. package/dist/implement/async/pipeAsync.d.ts +14 -0
  160. package/dist/implement/async/pipeAsync.d.ts.map +1 -0
  161. package/dist/implement/async/pipeAsync.mjs +12 -0
  162. package/dist/implement/async/pipeAsync.mjs.map +1 -0
  163. package/dist/implement/async/pipeAsyncSideEffect.d.ts +21 -0
  164. package/dist/implement/async/pipeAsyncSideEffect.d.ts.map +1 -0
  165. package/dist/implement/async/pipeAsyncSideEffect.mjs +16 -0
  166. package/dist/implement/async/pipeAsyncSideEffect.mjs.map +1 -0
  167. package/dist/implement/async/retry.d.ts +7 -0
  168. package/dist/implement/async/retry.d.ts.map +1 -0
  169. package/dist/implement/async/retry.mjs +19 -0
  170. package/dist/implement/async/retry.mjs.map +1 -0
  171. package/dist/implement/async/throttle.d.ts +7 -0
  172. package/dist/implement/async/throttle.d.ts.map +1 -0
  173. package/dist/implement/async/throttle.mjs +18 -0
  174. package/dist/implement/async/throttle.mjs.map +1 -0
  175. package/dist/implement/async/timeout.d.ts +7 -0
  176. package/dist/implement/async/timeout.d.ts.map +1 -0
  177. package/dist/implement/async/timeout.mjs +16 -0
  178. package/dist/implement/async/timeout.mjs.map +1 -0
  179. package/dist/implement/composition/complement.d.ts +7 -0
  180. package/dist/implement/composition/complement.d.ts.map +1 -0
  181. package/dist/implement/composition/complement.mjs +7 -0
  182. package/dist/implement/composition/complement.mjs.map +1 -0
  183. package/dist/implement/composition/compose.d.ts +16 -0
  184. package/dist/implement/composition/compose.d.ts.map +1 -0
  185. package/dist/implement/composition/compose.mjs +7 -0
  186. package/dist/implement/composition/compose.mjs.map +1 -0
  187. package/dist/implement/composition/constant.d.ts +6 -0
  188. package/dist/implement/composition/constant.d.ts.map +1 -0
  189. package/dist/implement/composition/constant.mjs +7 -0
  190. package/dist/implement/composition/constant.mjs.map +1 -0
  191. package/dist/implement/composition/curry.d.ts +32 -0
  192. package/dist/implement/composition/curry.d.ts.map +1 -0
  193. package/dist/implement/composition/curry.mjs +8 -0
  194. package/dist/implement/composition/curry.mjs.map +1 -0
  195. package/dist/implement/composition/flip.d.ts +10 -0
  196. package/dist/implement/composition/flip.d.ts.map +1 -0
  197. package/dist/implement/composition/flip.mjs +10 -0
  198. package/dist/implement/composition/flip.mjs.map +1 -0
  199. package/dist/implement/composition/identity.d.ts +6 -0
  200. package/dist/implement/composition/identity.d.ts.map +1 -0
  201. package/dist/implement/composition/identity.mjs +7 -0
  202. package/dist/implement/composition/identity.mjs.map +1 -0
  203. package/dist/implement/composition/index.d.ts +16 -0
  204. package/dist/implement/composition/index.d.ts.map +1 -0
  205. package/dist/implement/composition/memoize.d.ts +7 -0
  206. package/dist/implement/composition/memoize.d.ts.map +1 -0
  207. package/dist/implement/composition/memoize.mjs +16 -0
  208. package/dist/implement/composition/memoize.mjs.map +1 -0
  209. package/dist/implement/composition/once.d.ts +7 -0
  210. package/dist/implement/composition/once.d.ts.map +1 -0
  211. package/dist/implement/composition/once.mjs +10 -0
  212. package/dist/implement/composition/once.mjs.map +1 -0
  213. package/dist/implement/composition/partial.d.ts +6 -0
  214. package/dist/implement/composition/partial.d.ts.map +1 -0
  215. package/dist/implement/composition/partial.mjs +10 -0
  216. package/dist/implement/composition/partial.mjs.map +1 -0
  217. package/dist/implement/composition/pipe.d.ts +13 -0
  218. package/dist/implement/composition/pipe.d.ts.map +1 -0
  219. package/dist/implement/composition/pipe.mjs +7 -0
  220. package/dist/implement/composition/pipe.mjs.map +1 -0
  221. package/dist/implement/composition/pipe.type-test.d.ts +20 -0
  222. package/dist/implement/composition/pipe.type-test.d.ts.map +1 -0
  223. package/dist/implement/composition/pipeSideEffect.d.ts +17 -0
  224. package/dist/implement/composition/pipeSideEffect.d.ts.map +1 -0
  225. package/dist/implement/composition/pipeSideEffect.mjs +16 -0
  226. package/dist/implement/composition/pipeSideEffect.mjs.map +1 -0
  227. package/dist/implement/composition/sideEffect.d.ts +18 -0
  228. package/dist/implement/composition/sideEffect.d.ts.map +1 -0
  229. package/dist/implement/composition/sideEffect.mjs +27 -0
  230. package/dist/implement/composition/sideEffect.mjs.map +1 -0
  231. package/dist/implement/composition/tap.d.ts +6 -0
  232. package/dist/implement/composition/tap.d.ts.map +1 -0
  233. package/dist/implement/composition/tap.mjs +7 -0
  234. package/dist/implement/composition/tap.mjs.map +1 -0
  235. package/dist/implement/control/cond.d.ts +6 -0
  236. package/dist/implement/control/cond.d.ts.map +1 -0
  237. package/dist/implement/control/cond.mjs +11 -0
  238. package/dist/implement/control/cond.mjs.map +1 -0
  239. package/dist/implement/control/guard.d.ts +8 -0
  240. package/dist/implement/control/guard.d.ts.map +1 -0
  241. package/dist/implement/control/guard.mjs +9 -0
  242. package/dist/implement/control/guard.mjs.map +1 -0
  243. package/dist/implement/control/ifElse.d.ts +18 -0
  244. package/dist/implement/control/ifElse.d.ts.map +1 -0
  245. package/dist/implement/control/ifElse.mjs +9 -0
  246. package/dist/implement/control/ifElse.mjs.map +1 -0
  247. package/dist/implement/control/index.d.ts +7 -0
  248. package/dist/implement/control/index.d.ts.map +1 -0
  249. package/dist/implement/control/tryCatch.d.ts +12 -0
  250. package/dist/implement/control/tryCatch.d.ts.map +1 -0
  251. package/dist/implement/control/tryCatch.mjs +14 -0
  252. package/dist/implement/control/tryCatch.mjs.map +1 -0
  253. package/dist/implement/control/unless.d.ts +9 -0
  254. package/dist/implement/control/unless.d.ts.map +1 -0
  255. package/dist/implement/control/unless.mjs +9 -0
  256. package/dist/implement/control/unless.mjs.map +1 -0
  257. package/dist/implement/control/when.d.ts +9 -0
  258. package/dist/implement/control/when.d.ts.map +1 -0
  259. package/dist/implement/control/when.mjs +9 -0
  260. package/dist/implement/control/when.mjs.map +1 -0
  261. package/dist/implement/debug/assert.d.ts +6 -0
  262. package/dist/implement/debug/assert.d.ts.map +1 -0
  263. package/dist/implement/debug/assert.mjs +10 -0
  264. package/dist/implement/debug/assert.mjs.map +1 -0
  265. package/dist/implement/debug/index.d.ts +4 -0
  266. package/dist/implement/debug/index.d.ts.map +1 -0
  267. package/dist/implement/debug/invariant.d.ts +6 -0
  268. package/dist/implement/debug/invariant.d.ts.map +1 -0
  269. package/dist/implement/debug/invariant.mjs +10 -0
  270. package/dist/implement/debug/invariant.mjs.map +1 -0
  271. package/dist/implement/debug/log.d.ts +4 -0
  272. package/dist/implement/debug/log.d.ts.map +1 -0
  273. package/dist/implement/debug/log.mjs +7 -0
  274. package/dist/implement/debug/log.mjs.map +1 -0
  275. package/dist/implement/equality/clamp.d.ts +7 -0
  276. package/dist/implement/equality/clamp.d.ts.map +1 -0
  277. package/dist/implement/equality/clamp.mjs +9 -0
  278. package/dist/implement/equality/clamp.mjs.map +1 -0
  279. package/dist/implement/equality/equals.d.ts +6 -0
  280. package/dist/implement/equality/equals.d.ts.map +1 -0
  281. package/dist/implement/equality/equals.mjs +59 -0
  282. package/dist/implement/equality/equals.mjs.map +1 -0
  283. package/dist/implement/equality/gt.d.ts +4 -0
  284. package/dist/implement/equality/gt.d.ts.map +1 -0
  285. package/dist/implement/equality/gt.mjs +7 -0
  286. package/dist/implement/equality/gt.mjs.map +1 -0
  287. package/dist/implement/equality/gte.d.ts +4 -0
  288. package/dist/implement/equality/gte.d.ts.map +1 -0
  289. package/dist/implement/equality/gte.mjs +7 -0
  290. package/dist/implement/equality/gte.mjs.map +1 -0
  291. package/dist/implement/equality/includes.d.ts +4 -0
  292. package/dist/implement/equality/includes.d.ts.map +1 -0
  293. package/dist/implement/equality/includes.mjs +15 -0
  294. package/dist/implement/equality/includes.mjs.map +1 -0
  295. package/dist/implement/equality/index.d.ts +11 -0
  296. package/dist/implement/equality/index.d.ts.map +1 -0
  297. package/dist/implement/equality/isEmpty.d.ts +4 -0
  298. package/dist/implement/equality/isEmpty.d.ts.map +1 -0
  299. package/dist/implement/equality/isEmpty.mjs +7 -0
  300. package/dist/implement/equality/isEmpty.mjs.map +1 -0
  301. package/dist/implement/equality/isNil.d.ts +4 -0
  302. package/dist/implement/equality/isNil.d.ts.map +1 -0
  303. package/dist/implement/equality/isNil.mjs +7 -0
  304. package/dist/implement/equality/isNil.mjs.map +1 -0
  305. package/dist/implement/equality/isType.d.ts +4 -0
  306. package/dist/implement/equality/isType.d.ts.map +1 -0
  307. package/dist/implement/equality/isType.mjs +13 -0
  308. package/dist/implement/equality/isType.mjs.map +1 -0
  309. package/dist/implement/equality/lt.d.ts +4 -0
  310. package/dist/implement/equality/lt.d.ts.map +1 -0
  311. package/dist/implement/equality/lt.mjs +7 -0
  312. package/dist/implement/equality/lt.mjs.map +1 -0
  313. package/dist/implement/equality/lte.d.ts +4 -0
  314. package/dist/implement/equality/lte.d.ts.map +1 -0
  315. package/dist/implement/equality/lte.mjs +7 -0
  316. package/dist/implement/equality/lte.mjs.map +1 -0
  317. package/dist/implement/math/add.d.ts +6 -0
  318. package/dist/implement/math/add.d.ts.map +1 -0
  319. package/dist/implement/math/add.mjs +9 -0
  320. package/dist/implement/math/add.mjs.map +1 -0
  321. package/dist/implement/math/ceil.d.ts +4 -0
  322. package/dist/implement/math/ceil.d.ts.map +1 -0
  323. package/dist/implement/math/ceil.mjs +7 -0
  324. package/dist/implement/math/ceil.mjs.map +1 -0
  325. package/dist/implement/math/div.d.ts +6 -0
  326. package/dist/implement/math/div.d.ts.map +1 -0
  327. package/dist/implement/math/div.mjs +9 -0
  328. package/dist/implement/math/div.mjs.map +1 -0
  329. package/dist/implement/math/floor.d.ts +4 -0
  330. package/dist/implement/math/floor.d.ts.map +1 -0
  331. package/dist/implement/math/floor.mjs +7 -0
  332. package/dist/implement/math/floor.mjs.map +1 -0
  333. package/dist/implement/math/index.d.ts +13 -0
  334. package/dist/implement/math/index.d.ts.map +1 -0
  335. package/dist/implement/math/max.d.ts +4 -0
  336. package/dist/implement/math/max.d.ts.map +1 -0
  337. package/dist/implement/math/max.mjs +7 -0
  338. package/dist/implement/math/max.mjs.map +1 -0
  339. package/dist/implement/math/mean.d.ts +4 -0
  340. package/dist/implement/math/mean.d.ts.map +1 -0
  341. package/dist/implement/math/mean.mjs +7 -0
  342. package/dist/implement/math/mean.mjs.map +1 -0
  343. package/dist/implement/math/min.d.ts +4 -0
  344. package/dist/implement/math/min.d.ts.map +1 -0
  345. package/dist/implement/math/min.mjs +7 -0
  346. package/dist/implement/math/min.mjs.map +1 -0
  347. package/dist/implement/math/mul.d.ts +6 -0
  348. package/dist/implement/math/mul.d.ts.map +1 -0
  349. package/dist/implement/math/mul.mjs +9 -0
  350. package/dist/implement/math/mul.mjs.map +1 -0
  351. package/dist/implement/math/randomInt.d.ts +6 -0
  352. package/dist/implement/math/randomInt.d.ts.map +1 -0
  353. package/dist/implement/math/randomInt.mjs +10 -0
  354. package/dist/implement/math/randomInt.mjs.map +1 -0
  355. package/dist/implement/math/round.d.ts +4 -0
  356. package/dist/implement/math/round.d.ts.map +1 -0
  357. package/dist/implement/math/round.mjs +7 -0
  358. package/dist/implement/math/round.mjs.map +1 -0
  359. package/dist/implement/math/sub.d.ts +6 -0
  360. package/dist/implement/math/sub.d.ts.map +1 -0
  361. package/dist/implement/math/sub.mjs +9 -0
  362. package/dist/implement/math/sub.mjs.map +1 -0
  363. package/dist/implement/math/sum.d.ts +4 -0
  364. package/dist/implement/math/sum.d.ts.map +1 -0
  365. package/dist/implement/math/sum.mjs +7 -0
  366. package/dist/implement/math/sum.mjs.map +1 -0
  367. package/dist/implement/nullable/fold.d.ts +8 -0
  368. package/dist/implement/nullable/fold.d.ts.map +1 -0
  369. package/dist/implement/nullable/fold.mjs +9 -0
  370. package/dist/implement/nullable/fold.mjs.map +1 -0
  371. package/dist/implement/nullable/getOrElse.d.ts +4 -0
  372. package/dist/implement/nullable/getOrElse.d.ts.map +1 -0
  373. package/dist/implement/nullable/getOrElse.mjs +7 -0
  374. package/dist/implement/nullable/getOrElse.mjs.map +1 -0
  375. package/dist/implement/nullable/index.d.ts +6 -0
  376. package/dist/implement/nullable/index.d.ts.map +1 -0
  377. package/dist/implement/nullable/mapMaybe.d.ts +4 -0
  378. package/dist/implement/nullable/mapMaybe.d.ts.map +1 -0
  379. package/dist/implement/nullable/mapMaybe.mjs +14 -0
  380. package/dist/implement/nullable/mapMaybe.mjs.map +1 -0
  381. package/dist/implement/nullable/maybe.d.ts +4 -0
  382. package/dist/implement/nullable/maybe.d.ts.map +1 -0
  383. package/dist/implement/nullable/maybe.mjs +7 -0
  384. package/dist/implement/nullable/maybe.mjs.map +1 -0
  385. package/dist/implement/nullable/result.d.ts +10 -0
  386. package/dist/implement/nullable/result.d.ts.map +1 -0
  387. package/dist/implement/nullable/result.mjs +11 -0
  388. package/dist/implement/nullable/result.mjs.map +1 -0
  389. package/dist/implement/object/assoc.d.ts +11 -0
  390. package/dist/implement/object/assoc.d.ts.map +1 -0
  391. package/dist/implement/object/assoc.mjs +16 -0
  392. package/dist/implement/object/assoc.mjs.map +1 -0
  393. package/dist/implement/object/assoc.type-test.d.ts +30 -0
  394. package/dist/implement/object/assoc.type-test.d.ts.map +1 -0
  395. package/dist/implement/object/assocPath.d.ts +9 -0
  396. package/dist/implement/object/assocPath.d.ts.map +1 -0
  397. package/dist/implement/object/assocPath.mjs +21 -0
  398. package/dist/implement/object/assocPath.mjs.map +1 -0
  399. package/dist/implement/object/dissoc.d.ts +7 -0
  400. package/dist/implement/object/dissoc.d.ts.map +1 -0
  401. package/dist/implement/object/dissoc.mjs +15 -0
  402. package/dist/implement/object/dissoc.mjs.map +1 -0
  403. package/dist/implement/object/dissocPath.d.ts +8 -0
  404. package/dist/implement/object/dissocPath.d.ts.map +1 -0
  405. package/dist/implement/object/dissocPath.mjs +33 -0
  406. package/dist/implement/object/dissocPath.mjs.map +1 -0
  407. package/dist/implement/object/entries.d.ts +6 -0
  408. package/dist/implement/object/entries.d.ts.map +1 -0
  409. package/dist/implement/object/entries.mjs +7 -0
  410. package/dist/implement/object/entries.mjs.map +1 -0
  411. package/dist/implement/object/evolve.d.ts +9 -0
  412. package/dist/implement/object/evolve.d.ts.map +1 -0
  413. package/dist/implement/object/evolve.mjs +14 -0
  414. package/dist/implement/object/evolve.mjs.map +1 -0
  415. package/dist/implement/object/has.d.ts +7 -0
  416. package/dist/implement/object/has.d.ts.map +1 -0
  417. package/dist/implement/object/has.mjs +9 -0
  418. package/dist/implement/object/has.mjs.map +1 -0
  419. package/dist/implement/object/hasPath.d.ts +6 -0
  420. package/dist/implement/object/hasPath.d.ts.map +1 -0
  421. package/dist/implement/object/hasPath.mjs +15 -0
  422. package/dist/implement/object/hasPath.mjs.map +1 -0
  423. package/dist/implement/object/index.d.ts +21 -0
  424. package/dist/implement/object/index.d.ts.map +1 -0
  425. package/dist/implement/object/keys.d.ts +6 -0
  426. package/dist/implement/object/keys.d.ts.map +1 -0
  427. package/dist/implement/object/keys.mjs +7 -0
  428. package/dist/implement/object/keys.mjs.map +1 -0
  429. package/dist/implement/object/mapValues.d.ts +6 -0
  430. package/dist/implement/object/mapValues.d.ts.map +1 -0
  431. package/dist/implement/object/mapValues.mjs +12 -0
  432. package/dist/implement/object/mapValues.mjs.map +1 -0
  433. package/dist/implement/object/merge.d.ts +7 -0
  434. package/dist/implement/object/merge.d.ts.map +1 -0
  435. package/dist/implement/object/merge.mjs +12 -0
  436. package/dist/implement/object/merge.mjs.map +1 -0
  437. package/dist/implement/object/mergeAll.d.ts +6 -0
  438. package/dist/implement/object/mergeAll.d.ts.map +1 -0
  439. package/dist/implement/object/mergeAll.mjs +10 -0
  440. package/dist/implement/object/mergeAll.mjs.map +1 -0
  441. package/dist/implement/object/mergeDeep.d.ts +7 -0
  442. package/dist/implement/object/mergeDeep.d.ts.map +1 -0
  443. package/dist/implement/object/mergeDeep.mjs +20 -0
  444. package/dist/implement/object/mergeDeep.mjs.map +1 -0
  445. package/dist/implement/object/omit.d.ts +7 -0
  446. package/dist/implement/object/omit.d.ts.map +1 -0
  447. package/dist/implement/object/omit.mjs +12 -0
  448. package/dist/implement/object/omit.mjs.map +1 -0
  449. package/dist/implement/object/path.d.ts +7 -0
  450. package/dist/implement/object/path.d.ts.map +1 -0
  451. package/dist/implement/object/path.mjs +9 -0
  452. package/dist/implement/object/path.mjs.map +1 -0
  453. package/dist/implement/object/pathOr.d.ts +8 -0
  454. package/dist/implement/object/pathOr.d.ts.map +1 -0
  455. package/dist/implement/object/pathOr.mjs +10 -0
  456. package/dist/implement/object/pathOr.mjs.map +1 -0
  457. package/dist/implement/object/pick.d.ts +7 -0
  458. package/dist/implement/object/pick.d.ts.map +1 -0
  459. package/dist/implement/object/pick.mjs +12 -0
  460. package/dist/implement/object/pick.mjs.map +1 -0
  461. package/dist/implement/object/prop.d.ts +7 -0
  462. package/dist/implement/object/prop.d.ts.map +1 -0
  463. package/dist/implement/object/prop.mjs +9 -0
  464. package/dist/implement/object/prop.mjs.map +1 -0
  465. package/dist/implement/object/propOr.d.ts +8 -0
  466. package/dist/implement/object/propOr.d.ts.map +1 -0
  467. package/dist/implement/object/propOr.mjs +10 -0
  468. package/dist/implement/object/propOr.mjs.map +1 -0
  469. package/dist/implement/object/values.d.ts +6 -0
  470. package/dist/implement/object/values.d.ts.map +1 -0
  471. package/dist/implement/object/values.mjs +7 -0
  472. package/dist/implement/object/values.mjs.map +1 -0
  473. package/dist/implement/string/endsWith.d.ts +5 -0
  474. package/dist/implement/string/endsWith.d.ts.map +1 -0
  475. package/dist/implement/string/endsWith.mjs +18 -0
  476. package/dist/implement/string/endsWith.mjs.map +1 -0
  477. package/dist/implement/string/index.d.ts +10 -0
  478. package/dist/implement/string/index.d.ts.map +1 -0
  479. package/dist/implement/string/join.d.ts +6 -0
  480. package/dist/implement/string/join.d.ts.map +1 -0
  481. package/dist/implement/string/join.mjs +9 -0
  482. package/dist/implement/string/join.mjs.map +1 -0
  483. package/dist/implement/string/match.d.ts +6 -0
  484. package/dist/implement/string/match.d.ts.map +1 -0
  485. package/dist/implement/string/match.mjs +9 -0
  486. package/dist/implement/string/match.mjs.map +1 -0
  487. package/dist/implement/string/replace.d.ts +7 -0
  488. package/dist/implement/string/replace.d.ts.map +1 -0
  489. package/dist/implement/string/replace.mjs +9 -0
  490. package/dist/implement/string/replace.mjs.map +1 -0
  491. package/dist/implement/string/split.d.ts +6 -0
  492. package/dist/implement/string/split.d.ts.map +1 -0
  493. package/dist/implement/string/split.mjs +9 -0
  494. package/dist/implement/string/split.mjs.map +1 -0
  495. package/dist/implement/string/startsWith.d.ts +5 -0
  496. package/dist/implement/string/startsWith.d.ts.map +1 -0
  497. package/dist/implement/string/startsWith.mjs +16 -0
  498. package/dist/implement/string/startsWith.mjs.map +1 -0
  499. package/dist/implement/string/toLower.d.ts +4 -0
  500. package/dist/implement/string/toLower.d.ts.map +1 -0
  501. package/dist/implement/string/toLower.mjs +7 -0
  502. package/dist/implement/string/toLower.mjs.map +1 -0
  503. package/dist/implement/string/toUpper.d.ts +4 -0
  504. package/dist/implement/string/toUpper.d.ts.map +1 -0
  505. package/dist/implement/string/toUpper.mjs +7 -0
  506. package/dist/implement/string/toUpper.mjs.map +1 -0
  507. package/dist/implement/string/trim.d.ts +4 -0
  508. package/dist/implement/string/trim.d.ts.map +1 -0
  509. package/dist/implement/string/trim.mjs +7 -0
  510. package/dist/implement/string/trim.mjs.map +1 -0
  511. package/dist/index.d.ts +11 -0
  512. package/dist/index.d.ts.map +1 -0
  513. package/dist/index.mjs +247 -0
  514. package/dist/index.mjs.map +1 -0
  515. package/dist/skills/fp-pack.md +1644 -0
  516. package/dist/stream/append.d.ts +8 -0
  517. package/dist/stream/append.d.ts.map +1 -0
  518. package/dist/stream/append.mjs +23 -0
  519. package/dist/stream/append.mjs.map +1 -0
  520. package/dist/stream/chunk.d.ts +7 -0
  521. package/dist/stream/chunk.d.ts.map +1 -0
  522. package/dist/stream/chunk.mjs +37 -0
  523. package/dist/stream/chunk.mjs.map +1 -0
  524. package/dist/stream/concat.d.ts +8 -0
  525. package/dist/stream/concat.d.ts.map +1 -0
  526. package/dist/stream/concat.mjs +25 -0
  527. package/dist/stream/concat.mjs.map +1 -0
  528. package/dist/stream/drop.d.ts +8 -0
  529. package/dist/stream/drop.d.ts.map +1 -0
  530. package/dist/stream/drop.mjs +42 -0
  531. package/dist/stream/drop.mjs.map +1 -0
  532. package/dist/stream/dropWhile.d.ts +8 -0
  533. package/dist/stream/dropWhile.d.ts.map +1 -0
  534. package/dist/stream/dropWhile.mjs +23 -0
  535. package/dist/stream/dropWhile.mjs.map +1 -0
  536. package/dist/stream/every.d.ts +8 -0
  537. package/dist/stream/every.d.ts.map +1 -0
  538. package/dist/stream/every.mjs +24 -0
  539. package/dist/stream/every.mjs.map +1 -0
  540. package/dist/stream/filter.d.ts +8 -0
  541. package/dist/stream/filter.d.ts.map +1 -0
  542. package/dist/stream/filter.mjs +21 -0
  543. package/dist/stream/filter.mjs.map +1 -0
  544. package/dist/stream/find.d.ts +8 -0
  545. package/dist/stream/find.d.ts.map +1 -0
  546. package/dist/stream/find.mjs +23 -0
  547. package/dist/stream/find.mjs.map +1 -0
  548. package/dist/stream/flatMap.d.ts +8 -0
  549. package/dist/stream/flatMap.d.ts.map +1 -0
  550. package/dist/stream/flatMap.mjs +27 -0
  551. package/dist/stream/flatMap.mjs.map +1 -0
  552. package/dist/stream/flatten.d.ts +6 -0
  553. package/dist/stream/flatten.d.ts.map +1 -0
  554. package/dist/stream/flatten.mjs +23 -0
  555. package/dist/stream/flatten.mjs.map +1 -0
  556. package/dist/stream/flattenDeep.d.ts +6 -0
  557. package/dist/stream/flattenDeep.d.ts.map +1 -0
  558. package/dist/stream/flattenDeep.mjs +30 -0
  559. package/dist/stream/flattenDeep.mjs.map +1 -0
  560. package/dist/stream/index.d.ts +24 -0
  561. package/dist/stream/index.d.ts.map +1 -0
  562. package/dist/stream/index.mjs +49 -0
  563. package/dist/stream/index.mjs.map +1 -0
  564. package/dist/stream/map.d.ts +8 -0
  565. package/dist/stream/map.d.ts.map +1 -0
  566. package/dist/stream/map.mjs +21 -0
  567. package/dist/stream/map.mjs.map +1 -0
  568. package/dist/stream/prepend.d.ts +8 -0
  569. package/dist/stream/prepend.d.ts.map +1 -0
  570. package/dist/stream/prepend.mjs +23 -0
  571. package/dist/stream/prepend.mjs.map +1 -0
  572. package/dist/stream/range.d.ts +4 -0
  573. package/dist/stream/range.d.ts.map +1 -0
  574. package/dist/stream/range.mjs +17 -0
  575. package/dist/stream/range.mjs.map +1 -0
  576. package/dist/stream/reduce.d.ts +8 -0
  577. package/dist/stream/reduce.d.ts.map +1 -0
  578. package/dist/stream/reduce.mjs +24 -0
  579. package/dist/stream/reduce.mjs.map +1 -0
  580. package/dist/stream/scan.d.ts +8 -0
  581. package/dist/stream/scan.d.ts.map +1 -0
  582. package/dist/stream/scan.mjs +23 -0
  583. package/dist/stream/scan.mjs.map +1 -0
  584. package/dist/stream/some.d.ts +8 -0
  585. package/dist/stream/some.d.ts.map +1 -0
  586. package/dist/stream/some.mjs +24 -0
  587. package/dist/stream/some.mjs.map +1 -0
  588. package/dist/stream/take.d.ts +8 -0
  589. package/dist/stream/take.d.ts.map +1 -0
  590. package/dist/stream/take.mjs +30 -0
  591. package/dist/stream/take.mjs.map +1 -0
  592. package/dist/stream/takeWhile.d.ts +8 -0
  593. package/dist/stream/takeWhile.d.ts.map +1 -0
  594. package/dist/stream/takeWhile.mjs +27 -0
  595. package/dist/stream/takeWhile.mjs.map +1 -0
  596. package/dist/stream/toArray.d.ts +5 -0
  597. package/dist/stream/toArray.d.ts.map +1 -0
  598. package/dist/stream/toArray.mjs +19 -0
  599. package/dist/stream/toArray.mjs.map +1 -0
  600. package/dist/stream/toAsync.d.ts +6 -0
  601. package/dist/stream/toAsync.d.ts.map +1 -0
  602. package/dist/stream/toAsync.mjs +21 -0
  603. package/dist/stream/toAsync.mjs.map +1 -0
  604. package/dist/stream/utils.d.ts +12 -0
  605. package/dist/stream/utils.d.ts.map +1 -0
  606. package/dist/stream/utils.mjs +10 -0
  607. package/dist/stream/utils.mjs.map +1 -0
  608. package/dist/stream/zip.d.ts +8 -0
  609. package/dist/stream/zip.d.ts.map +1 -0
  610. package/dist/stream/zip.mjs +31 -0
  611. package/dist/stream/zip.mjs.map +1 -0
  612. package/dist/stream/zipWith.d.ts +8 -0
  613. package/dist/stream/zipWith.d.ts.map +1 -0
  614. package/dist/stream/zipWith.mjs +31 -0
  615. package/dist/stream/zipWith.mjs.map +1 -0
  616. package/package.json +87 -0
  617. package/src/implement/array/append.test.ts +13 -0
  618. package/src/implement/array/append.ts +16 -0
  619. package/src/implement/array/chunk.test.ts +23 -0
  620. package/src/implement/array/chunk.ts +25 -0
  621. package/src/implement/array/concat.test.ts +13 -0
  622. package/src/implement/array/concat.ts +16 -0
  623. package/src/implement/array/curried.test.ts +91 -0
  624. package/src/implement/array/drop.test.ts +22 -0
  625. package/src/implement/array/drop.ts +20 -0
  626. package/src/implement/array/dropWhile.test.ts +13 -0
  627. package/src/implement/array/dropWhile.ts +26 -0
  628. package/src/implement/array/every.test.ts +16 -0
  629. package/src/implement/array/every.ts +16 -0
  630. package/src/implement/array/filter.test.ts +16 -0
  631. package/src/implement/array/filter.ts +16 -0
  632. package/src/implement/array/find.test.ts +16 -0
  633. package/src/implement/array/find.ts +16 -0
  634. package/src/implement/array/flatMap.test.ts +13 -0
  635. package/src/implement/array/flatMap.ts +16 -0
  636. package/src/implement/array/flatten.test.ts +8 -0
  637. package/src/implement/array/flatten.ts +8 -0
  638. package/src/implement/array/flattenDeep.test.ts +13 -0
  639. package/src/implement/array/flattenDeep.ts +21 -0
  640. package/src/implement/array/groupBy.test.ts +13 -0
  641. package/src/implement/array/groupBy.ts +23 -0
  642. package/src/implement/array/head.test.ts +12 -0
  643. package/src/implement/array/head.ts +8 -0
  644. package/src/implement/array/index.ts +33 -0
  645. package/src/implement/array/init.test.ts +13 -0
  646. package/src/implement/array/init.ts +9 -0
  647. package/src/implement/array/last.test.ts +12 -0
  648. package/src/implement/array/last.ts +9 -0
  649. package/src/implement/array/map.test.ts +12 -0
  650. package/src/implement/array/map.ts +16 -0
  651. package/src/implement/array/partition.test.ts +14 -0
  652. package/src/implement/array/partition.ts +27 -0
  653. package/src/implement/array/prepend.test.ts +13 -0
  654. package/src/implement/array/prepend.ts +16 -0
  655. package/src/implement/array/range.test.ts +16 -0
  656. package/src/implement/array/range.ts +18 -0
  657. package/src/implement/array/reduce.test.ts +25 -0
  658. package/src/implement/array/reduce.ts +21 -0
  659. package/src/implement/array/scan.test.ts +13 -0
  660. package/src/implement/array/scan.ts +23 -0
  661. package/src/implement/array/some.test.ts +25 -0
  662. package/src/implement/array/some.ts +19 -0
  663. package/src/implement/array/sort.test.ts +25 -0
  664. package/src/implement/array/sort.ts +16 -0
  665. package/src/implement/array/sortBy.test.ts +28 -0
  666. package/src/implement/array/sortBy.ts +22 -0
  667. package/src/implement/array/tail.test.ts +13 -0
  668. package/src/implement/array/tail.ts +8 -0
  669. package/src/implement/array/take.test.ts +20 -0
  670. package/src/implement/array/take.ts +18 -0
  671. package/src/implement/array/takeWhile.test.ts +13 -0
  672. package/src/implement/array/takeWhile.ts +23 -0
  673. package/src/implement/array/uniq.test.ts +18 -0
  674. package/src/implement/array/uniq.ts +16 -0
  675. package/src/implement/array/uniqBy.test.ts +22 -0
  676. package/src/implement/array/uniqBy.ts +25 -0
  677. package/src/implement/array/unzip.test.ts +22 -0
  678. package/src/implement/array/unzip.ts +16 -0
  679. package/src/implement/array/zip.test.ts +16 -0
  680. package/src/implement/array/zip.ts +23 -0
  681. package/src/implement/array/zipIndex.test.ts +16 -0
  682. package/src/implement/array/zipIndex.ts +8 -0
  683. package/src/implement/array/zipWith.test.ts +13 -0
  684. package/src/implement/array/zipWith.ts +22 -0
  685. package/src/implement/async/curried.test.ts +133 -0
  686. package/src/implement/async/debounce.test.ts +21 -0
  687. package/src/implement/async/debounce.ts +26 -0
  688. package/src/implement/async/debounceLeading.test.ts +24 -0
  689. package/src/implement/async/debounceLeading.ts +25 -0
  690. package/src/implement/async/debounceLeadingTrailing.test.ts +37 -0
  691. package/src/implement/async/debounceLeadingTrailing.ts +41 -0
  692. package/src/implement/async/delay.test.ts +22 -0
  693. package/src/implement/async/delay.ts +7 -0
  694. package/src/implement/async/index.ts +9 -0
  695. package/src/implement/async/pipeAsync.test.ts +23 -0
  696. package/src/implement/async/pipeAsync.ts +48 -0
  697. package/src/implement/async/pipeAsyncSideEffect.test.ts +23 -0
  698. package/src/implement/async/pipeAsyncSideEffect.ts +68 -0
  699. package/src/implement/async/retry.test.ts +49 -0
  700. package/src/implement/async/retry.ts +27 -0
  701. package/src/implement/async/throttle.test.ts +38 -0
  702. package/src/implement/async/throttle.ts +47 -0
  703. package/src/implement/async/timeout.test.ts +20 -0
  704. package/src/implement/async/timeout.ts +24 -0
  705. package/src/implement/composition/complement.test.ts +17 -0
  706. package/src/implement/composition/complement.ts +13 -0
  707. package/src/implement/composition/compose.test.ts +30 -0
  708. package/src/implement/composition/compose.ts +48 -0
  709. package/src/implement/composition/constant.test.ts +16 -0
  710. package/src/implement/composition/constant.ts +8 -0
  711. package/src/implement/composition/curry.test.ts +31 -0
  712. package/src/implement/composition/curry.ts +71 -0
  713. package/src/implement/composition/flip.test.ts +41 -0
  714. package/src/implement/composition/flip.ts +16 -0
  715. package/src/implement/composition/identity.test.ts +14 -0
  716. package/src/implement/composition/identity.ts +8 -0
  717. package/src/implement/composition/index.ts +15 -0
  718. package/src/implement/composition/memoize.test.ts +46 -0
  719. package/src/implement/composition/memoize.ts +31 -0
  720. package/src/implement/composition/once.test.ts +30 -0
  721. package/src/implement/composition/once.ts +21 -0
  722. package/src/implement/composition/partial.test.ts +25 -0
  723. package/src/implement/composition/partial.ts +14 -0
  724. package/src/implement/composition/pipe.test.ts +31 -0
  725. package/src/implement/composition/pipe.ts +39 -0
  726. package/src/implement/composition/pipe.type-test.ts +54 -0
  727. package/src/implement/composition/pipeSideEffect.test.ts +23 -0
  728. package/src/implement/composition/pipeSideEffect.ts +60 -0
  729. package/src/implement/composition/sideEffect.test.ts +43 -0
  730. package/src/implement/composition/sideEffect.ts +44 -0
  731. package/src/implement/composition/tap.test.ts +17 -0
  732. package/src/implement/composition/tap.ts +11 -0
  733. package/src/implement/control/cond.test.ts +33 -0
  734. package/src/implement/control/cond.ts +17 -0
  735. package/src/implement/control/curried.test.ts +71 -0
  736. package/src/implement/control/guard.test.ts +17 -0
  737. package/src/implement/control/guard.ts +27 -0
  738. package/src/implement/control/ifElse.test.ts +68 -0
  739. package/src/implement/control/ifElse.ts +40 -0
  740. package/src/implement/control/index.ts +6 -0
  741. package/src/implement/control/tryCatch.test.ts +35 -0
  742. package/src/implement/control/tryCatch.ts +36 -0
  743. package/src/implement/control/unless.test.ts +22 -0
  744. package/src/implement/control/unless.ts +29 -0
  745. package/src/implement/control/when.test.ts +22 -0
  746. package/src/implement/control/when.ts +29 -0
  747. package/src/implement/debug/assert.test.ts +16 -0
  748. package/src/implement/debug/assert.ts +9 -0
  749. package/src/implement/debug/curried.test.ts +17 -0
  750. package/src/implement/debug/index.ts +3 -0
  751. package/src/implement/debug/invariant.test.ts +16 -0
  752. package/src/implement/debug/invariant.ts +9 -0
  753. package/src/implement/debug/log.test.ts +20 -0
  754. package/src/implement/debug/log.ts +12 -0
  755. package/src/implement/equality/clamp.test.ts +16 -0
  756. package/src/implement/equality/clamp.ts +9 -0
  757. package/src/implement/equality/curried.test.ts +13 -0
  758. package/src/implement/equality/equals.test.ts +63 -0
  759. package/src/implement/equality/equals.ts +87 -0
  760. package/src/implement/equality/gt.test.ts +13 -0
  761. package/src/implement/equality/gt.ts +5 -0
  762. package/src/implement/equality/gte.test.ts +13 -0
  763. package/src/implement/equality/gte.ts +5 -0
  764. package/src/implement/equality/includes.test.ts +16 -0
  765. package/src/implement/equality/includes.ts +21 -0
  766. package/src/implement/equality/index.ts +10 -0
  767. package/src/implement/equality/isEmpty.test.ts +24 -0
  768. package/src/implement/equality/isEmpty.ts +19 -0
  769. package/src/implement/equality/isNil.test.ts +16 -0
  770. package/src/implement/equality/isNil.ts +5 -0
  771. package/src/implement/equality/isType.test.ts +28 -0
  772. package/src/implement/equality/isType.ts +13 -0
  773. package/src/implement/equality/lt.test.ts +13 -0
  774. package/src/implement/equality/lt.ts +5 -0
  775. package/src/implement/equality/lte.test.ts +13 -0
  776. package/src/implement/equality/lte.ts +5 -0
  777. package/src/implement/math/add.test.ts +9 -0
  778. package/src/implement/math/add.ts +7 -0
  779. package/src/implement/math/ceil.test.ts +10 -0
  780. package/src/implement/math/ceil.ts +5 -0
  781. package/src/implement/math/curried.test.ts +30 -0
  782. package/src/implement/math/div.test.ts +9 -0
  783. package/src/implement/math/div.ts +7 -0
  784. package/src/implement/math/floor.test.ts +10 -0
  785. package/src/implement/math/floor.ts +5 -0
  786. package/src/implement/math/index.ts +12 -0
  787. package/src/implement/math/max.test.ts +13 -0
  788. package/src/implement/math/max.ts +6 -0
  789. package/src/implement/math/mean.test.ts +12 -0
  790. package/src/implement/math/mean.ts +7 -0
  791. package/src/implement/math/min.test.ts +12 -0
  792. package/src/implement/math/min.ts +6 -0
  793. package/src/implement/math/mul.test.ts +9 -0
  794. package/src/implement/math/mul.ts +7 -0
  795. package/src/implement/math/randomInt.test.ts +22 -0
  796. package/src/implement/math/randomInt.ts +14 -0
  797. package/src/implement/math/round.test.ts +10 -0
  798. package/src/implement/math/round.ts +5 -0
  799. package/src/implement/math/sub.test.ts +9 -0
  800. package/src/implement/math/sub.ts +7 -0
  801. package/src/implement/math/sum.test.ts +10 -0
  802. package/src/implement/math/sum.ts +5 -0
  803. package/src/implement/nullable/curried.test.ts +13 -0
  804. package/src/implement/nullable/fold.test.ts +31 -0
  805. package/src/implement/nullable/fold.ts +27 -0
  806. package/src/implement/nullable/getOrElse.test.ts +17 -0
  807. package/src/implement/nullable/getOrElse.ts +10 -0
  808. package/src/implement/nullable/index.ts +5 -0
  809. package/src/implement/nullable/mapMaybe.test.ts +23 -0
  810. package/src/implement/nullable/mapMaybe.ts +18 -0
  811. package/src/implement/nullable/maybe.test.ts +15 -0
  812. package/src/implement/nullable/maybe.ts +10 -0
  813. package/src/implement/nullable/result.test.ts +17 -0
  814. package/src/implement/nullable/result.ts +10 -0
  815. package/src/implement/object/assoc.test.ts +27 -0
  816. package/src/implement/object/assoc.ts +43 -0
  817. package/src/implement/object/assoc.type-test.ts +38 -0
  818. package/src/implement/object/assocPath.test.ts +33 -0
  819. package/src/implement/object/assocPath.ts +64 -0
  820. package/src/implement/object/curried.test.ts +49 -0
  821. package/src/implement/object/dissoc.test.ts +20 -0
  822. package/src/implement/object/dissoc.ts +26 -0
  823. package/src/implement/object/dissocPath.test.ts +18 -0
  824. package/src/implement/object/dissocPath.ts +80 -0
  825. package/src/implement/object/entries.test.ts +12 -0
  826. package/src/implement/object/entries.ts +8 -0
  827. package/src/implement/object/evolve.test.ts +14 -0
  828. package/src/implement/object/evolve.ts +31 -0
  829. package/src/implement/object/has.test.ts +10 -0
  830. package/src/implement/object/has.ts +16 -0
  831. package/src/implement/object/hasPath.test.ts +13 -0
  832. package/src/implement/object/hasPath.ts +17 -0
  833. package/src/implement/object/index.ts +20 -0
  834. package/src/implement/object/keys.test.ts +9 -0
  835. package/src/implement/object/keys.ts +8 -0
  836. package/src/implement/object/mapValues.test.ts +11 -0
  837. package/src/implement/object/mapValues.ts +16 -0
  838. package/src/implement/object/merge.test.ts +22 -0
  839. package/src/implement/object/merge.ts +19 -0
  840. package/src/implement/object/mergeAll.test.ts +13 -0
  841. package/src/implement/object/mergeAll.ts +12 -0
  842. package/src/implement/object/mergeDeep.test.ts +11 -0
  843. package/src/implement/object/mergeDeep.ts +41 -0
  844. package/src/implement/object/omit.test.ts +12 -0
  845. package/src/implement/object/omit.ts +20 -0
  846. package/src/implement/object/path.test.ts +9 -0
  847. package/src/implement/object/path.ts +16 -0
  848. package/src/implement/object/pathOr.test.ts +15 -0
  849. package/src/implement/object/pathOr.ts +18 -0
  850. package/src/implement/object/pick.test.ts +12 -0
  851. package/src/implement/object/pick.ts +22 -0
  852. package/src/implement/object/prop.test.ts +9 -0
  853. package/src/implement/object/prop.ts +16 -0
  854. package/src/implement/object/propOr.test.ts +15 -0
  855. package/src/implement/object/propOr.ts +22 -0
  856. package/src/implement/object/values.test.ts +9 -0
  857. package/src/implement/object/values.ts +8 -0
  858. package/src/implement/string/curried.test.ts +21 -0
  859. package/src/implement/string/endsWith.test.ts +23 -0
  860. package/src/implement/string/endsWith.ts +21 -0
  861. package/src/implement/string/index.ts +9 -0
  862. package/src/implement/string/join.test.ts +16 -0
  863. package/src/implement/string/join.ts +7 -0
  864. package/src/implement/string/match.test.ts +13 -0
  865. package/src/implement/string/match.ts +7 -0
  866. package/src/implement/string/replace.test.ts +12 -0
  867. package/src/implement/string/replace.ts +7 -0
  868. package/src/implement/string/split.test.ts +12 -0
  869. package/src/implement/string/split.ts +7 -0
  870. package/src/implement/string/startsWith.test.ts +21 -0
  871. package/src/implement/string/startsWith.ts +20 -0
  872. package/src/implement/string/toLower.test.ts +13 -0
  873. package/src/implement/string/toLower.ts +5 -0
  874. package/src/implement/string/toUpper.test.ts +13 -0
  875. package/src/implement/string/toUpper.ts +5 -0
  876. package/src/implement/string/trim.test.ts +12 -0
  877. package/src/implement/string/trim.ts +5 -0
  878. package/src/index.ts +32 -0
  879. package/src/stream/append.test.ts +20 -0
  880. package/src/stream/append.ts +39 -0
  881. package/src/stream/chunk.test.ts +62 -0
  882. package/src/stream/chunk.ts +74 -0
  883. package/src/stream/concat.test.ts +20 -0
  884. package/src/stream/concat.ts +43 -0
  885. package/src/stream/drop.test.ts +19 -0
  886. package/src/stream/drop.ts +59 -0
  887. package/src/stream/dropWhile.test.ts +20 -0
  888. package/src/stream/dropWhile.ts +51 -0
  889. package/src/stream/every.test.ts +19 -0
  890. package/src/stream/every.ts +46 -0
  891. package/src/stream/filter.test.ts +19 -0
  892. package/src/stream/filter.ts +46 -0
  893. package/src/stream/find.test.ts +18 -0
  894. package/src/stream/find.ts +43 -0
  895. package/src/stream/flatMap.test.ts +20 -0
  896. package/src/stream/flatMap.ts +48 -0
  897. package/src/stream/flatten.test.ts +17 -0
  898. package/src/stream/flatten.ts +33 -0
  899. package/src/stream/flattenDeep.test.ts +17 -0
  900. package/src/stream/flattenDeep.ts +41 -0
  901. package/src/stream/index.ts +23 -0
  902. package/src/stream/map.test.ts +19 -0
  903. package/src/stream/map.ts +39 -0
  904. package/src/stream/pipeAsync.test.ts +27 -0
  905. package/src/stream/prepend.test.ts +20 -0
  906. package/src/stream/prepend.ts +39 -0
  907. package/src/stream/range.test.ts +16 -0
  908. package/src/stream/range.ts +20 -0
  909. package/src/stream/reduce.test.ts +18 -0
  910. package/src/stream/reduce.ts +47 -0
  911. package/src/stream/scan.test.ts +22 -0
  912. package/src/stream/scan.ts +49 -0
  913. package/src/stream/some.test.ts +19 -0
  914. package/src/stream/some.ts +46 -0
  915. package/src/stream/take.test.ts +19 -0
  916. package/src/stream/take.ts +51 -0
  917. package/src/stream/takeWhile.test.ts +20 -0
  918. package/src/stream/takeWhile.ts +45 -0
  919. package/src/stream/toArray.test.ts +19 -0
  920. package/src/stream/toArray.ts +26 -0
  921. package/src/stream/toAsync.test.ts +11 -0
  922. package/src/stream/toAsync.ts +30 -0
  923. package/src/stream/utils.ts +30 -0
  924. package/src/stream/zip.test.ts +29 -0
  925. package/src/stream/zip.ts +56 -0
  926. package/src/stream/zipWith.test.ts +22 -0
  927. package/src/stream/zipWith.ts +62 -0
@@ -0,0 +1,49 @@
1
+ import { default as t } from "./append.mjs";
2
+ import { default as o } from "./chunk.mjs";
3
+ import { default as p } from "./concat.mjs";
4
+ import { default as l } from "./drop.mjs";
5
+ import { default as m } from "./dropWhile.mjs";
6
+ import { default as x } from "./every.mjs";
7
+ import { default as i } from "./filter.mjs";
8
+ import { default as h } from "./find.mjs";
9
+ import { default as y } from "./flatMap.mjs";
10
+ import { default as z } from "./flatten.mjs";
11
+ import { default as g } from "./flattenDeep.mjs";
12
+ import { default as D } from "./map.mjs";
13
+ import { default as b } from "./prepend.mjs";
14
+ import { default as q } from "./range.mjs";
15
+ import { default as B } from "./reduce.mjs";
16
+ import { default as E } from "./scan.mjs";
17
+ import { default as G } from "./some.mjs";
18
+ import { default as I } from "./take.mjs";
19
+ import { default as K } from "./takeWhile.mjs";
20
+ import { default as N } from "./toArray.mjs";
21
+ import { default as P } from "./toAsync.mjs";
22
+ import { default as R } from "./zip.mjs";
23
+ import { default as T } from "./zipWith.mjs";
24
+ export {
25
+ t as append,
26
+ o as chunk,
27
+ p as concat,
28
+ l as drop,
29
+ m as dropWhile,
30
+ x as every,
31
+ i as filter,
32
+ h as find,
33
+ y as flatMap,
34
+ z as flatten,
35
+ g as flattenDeep,
36
+ D as map,
37
+ b as prepend,
38
+ q as range,
39
+ B as reduce,
40
+ E as scan,
41
+ G as some,
42
+ I as take,
43
+ K as takeWhile,
44
+ N as toArray,
45
+ P as toAsync,
46
+ R as zip,
47
+ T as zipWith
48
+ };
49
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** map - lazy map over iterables */
3
+ declare function map<T, R>(fn: (value: T) => R): (iterable: Iterable<T>) => IterableIterator<R>;
4
+ declare function map<T, R>(fn: (value: T) => R | Promise<R>): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<R>;
5
+ declare function map<T, R>(fn: (value: T) => R, iterable: Iterable<T>): IterableIterator<R>;
6
+ declare function map<T, R>(fn: (value: T) => R | Promise<R>, iterable: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterableIterator<R>;
7
+ export default map;
8
+ //# sourceMappingURL=map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../src/stream/map.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,oCAAoC;AACpC,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACxF,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EACf,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAC/B,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACjF,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACpF,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EACf,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAChC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC9C,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAyB5B,eAAe,GAAG,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { isAsyncInput as n, isIterable as r } from "./utils.mjs";
2
+ import f from "./toAsync.mjs";
3
+ function s(i, o) {
4
+ if (o === void 0)
5
+ return (t) => s(i, t);
6
+ if (n(o))
7
+ return (async function* () {
8
+ for await (const t of f(o))
9
+ yield await i(t);
10
+ })();
11
+ if (r(o))
12
+ return (function* () {
13
+ for (const t of o)
14
+ yield i(t);
15
+ })();
16
+ throw new TypeError("map: input is not iterable");
17
+ }
18
+ export {
19
+ s as default
20
+ };
21
+ //# sourceMappingURL=map.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.mjs","sources":["../../src/stream/map.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** map - lazy map over iterables */\nfunction map<T, R>(fn: (value: T) => R): (iterable: Iterable<T>) => IterableIterator<R>;\nfunction map<T, R>(\n fn: (value: T) => R | Promise<R>\n): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<R>;\nfunction map<T, R>(fn: (value: T) => R, iterable: Iterable<T>): IterableIterator<R>;\nfunction map<T, R>(\n fn: (value: T) => R | Promise<R>,\n iterable: AnyIterableInput<PromiseLikeValue<T>>\n): AsyncIterableIterator<R>;\nfunction map<T, R>(fn: (value: T) => R | Promise<R>, iterable?: AnyIterableInput<PromiseLikeValue<T>>): any {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<T>>) => map(fn, next);\n }\n\n if (isAsyncInput(iterable)) {\n return (async function* () {\n for await (const item of toAsync(iterable)) {\n yield await fn(item as T);\n }\n })();\n }\n\n if (isIterable(iterable)) {\n return (function* () {\n for (const item of iterable) {\n yield fn(item as T) as R;\n }\n })();\n }\n\n throw new TypeError('map: input is not iterable');\n}\n\nexport default map;\n"],"names":["map","fn","iterable","next","isAsyncInput","item","toAsync","isIterable"],"mappings":";;AAcA,SAASA,EAAUC,GAAkCC,GAAuD;AAC1G,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDH,EAAIC,GAAIE,CAAI;AAGtE,MAAIC,EAAaF,CAAQ;AACvB,YAAQ,mBAAmB;AACzB,uBAAiBG,KAAQC,EAAQJ,CAAQ;AACvC,cAAM,MAAMD,EAAGI,CAAS;AAAA,IAE5B,GAAA;AAGF,MAAIE,EAAWL,CAAQ;AACrB,YAAQ,aAAa;AACnB,iBAAWG,KAAQH;AACjB,cAAMD,EAAGI,CAAS;AAAA,IAEtB,GAAA;AAGF,QAAM,IAAI,UAAU,4BAA4B;AAClD;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** prepend - lazily prepend a value to the start */
3
+ declare function prepend<T>(value: T): (iterable: Iterable<T>) => IterableIterator<T>;
4
+ declare function prepend<T>(value: PromiseLikeValue<T>): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<T>;
5
+ declare function prepend<T>(value: T, iterable: Iterable<T>): IterableIterator<T>;
6
+ declare function prepend<T>(value: PromiseLikeValue<T>, iterable: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterableIterator<T>;
7
+ export default prepend;
8
+ //# sourceMappingURL=prepend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepend.d.ts","sourceRoot":"","sources":["../../src/stream/prepend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,oDAAoD;AACpD,iBAAS,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC9E,iBAAS,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC/H,iBAAS,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC1E,iBAAS,OAAO,CAAC,CAAC,EAChB,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAC1B,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC9C,qBAAqB,CAAC,CAAC,CAAC,CAAC;AA2B5B,eAAe,OAAO,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { isAsyncInput as o, awaitValue as r, isIterable as f } from "./utils.mjs";
2
+ import e from "./toAsync.mjs";
3
+ function p(i, n) {
4
+ if (n === void 0)
5
+ return (t) => p(i, t);
6
+ if (o(n))
7
+ return (async function* () {
8
+ yield await r(i);
9
+ for await (const t of e(n))
10
+ yield t;
11
+ })();
12
+ if (f(n))
13
+ return (function* () {
14
+ yield i;
15
+ for (const t of n)
16
+ yield t;
17
+ })();
18
+ throw new TypeError("prepend: input is not iterable");
19
+ }
20
+ export {
21
+ p as default
22
+ };
23
+ //# sourceMappingURL=prepend.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepend.mjs","sources":["../../src/stream/prepend.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { awaitValue, isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** prepend - lazily prepend a value to the start */\nfunction prepend<T>(value: T): (iterable: Iterable<T>) => IterableIterator<T>;\nfunction prepend<T>(value: PromiseLikeValue<T>): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<T>;\nfunction prepend<T>(value: T, iterable: Iterable<T>): IterableIterator<T>;\nfunction prepend<T>(\n value: PromiseLikeValue<T>,\n iterable: AnyIterableInput<PromiseLikeValue<T>>\n): AsyncIterableIterator<T>;\nfunction prepend<T>(value: PromiseLikeValue<T>, iterable?: AnyIterableInput<PromiseLikeValue<T>>): any {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<T>>) => prepend(value, next);\n }\n\n if (isAsyncInput(iterable)) {\n return (async function* () {\n yield await awaitValue(value);\n for await (const item of toAsync(iterable)) {\n yield item as T;\n }\n })();\n }\n\n if (isIterable(iterable)) {\n return (function* () {\n yield value as T;\n for (const item of iterable) {\n yield item as T;\n }\n })();\n }\n\n throw new TypeError('prepend: input is not iterable');\n}\n\nexport default prepend;\n"],"names":["prepend","value","iterable","next","isAsyncInput","awaitValue","item","toAsync","isIterable"],"mappings":";;AAYA,SAASA,EAAWC,GAA4BC,GAAuD;AACrG,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDH,EAAQC,GAAOE,CAAI;AAG7E,MAAIC,EAAaF,CAAQ;AACvB,YAAQ,mBAAmB;AACzB,YAAM,MAAMG,EAAWJ,CAAK;AAC5B,uBAAiBK,KAAQC,EAAQL,CAAQ;AACvC,cAAMI;AAAA,IAEV,GAAA;AAGF,MAAIE,EAAWN,CAAQ;AACrB,YAAQ,aAAa;AACnB,YAAMD;AACN,iBAAWK,KAAQJ;AACjB,cAAMI;AAAA,IAEV,GAAA;AAGF,QAAM,IAAI,UAAU,gCAAgC;AACtD;"}
@@ -0,0 +1,4 @@
1
+ /** range - lazily generate a numeric range (end excluded) */
2
+ declare function range(start: number, end: number): IterableIterator<number>;
3
+ export default range;
4
+ //# sourceMappingURL=range.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.d.ts","sourceRoot":"","sources":["../../src/stream/range.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,iBAAS,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAgBnE;AAED,eAAe,KAAK,CAAC"}
@@ -0,0 +1,17 @@
1
+ function f(n, i) {
2
+ if (!Number.isFinite(n) || !Number.isFinite(i))
3
+ return (function* () {
4
+ })();
5
+ if (n === i)
6
+ return (function* () {
7
+ })();
8
+ const e = n < i ? 1 : -1;
9
+ return (function* () {
10
+ for (let u = n; e > 0 ? u < i : u > i; u += e)
11
+ yield u;
12
+ })();
13
+ }
14
+ export {
15
+ f as default
16
+ };
17
+ //# sourceMappingURL=range.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.mjs","sources":["../../src/stream/range.ts"],"sourcesContent":["/** range - lazily generate a numeric range (end excluded) */\nfunction range(start: number, end: number): IterableIterator<number> {\n if (!Number.isFinite(start) || !Number.isFinite(end)) {\n return (function* () {})();\n }\n\n if (start === end) {\n return (function* () {})();\n }\n\n const step = start < end ? 1 : -1;\n\n return (function* () {\n for (let value = start; step > 0 ? value < end : value > end; value += step) {\n yield value;\n }\n })();\n}\n\nexport default range;\n"],"names":["range","start","end","step","value"],"mappings":"AACA,SAASA,EAAMC,GAAeC,GAAuC;AACnE,MAAI,CAAC,OAAO,SAASD,CAAK,KAAK,CAAC,OAAO,SAASC,CAAG;AACjD,YAAQ,aAAa;AAAA,IAAC,GAAA;AAGxB,MAAID,MAAUC;AACZ,YAAQ,aAAa;AAAA,IAAC,GAAA;AAGxB,QAAMC,IAAOF,IAAQC,IAAM,IAAI;AAE/B,UAAQ,aAAa;AACnB,aAASE,IAAQH,GAAOE,IAAO,IAAIC,IAAQF,IAAME,IAAQF,GAAKE,KAASD;AACrE,YAAMC;AAAA,EAEV,GAAA;AACF;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** reduce - fold values into an accumulator */
3
+ declare function reduce<T, R>(fn: (acc: R, value: T) => R, initial: R): (iterable: Iterable<T>) => R;
4
+ declare function reduce<T, R>(fn: (acc: R, value: T) => R | Promise<R>, initial: R): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => Promise<R>;
5
+ declare function reduce<T, R>(fn: (acc: R, value: T) => R, initial: R, iterable: Iterable<T>): R;
6
+ declare function reduce<T, R>(fn: (acc: R, value: T) => R | Promise<R>, initial: R, iterable: AnyIterableInput<PromiseLikeValue<T>>): Promise<R>;
7
+ export default reduce;
8
+ //# sourceMappingURL=reduce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reduce.d.ts","sourceRoot":"","sources":["../../src/stream/reduce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,+CAA+C;AAC/C,iBAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC7F,iBAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAClB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACxC,OAAO,EAAE,CAAC,GACT,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AACnE,iBAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACzF,iBAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAClB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACxC,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC9C,OAAO,CAAC,CAAC,CAAC,CAAC;AA+Bd,eAAe,MAAM,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { isAsyncInput as n, isIterable as u } from "./utils.mjs";
2
+ import f from "./toAsync.mjs";
3
+ function s(o, c, t) {
4
+ if (t === void 0)
5
+ return (r) => s(o, c, r);
6
+ if (n(t))
7
+ return (async () => {
8
+ let r = c;
9
+ for await (const e of f(t))
10
+ r = await o(r, e);
11
+ return r;
12
+ })();
13
+ if (u(t)) {
14
+ let r = c;
15
+ for (const e of t)
16
+ r = o(r, e);
17
+ return r;
18
+ }
19
+ throw new TypeError("reduce: input is not iterable");
20
+ }
21
+ export {
22
+ s as default
23
+ };
24
+ //# sourceMappingURL=reduce.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reduce.mjs","sources":["../../src/stream/reduce.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** reduce - fold values into an accumulator */\nfunction reduce<T, R>(fn: (acc: R, value: T) => R, initial: R): (iterable: Iterable<T>) => R;\nfunction reduce<T, R>(\n fn: (acc: R, value: T) => R | Promise<R>,\n initial: R\n): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => Promise<R>;\nfunction reduce<T, R>(fn: (acc: R, value: T) => R, initial: R, iterable: Iterable<T>): R;\nfunction reduce<T, R>(\n fn: (acc: R, value: T) => R | Promise<R>,\n initial: R,\n iterable: AnyIterableInput<PromiseLikeValue<T>>\n): Promise<R>;\nfunction reduce<T, R>(\n fn: (acc: R, value: T) => R | Promise<R>,\n initial: R,\n iterable?: AnyIterableInput<PromiseLikeValue<T>>\n) {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<T>>) => reduce(fn, initial, next);\n }\n\n if (isAsyncInput(iterable)) {\n return (async () => {\n let acc = initial;\n for await (const item of toAsync(iterable)) {\n acc = await fn(acc, item as T);\n }\n return acc;\n })();\n }\n\n if (isIterable(iterable)) {\n let acc = initial;\n for (const item of iterable) {\n acc = fn(acc, item as T) as R;\n }\n return acc;\n }\n\n throw new TypeError('reduce: input is not iterable');\n}\n\nexport default reduce;\n"],"names":["reduce","fn","initial","iterable","next","isAsyncInput","acc","item","toAsync","isIterable"],"mappings":";;AAgBA,SAASA,EACPC,GACAC,GACAC,GACA;AACA,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDJ,EAAOC,GAAIC,GAASE,CAAI;AAGlF,MAAIC,EAAaF,CAAQ;AACvB,YAAQ,YAAY;AAClB,UAAIG,IAAMJ;AACV,uBAAiBK,KAAQC,EAAQL,CAAQ;AACvC,QAAAG,IAAM,MAAML,EAAGK,GAAKC,CAAS;AAE/B,aAAOD;AAAA,IACT,GAAA;AAGF,MAAIG,EAAWN,CAAQ,GAAG;AACxB,QAAIG,IAAMJ;AACV,eAAWK,KAAQJ;AACjB,MAAAG,IAAML,EAAGK,GAAKC,CAAS;AAEzB,WAAOD;AAAA,EACT;AAEA,QAAM,IAAI,UAAU,+BAA+B;AACrD;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** scan - fold values and emit each accumulated value */
3
+ declare function scan<T, R>(fn: (acc: R, value: T) => R, initial: R): (iterable: Iterable<T>) => IterableIterator<R>;
4
+ declare function scan<T, R>(fn: (acc: R, value: T) => R | Promise<R>, initial: R): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<R>;
5
+ declare function scan<T, R>(fn: (acc: R, value: T) => R, initial: R, iterable: Iterable<T>): IterableIterator<R>;
6
+ declare function scan<T, R>(fn: (acc: R, value: T) => R | Promise<R>, initial: R, iterable: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterableIterator<R>;
7
+ export default scan;
8
+ //# sourceMappingURL=scan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../src/stream/scan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,yDAAyD;AACzD,iBAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC7G,iBAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAChB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACxC,OAAO,EAAE,CAAC,GACT,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACjF,iBAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACzG,iBAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAChB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACxC,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC9C,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAiC5B,eAAe,IAAI,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { isAsyncInput as f, isIterable as s } from "./utils.mjs";
2
+ import i from "./toAsync.mjs";
3
+ function e(n, r, t) {
4
+ if (t === void 0)
5
+ return (o) => e(n, r, o);
6
+ if (f(t))
7
+ return (async function* () {
8
+ let o = r;
9
+ for await (const c of i(t))
10
+ o = await n(o, c), yield o;
11
+ })();
12
+ if (s(t))
13
+ return (function* () {
14
+ let o = r;
15
+ for (const c of t)
16
+ o = n(o, c), yield o;
17
+ })();
18
+ throw new TypeError("scan: input is not iterable");
19
+ }
20
+ export {
21
+ e as default
22
+ };
23
+ //# sourceMappingURL=scan.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.mjs","sources":["../../src/stream/scan.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** scan - fold values and emit each accumulated value */\nfunction scan<T, R>(fn: (acc: R, value: T) => R, initial: R): (iterable: Iterable<T>) => IterableIterator<R>;\nfunction scan<T, R>(\n fn: (acc: R, value: T) => R | Promise<R>,\n initial: R\n): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<R>;\nfunction scan<T, R>(fn: (acc: R, value: T) => R, initial: R, iterable: Iterable<T>): IterableIterator<R>;\nfunction scan<T, R>(\n fn: (acc: R, value: T) => R | Promise<R>,\n initial: R,\n iterable: AnyIterableInput<PromiseLikeValue<T>>\n): AsyncIterableIterator<R>;\nfunction scan<T, R>(\n fn: (acc: R, value: T) => R | Promise<R>,\n initial: R,\n iterable?: AnyIterableInput<PromiseLikeValue<T>>\n): any {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<T>>) => scan(fn, initial, next);\n }\n\n if (isAsyncInput(iterable)) {\n return (async function* () {\n let acc = initial;\n for await (const item of toAsync(iterable)) {\n acc = await fn(acc, item as T);\n yield acc;\n }\n })();\n }\n\n if (isIterable(iterable)) {\n return (function* () {\n let acc = initial;\n for (const item of iterable) {\n acc = fn(acc, item as T) as R;\n yield acc;\n }\n })();\n }\n\n throw new TypeError('scan: input is not iterable');\n}\n\nexport default scan;\n"],"names":["scan","fn","initial","iterable","next","isAsyncInput","acc","item","toAsync","isIterable"],"mappings":";;AAgBA,SAASA,EACPC,GACAC,GACAC,GACK;AACL,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDJ,EAAKC,GAAIC,GAASE,CAAI;AAGhF,MAAIC,EAAaF,CAAQ;AACvB,YAAQ,mBAAmB;AACzB,UAAIG,IAAMJ;AACV,uBAAiBK,KAAQC,EAAQL,CAAQ;AACvC,QAAAG,IAAM,MAAML,EAAGK,GAAKC,CAAS,GAC7B,MAAMD;AAAA,IAEV,GAAA;AAGF,MAAIG,EAAWN,CAAQ;AACrB,YAAQ,aAAa;AACnB,UAAIG,IAAMJ;AACV,iBAAWK,KAAQJ;AACjB,QAAAG,IAAML,EAAGK,GAAKC,CAAS,GACvB,MAAMD;AAAA,IAEV,GAAA;AAGF,QAAM,IAAI,UAAU,6BAA6B;AACnD;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** some - check any value matches */
3
+ declare function some<T>(predicate: (value: T) => boolean): (iterable: Iterable<T>) => boolean;
4
+ declare function some<T>(predicate: (value: T) => boolean | Promise<boolean>): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => Promise<boolean>;
5
+ declare function some<T>(predicate: (value: T) => boolean, iterable: Iterable<T>): boolean;
6
+ declare function some<T>(predicate: (value: T) => boolean | Promise<boolean>, iterable: AnyIterableInput<PromiseLikeValue<T>>): Promise<boolean>;
7
+ export default some;
8
+ //# sourceMappingURL=some.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"some.d.ts","sourceRoot":"","sources":["../../src/stream/some.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,qCAAqC;AACrC,iBAAS,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;AACvF,iBAAS,IAAI,CAAC,CAAC,EACb,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAClD,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACzE,iBAAS,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;AACnF,iBAAS,IAAI,CAAC,CAAC,EACb,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EACnD,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC9C,OAAO,CAAC,OAAO,CAAC,CAAC;AAgCpB,eAAe,IAAI,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { isAsyncInput as n, isIterable as f } from "./utils.mjs";
2
+ import s from "./toAsync.mjs";
3
+ function i(o, r) {
4
+ if (r === void 0)
5
+ return (t) => i(o, t);
6
+ if (n(r))
7
+ return (async () => {
8
+ for await (const t of s(r))
9
+ if (await o(t))
10
+ return !0;
11
+ return !1;
12
+ })();
13
+ if (f(r)) {
14
+ for (const t of r)
15
+ if (o(t))
16
+ return !0;
17
+ return !1;
18
+ }
19
+ throw new TypeError("some: input is not iterable");
20
+ }
21
+ export {
22
+ i as default
23
+ };
24
+ //# sourceMappingURL=some.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"some.mjs","sources":["../../src/stream/some.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** some - check any value matches */\nfunction some<T>(predicate: (value: T) => boolean): (iterable: Iterable<T>) => boolean;\nfunction some<T>(\n predicate: (value: T) => boolean | Promise<boolean>\n): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => Promise<boolean>;\nfunction some<T>(predicate: (value: T) => boolean, iterable: Iterable<T>): boolean;\nfunction some<T>(\n predicate: (value: T) => boolean | Promise<boolean>,\n iterable: AnyIterableInput<PromiseLikeValue<T>>\n): Promise<boolean>;\nfunction some<T>(\n predicate: (value: T) => boolean | Promise<boolean>,\n iterable?: AnyIterableInput<PromiseLikeValue<T>>\n): any {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<T>>) => some(predicate, next);\n }\n\n if (isAsyncInput(iterable)) {\n return (async () => {\n for await (const item of toAsync(iterable)) {\n if (await predicate(item as T)) {\n return true;\n }\n }\n return false;\n })();\n }\n\n if (isIterable(iterable)) {\n for (const item of iterable) {\n if (predicate(item as T)) {\n return true;\n }\n }\n return false;\n }\n\n throw new TypeError('some: input is not iterable');\n}\n\nexport default some;\n"],"names":["some","predicate","iterable","next","isAsyncInput","item","toAsync","isIterable"],"mappings":";;AAcA,SAASA,EACPC,GACAC,GACK;AACL,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDH,EAAKC,GAAWE,CAAI;AAG9E,MAAIC,EAAaF,CAAQ;AACvB,YAAQ,YAAY;AAClB,uBAAiBG,KAAQC,EAAQJ,CAAQ;AACvC,YAAI,MAAMD,EAAUI,CAAS;AAC3B,iBAAO;AAGX,aAAO;AAAA,IACT,GAAA;AAGF,MAAIE,EAAWL,CAAQ,GAAG;AACxB,eAAWG,KAAQH;AACjB,UAAID,EAAUI,CAAS;AACrB,eAAO;AAGX,WAAO;AAAA,EACT;AAEA,QAAM,IAAI,UAAU,6BAA6B;AACnD;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** take - lazily take first n values */
3
+ declare function take<T>(count: number): (iterable: Iterable<T>) => IterableIterator<T>;
4
+ declare function take<T>(count: number): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<T>;
5
+ declare function take<T>(count: number, iterable: Iterable<T>): IterableIterator<T>;
6
+ declare function take<T>(count: number, iterable: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterableIterator<T>;
7
+ export default take;
8
+ //# sourceMappingURL=take.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../src/stream/take.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,wCAAwC;AACxC,iBAAS,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAChF,iBAAS,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC/G,iBAAS,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC5E,iBAAS,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;AA0C3G,eAAe,IAAI,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { isAsyncInput as f, isIterable as e } from "./utils.mjs";
2
+ import s from "./toAsync.mjs";
3
+ function u(r, n) {
4
+ if (n === void 0)
5
+ return (t) => u(r, t);
6
+ const i = Math.floor(r);
7
+ if (!Number.isFinite(i) || i <= 0)
8
+ return f(n) ? (async function* () {
9
+ })() : (function* () {
10
+ })();
11
+ if (f(n))
12
+ return (async function* () {
13
+ let t = 0;
14
+ for await (const o of s(n))
15
+ if (yield o, t += 1, t >= i)
16
+ break;
17
+ })();
18
+ if (e(n))
19
+ return (function* () {
20
+ let t = 0;
21
+ for (const o of n)
22
+ if (yield o, t += 1, t >= i)
23
+ break;
24
+ })();
25
+ throw new TypeError("take: input is not iterable");
26
+ }
27
+ export {
28
+ u as default
29
+ };
30
+ //# sourceMappingURL=take.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"take.mjs","sources":["../../src/stream/take.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** take - lazily take first n values */\nfunction take<T>(count: number): (iterable: Iterable<T>) => IterableIterator<T>;\nfunction take<T>(count: number): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<T>;\nfunction take<T>(count: number, iterable: Iterable<T>): IterableIterator<T>;\nfunction take<T>(count: number, iterable: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterableIterator<T>;\nfunction take<T>(count: number, iterable?: AnyIterableInput<PromiseLikeValue<T>>): any {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<T>>) => take(count, next);\n }\n\n const limit = Math.floor(count);\n if (!Number.isFinite(limit) || limit <= 0) {\n return isAsyncInput(iterable)\n ? (async function* () {})()\n : (function* () {})();\n }\n\n if (isAsyncInput(iterable)) {\n return (async function* () {\n let taken = 0;\n for await (const item of toAsync(iterable)) {\n yield item as T;\n taken += 1;\n if (taken >= limit) {\n break;\n }\n }\n })();\n }\n\n if (isIterable(iterable)) {\n return (function* () {\n let taken = 0;\n for (const item of iterable) {\n yield item as T;\n taken += 1;\n if (taken >= limit) {\n break;\n }\n }\n })();\n }\n\n throw new TypeError('take: input is not iterable');\n}\n\nexport default take;\n"],"names":["take","count","iterable","next","limit","isAsyncInput","taken","item","toAsync","isIterable"],"mappings":";;AASA,SAASA,EAAQC,GAAeC,GAAuD;AACrF,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDH,EAAKC,GAAOE,CAAI;AAG1E,QAAMC,IAAQ,KAAK,MAAMH,CAAK;AAC9B,MAAI,CAAC,OAAO,SAASG,CAAK,KAAKA,KAAS;AACtC,WAAOC,EAAaH,CAAQ,KACvB,mBAAmB;AAAA,IAAC,GAAA,KACpB,aAAa;AAAA,IAAC,GAAA;AAGrB,MAAIG,EAAaH,CAAQ;AACvB,YAAQ,mBAAmB;AACzB,UAAII,IAAQ;AACZ,uBAAiBC,KAAQC,EAAQN,CAAQ;AAGvC,YAFA,MAAMK,GACND,KAAS,GACLA,KAASF;AACX;AAAA,IAGN,GAAA;AAGF,MAAIK,EAAWP,CAAQ;AACrB,YAAQ,aAAa;AACnB,UAAII,IAAQ;AACZ,iBAAWC,KAAQL;AAGjB,YAFA,MAAMK,GACND,KAAS,GACLA,KAASF;AACX;AAAA,IAGN,GAAA;AAGF,QAAM,IAAI,UAAU,6BAA6B;AACnD;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** takeWhile - lazily take values while predicate holds */
3
+ declare function takeWhile<T>(predicate: (value: T) => boolean): (iterable: Iterable<T>) => IterableIterator<T>;
4
+ declare function takeWhile<T>(predicate: (value: T) => boolean | Promise<boolean>): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<T>;
5
+ declare function takeWhile<T>(predicate: (value: T) => boolean, iterable: Iterable<T>): IterableIterator<T>;
6
+ declare function takeWhile<T>(predicate: (value: T) => boolean | Promise<boolean>, iterable: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterableIterator<T>;
7
+ export default takeWhile;
8
+ //# sourceMappingURL=takeWhile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"takeWhile.d.ts","sourceRoot":"","sources":["../../src/stream/takeWhile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,2DAA2D;AAC3D,iBAAS,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACxG,iBAAS,SAAS,CAAC,CAAC,EAClB,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAClD,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACjF,iBAAS,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACpG,iBAAS,SAAS,CAAC,CAAC,EAClB,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EACnD,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC9C,qBAAqB,CAAC,CAAC,CAAC,CAAC;AA+B5B,eAAe,SAAS,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { isAsyncInput as n, isIterable as f } from "./utils.mjs";
2
+ import r from "./toAsync.mjs";
3
+ function e(i, t) {
4
+ if (t === void 0)
5
+ return (o) => e(i, o);
6
+ if (n(t))
7
+ return (async function* () {
8
+ for await (const o of r(t)) {
9
+ if (!await i(o))
10
+ break;
11
+ yield o;
12
+ }
13
+ })();
14
+ if (f(t))
15
+ return (function* () {
16
+ for (const o of t) {
17
+ if (!i(o))
18
+ break;
19
+ yield o;
20
+ }
21
+ })();
22
+ throw new TypeError("takeWhile: input is not iterable");
23
+ }
24
+ export {
25
+ e as default
26
+ };
27
+ //# sourceMappingURL=takeWhile.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"takeWhile.mjs","sources":["../../src/stream/takeWhile.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** takeWhile - lazily take values while predicate holds */\nfunction takeWhile<T>(predicate: (value: T) => boolean): (iterable: Iterable<T>) => IterableIterator<T>;\nfunction takeWhile<T>(\n predicate: (value: T) => boolean | Promise<boolean>\n): (iterable: AnyIterableInput<PromiseLikeValue<T>>) => AsyncIterableIterator<T>;\nfunction takeWhile<T>(predicate: (value: T) => boolean, iterable: Iterable<T>): IterableIterator<T>;\nfunction takeWhile<T>(\n predicate: (value: T) => boolean | Promise<boolean>,\n iterable: AnyIterableInput<PromiseLikeValue<T>>\n): AsyncIterableIterator<T>;\nfunction takeWhile<T>(predicate: (value: T) => boolean | Promise<boolean>, iterable?: AnyIterableInput<PromiseLikeValue<T>>): any {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<T>>) => takeWhile(predicate, next);\n }\n\n if (isAsyncInput(iterable)) {\n return (async function* () {\n for await (const item of toAsync(iterable)) {\n if (!(await predicate(item as T))) {\n break;\n }\n yield item as T;\n }\n })();\n }\n\n if (isIterable(iterable)) {\n return (function* () {\n for (const item of iterable) {\n if (!predicate(item as T)) {\n break;\n }\n yield item as T;\n }\n })();\n }\n\n throw new TypeError('takeWhile: input is not iterable');\n}\n\nexport default takeWhile;\n"],"names":["takeWhile","predicate","iterable","next","isAsyncInput","item","toAsync","isIterable"],"mappings":";;AAcA,SAASA,EAAaC,GAAqDC,GAAuD;AAChI,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDH,EAAUC,GAAWE,CAAI;AAGnF,MAAIC,EAAaF,CAAQ;AACvB,YAAQ,mBAAmB;AACzB,uBAAiBG,KAAQC,EAAQJ,CAAQ,GAAG;AAC1C,YAAI,CAAE,MAAMD,EAAUI,CAAS;AAC7B;AAEF,cAAMA;AAAA,MACR;AAAA,IACF,GAAA;AAGF,MAAIE,EAAWL,CAAQ;AACrB,YAAQ,aAAa;AACnB,iBAAWG,KAAQH,GAAU;AAC3B,YAAI,CAACD,EAAUI,CAAS;AACtB;AAEF,cAAMA;AAAA,MACR;AAAA,IACF,GAAA;AAGF,QAAM,IAAI,UAAU,kCAAkC;AACxD;"}
@@ -0,0 +1,5 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** toArray - Iterable/AsyncIterable을 배열로 수집 */
3
+ declare function toArray<T>(input: AnyIterableInput<PromiseLikeValue<T>>): Promise<T[]>;
4
+ export default toArray;
5
+ //# sourceMappingURL=toArray.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toArray.d.ts","sourceRoot":"","sources":["../../src/stream/toArray.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAGlE,+CAA+C;AAC/C,iBAAe,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAmBpF;AAED,eAAe,OAAO,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { resolveIterable as i, isAsyncIterable as s, awaitValue as a, isIterable as n } from "./utils.mjs";
2
+ async function l(o) {
3
+ const t = await i(o), r = [];
4
+ if (s(t)) {
5
+ for await (const e of t)
6
+ r.push(await a(e));
7
+ return r;
8
+ }
9
+ if (n(t)) {
10
+ for (const e of t)
11
+ r.push(await a(e));
12
+ return r;
13
+ }
14
+ throw new TypeError("toArray: input is not iterable");
15
+ }
16
+ export {
17
+ l as default
18
+ };
19
+ //# sourceMappingURL=toArray.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toArray.mjs","sources":["../../src/stream/toArray.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { awaitValue, isAsyncIterable, isIterable, resolveIterable } from './utils';\n\n/** toArray - Iterable/AsyncIterable을 배열로 수집 */\nasync function toArray<T>(input: AnyIterableInput<PromiseLikeValue<T>>): Promise<T[]> {\n const resolved = await resolveIterable(input);\n const result: T[] = [];\n\n if (isAsyncIterable(resolved)) {\n for await (const item of resolved) {\n result.push(await awaitValue(item));\n }\n return result;\n }\n\n if (isIterable(resolved)) {\n for (const item of resolved) {\n result.push(await awaitValue(item));\n }\n return result;\n }\n\n throw new TypeError('toArray: input is not iterable');\n}\n\nexport default toArray;\n"],"names":["toArray","input","resolved","resolveIterable","result","isAsyncIterable","item","awaitValue","isIterable"],"mappings":";AAIA,eAAeA,EAAWC,GAA4D;AACpF,QAAMC,IAAW,MAAMC,EAAgBF,CAAK,GACtCG,IAAc,CAAA;AAEpB,MAAIC,EAAgBH,CAAQ,GAAG;AAC7B,qBAAiBI,KAAQJ;AACvB,MAAAE,EAAO,KAAK,MAAMG,EAAWD,CAAI,CAAC;AAEpC,WAAOF;AAAA,EACT;AAEA,MAAII,EAAWN,CAAQ,GAAG;AACxB,eAAWI,KAAQJ;AACjB,MAAAE,EAAO,KAAK,MAAMG,EAAWD,CAAI,CAAC;AAEpC,WAAOF;AAAA,EACT;AAEA,QAAM,IAAI,UAAU,gCAAgC;AACtD;"}
@@ -0,0 +1,6 @@
1
+ import { AnyIterable, AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** toAsync - Iterable/AsyncIterable을 AsyncIterable로 승격 */
3
+ declare function toAsync<T>(input: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterable<T>;
4
+ export default toAsync;
5
+ export type { AnyIterable };
6
+ //# sourceMappingURL=toAsync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toAsync.d.ts","sourceRoot":"","sources":["../../src/stream/toAsync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAG/E,0DAA0D;AAC1D,iBAAS,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAsBlF;AAED,eAAe,OAAO,CAAC;AACvB,YAAY,EAAE,WAAW,EAAE,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { resolveIterable as i, isAsyncIterable as a, awaitValue as r, isIterable as n } from "./utils.mjs";
2
+ function f(o) {
3
+ return async function* () {
4
+ const t = await i(o);
5
+ if (a(t)) {
6
+ for await (const e of t)
7
+ yield await r(e);
8
+ return;
9
+ }
10
+ if (n(t)) {
11
+ for (const e of t)
12
+ yield await r(e);
13
+ return;
14
+ }
15
+ throw new TypeError("toAsync: input is not iterable");
16
+ }();
17
+ }
18
+ export {
19
+ f as default
20
+ };
21
+ //# sourceMappingURL=toAsync.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toAsync.mjs","sources":["../../src/stream/toAsync.ts"],"sourcesContent":["import type { AnyIterable, AnyIterableInput, PromiseLikeValue } from './utils';\nimport { awaitValue, isAsyncIterable, isIterable, resolveIterable } from './utils';\n\n/** toAsync - Iterable/AsyncIterable을 AsyncIterable로 승격 */\nfunction toAsync<T>(input: AnyIterableInput<PromiseLikeValue<T>>): AsyncIterable<T> {\n const iterator = async function* () {\n const resolved = await resolveIterable(input);\n\n if (isAsyncIterable(resolved)) {\n for await (const item of resolved) {\n yield await awaitValue(item);\n }\n return;\n }\n\n if (isIterable(resolved)) {\n for (const item of resolved) {\n yield await awaitValue(item);\n }\n return;\n }\n\n throw new TypeError('toAsync: input is not iterable');\n };\n\n return iterator();\n}\n\nexport default toAsync;\nexport type { AnyIterable };\n"],"names":["toAsync","input","resolved","resolveIterable","isAsyncIterable","item","awaitValue","isIterable"],"mappings":";AAIA,SAASA,EAAWC,GAAgE;AAqBlF,SApBiB,mBAAmB;AAClC,UAAMC,IAAW,MAAMC,EAAgBF,CAAK;AAE5C,QAAIG,EAAgBF,CAAQ,GAAG;AAC7B,uBAAiBG,KAAQH;AACvB,cAAM,MAAMI,EAAWD,CAAI;AAE7B;AAAA,IACF;AAEA,QAAIE,EAAWL,CAAQ,GAAG;AACxB,iBAAWG,KAAQH;AACjB,cAAM,MAAMI,EAAWD,CAAI;AAE7B;AAAA,IACF;AAEA,UAAM,IAAI,UAAU,gCAAgC;AAAA,EACtD,EAEO;AACT;"}
@@ -0,0 +1,12 @@
1
+ type AnyIterable<T> = Iterable<T> | AsyncIterable<T>;
2
+ type AnyIterableInput<T> = AnyIterable<T> | Promise<AnyIterable<T>>;
3
+ type PromiseLikeValue<T> = T | PromiseLike<T>;
4
+ declare const isPromiseLike: (value: unknown) => value is PromiseLike<unknown>;
5
+ declare const isAsyncIterable: (value: unknown) => value is AsyncIterable<unknown>;
6
+ declare const isIterable: (value: unknown) => value is Iterable<unknown>;
7
+ declare const isAsyncInput: (value: unknown) => value is PromiseLike<AnyIterable<unknown>> | AsyncIterable<unknown>;
8
+ declare const resolveIterable: <T>(input: AnyIterableInput<T>) => Promise<AnyIterable<T>>;
9
+ declare const awaitValue: <T>(value: PromiseLikeValue<T>) => Promise<T>;
10
+ export type { AnyIterable, AnyIterableInput, PromiseLikeValue };
11
+ export { isPromiseLike, isAsyncIterable, isIterable, isAsyncInput, resolveIterable, awaitValue };
12
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/stream/utils.ts"],"names":[],"mappings":"AAAA,KAAK,WAAW,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;AACrD,KAAK,gBAAgB,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;AAEpE,KAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAE9C,QAAA,MAAM,aAAa,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,WAAW,CAAC,OAAO,CAC0D,CAAC;AAE/H,QAAA,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,aAAa,CAAC,OAAO,CAIO,CAAC;AAEhF,QAAA,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,QAAQ,CAAC,OAAO,CAIO,CAAC;AAEtE,QAAA,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,aAAa,CAAC,OAAO,CACzD,CAAC;AAEjD,QAAA,MAAM,eAAe,GAAU,CAAC,EAAE,OAAO,gBAAgB,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CACrB,CAAC;AAEjE,QAAA,MAAM,UAAU,GAAU,CAAC,EAAE,OAAO,gBAAgB,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,CAAC,CAAiD,CAAC;AAErH,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,10 @@
1
+ const o = (t) => typeof t == "object" && t !== null && "then" in t && typeof t.then == "function", n = (t) => typeof t == "object" && t !== null && Symbol.asyncIterator in t && typeof t[Symbol.asyncIterator] == "function", c = (t) => typeof t == "object" && t !== null && Symbol.iterator in t && typeof t[Symbol.iterator] == "function", s = (t) => o(t) || n(t), y = async (t) => o(t) ? await t : t, e = async (t) => o(t) ? await t : t;
2
+ export {
3
+ e as awaitValue,
4
+ s as isAsyncInput,
5
+ n as isAsyncIterable,
6
+ c as isIterable,
7
+ o as isPromiseLike,
8
+ y as resolveIterable
9
+ };
10
+ //# sourceMappingURL=utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.mjs","sources":["../../src/stream/utils.ts"],"sourcesContent":["type AnyIterable<T> = Iterable<T> | AsyncIterable<T>;\ntype AnyIterableInput<T> = AnyIterable<T> | Promise<AnyIterable<T>>;\n\ntype PromiseLikeValue<T> = T | PromiseLike<T>;\n\nconst isPromiseLike = (value: unknown): value is PromiseLike<unknown> =>\n typeof value === 'object' && value !== null && 'then' in value && typeof (value as PromiseLike<unknown>).then === 'function';\n\nconst isAsyncIterable = (value: unknown): value is AsyncIterable<unknown> =>\n typeof value === 'object' &&\n value !== null &&\n Symbol.asyncIterator in value &&\n typeof (value as AsyncIterable<unknown>)[Symbol.asyncIterator] === 'function';\n\nconst isIterable = (value: unknown): value is Iterable<unknown> =>\n typeof value === 'object' &&\n value !== null &&\n Symbol.iterator in value &&\n typeof (value as Iterable<unknown>)[Symbol.iterator] === 'function';\n\nconst isAsyncInput = (value: unknown): value is PromiseLike<AnyIterable<unknown>> | AsyncIterable<unknown> =>\n isPromiseLike(value) || isAsyncIterable(value);\n\nconst resolveIterable = async <T>(input: AnyIterableInput<T>): Promise<AnyIterable<T>> =>\n (isPromiseLike(input) ? await input : input) as AnyIterable<T>;\n\nconst awaitValue = async <T>(value: PromiseLikeValue<T>): Promise<T> => (isPromiseLike(value) ? await value : value);\n\nexport type { AnyIterable, AnyIterableInput, PromiseLikeValue };\nexport { isPromiseLike, isAsyncIterable, isIterable, isAsyncInput, resolveIterable, awaitValue };\n"],"names":["isPromiseLike","value","isAsyncIterable","isIterable","isAsyncInput","resolveIterable","input","awaitValue"],"mappings":"AAKA,MAAMA,IAAgB,CAACC,MACrB,OAAOA,KAAU,YAAYA,MAAU,QAAQ,UAAUA,KAAS,OAAQA,EAA+B,QAAS,YAE9GC,IAAkB,CAACD,MACvB,OAAOA,KAAU,YACjBA,MAAU,QACV,OAAO,iBAAiBA,KACxB,OAAQA,EAAiC,OAAO,aAAa,KAAM,YAE/DE,IAAa,CAACF,MAClB,OAAOA,KAAU,YACjBA,MAAU,QACV,OAAO,YAAYA,KACnB,OAAQA,EAA4B,OAAO,QAAQ,KAAM,YAErDG,IAAe,CAACH,MACpBD,EAAcC,CAAK,KAAKC,EAAgBD,CAAK,GAEzCI,IAAkB,OAAUC,MAC/BN,EAAcM,CAAK,IAAI,MAAMA,IAAQA,GAElCC,IAAa,OAAUN,MAA4CD,EAAcC,CAAK,IAAI,MAAMA,IAAQA;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** zip - lazily combine two iterables */
3
+ declare function zip<A, B>(other: Iterable<B>): (iterable: Iterable<A>) => IterableIterator<[A, B]>;
4
+ declare function zip<A, B>(other: AnyIterableInput<PromiseLikeValue<B>>): (iterable: AnyIterableInput<PromiseLikeValue<A>>) => AsyncIterableIterator<[A, B]>;
5
+ declare function zip<A, B>(other: Iterable<B>, iterable: Iterable<A>): IterableIterator<[A, B]>;
6
+ declare function zip<A, B>(other: AnyIterableInput<PromiseLikeValue<B>>, iterable: AnyIterableInput<PromiseLikeValue<A>>): AsyncIterableIterator<[A, B]>;
7
+ export default zip;
8
+ //# sourceMappingURL=zip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../src/stream/zip.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIlE,yCAAyC;AACzC,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5F,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EACf,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC3C,CAAC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACtF,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACxF,iBAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EACf,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAC5C,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC9C,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AA0CjC,eAAe,GAAG,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { isAsyncInput as u, isIterable as c } from "./utils.mjs";
2
+ import f from "./toAsync.mjs";
3
+ function a(t, e) {
4
+ if (e === void 0)
5
+ return (n) => a(t, n);
6
+ if (u(t) || u(e))
7
+ return (async function* () {
8
+ const n = f(e), i = f(t), r = n[Symbol.asyncIterator](), o = i[Symbol.asyncIterator]();
9
+ for (; ; ) {
10
+ const [s, l] = await Promise.all([r.next(), o.next()]);
11
+ if (s.done || l.done)
12
+ return;
13
+ yield [s.value, l.value];
14
+ }
15
+ })();
16
+ if (c(e) && c(t))
17
+ return (function* () {
18
+ const n = e[Symbol.iterator](), i = t[Symbol.iterator]();
19
+ for (; ; ) {
20
+ const r = n.next(), o = i.next();
21
+ if (r.done || o.done)
22
+ return;
23
+ yield [r.value, o.value];
24
+ }
25
+ })();
26
+ throw new TypeError("zip: input is not iterable");
27
+ }
28
+ export {
29
+ a as default
30
+ };
31
+ //# sourceMappingURL=zip.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zip.mjs","sources":["../../src/stream/zip.ts"],"sourcesContent":["import type { AnyIterableInput, PromiseLikeValue } from './utils';\nimport { isAsyncInput, isIterable } from './utils';\nimport toAsync from './toAsync';\n\n/** zip - lazily combine two iterables */\nfunction zip<A, B>(other: Iterable<B>): (iterable: Iterable<A>) => IterableIterator<[A, B]>;\nfunction zip<A, B>(\n other: AnyIterableInput<PromiseLikeValue<B>>\n): (iterable: AnyIterableInput<PromiseLikeValue<A>>) => AsyncIterableIterator<[A, B]>;\nfunction zip<A, B>(other: Iterable<B>, iterable: Iterable<A>): IterableIterator<[A, B]>;\nfunction zip<A, B>(\n other: AnyIterableInput<PromiseLikeValue<B>>,\n iterable: AnyIterableInput<PromiseLikeValue<A>>\n): AsyncIterableIterator<[A, B]>;\nfunction zip<A, B>(other: AnyIterableInput<PromiseLikeValue<B>>, iterable?: AnyIterableInput<PromiseLikeValue<A>>): any {\n if (iterable === undefined) {\n return (next: AnyIterableInput<PromiseLikeValue<A>>) => zip(other, next);\n }\n\n if (isAsyncInput(other) || isAsyncInput(iterable)) {\n return (async function* () {\n const left = toAsync(iterable);\n const right = toAsync(other);\n const leftIter = left[Symbol.asyncIterator]();\n const rightIter = right[Symbol.asyncIterator]();\n\n while (true) {\n const [leftResult, rightResult] = await Promise.all([leftIter.next(), rightIter.next()]);\n if (leftResult.done || rightResult.done) {\n return;\n }\n yield [leftResult.value as A, rightResult.value as B];\n }\n })();\n }\n\n if (isIterable(iterable) && isIterable(other)) {\n return (function* () {\n const leftIter = (iterable as Iterable<A>)[Symbol.iterator]();\n const rightIter = (other as Iterable<B>)[Symbol.iterator]();\n\n while (true) {\n const leftResult = leftIter.next();\n const rightResult = rightIter.next();\n if (leftResult.done || rightResult.done) {\n return;\n }\n yield [leftResult.value as A, rightResult.value as B];\n }\n })();\n }\n\n throw new TypeError('zip: input is not iterable');\n}\n\nexport default zip;\n"],"names":["zip","other","iterable","next","isAsyncInput","left","toAsync","right","leftIter","rightIter","leftResult","rightResult","isIterable"],"mappings":";;AAcA,SAASA,EAAUC,GAA8CC,GAAuD;AACtH,MAAIA,MAAa;AACf,WAAO,CAACC,MAAgDH,EAAIC,GAAOE,CAAI;AAGzE,MAAIC,EAAaH,CAAK,KAAKG,EAAaF,CAAQ;AAC9C,YAAQ,mBAAmB;AACzB,YAAMG,IAAOC,EAAQJ,CAAQ,GACvBK,IAAQD,EAAQL,CAAK,GACrBO,IAAWH,EAAK,OAAO,aAAa,EAAA,GACpCI,IAAYF,EAAM,OAAO,aAAa,EAAA;AAE5C,iBAAa;AACX,cAAM,CAACG,GAAYC,CAAW,IAAI,MAAM,QAAQ,IAAI,CAACH,EAAS,KAAA,GAAQC,EAAU,KAAA,CAAM,CAAC;AACvF,YAAIC,EAAW,QAAQC,EAAY;AACjC;AAEF,cAAM,CAACD,EAAW,OAAYC,EAAY,KAAU;AAAA,MACtD;AAAA,IACF,GAAA;AAGF,MAAIC,EAAWV,CAAQ,KAAKU,EAAWX,CAAK;AAC1C,YAAQ,aAAa;AACnB,YAAMO,IAAYN,EAAyB,OAAO,QAAQ,EAAA,GACpDO,IAAaR,EAAsB,OAAO,QAAQ,EAAA;AAExD,iBAAa;AACX,cAAMS,IAAaF,EAAS,KAAA,GACtBG,IAAcF,EAAU,KAAA;AAC9B,YAAIC,EAAW,QAAQC,EAAY;AACjC;AAEF,cAAM,CAACD,EAAW,OAAYC,EAAY,KAAU;AAAA,MACtD;AAAA,IACF,GAAA;AAGF,QAAM,IAAI,UAAU,4BAA4B;AAClD;"}
@@ -0,0 +1,8 @@
1
+ import { AnyIterableInput, PromiseLikeValue } from './utils';
2
+ /** zipWith - lazily combine two iterables with a function */
3
+ declare function zipWith<A, B, R>(fn: (a: A, b: B) => R, other: Iterable<B>): (iterable: Iterable<A>) => IterableIterator<R>;
4
+ declare function zipWith<A, B, R>(fn: (a: A, b: B) => R | Promise<R>, other: AnyIterableInput<PromiseLikeValue<B>>): (iterable: AnyIterableInput<PromiseLikeValue<A>>) => AsyncIterableIterator<R>;
5
+ declare function zipWith<A, B, R>(fn: (a: A, b: B) => R, other: Iterable<B>, iterable: Iterable<A>): IterableIterator<R>;
6
+ declare function zipWith<A, B, R>(fn: (a: A, b: B) => R | Promise<R>, other: AnyIterableInput<PromiseLikeValue<B>>, iterable: AnyIterableInput<PromiseLikeValue<A>>): AsyncIterableIterator<R>;
7
+ export default zipWith;
8
+ //# sourceMappingURL=zipWith.d.ts.map