@daiso-tech/core 0.1.0 → 0.1.2

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 (590) hide show
  1. package/dist/cjs/_module.js +19 -0
  2. package/dist/cjs/_module.js.map +1 -0
  3. package/dist/cjs/collection/_module.js +21 -0
  4. package/dist/cjs/collection/_module.js.map +1 -0
  5. package/dist/cjs/collection/_shared.js +28 -0
  6. package/dist/cjs/collection/_shared.js.map +1 -0
  7. package/dist/cjs/collection/async-iterable-collection/_module.js +18 -0
  8. package/dist/cjs/collection/async-iterable-collection/_module.js.map +1 -0
  9. package/dist/cjs/collection/async-iterable-collection/async-iterable-collection.js +669 -0
  10. package/dist/cjs/collection/async-iterable-collection/async-iterable-collection.js.map +1 -0
  11. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/_module.js +52 -0
  12. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/_module.js.map +1 -0
  13. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-abort-iterable.js +25 -0
  14. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-abort-iterable.js.map +1 -0
  15. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-chunk-iterable.js +43 -0
  16. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-chunk-iterable.js.map +1 -0
  17. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-chunk-whilte-iterable.js +43 -0
  18. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-chunk-whilte-iterable.js.map +1 -0
  19. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-collapse-iterable.js +32 -0
  20. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-collapse-iterable.js.map +1 -0
  21. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-count-by-iterable.js +39 -0
  22. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-count-by-iterable.js.map +1 -0
  23. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-cross-join-iterable.js +43 -0
  24. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-cross-join-iterable.js.map +1 -0
  25. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-delay-iterable.js +25 -0
  26. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-delay-iterable.js.map +1 -0
  27. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-entries-iterable.js +24 -0
  28. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-entries-iterable.js.map +1 -0
  29. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-filter-iterable.js +32 -0
  30. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-filter-iterable.js.map +1 -0
  31. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-flat-map-iterable.js +30 -0
  32. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-flat-map-iterable.js.map +1 -0
  33. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-group-by-iterable.js +30 -0
  34. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-group-by-iterable.js.map +1 -0
  35. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-insert-after-iterable.js +43 -0
  36. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-insert-after-iterable.js.map +1 -0
  37. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-insert-before-iterable.js +43 -0
  38. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-insert-before-iterable.js.map +1 -0
  39. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-map-iterable.js +30 -0
  40. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-map-iterable.js.map +1 -0
  41. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-merge-iterable.js +27 -0
  42. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-merge-iterable.js.map +1 -0
  43. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-pad-end-iterable.js +34 -0
  44. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-pad-end-iterable.js.map +1 -0
  45. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-pad-start-iterable.js +34 -0
  46. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-pad-start-iterable.js.map +1 -0
  47. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-partion-iterable.js +45 -0
  48. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-partion-iterable.js.map +1 -0
  49. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-repeat-iterable.js +32 -0
  50. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-repeat-iterable.js.map +1 -0
  51. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-reverse-iterable.js +28 -0
  52. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-reverse-iterable.js.map +1 -0
  53. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-shuffle-iterable.js +25 -0
  54. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-shuffle-iterable.js.map +1 -0
  55. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-skip-iterable.js +33 -0
  56. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-skip-iterable.js.map +1 -0
  57. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-skip-until-iterable.js +41 -0
  58. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-skip-until-iterable.js.map +1 -0
  59. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-slice-iterable.js +36 -0
  60. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-slice-iterable.js.map +1 -0
  61. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-sliding-iterable.js +45 -0
  62. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-sliding-iterable.js.map +1 -0
  63. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-sort-iterable.js +16 -0
  64. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-sort-iterable.js.map +1 -0
  65. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-split-iterable.js +49 -0
  66. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-split-iterable.js.map +1 -0
  67. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-take-iterable.js +33 -0
  68. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-take-iterable.js.map +1 -0
  69. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-take-until-iterable.js +33 -0
  70. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-take-until-iterable.js.map +1 -0
  71. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-tap-iterable.js +27 -0
  72. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-tap-iterable.js.map +1 -0
  73. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-timeout-iterable.js +21 -0
  74. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-timeout-iterable.js.map +1 -0
  75. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-unique-iterable.js +35 -0
  76. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-unique-iterable.js.map +1 -0
  77. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-update-iterable.js +37 -0
  78. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-update-iterable.js.map +1 -0
  79. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-when-iterable.js +32 -0
  80. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-when-iterable.js.map +1 -0
  81. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-zip-iterable.js +37 -0
  82. package/dist/cjs/collection/async-iterable-collection/async-iterable-helpers/async-zip-iterable.js.map +1 -0
  83. package/dist/cjs/collection/iterable-collection/_module.js +18 -0
  84. package/dist/cjs/collection/iterable-collection/_module.js.map +1 -0
  85. package/dist/cjs/collection/iterable-collection/iterable-collection.js +749 -0
  86. package/dist/cjs/collection/iterable-collection/iterable-collection.js.map +1 -0
  87. package/dist/cjs/collection/iterable-collection/iterable-helpers/_module.js +49 -0
  88. package/dist/cjs/collection/iterable-collection/iterable-helpers/_module.js.map +1 -0
  89. package/dist/cjs/collection/iterable-collection/iterable-helpers/chunk-iterable.js +43 -0
  90. package/dist/cjs/collection/iterable-collection/iterable-helpers/chunk-iterable.js.map +1 -0
  91. package/dist/cjs/collection/iterable-collection/iterable-helpers/chunk-whilte-iterable.js +43 -0
  92. package/dist/cjs/collection/iterable-collection/iterable-helpers/chunk-whilte-iterable.js.map +1 -0
  93. package/dist/cjs/collection/iterable-collection/iterable-helpers/collapse-iterable.js +32 -0
  94. package/dist/cjs/collection/iterable-collection/iterable-helpers/collapse-iterable.js.map +1 -0
  95. package/dist/cjs/collection/iterable-collection/iterable-helpers/count-by-iterable.js +39 -0
  96. package/dist/cjs/collection/iterable-collection/iterable-helpers/count-by-iterable.js.map +1 -0
  97. package/dist/cjs/collection/iterable-collection/iterable-helpers/cross-join-iterable.js +43 -0
  98. package/dist/cjs/collection/iterable-collection/iterable-helpers/cross-join-iterable.js.map +1 -0
  99. package/dist/cjs/collection/iterable-collection/iterable-helpers/entries-iterable.js +34 -0
  100. package/dist/cjs/collection/iterable-collection/iterable-helpers/entries-iterable.js.map +1 -0
  101. package/dist/cjs/collection/iterable-collection/iterable-helpers/filter-iterable.js +32 -0
  102. package/dist/cjs/collection/iterable-collection/iterable-helpers/filter-iterable.js.map +1 -0
  103. package/dist/cjs/collection/iterable-collection/iterable-helpers/flat-map-iterable.js +30 -0
  104. package/dist/cjs/collection/iterable-collection/iterable-helpers/flat-map-iterable.js.map +1 -0
  105. package/dist/cjs/collection/iterable-collection/iterable-helpers/group-by-iterable.js +40 -0
  106. package/dist/cjs/collection/iterable-collection/iterable-helpers/group-by-iterable.js.map +1 -0
  107. package/dist/cjs/collection/iterable-collection/iterable-helpers/insert-after-iterable.js +37 -0
  108. package/dist/cjs/collection/iterable-collection/iterable-helpers/insert-after-iterable.js.map +1 -0
  109. package/dist/cjs/collection/iterable-collection/iterable-helpers/insert-before-iterable.js +37 -0
  110. package/dist/cjs/collection/iterable-collection/iterable-helpers/insert-before-iterable.js.map +1 -0
  111. package/dist/cjs/collection/iterable-collection/iterable-helpers/map-iterable.js +30 -0
  112. package/dist/cjs/collection/iterable-collection/iterable-helpers/map-iterable.js.map +1 -0
  113. package/dist/cjs/collection/iterable-collection/iterable-helpers/merge-iterable.js +27 -0
  114. package/dist/cjs/collection/iterable-collection/iterable-helpers/merge-iterable.js.map +1 -0
  115. package/dist/cjs/collection/iterable-collection/iterable-helpers/pad-end-iterable.js +44 -0
  116. package/dist/cjs/collection/iterable-collection/iterable-helpers/pad-end-iterable.js.map +1 -0
  117. package/dist/cjs/collection/iterable-collection/iterable-helpers/pad-start-iterable.js +44 -0
  118. package/dist/cjs/collection/iterable-collection/iterable-helpers/pad-start-iterable.js.map +1 -0
  119. package/dist/cjs/collection/iterable-collection/iterable-helpers/partion-iterable.js +40 -0
  120. package/dist/cjs/collection/iterable-collection/iterable-helpers/partion-iterable.js.map +1 -0
  121. package/dist/cjs/collection/iterable-collection/iterable-helpers/repeat-iterable.js +32 -0
  122. package/dist/cjs/collection/iterable-collection/iterable-helpers/repeat-iterable.js.map +1 -0
  123. package/dist/cjs/collection/iterable-collection/iterable-helpers/reverse-iterable.js +38 -0
  124. package/dist/cjs/collection/iterable-collection/iterable-helpers/reverse-iterable.js.map +1 -0
  125. package/dist/cjs/collection/iterable-collection/iterable-helpers/shuffle-iterable.js +35 -0
  126. package/dist/cjs/collection/iterable-collection/iterable-helpers/shuffle-iterable.js.map +1 -0
  127. package/dist/cjs/collection/iterable-collection/iterable-helpers/skip-iterable.js +32 -0
  128. package/dist/cjs/collection/iterable-collection/iterable-helpers/skip-iterable.js.map +1 -0
  129. package/dist/cjs/collection/iterable-collection/iterable-helpers/skip-until-iterable.js +36 -0
  130. package/dist/cjs/collection/iterable-collection/iterable-helpers/skip-until-iterable.js.map +1 -0
  131. package/dist/cjs/collection/iterable-collection/iterable-helpers/slice-iterable.js +46 -0
  132. package/dist/cjs/collection/iterable-collection/iterable-helpers/slice-iterable.js.map +1 -0
  133. package/dist/cjs/collection/iterable-collection/iterable-helpers/sliding-iterable.js +45 -0
  134. package/dist/cjs/collection/iterable-collection/iterable-helpers/sliding-iterable.js.map +1 -0
  135. package/dist/cjs/collection/iterable-collection/iterable-helpers/sort-iterable.js +26 -0
  136. package/dist/cjs/collection/iterable-collection/iterable-helpers/sort-iterable.js.map +1 -0
  137. package/dist/cjs/collection/iterable-collection/iterable-helpers/split-iterable.js +49 -0
  138. package/dist/cjs/collection/iterable-collection/iterable-helpers/split-iterable.js.map +1 -0
  139. package/dist/cjs/collection/iterable-collection/iterable-helpers/take-iterable.js +32 -0
  140. package/dist/cjs/collection/iterable-collection/iterable-helpers/take-iterable.js.map +1 -0
  141. package/dist/cjs/collection/iterable-collection/iterable-helpers/take-until-iterable.js +33 -0
  142. package/dist/cjs/collection/iterable-collection/iterable-helpers/take-until-iterable.js.map +1 -0
  143. package/dist/cjs/collection/iterable-collection/iterable-helpers/tap-iterable.js +27 -0
  144. package/dist/cjs/collection/iterable-collection/iterable-helpers/tap-iterable.js.map +1 -0
  145. package/dist/cjs/collection/iterable-collection/iterable-helpers/unique-iterable.js +35 -0
  146. package/dist/cjs/collection/iterable-collection/iterable-helpers/unique-iterable.js.map +1 -0
  147. package/dist/cjs/collection/iterable-collection/iterable-helpers/update-iterable.js +37 -0
  148. package/dist/cjs/collection/iterable-collection/iterable-helpers/update-iterable.js.map +1 -0
  149. package/dist/cjs/collection/iterable-collection/iterable-helpers/when-iterable.js +32 -0
  150. package/dist/cjs/collection/iterable-collection/iterable-helpers/when-iterable.js.map +1 -0
  151. package/dist/cjs/collection/iterable-collection/iterable-helpers/zip-iterable.js +33 -0
  152. package/dist/cjs/collection/iterable-collection/iterable-helpers/zip-iterable.js.map +1 -0
  153. package/dist/cjs/collection/list-collection/_module.js +18 -0
  154. package/dist/cjs/collection/list-collection/_module.js.map +1 -0
  155. package/dist/cjs/collection/list-collection/list-collection.js +1264 -0
  156. package/dist/cjs/collection/list-collection/list-collection.js.map +1 -0
  157. package/dist/cjs/contracts/_module.js +18 -0
  158. package/dist/cjs/contracts/_module.js.map +1 -0
  159. package/dist/cjs/contracts/collection/_module.js +20 -0
  160. package/dist/cjs/contracts/collection/_module.js.map +1 -0
  161. package/dist/cjs/contracts/collection/_shared.js +39 -0
  162. package/dist/cjs/contracts/collection/_shared.js.map +1 -0
  163. package/dist/cjs/contracts/collection/async-collection.contract.js +3 -0
  164. package/dist/cjs/contracts/collection/async-collection.contract.js.map +1 -0
  165. package/dist/cjs/contracts/collection/collection.contract.js +3 -0
  166. package/dist/cjs/contracts/collection/collection.contract.js.map +1 -0
  167. package/dist/cjs/types.js +3 -0
  168. package/dist/cjs/types.js.map +1 -0
  169. package/dist/esm/_module.js +3 -0
  170. package/dist/esm/_module.js.map +1 -0
  171. package/dist/esm/collection/_module.js +5 -0
  172. package/dist/esm/collection/_module.js.map +1 -0
  173. package/dist/esm/collection/_shared.js +23 -0
  174. package/dist/esm/collection/_shared.js.map +1 -0
  175. package/dist/esm/collection/async-iterable-collection/_module.js +2 -0
  176. package/dist/esm/collection/async-iterable-collection/_module.js.map +1 -0
  177. package/dist/esm/collection/async-iterable-collection/async-iterable-collection.js +665 -0
  178. package/dist/esm/collection/async-iterable-collection/async-iterable-collection.js.map +1 -0
  179. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/_module.js +36 -0
  180. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/_module.js.map +1 -0
  181. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-abort-iterable.js +21 -0
  182. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-abort-iterable.js.map +1 -0
  183. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-chunk-iterable.js +39 -0
  184. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-chunk-iterable.js.map +1 -0
  185. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-chunk-whilte-iterable.js +39 -0
  186. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-chunk-whilte-iterable.js.map +1 -0
  187. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-collapse-iterable.js +28 -0
  188. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-collapse-iterable.js.map +1 -0
  189. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-count-by-iterable.js +35 -0
  190. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-count-by-iterable.js.map +1 -0
  191. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-cross-join-iterable.js +39 -0
  192. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-cross-join-iterable.js.map +1 -0
  193. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-delay-iterable.js +21 -0
  194. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-delay-iterable.js.map +1 -0
  195. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-entries-iterable.js +20 -0
  196. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-entries-iterable.js.map +1 -0
  197. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-filter-iterable.js +28 -0
  198. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-filter-iterable.js.map +1 -0
  199. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-flat-map-iterable.js +26 -0
  200. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-flat-map-iterable.js.map +1 -0
  201. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-group-by-iterable.js +26 -0
  202. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-group-by-iterable.js.map +1 -0
  203. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-insert-after-iterable.js +39 -0
  204. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-insert-after-iterable.js.map +1 -0
  205. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-insert-before-iterable.js +39 -0
  206. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-insert-before-iterable.js.map +1 -0
  207. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-map-iterable.js +26 -0
  208. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-map-iterable.js.map +1 -0
  209. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-merge-iterable.js +23 -0
  210. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-merge-iterable.js.map +1 -0
  211. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-pad-end-iterable.js +30 -0
  212. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-pad-end-iterable.js.map +1 -0
  213. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-pad-start-iterable.js +30 -0
  214. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-pad-start-iterable.js.map +1 -0
  215. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-partion-iterable.js +41 -0
  216. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-partion-iterable.js.map +1 -0
  217. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-repeat-iterable.js +28 -0
  218. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-repeat-iterable.js.map +1 -0
  219. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-reverse-iterable.js +24 -0
  220. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-reverse-iterable.js.map +1 -0
  221. package/{src/collection/async-iterable-collection/async-iterable-helpers/async-shuffle-iterable.ts → dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-shuffle-iterable.js} +7 -9
  222. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-shuffle-iterable.js.map +1 -0
  223. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-skip-iterable.js +29 -0
  224. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-skip-iterable.js.map +1 -0
  225. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-skip-until-iterable.js +37 -0
  226. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-skip-until-iterable.js.map +1 -0
  227. package/{src/collection/async-iterable-collection/async-iterable-helpers/async-slice-iterable.ts → dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-slice-iterable.js} +13 -14
  228. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-slice-iterable.js.map +1 -0
  229. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-sliding-iterable.js +41 -0
  230. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-sliding-iterable.js.map +1 -0
  231. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-sort-iterable.js +12 -0
  232. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-sort-iterable.js.map +1 -0
  233. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-split-iterable.js +45 -0
  234. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-split-iterable.js.map +1 -0
  235. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-take-iterable.js +29 -0
  236. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-take-iterable.js.map +1 -0
  237. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-take-until-iterable.js +29 -0
  238. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-take-until-iterable.js.map +1 -0
  239. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-tap-iterable.js +23 -0
  240. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-tap-iterable.js.map +1 -0
  241. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-timeout-iterable.js +17 -0
  242. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-timeout-iterable.js.map +1 -0
  243. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-unique-iterable.js +31 -0
  244. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-unique-iterable.js.map +1 -0
  245. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-update-iterable.js +33 -0
  246. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-update-iterable.js.map +1 -0
  247. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-when-iterable.js +28 -0
  248. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-when-iterable.js.map +1 -0
  249. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-zip-iterable.js +33 -0
  250. package/dist/esm/collection/async-iterable-collection/async-iterable-helpers/async-zip-iterable.js.map +1 -0
  251. package/dist/esm/collection/iterable-collection/_module.js +2 -0
  252. package/dist/esm/collection/iterable-collection/_module.js.map +1 -0
  253. package/dist/esm/collection/iterable-collection/iterable-collection.js +745 -0
  254. package/dist/esm/collection/iterable-collection/iterable-collection.js.map +1 -0
  255. package/dist/esm/collection/iterable-collection/iterable-helpers/_module.js +33 -0
  256. package/dist/esm/collection/iterable-collection/iterable-helpers/_module.js.map +1 -0
  257. package/dist/esm/collection/iterable-collection/iterable-helpers/chunk-iterable.js +39 -0
  258. package/dist/esm/collection/iterable-collection/iterable-helpers/chunk-iterable.js.map +1 -0
  259. package/dist/esm/collection/iterable-collection/iterable-helpers/chunk-whilte-iterable.js +39 -0
  260. package/dist/esm/collection/iterable-collection/iterable-helpers/chunk-whilte-iterable.js.map +1 -0
  261. package/dist/esm/collection/iterable-collection/iterable-helpers/collapse-iterable.js +28 -0
  262. package/dist/esm/collection/iterable-collection/iterable-helpers/collapse-iterable.js.map +1 -0
  263. package/dist/esm/collection/iterable-collection/iterable-helpers/count-by-iterable.js +35 -0
  264. package/dist/esm/collection/iterable-collection/iterable-helpers/count-by-iterable.js.map +1 -0
  265. package/dist/esm/collection/iterable-collection/iterable-helpers/cross-join-iterable.js +39 -0
  266. package/dist/esm/collection/iterable-collection/iterable-helpers/cross-join-iterable.js.map +1 -0
  267. package/dist/esm/collection/iterable-collection/iterable-helpers/entries-iterable.js +30 -0
  268. package/dist/esm/collection/iterable-collection/iterable-helpers/entries-iterable.js.map +1 -0
  269. package/dist/esm/collection/iterable-collection/iterable-helpers/filter-iterable.js +28 -0
  270. package/dist/esm/collection/iterable-collection/iterable-helpers/filter-iterable.js.map +1 -0
  271. package/dist/esm/collection/iterable-collection/iterable-helpers/flat-map-iterable.js +26 -0
  272. package/dist/esm/collection/iterable-collection/iterable-helpers/flat-map-iterable.js.map +1 -0
  273. package/dist/esm/collection/iterable-collection/iterable-helpers/group-by-iterable.js +36 -0
  274. package/dist/esm/collection/iterable-collection/iterable-helpers/group-by-iterable.js.map +1 -0
  275. package/dist/esm/collection/iterable-collection/iterable-helpers/insert-after-iterable.js +33 -0
  276. package/dist/esm/collection/iterable-collection/iterable-helpers/insert-after-iterable.js.map +1 -0
  277. package/dist/esm/collection/iterable-collection/iterable-helpers/insert-before-iterable.js +33 -0
  278. package/dist/esm/collection/iterable-collection/iterable-helpers/insert-before-iterable.js.map +1 -0
  279. package/dist/esm/collection/iterable-collection/iterable-helpers/map-iterable.js +26 -0
  280. package/dist/esm/collection/iterable-collection/iterable-helpers/map-iterable.js.map +1 -0
  281. package/dist/esm/collection/iterable-collection/iterable-helpers/merge-iterable.js +23 -0
  282. package/dist/esm/collection/iterable-collection/iterable-helpers/merge-iterable.js.map +1 -0
  283. package/dist/esm/collection/iterable-collection/iterable-helpers/pad-end-iterable.js +40 -0
  284. package/dist/esm/collection/iterable-collection/iterable-helpers/pad-end-iterable.js.map +1 -0
  285. package/dist/esm/collection/iterable-collection/iterable-helpers/pad-start-iterable.js +40 -0
  286. package/dist/esm/collection/iterable-collection/iterable-helpers/pad-start-iterable.js.map +1 -0
  287. package/dist/esm/collection/iterable-collection/iterable-helpers/partion-iterable.js +36 -0
  288. package/dist/esm/collection/iterable-collection/iterable-helpers/partion-iterable.js.map +1 -0
  289. package/dist/esm/collection/iterable-collection/iterable-helpers/repeat-iterable.js +28 -0
  290. package/dist/esm/collection/iterable-collection/iterable-helpers/repeat-iterable.js.map +1 -0
  291. package/dist/esm/collection/iterable-collection/iterable-helpers/reverse-iterable.js +34 -0
  292. package/dist/esm/collection/iterable-collection/iterable-helpers/reverse-iterable.js.map +1 -0
  293. package/dist/esm/collection/iterable-collection/iterable-helpers/shuffle-iterable.js +31 -0
  294. package/dist/esm/collection/iterable-collection/iterable-helpers/shuffle-iterable.js.map +1 -0
  295. package/dist/esm/collection/iterable-collection/iterable-helpers/skip-iterable.js +28 -0
  296. package/dist/esm/collection/iterable-collection/iterable-helpers/skip-iterable.js.map +1 -0
  297. package/dist/esm/collection/iterable-collection/iterable-helpers/skip-until-iterable.js +32 -0
  298. package/dist/esm/collection/iterable-collection/iterable-helpers/skip-until-iterable.js.map +1 -0
  299. package/dist/esm/collection/iterable-collection/iterable-helpers/slice-iterable.js +42 -0
  300. package/dist/esm/collection/iterable-collection/iterable-helpers/slice-iterable.js.map +1 -0
  301. package/dist/esm/collection/iterable-collection/iterable-helpers/sliding-iterable.js +41 -0
  302. package/dist/esm/collection/iterable-collection/iterable-helpers/sliding-iterable.js.map +1 -0
  303. package/dist/esm/collection/iterable-collection/iterable-helpers/sort-iterable.js +22 -0
  304. package/dist/esm/collection/iterable-collection/iterable-helpers/sort-iterable.js.map +1 -0
  305. package/dist/esm/collection/iterable-collection/iterable-helpers/split-iterable.js +45 -0
  306. package/dist/esm/collection/iterable-collection/iterable-helpers/split-iterable.js.map +1 -0
  307. package/dist/esm/collection/iterable-collection/iterable-helpers/take-iterable.js +28 -0
  308. package/dist/esm/collection/iterable-collection/iterable-helpers/take-iterable.js.map +1 -0
  309. package/dist/esm/collection/iterable-collection/iterable-helpers/take-until-iterable.js +29 -0
  310. package/dist/esm/collection/iterable-collection/iterable-helpers/take-until-iterable.js.map +1 -0
  311. package/dist/esm/collection/iterable-collection/iterable-helpers/tap-iterable.js +23 -0
  312. package/dist/esm/collection/iterable-collection/iterable-helpers/tap-iterable.js.map +1 -0
  313. package/dist/esm/collection/iterable-collection/iterable-helpers/unique-iterable.js +31 -0
  314. package/dist/esm/collection/iterable-collection/iterable-helpers/unique-iterable.js.map +1 -0
  315. package/dist/esm/collection/iterable-collection/iterable-helpers/update-iterable.js +33 -0
  316. package/dist/esm/collection/iterable-collection/iterable-helpers/update-iterable.js.map +1 -0
  317. package/dist/esm/collection/iterable-collection/iterable-helpers/when-iterable.js +28 -0
  318. package/dist/esm/collection/iterable-collection/iterable-helpers/when-iterable.js.map +1 -0
  319. package/dist/esm/collection/iterable-collection/iterable-helpers/zip-iterable.js +29 -0
  320. package/dist/esm/collection/iterable-collection/iterable-helpers/zip-iterable.js.map +1 -0
  321. package/dist/esm/collection/list-collection/_module.js +2 -0
  322. package/dist/esm/collection/list-collection/_module.js.map +1 -0
  323. package/dist/esm/collection/list-collection/list-collection.js +1260 -0
  324. package/dist/esm/collection/list-collection/list-collection.js.map +1 -0
  325. package/dist/esm/contracts/_module.js +2 -0
  326. package/dist/esm/contracts/_module.js.map +1 -0
  327. package/dist/esm/contracts/collection/_module.js +4 -0
  328. package/dist/esm/contracts/collection/_module.js.map +1 -0
  329. package/dist/esm/contracts/collection/_shared.js +31 -0
  330. package/dist/esm/contracts/collection/_shared.js.map +1 -0
  331. package/dist/esm/contracts/collection/async-collection.contract.js +1 -0
  332. package/dist/esm/contracts/collection/async-collection.contract.js.map +1 -0
  333. package/dist/esm/contracts/collection/collection.contract.js +1 -0
  334. package/dist/esm/contracts/collection/collection.contract.js.map +1 -0
  335. package/dist/esm/types.js +1 -0
  336. package/dist/esm/types.js.map +1 -0
  337. package/dist/types/_module.d.ts +2 -0
  338. package/dist/types/collection/_module.d.ts +4 -0
  339. package/dist/types/collection/_shared.d.ts +16 -0
  340. package/dist/types/collection/async-iterable-collection/_module.d.ts +1 -0
  341. package/dist/types/collection/async-iterable-collection/async-iterable-collection.d.ts +92 -0
  342. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/_module.d.ts +35 -0
  343. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-abort-iterable.d.ts +10 -0
  344. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-chunk-iterable.d.ts +11 -0
  345. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-chunk-whilte-iterable.d.ts +12 -0
  346. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-collapse-iterable.d.ts +9 -0
  347. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-count-by-iterable.d.ts +11 -0
  348. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-cross-join-iterable.d.ts +11 -0
  349. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-delay-iterable.d.ts +10 -0
  350. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-entries-iterable.d.ts +11 -0
  351. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-filter-iterable.d.ts +11 -0
  352. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-flat-map-iterable.d.ts +11 -0
  353. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-group-by-iterable.d.ts +12 -0
  354. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-insert-after-iterable.d.ts +12 -0
  355. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-insert-before-iterable.d.ts +12 -0
  356. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-map-iterable.d.ts +11 -0
  357. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-merge-iterable.d.ts +10 -0
  358. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-pad-end-iterable.d.ts +12 -0
  359. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-pad-start-iterable.d.ts +12 -0
  360. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-partion-iterable.d.ts +12 -0
  361. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-repeat-iterable.d.ts +11 -0
  362. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-reverse-iterable.d.ts +12 -0
  363. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-shuffle-iterable.d.ts +9 -0
  364. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-skip-iterable.d.ts +11 -0
  365. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-skip-until-iterable.d.ts +11 -0
  366. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-slice-iterable.d.ts +12 -0
  367. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-sliding-iterable.d.ts +12 -0
  368. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-sort-iterable.d.ts +10 -0
  369. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-split-iterable.d.ts +12 -0
  370. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-take-iterable.d.ts +11 -0
  371. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-take-until-iterable.d.ts +11 -0
  372. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-tap-iterable.d.ts +10 -0
  373. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-timeout-iterable.d.ts +10 -0
  374. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-unique-iterable.d.ts +11 -0
  375. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-update-iterable.d.ts +12 -0
  376. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-when-iterable.d.ts +11 -0
  377. package/dist/types/collection/async-iterable-collection/async-iterable-helpers/async-zip-iterable.d.ts +10 -0
  378. package/dist/types/collection/iterable-collection/_module.d.ts +1 -0
  379. package/dist/types/collection/iterable-collection/iterable-collection.d.ts +89 -0
  380. package/dist/types/collection/iterable-collection/iterable-helpers/_module.d.ts +32 -0
  381. package/dist/types/collection/iterable-collection/iterable-helpers/chunk-iterable.d.ts +8 -0
  382. package/dist/types/collection/iterable-collection/iterable-helpers/chunk-whilte-iterable.d.ts +9 -0
  383. package/dist/types/collection/iterable-collection/iterable-helpers/collapse-iterable.d.ts +6 -0
  384. package/dist/types/collection/iterable-collection/iterable-helpers/count-by-iterable.d.ts +8 -0
  385. package/dist/types/collection/iterable-collection/iterable-helpers/cross-join-iterable.d.ts +8 -0
  386. package/dist/types/collection/iterable-collection/iterable-helpers/entries-iterable.d.ts +7 -0
  387. package/dist/types/collection/iterable-collection/iterable-helpers/filter-iterable.d.ts +8 -0
  388. package/dist/types/collection/iterable-collection/iterable-helpers/flat-map-iterable.d.ts +8 -0
  389. package/dist/types/collection/iterable-collection/iterable-helpers/group-by-iterable.d.ts +9 -0
  390. package/dist/types/collection/iterable-collection/iterable-helpers/insert-after-iterable.d.ts +9 -0
  391. package/dist/types/collection/iterable-collection/iterable-helpers/insert-before-iterable.d.ts +9 -0
  392. package/dist/types/collection/iterable-collection/iterable-helpers/map-iterable.d.ts +8 -0
  393. package/dist/types/collection/iterable-collection/iterable-helpers/merge-iterable.d.ts +6 -0
  394. package/dist/types/collection/iterable-collection/iterable-helpers/pad-end-iterable.d.ts +9 -0
  395. package/dist/types/collection/iterable-collection/iterable-helpers/pad-start-iterable.d.ts +9 -0
  396. package/dist/types/collection/iterable-collection/iterable-helpers/partion-iterable.d.ts +9 -0
  397. package/dist/types/collection/iterable-collection/iterable-helpers/repeat-iterable.d.ts +8 -0
  398. package/dist/types/collection/iterable-collection/iterable-helpers/reverse-iterable.d.ts +9 -0
  399. package/dist/types/collection/iterable-collection/iterable-helpers/shuffle-iterable.d.ts +5 -0
  400. package/dist/types/collection/iterable-collection/iterable-helpers/skip-iterable.d.ts +8 -0
  401. package/dist/types/collection/iterable-collection/iterable-helpers/skip-until-iterable.d.ts +8 -0
  402. package/dist/types/collection/iterable-collection/iterable-helpers/slice-iterable.d.ts +9 -0
  403. package/dist/types/collection/iterable-collection/iterable-helpers/sliding-iterable.d.ts +9 -0
  404. package/dist/types/collection/iterable-collection/iterable-helpers/sort-iterable.d.ts +7 -0
  405. package/dist/types/collection/iterable-collection/iterable-helpers/split-iterable.d.ts +9 -0
  406. package/dist/types/collection/iterable-collection/iterable-helpers/take-iterable.d.ts +8 -0
  407. package/dist/types/collection/iterable-collection/iterable-helpers/take-until-iterable.d.ts +8 -0
  408. package/dist/types/collection/iterable-collection/iterable-helpers/tap-iterable.d.ts +7 -0
  409. package/dist/types/collection/iterable-collection/iterable-helpers/unique-iterable.d.ts +8 -0
  410. package/dist/types/collection/iterable-collection/iterable-helpers/update-iterable.d.ts +9 -0
  411. package/dist/types/collection/iterable-collection/iterable-helpers/when-iterable.d.ts +8 -0
  412. package/dist/types/collection/iterable-collection/iterable-helpers/zip-iterable.d.ts +7 -0
  413. package/dist/types/collection/list-collection/_module.d.ts +1 -0
  414. package/dist/types/collection/list-collection/list-collection.d.ts +86 -0
  415. package/dist/types/contracts/_module.d.ts +1 -0
  416. package/dist/types/contracts/collection/_module.d.ts +3 -0
  417. package/{src/contracts/collection/_shared.ts → dist/types/contracts/collection/_shared.d.ts} +31 -118
  418. package/{src/contracts/collection/async-collection.contract.ts → dist/types/contracts/collection/async-collection.contract.d.ts} +84 -356
  419. package/{src/contracts/collection/collection.contract.ts → dist/types/contracts/collection/collection.contract.d.ts} +54 -311
  420. package/dist/types/types.d.ts +1 -0
  421. package/package.json +5 -2
  422. package/.changeset/README.md +0 -8
  423. package/.changeset/config.json +0 -11
  424. package/.eslintignore +0 -3
  425. package/.eslintrc.json +0 -50
  426. package/.gitattributes +0 -6
  427. package/.github/workflows/main.yaml +0 -54
  428. package/.github/workflows/release.yaml +0 -31
  429. package/.prettierignore +0 -4
  430. package/.prettierrc.json +0 -4
  431. package/.vscode/settings.json +0 -46
  432. package/CHANGELOG.md +0 -7
  433. package/docs-api/.nojekyll +0 -1
  434. package/docs-api/assets/highlight.css +0 -92
  435. package/docs-api/assets/icons.js +0 -18
  436. package/docs-api/assets/icons.svg +0 -1
  437. package/docs-api/assets/main.js +0 -60
  438. package/docs-api/assets/navigation.js +0 -1
  439. package/docs-api/assets/search.js +0 -1
  440. package/docs-api/assets/style.css +0 -1448
  441. package/docs-api/classes/AsyncIterableCollection.html +0 -437
  442. package/docs-api/classes/CollectionError.html +0 -12
  443. package/docs-api/classes/IndexOverflowError.html +0 -12
  444. package/docs-api/classes/ItemNotFoundError.html +0 -12
  445. package/docs-api/classes/IterableCollection.html +0 -434
  446. package/docs-api/classes/ListCollection.html +0 -434
  447. package/docs-api/classes/MultipleItemsFoundError.html +0 -12
  448. package/docs-api/classes/UnexpectedCollectionError.html +0 -12
  449. package/docs-api/functions/isAsyncIterable.html +0 -1
  450. package/docs-api/functions/isIterable.html +0 -1
  451. package/docs-api/functions/range.html +0 -4
  452. package/docs-api/hierarchy.html +0 -1
  453. package/docs-api/index.html +0 -1
  454. package/docs-api/modules.html +0 -60
  455. package/docs-api/types/AsyncCollapse.html +0 -1
  456. package/docs-api/types/AsyncFilter.html +0 -1
  457. package/docs-api/types/AsyncFilter_.html +0 -1
  458. package/docs-api/types/AsyncFindOrSettings.html +0 -1
  459. package/docs-api/types/AsyncFindSettings.html +0 -1
  460. package/docs-api/types/AsyncForEach.html +0 -1
  461. package/docs-api/types/AsyncForEach_.html +0 -1
  462. package/docs-api/types/AsyncGroupBySettings.html +0 -1
  463. package/docs-api/types/AsyncIterableValue.html +0 -1
  464. package/docs-api/types/AsyncLazyable.html +0 -1
  465. package/docs-api/types/AsyncLazyable_.html +0 -1
  466. package/docs-api/types/AsyncMap.html +0 -1
  467. package/docs-api/types/AsyncMap_.html +0 -1
  468. package/docs-api/types/AsyncModifier.html +0 -1
  469. package/docs-api/types/AsyncModifier_.html +0 -1
  470. package/docs-api/types/AsyncReduce.html +0 -1
  471. package/docs-api/types/AsyncReduceSettings.html +0 -1
  472. package/docs-api/types/AsyncReduce_.html +0 -1
  473. package/docs-api/types/AsyncTap.html +0 -1
  474. package/docs-api/types/AsyncTap_.html +0 -1
  475. package/docs-api/types/AsyncTransform.html +0 -1
  476. package/docs-api/types/AsyncTransform_.html +0 -1
  477. package/docs-api/types/Collapse.html +0 -1
  478. package/docs-api/types/Comparator.html +0 -1
  479. package/docs-api/types/EnsureType.html +0 -1
  480. package/docs-api/types/Filter.html +0 -1
  481. package/docs-api/types/FilterGuard.html +0 -1
  482. package/docs-api/types/Filter_.html +0 -1
  483. package/docs-api/types/FindOrSettings.html +0 -1
  484. package/docs-api/types/FindSettings.html +0 -1
  485. package/docs-api/types/ForEach.html +0 -1
  486. package/docs-api/types/GroupBySettings.html +0 -1
  487. package/docs-api/types/IAsyncCollection.html +0 -357
  488. package/docs-api/types/ICollection.html +0 -357
  489. package/docs-api/types/JoinSettings.html +0 -1
  490. package/docs-api/types/Lazyable.html +0 -1
  491. package/docs-api/types/Map.html +0 -1
  492. package/docs-api/types/Modifier.html +0 -1
  493. package/docs-api/types/PageSettings.html +0 -1
  494. package/docs-api/types/RecordItem.html +0 -1
  495. package/docs-api/types/Reduce.html +0 -1
  496. package/docs-api/types/ReduceSettings.html +0 -1
  497. package/docs-api/types/ReverseSettings.html +0 -1
  498. package/docs-api/types/SliceSettings.html +0 -1
  499. package/docs-api/types/SlidingSettings.html +0 -1
  500. package/docs-api/types/Tap.html +0 -1
  501. package/docs-api/types/Transform.html +0 -1
  502. package/docs-api/types/UpdatedItem.html +0 -1
  503. package/src/_module.ts +0 -2
  504. package/src/collection/_module.ts +0 -4
  505. package/src/collection/_shared.ts +0 -45
  506. package/src/collection/async-iterable-collection/_module.ts +0 -1
  507. package/src/collection/async-iterable-collection/async-iterable-collection.test.ts +0 -3195
  508. package/src/collection/async-iterable-collection/async-iterable-collection.ts +0 -1276
  509. package/src/collection/async-iterable-collection/async-iterable-helpers/_module.ts +0 -35
  510. package/src/collection/async-iterable-collection/async-iterable-helpers/async-abort-iterable.ts +0 -25
  511. package/src/collection/async-iterable-collection/async-iterable-helpers/async-chunk-iterable.ts +0 -57
  512. package/src/collection/async-iterable-collection/async-iterable-helpers/async-chunk-whilte-iterable.ts +0 -54
  513. package/src/collection/async-iterable-collection/async-iterable-helpers/async-collapse-iterable.ts +0 -40
  514. package/src/collection/async-iterable-collection/async-iterable-helpers/async-count-by-iterable.ts +0 -58
  515. package/src/collection/async-iterable-collection/async-iterable-helpers/async-cross-join-iterable.ts +0 -69
  516. package/src/collection/async-iterable-collection/async-iterable-helpers/async-delay-iterable.ts +0 -19
  517. package/src/collection/async-iterable-collection/async-iterable-helpers/async-entries-iterable.ts +0 -28
  518. package/src/collection/async-iterable-collection/async-iterable-helpers/async-filter-iterable.ts +0 -42
  519. package/src/collection/async-iterable-collection/async-iterable-helpers/async-flat-map-iterable.ts +0 -44
  520. package/src/collection/async-iterable-collection/async-iterable-helpers/async-group-by-iterable.ts +0 -48
  521. package/src/collection/async-iterable-collection/async-iterable-helpers/async-insert-after-iterable.ts +0 -57
  522. package/src/collection/async-iterable-collection/async-iterable-helpers/async-insert-before-iterable.ts +0 -57
  523. package/src/collection/async-iterable-collection/async-iterable-helpers/async-map-iterable.ts +0 -40
  524. package/src/collection/async-iterable-collection/async-iterable-helpers/async-merge-iterable.ts +0 -35
  525. package/src/collection/async-iterable-collection/async-iterable-helpers/async-pad-end-iterable.ts +0 -41
  526. package/src/collection/async-iterable-collection/async-iterable-helpers/async-pad-start-iterable.ts +0 -41
  527. package/src/collection/async-iterable-collection/async-iterable-helpers/async-partion-iterable.ts +0 -63
  528. package/src/collection/async-iterable-collection/async-iterable-helpers/async-repeat-iterable.ts +0 -40
  529. package/src/collection/async-iterable-collection/async-iterable-helpers/async-reverse-iterable.ts +0 -35
  530. package/src/collection/async-iterable-collection/async-iterable-helpers/async-skip-iterable.ts +0 -41
  531. package/src/collection/async-iterable-collection/async-iterable-helpers/async-skip-until-iterable.ts +0 -55
  532. package/src/collection/async-iterable-collection/async-iterable-helpers/async-sliding-iterable.ts +0 -54
  533. package/src/collection/async-iterable-collection/async-iterable-helpers/async-sort-iterable.ts +0 -18
  534. package/src/collection/async-iterable-collection/async-iterable-helpers/async-split-iterable.ts +0 -64
  535. package/src/collection/async-iterable-collection/async-iterable-helpers/async-take-iterable.ts +0 -41
  536. package/src/collection/async-iterable-collection/async-iterable-helpers/async-take-until-iterable.ts +0 -41
  537. package/src/collection/async-iterable-collection/async-iterable-helpers/async-tap-iterable.ts +0 -34
  538. package/src/collection/async-iterable-collection/async-iterable-helpers/async-timeout-iterable.ts +0 -20
  539. package/src/collection/async-iterable-collection/async-iterable-helpers/async-unique-iterable.ts +0 -49
  540. package/src/collection/async-iterable-collection/async-iterable-helpers/async-update-iterable.ts +0 -64
  541. package/src/collection/async-iterable-collection/async-iterable-helpers/async-when-iterable.ts +0 -43
  542. package/src/collection/async-iterable-collection/async-iterable-helpers/async-zip-iterable.ts +0 -45
  543. package/src/collection/iterable-collection/_module.ts +0 -1
  544. package/src/collection/iterable-collection/iterable-collection.test.ts +0 -2379
  545. package/src/collection/iterable-collection/iterable-collection.ts +0 -1317
  546. package/src/collection/iterable-collection/iterable-helpers/_module.ts +0 -32
  547. package/src/collection/iterable-collection/iterable-helpers/chunk-iterable.ts +0 -49
  548. package/src/collection/iterable-collection/iterable-helpers/chunk-whilte-iterable.ts +0 -51
  549. package/src/collection/iterable-collection/iterable-helpers/collapse-iterable.ts +0 -35
  550. package/src/collection/iterable-collection/iterable-helpers/count-by-iterable.ts +0 -49
  551. package/src/collection/iterable-collection/iterable-helpers/cross-join-iterable.ts +0 -57
  552. package/src/collection/iterable-collection/iterable-helpers/entries-iterable.ts +0 -42
  553. package/src/collection/iterable-collection/iterable-helpers/filter-iterable.ts +0 -39
  554. package/src/collection/iterable-collection/iterable-helpers/flat-map-iterable.ts +0 -35
  555. package/src/collection/iterable-collection/iterable-helpers/group-by-iterable.ts +0 -52
  556. package/src/collection/iterable-collection/iterable-helpers/insert-after-iterable.ts +0 -43
  557. package/src/collection/iterable-collection/iterable-helpers/insert-before-iterable.ts +0 -43
  558. package/src/collection/iterable-collection/iterable-helpers/map-iterable.ts +0 -35
  559. package/src/collection/iterable-collection/iterable-helpers/merge-iterable.ts +0 -31
  560. package/src/collection/iterable-collection/iterable-helpers/pad-end-iterable.ts +0 -52
  561. package/src/collection/iterable-collection/iterable-helpers/pad-start-iterable.ts +0 -52
  562. package/src/collection/iterable-collection/iterable-helpers/partion-iterable.ts +0 -46
  563. package/src/collection/iterable-collection/iterable-helpers/repeat-iterable.ts +0 -36
  564. package/src/collection/iterable-collection/iterable-helpers/reverse-iterable.ts +0 -46
  565. package/src/collection/iterable-collection/iterable-helpers/shuffle-iterable.ts +0 -36
  566. package/src/collection/iterable-collection/iterable-helpers/skip-iterable.ts +0 -37
  567. package/src/collection/iterable-collection/iterable-helpers/skip-until-iterable.ts +0 -41
  568. package/src/collection/iterable-collection/iterable-helpers/slice-iterable.ts +0 -47
  569. package/src/collection/iterable-collection/iterable-helpers/sliding-iterable.ts +0 -49
  570. package/src/collection/iterable-collection/iterable-helpers/sort-iterable.ts +0 -29
  571. package/src/collection/iterable-collection/iterable-helpers/split-iterable.ts +0 -58
  572. package/src/collection/iterable-collection/iterable-helpers/take-iterable.ts +0 -37
  573. package/src/collection/iterable-collection/iterable-helpers/take-until-iterable.ts +0 -38
  574. package/src/collection/iterable-collection/iterable-helpers/tap-iterable.ts +0 -31
  575. package/src/collection/iterable-collection/iterable-helpers/unique-iterable.ts +0 -43
  576. package/src/collection/iterable-collection/iterable-helpers/update-iterable.ts +0 -50
  577. package/src/collection/iterable-collection/iterable-helpers/when-iterable.ts +0 -37
  578. package/src/collection/iterable-collection/iterable-helpers/zip-iterable.ts +0 -41
  579. package/src/collection/list-collection/_module.ts +0 -1
  580. package/src/collection/list-collection/list-collection.test.ts +0 -2280
  581. package/src/collection/list-collection/list-collection.ts +0 -1883
  582. package/src/contracts/_module.ts +0 -1
  583. package/src/contracts/collection/_module.ts +0 -3
  584. package/src/types.ts +0 -2
  585. package/tsconfig.base.json +0 -31
  586. package/tsconfig.cjs.json +0 -12
  587. package/tsconfig.esm.json +0 -12
  588. package/tsconfig.json +0 -10
  589. package/tsconfig.types.json +0 -12
  590. package/vite.config.ts +0 -6
@@ -0,0 +1,749 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IterableCollection = void 0;
4
+ const _module_1 = require("../../contracts/collection/_module");
5
+ const _module_2 = require("../../collection/iterable-collection/iterable-helpers/_module");
6
+ class IterableCollection {
7
+ iterable;
8
+ static THROW_ON_NUMBER_LIMIT = false;
9
+ static DEFAULT_CHUNK_SIZE = 1024;
10
+ static makeCollection = (iterable = []) => {
11
+ return new IterableCollection(iterable);
12
+ };
13
+ constructor(iterable) {
14
+ this.iterable = iterable;
15
+ }
16
+ *[Symbol.iterator]() {
17
+ try {
18
+ yield* this.iterable;
19
+ }
20
+ catch (error) {
21
+ if (error instanceof _module_1.CollectionError ||
22
+ error instanceof TypeError) {
23
+ throw error;
24
+ }
25
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
26
+ }
27
+ }
28
+ iterator() {
29
+ return this[Symbol.iterator]();
30
+ }
31
+ entries(throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
32
+ return new IterableCollection(new _module_2.EntriesIterable(this, throwOnNumberLimit));
33
+ }
34
+ keys(throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
35
+ return this.entries(throwOnNumberLimit).map(([key]) => key);
36
+ }
37
+ values() {
38
+ return this.entries().map(([_key, value]) => value);
39
+ }
40
+ filter(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
41
+ return new IterableCollection(new _module_2.FilterIterable(this, filter, throwOnNumberLimit));
42
+ }
43
+ map(map, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
44
+ return new IterableCollection(new _module_2.MapIterable(this, map, throwOnNumberLimit));
45
+ }
46
+ reduce(settings) {
47
+ try {
48
+ const { reduceFn: reduce, initialValue, throwOnNumberLimit, } = settings;
49
+ if (initialValue === undefined && this.empty()) {
50
+ throw new TypeError("Reduce of empty array must be inputed a initial value");
51
+ }
52
+ if (initialValue !== undefined) {
53
+ let output = initialValue, index = 0;
54
+ for (const item of this) {
55
+ if (throwOnNumberLimit &&
56
+ index === Number.MAX_SAFE_INTEGER) {
57
+ throw new _module_1.IndexOverflowError("Index has overflowed");
58
+ }
59
+ output = reduce(output, item, index, this);
60
+ index++;
61
+ }
62
+ return output;
63
+ }
64
+ let output = this.firstOrFail(), index = 0, isFirstIteration = true;
65
+ for (const item of this) {
66
+ if (!isFirstIteration) {
67
+ if (throwOnNumberLimit &&
68
+ index === Number.MAX_SAFE_INTEGER) {
69
+ throw new _module_1.IndexOverflowError("Index has overflowed");
70
+ }
71
+ output = reduce(output, item, index, this);
72
+ }
73
+ isFirstIteration = false;
74
+ index++;
75
+ }
76
+ return output;
77
+ }
78
+ catch (error) {
79
+ if (error instanceof _module_1.CollectionError ||
80
+ error instanceof TypeError) {
81
+ throw error;
82
+ }
83
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
84
+ }
85
+ }
86
+ join(settings) {
87
+ try {
88
+ return this.reduce({
89
+ reduceFn(str, item) {
90
+ if (typeof item !== "string") {
91
+ throw new TypeError("Item type is invalid must be string");
92
+ }
93
+ const separator = settings?.seperator ?? ",";
94
+ return str + separator + item;
95
+ },
96
+ throwOnNumberLimit: settings?.throwOnNumberLimit ??
97
+ IterableCollection.THROW_ON_NUMBER_LIMIT,
98
+ });
99
+ }
100
+ catch (error) {
101
+ if (error instanceof _module_1.CollectionError ||
102
+ error instanceof TypeError) {
103
+ throw error;
104
+ }
105
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
106
+ }
107
+ }
108
+ collapse() {
109
+ return new IterableCollection(new _module_2.CollapseIterable(this));
110
+ }
111
+ flatMap(map, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
112
+ return new IterableCollection(new _module_2.FlatMapIterable(this, map, throwOnNumberLimit));
113
+ }
114
+ update(filter, map, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
115
+ return new IterableCollection(new _module_2.UpdateIterable(this, filter, map, throwOnNumberLimit));
116
+ }
117
+ page(settings) {
118
+ const { page, pageSize, throwOnNumberLimit } = settings;
119
+ if (page < 0) {
120
+ return this.skip(page * pageSize, throwOnNumberLimit).take(pageSize, throwOnNumberLimit);
121
+ }
122
+ return this.skip((page - 1) * pageSize, throwOnNumberLimit).take(page * pageSize, throwOnNumberLimit);
123
+ }
124
+ sum() {
125
+ try {
126
+ let sum = 0;
127
+ for (const item of this) {
128
+ if (typeof item !== "number") {
129
+ throw new TypeError("Item type is invalid must be number");
130
+ }
131
+ sum += item;
132
+ }
133
+ return sum;
134
+ }
135
+ catch (error) {
136
+ if (error instanceof _module_1.CollectionError ||
137
+ error instanceof TypeError) {
138
+ throw error;
139
+ }
140
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
141
+ }
142
+ }
143
+ average() {
144
+ try {
145
+ let size = 0, sum = 0;
146
+ for (const item of this) {
147
+ if (typeof item !== "number") {
148
+ throw new TypeError("Item type is invalid must be number");
149
+ }
150
+ size++;
151
+ sum += item;
152
+ }
153
+ return (sum / size);
154
+ }
155
+ catch (error) {
156
+ if (error instanceof _module_1.CollectionError ||
157
+ error instanceof TypeError) {
158
+ throw error;
159
+ }
160
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
161
+ }
162
+ }
163
+ median(throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
164
+ if (this.empty()) {
165
+ return 0;
166
+ }
167
+ const size = this.size(throwOnNumberLimit);
168
+ if (size === 0) {
169
+ return 0;
170
+ }
171
+ const isEven = size % 2 === 0, items = this.map((item) => {
172
+ if (typeof item !== "number") {
173
+ throw new TypeError("Item type is invalid must be number");
174
+ }
175
+ return item;
176
+ }, throwOnNumberLimit)
177
+ .filter((_item, index) => {
178
+ if (isEven) {
179
+ return index === size / 2 || index === size / 2 - 1;
180
+ }
181
+ return index === Math.floor(size / 2);
182
+ }, throwOnNumberLimit)
183
+ .toArray();
184
+ if (isEven) {
185
+ const [a, b] = items;
186
+ if (a === undefined) {
187
+ throw new _module_1.UnexpectedCollectionError("Is in invalid state");
188
+ }
189
+ if (b === undefined) {
190
+ throw new _module_1.UnexpectedCollectionError("Is in invalid state");
191
+ }
192
+ return ((a + b) / 2);
193
+ }
194
+ const [median] = items;
195
+ if (median === undefined) {
196
+ throw new _module_1.UnexpectedCollectionError("Is in invalid state");
197
+ }
198
+ return median;
199
+ }
200
+ min() {
201
+ try {
202
+ let min = 0;
203
+ for (const item of this) {
204
+ if (typeof item !== "number") {
205
+ throw new TypeError("Item type is invalid must be number");
206
+ }
207
+ if (min === 0) {
208
+ min = item;
209
+ }
210
+ else if (min > item) {
211
+ min = item;
212
+ }
213
+ }
214
+ return min;
215
+ }
216
+ catch (error) {
217
+ if (error instanceof _module_1.CollectionError ||
218
+ error instanceof TypeError) {
219
+ throw error;
220
+ }
221
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
222
+ }
223
+ }
224
+ max() {
225
+ try {
226
+ let max = 0;
227
+ for (const item of this) {
228
+ if (typeof item !== "number") {
229
+ throw new TypeError("Item type is invalid must be number");
230
+ }
231
+ if (max === 0) {
232
+ max = item;
233
+ }
234
+ else if (max < item) {
235
+ max = item;
236
+ }
237
+ }
238
+ return max;
239
+ }
240
+ catch (error) {
241
+ if (error instanceof _module_1.CollectionError ||
242
+ error instanceof TypeError) {
243
+ throw error;
244
+ }
245
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
246
+ }
247
+ }
248
+ percentage(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
249
+ try {
250
+ if (this.empty()) {
251
+ return 0;
252
+ }
253
+ let part = 0, total = 0;
254
+ for (const item of this) {
255
+ if (throwOnNumberLimit && total === Number.MAX_SAFE_INTEGER) {
256
+ throw new _module_1.IndexOverflowError("The total amount has overflowed");
257
+ }
258
+ if (filter(item, total, this)) {
259
+ part++;
260
+ }
261
+ total++;
262
+ }
263
+ return (part / total) * 100;
264
+ }
265
+ catch (error) {
266
+ if (error instanceof _module_1.CollectionError ||
267
+ error instanceof TypeError) {
268
+ throw error;
269
+ }
270
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
271
+ }
272
+ }
273
+ some(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
274
+ try {
275
+ let index = 0;
276
+ for (const item of this) {
277
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
278
+ throw new _module_1.IndexOverflowError("Index has overflowed");
279
+ }
280
+ if (filter(item, index, this)) {
281
+ return true;
282
+ }
283
+ index++;
284
+ }
285
+ return false;
286
+ }
287
+ catch (error) {
288
+ if (error instanceof _module_1.CollectionError ||
289
+ error instanceof TypeError) {
290
+ throw error;
291
+ }
292
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
293
+ }
294
+ }
295
+ every(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
296
+ try {
297
+ let index = 0, isTrue = true;
298
+ for (const item of this) {
299
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
300
+ throw new _module_1.IndexOverflowError("Index has overflowed");
301
+ }
302
+ isTrue &&= filter(item, index, this);
303
+ if (!isTrue) {
304
+ break;
305
+ }
306
+ index++;
307
+ }
308
+ return isTrue;
309
+ }
310
+ catch (error) {
311
+ if (error instanceof _module_1.CollectionError ||
312
+ error instanceof TypeError) {
313
+ throw error;
314
+ }
315
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
316
+ }
317
+ }
318
+ take(limit, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
319
+ return new IterableCollection(new _module_2.TakeIterable(this, limit, throwOnNumberLimit));
320
+ }
321
+ takeUntil(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
322
+ return new IterableCollection(new _module_2.TakeUntilIterable(this, filter, throwOnNumberLimit));
323
+ }
324
+ takeWhile(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
325
+ return this.takeUntil((...arguments_) => !filter(...arguments_), throwOnNumberLimit);
326
+ }
327
+ skip(offset, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
328
+ return new IterableCollection(new _module_2.SkipIterable(this, offset, throwOnNumberLimit));
329
+ }
330
+ skipUntil(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
331
+ return new IterableCollection(new _module_2.SkipUntilIterable(this, filter, throwOnNumberLimit));
332
+ }
333
+ skipWhile(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
334
+ return this.skipUntil((...arguments_) => !filter(...arguments_), throwOnNumberLimit);
335
+ }
336
+ when(condition, callback) {
337
+ return new IterableCollection(new _module_2.WhenIterable(this, () => condition, callback));
338
+ }
339
+ whenEmpty(callback) {
340
+ return new IterableCollection(new _module_2.WhenIterable(this, () => this.empty(), callback));
341
+ }
342
+ whenNot(condition, callback) {
343
+ return this.when(!condition, callback);
344
+ }
345
+ whenNotEmpty(callback) {
346
+ return new IterableCollection(new _module_2.WhenIterable(this, () => this.notEmpty(), callback));
347
+ }
348
+ pipe(callback) {
349
+ try {
350
+ return callback(this);
351
+ }
352
+ catch (error) {
353
+ if (error instanceof _module_1.CollectionError ||
354
+ error instanceof TypeError) {
355
+ throw error;
356
+ }
357
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
358
+ }
359
+ }
360
+ tap(callback) {
361
+ return new IterableCollection(new _module_2.TapIterable(this, callback));
362
+ }
363
+ chunk(chunkSize) {
364
+ return new IterableCollection(new _module_2.ChunkIterable(this, chunkSize, IterableCollection.makeCollection));
365
+ }
366
+ chunkWhile(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
367
+ return new IterableCollection(new _module_2.ChunkWhileIterable(this, filter, throwOnNumberLimit, (iterable) => new IterableCollection(iterable)));
368
+ }
369
+ split(chunkAmount, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
370
+ return new IterableCollection(new _module_2.SplitIterable(this, chunkAmount, throwOnNumberLimit, IterableCollection.makeCollection));
371
+ }
372
+ partition(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
373
+ return new IterableCollection(new _module_2.PartionIterable(this, filter, throwOnNumberLimit, IterableCollection.makeCollection));
374
+ }
375
+ sliding(settings) {
376
+ const { chunkSize, step = chunkSize - 1, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT, } = settings;
377
+ return new IterableCollection(new _module_2.SlidingIteralbe(this, chunkSize, step, throwOnNumberLimit));
378
+ }
379
+ groupBy(settings) {
380
+ return new IterableCollection(new _module_2.GroupByIterable(this, settings?.mapFn, settings?.throwOnNumberLimit ??
381
+ IterableCollection.THROW_ON_NUMBER_LIMIT, (iterable) => new IterableCollection(iterable)));
382
+ }
383
+ countBy(settings) {
384
+ return new IterableCollection(new _module_2.CountByIterable(this, settings?.mapFn, settings?.throwOnNumberLimit ??
385
+ IterableCollection.THROW_ON_NUMBER_LIMIT));
386
+ }
387
+ unique(settings) {
388
+ return new IterableCollection(new _module_2.UniqueIterable(this, settings?.mapFn, settings?.throwOnNumberLimit ??
389
+ IterableCollection.THROW_ON_NUMBER_LIMIT));
390
+ }
391
+ difference(iterable, map = (item) => item) {
392
+ const differenceCollection = new IterableCollection(iterable);
393
+ return this.filter((item, index, collection) => {
394
+ return !differenceCollection.some((matchItem, matchIndex, matchCollection) => {
395
+ return (map(item, index, collection) ===
396
+ map(matchItem, matchIndex, matchCollection));
397
+ });
398
+ });
399
+ }
400
+ repeat(amount) {
401
+ return new IterableCollection(new _module_2.RepeatIterable(this, amount, IterableCollection.makeCollection));
402
+ }
403
+ padStart(maxLength, fillItems) {
404
+ return new IterableCollection(new _module_2.PadStartIterable(this, maxLength, fillItems, IterableCollection.makeCollection));
405
+ }
406
+ padEnd(maxLength, fillItems) {
407
+ return new IterableCollection(new _module_2.PadEndIterable(this, maxLength, fillItems, IterableCollection.makeCollection));
408
+ }
409
+ slice(settings) {
410
+ return new IterableCollection(new _module_2.SliceIterable(this, settings?.start, settings?.end, settings?.throwOnNumberLimit ??
411
+ IterableCollection.THROW_ON_NUMBER_LIMIT));
412
+ }
413
+ prepend(iterable) {
414
+ return new IterableCollection(new _module_2.MergeIterable(iterable, this));
415
+ }
416
+ append(iterable) {
417
+ return new IterableCollection(new _module_2.MergeIterable(this, iterable));
418
+ }
419
+ insertBefore(filter, iterable, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
420
+ return new IterableCollection(new _module_2.InsertBeforeIterable(this, filter, iterable, throwOnNumberLimit));
421
+ }
422
+ insertAfter(filter, iterable, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
423
+ return new IterableCollection(new _module_2.InsertAfterIterable(this, filter, iterable, throwOnNumberLimit));
424
+ }
425
+ crossJoin(...iterables) {
426
+ return new IterableCollection(new _module_2.CrossJoinIterable(this, iterables, IterableCollection.makeCollection));
427
+ }
428
+ zip(iterable) {
429
+ return new IterableCollection(new _module_2.ZipIterable(this, iterable));
430
+ }
431
+ sort(compare) {
432
+ return new IterableCollection(new _module_2.SortIterable(this, compare));
433
+ }
434
+ reverse(settings) {
435
+ return new IterableCollection(new _module_2.ReverseIterable(this, settings?.chunkSize ?? IterableCollection.DEFAULT_CHUNK_SIZE, settings?.throwOnNumberLimit ??
436
+ IterableCollection.THROW_ON_NUMBER_LIMIT, (iterable) => new IterableCollection(iterable)));
437
+ }
438
+ shuffle() {
439
+ return new IterableCollection(new _module_2.ShuffleIterable(this));
440
+ }
441
+ first(settings) {
442
+ try {
443
+ return this.firstOr({
444
+ ...settings,
445
+ defaultValue: null,
446
+ });
447
+ }
448
+ catch (error) {
449
+ if (error instanceof _module_1.CollectionError ||
450
+ error instanceof TypeError) {
451
+ throw error;
452
+ }
453
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
454
+ }
455
+ }
456
+ firstOr(settings) {
457
+ try {
458
+ const throwOnNumberLimit = settings.throwOnNumberLimit ??
459
+ IterableCollection.THROW_ON_NUMBER_LIMIT;
460
+ let index = 0;
461
+ const filter = settings.filterFn ?? (() => true);
462
+ for (const item of this) {
463
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
464
+ throw new _module_1.IndexOverflowError("Index has overflowed");
465
+ }
466
+ if (filter(item, index, this)) {
467
+ return item;
468
+ }
469
+ index++;
470
+ }
471
+ if (typeof settings.defaultValue === "function") {
472
+ const defaultFn = settings.defaultValue;
473
+ return defaultFn();
474
+ }
475
+ return settings.defaultValue;
476
+ }
477
+ catch (error) {
478
+ if (error instanceof _module_1.CollectionError ||
479
+ error instanceof TypeError) {
480
+ throw error;
481
+ }
482
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
483
+ }
484
+ }
485
+ firstOrFail(settings) {
486
+ const item = this.first(settings);
487
+ if (item === null) {
488
+ throw new _module_1.ItemNotFoundError("Item was not found");
489
+ }
490
+ return item;
491
+ }
492
+ last(settings) {
493
+ try {
494
+ return this.lastOr({
495
+ ...settings,
496
+ defaultValue: null,
497
+ });
498
+ }
499
+ catch (error) {
500
+ if (error instanceof _module_1.CollectionError ||
501
+ error instanceof TypeError) {
502
+ throw error;
503
+ }
504
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
505
+ }
506
+ }
507
+ lastOr(settings) {
508
+ try {
509
+ const throwOnNumberLimit = settings.throwOnNumberLimit ??
510
+ IterableCollection.THROW_ON_NUMBER_LIMIT;
511
+ let index = 0;
512
+ const filter = settings.filterFn ?? (() => true);
513
+ let matchedItem = null;
514
+ for (const item of this) {
515
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
516
+ throw new _module_1.IndexOverflowError("Index has overflowed");
517
+ }
518
+ if (filter(item, index, this)) {
519
+ matchedItem = item;
520
+ }
521
+ index++;
522
+ }
523
+ if (matchedItem) {
524
+ return matchedItem;
525
+ }
526
+ if (typeof settings.defaultValue === "function") {
527
+ const defaultFn = settings.defaultValue;
528
+ return defaultFn();
529
+ }
530
+ return settings.defaultValue;
531
+ }
532
+ catch (error) {
533
+ if (error instanceof _module_1.CollectionError ||
534
+ error instanceof TypeError) {
535
+ throw error;
536
+ }
537
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
538
+ }
539
+ }
540
+ lastOrFail(settings) {
541
+ const item = this.last(settings);
542
+ if (item === null) {
543
+ throw new _module_1.ItemNotFoundError("Item was not found");
544
+ }
545
+ return item;
546
+ }
547
+ before(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
548
+ return this.beforeOr(null, filter, throwOnNumberLimit);
549
+ }
550
+ beforeOr(defaultValue, filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
551
+ try {
552
+ let beforeItem = null, index = 0;
553
+ for (const item of this) {
554
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
555
+ throw new _module_1.IndexOverflowError("Index has overflowed");
556
+ }
557
+ if (filter(item, index, this) && beforeItem) {
558
+ return beforeItem;
559
+ }
560
+ index++;
561
+ beforeItem = item;
562
+ }
563
+ if (typeof defaultValue === "function") {
564
+ const defaultFn = defaultValue;
565
+ return defaultFn();
566
+ }
567
+ return defaultValue;
568
+ }
569
+ catch (error) {
570
+ if (error instanceof _module_1.CollectionError ||
571
+ error instanceof TypeError) {
572
+ throw error;
573
+ }
574
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
575
+ }
576
+ }
577
+ beforeOrFail(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
578
+ const item = this.before(filter, throwOnNumberLimit);
579
+ if (item === null) {
580
+ throw new _module_1.ItemNotFoundError("Item was not found");
581
+ }
582
+ return item;
583
+ }
584
+ after(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
585
+ return this.afterOr(null, filter, throwOnNumberLimit);
586
+ }
587
+ afterOr(defaultValue, filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
588
+ try {
589
+ let hasMatched = false, index = 0;
590
+ for (const item of this) {
591
+ if (hasMatched) {
592
+ return item;
593
+ }
594
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
595
+ throw new _module_1.IndexOverflowError("Index has overflowed");
596
+ }
597
+ hasMatched = filter(item, index, this);
598
+ index++;
599
+ }
600
+ if (typeof defaultValue === "function") {
601
+ const defaultFn = defaultValue;
602
+ return defaultFn();
603
+ }
604
+ return defaultValue;
605
+ }
606
+ catch (error) {
607
+ if (error instanceof _module_1.CollectionError ||
608
+ error instanceof TypeError) {
609
+ throw error;
610
+ }
611
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
612
+ }
613
+ }
614
+ afterOrFail(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
615
+ const item = this.after(filter, throwOnNumberLimit);
616
+ if (item === null) {
617
+ throw new _module_1.ItemNotFoundError("Item was not found");
618
+ }
619
+ return item;
620
+ }
621
+ sole(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
622
+ try {
623
+ let index = 0, matchedItem = null;
624
+ for (const item of this) {
625
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
626
+ throw new _module_1.IndexOverflowError("Index has overflowed");
627
+ }
628
+ if (filter(item, index, this)) {
629
+ if (matchedItem !== null) {
630
+ throw new _module_1.MultipleItemsFoundError("Multiple items were found");
631
+ }
632
+ matchedItem = item;
633
+ }
634
+ index++;
635
+ }
636
+ if (matchedItem === null) {
637
+ throw new _module_1.ItemNotFoundError("Item was not found");
638
+ }
639
+ return matchedItem;
640
+ }
641
+ catch (error) {
642
+ if (error instanceof _module_1.CollectionError ||
643
+ error instanceof TypeError) {
644
+ throw error;
645
+ }
646
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
647
+ }
648
+ }
649
+ nth(step) {
650
+ return this.filter((_item, index) => index % step === 0);
651
+ }
652
+ count(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
653
+ try {
654
+ let size = 0;
655
+ for (const item of this) {
656
+ if (throwOnNumberLimit && size === Number.MAX_SAFE_INTEGER) {
657
+ throw new _module_1.IndexOverflowError("Size has overflowed");
658
+ }
659
+ if (filter(item, size, this)) {
660
+ size++;
661
+ }
662
+ }
663
+ return size;
664
+ }
665
+ catch (error) {
666
+ if (error instanceof _module_1.CollectionError ||
667
+ error instanceof TypeError) {
668
+ throw error;
669
+ }
670
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
671
+ }
672
+ }
673
+ size(throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
674
+ return this.count(() => true, throwOnNumberLimit);
675
+ }
676
+ empty() {
677
+ try {
678
+ for (const _ of this) {
679
+ return false;
680
+ }
681
+ return true;
682
+ }
683
+ catch (error) {
684
+ if (error instanceof _module_1.CollectionError ||
685
+ error instanceof TypeError) {
686
+ throw error;
687
+ }
688
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
689
+ }
690
+ }
691
+ notEmpty() {
692
+ return !this.empty();
693
+ }
694
+ search(filter, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
695
+ try {
696
+ let index = 0;
697
+ for (const item of this) {
698
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
699
+ throw new _module_1.IndexOverflowError("Index has overflowed");
700
+ }
701
+ if (filter(item, index, this)) {
702
+ return index;
703
+ }
704
+ index++;
705
+ }
706
+ return -1;
707
+ }
708
+ catch (error) {
709
+ if (error instanceof _module_1.CollectionError ||
710
+ error instanceof TypeError) {
711
+ throw error;
712
+ }
713
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
714
+ }
715
+ }
716
+ forEach(callback, throwOnNumberLimit = IterableCollection.THROW_ON_NUMBER_LIMIT) {
717
+ try {
718
+ let index = 0;
719
+ for (const item of this) {
720
+ if (throwOnNumberLimit && index === Number.MAX_SAFE_INTEGER) {
721
+ throw new _module_1.IndexOverflowError("Index has overflowed");
722
+ }
723
+ callback(item, index, this);
724
+ index++;
725
+ }
726
+ }
727
+ catch (error) {
728
+ if (error instanceof _module_1.CollectionError ||
729
+ error instanceof TypeError) {
730
+ throw error;
731
+ }
732
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
733
+ }
734
+ }
735
+ toArray() {
736
+ try {
737
+ return [...this];
738
+ }
739
+ catch (error) {
740
+ if (error instanceof _module_1.CollectionError ||
741
+ error instanceof TypeError) {
742
+ throw error;
743
+ }
744
+ throw new _module_1.UnexpectedCollectionError(`Unexpected error "${String(error)}" occured`, error);
745
+ }
746
+ }
747
+ }
748
+ exports.IterableCollection = IterableCollection;
749
+ //# sourceMappingURL=iterable-collection.js.map