@fncts/base 0.0.20 → 0.0.21

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 (975) hide show
  1. package/_cjs/collection/Iterable/api/traverseConc.cjs +8 -8
  2. package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
  3. package/_cjs/collection/Iterable/api.cjs +497 -444
  4. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  5. package/_cjs/collection/Iterable/constructors.cjs +7 -7
  6. package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
  7. package/_cjs/collection/compat/Array/api.cjs +16 -12
  8. package/_cjs/collection/compat/Array/api.cjs.map +1 -1
  9. package/_cjs/collection/compat/Array/derivations.cjs +41 -19
  10. package/_cjs/collection/compat/Array/derivations.cjs.map +1 -1
  11. package/_cjs/collection/compat/ArrayLike/api.cjs +1 -1
  12. package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
  13. package/_cjs/collection/compat/Record/instances.cjs +39 -3
  14. package/_cjs/collection/compat/Record/instances.cjs.map +1 -1
  15. package/_cjs/collection/immutable/Conc/api/makeBy.cjs +1 -1
  16. package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
  17. package/_cjs/collection/immutable/Conc/api.cjs +866 -765
  18. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  19. package/_cjs/collection/immutable/Conc/definition.cjs +55 -53
  20. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  21. package/_cjs/collection/immutable/Conc/derivations.cjs +13 -2
  22. package/_cjs/collection/immutable/Conc/derivations.cjs.map +1 -1
  23. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  24. package/_cjs/collection/immutable/Dictionary/api.cjs +57 -44
  25. package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
  26. package/_cjs/collection/immutable/HashMap/api.cjs +351 -258
  27. package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
  28. package/_cjs/collection/immutable/HashMap/definition.cjs +1 -1
  29. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  30. package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
  31. package/_cjs/collection/immutable/HashSet/api.cjs +230 -192
  32. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  33. package/_cjs/collection/immutable/HashSet/definition.cjs +1 -1
  34. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  35. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +6 -4
  36. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -1
  37. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +6 -4
  38. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -1
  39. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +6 -4
  40. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -1
  41. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +15 -13
  42. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -1
  43. package/_cjs/collection/immutable/ImmutableArray/api.cjs +943 -749
  44. package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
  45. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs +12 -1
  46. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs.map +1 -1
  47. package/_cjs/collection/immutable/ImmutableArray/instances.cjs +33 -33
  48. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
  49. package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
  50. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +338 -273
  51. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
  52. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
  53. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
  54. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs +15 -4
  55. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs.map +1 -1
  56. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +2 -2
  57. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
  58. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs +12 -12
  59. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
  60. package/_cjs/collection/immutable/List/api/foldLeft.cjs +12 -10
  61. package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
  62. package/_cjs/collection/immutable/List/api.cjs +164 -141
  63. package/_cjs/collection/immutable/List/api.cjs.map +1 -1
  64. package/_cjs/collection/immutable/List.cjs.map +1 -1
  65. package/_cjs/collection/immutable/Queue/api.cjs +64 -48
  66. package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
  67. package/_cjs/collection/immutable/Queue/definition.cjs +1 -1
  68. package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
  69. package/_cjs/collection/immutable/RoseTree/api.cjs +50 -36
  70. package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
  71. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
  72. package/_cjs/collection/immutable/SortedMap/api.cjs +408 -368
  73. package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
  74. package/_cjs/collection/immutable/Vector/api.cjs +723 -608
  75. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  76. package/_cjs/collection/immutable/Vector/definition.cjs +18 -16
  77. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  78. package/_cjs/collection/immutable/Vector/internal.cjs +40 -39
  79. package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
  80. package/_cjs/collection/mutable/HashMap.cjs +3 -5
  81. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  82. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  83. package/_cjs/collection/mutable/ListBuffer.cjs +2 -2
  84. package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
  85. package/_cjs/collection/mutable/internal.cjs +0 -2
  86. package/_cjs/collection/mutable/internal.cjs.map +1 -1
  87. package/_cjs/collection/weak/IterableWeakMap.cjs +7 -7
  88. package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
  89. package/_cjs/collection/weak/IterableWeakSet.cjs +7 -7
  90. package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
  91. package/_cjs/control/Eval/api.cjs +55 -43
  92. package/_cjs/control/Eval/api.cjs.map +1 -1
  93. package/_cjs/control/Eval/instance.cjs +4 -4
  94. package/_cjs/control/Eval/instance.cjs.map +1 -1
  95. package/_cjs/control/Eval/run.cjs +1 -1
  96. package/_cjs/control/Eval/run.cjs.map +1 -1
  97. package/_cjs/control/Z/api.cjs +241 -172
  98. package/_cjs/control/Z/api.cjs.map +1 -1
  99. package/_cjs/control/Z/instances.cjs +3 -3
  100. package/_cjs/control/Z/instances.cjs.map +1 -1
  101. package/_cjs/control/Z/runtime.cjs +250 -241
  102. package/_cjs/control/Z/runtime.cjs.map +1 -1
  103. package/_cjs/data/Branded/definition.cjs.map +1 -1
  104. package/_cjs/data/Branded/derivations.cjs +3 -3
  105. package/_cjs/data/Branded/derivations.cjs.map +1 -1
  106. package/_cjs/data/CaseClass.cjs.map +1 -1
  107. package/_cjs/data/Cause/api/fold.cjs +20 -18
  108. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  109. package/_cjs/data/Cause/api/isEmpty.cjs +1 -1
  110. package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
  111. package/_cjs/data/Cause/api/linearize.cjs +8 -8
  112. package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
  113. package/_cjs/data/Cause/api/prettyPrint.cjs +1 -1
  114. package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
  115. package/_cjs/data/Cause/api.cjs +160 -140
  116. package/_cjs/data/Cause/api.cjs.map +1 -1
  117. package/_cjs/data/Cause/definition.cjs +18 -18
  118. package/_cjs/data/Cause/definition.cjs.map +1 -1
  119. package/_cjs/data/Cause.cjs.map +1 -1
  120. package/_cjs/data/Const/api.cjs +8 -6
  121. package/_cjs/data/Const/api.cjs.map +1 -1
  122. package/_cjs/data/Const/instances.cjs +4 -4
  123. package/_cjs/data/Const/instances.cjs.map +1 -1
  124. package/_cjs/data/Datum/api.cjs +219 -176
  125. package/_cjs/data/Datum/api.cjs.map +1 -1
  126. package/_cjs/data/Datum/definition.cjs.map +1 -1
  127. package/_cjs/data/DatumEither/api.cjs +165 -133
  128. package/_cjs/data/DatumEither/api.cjs.map +1 -1
  129. package/_cjs/data/DecodeError/definition.cjs +14 -14
  130. package/_cjs/data/DecodeError/definition.cjs.map +1 -1
  131. package/_cjs/data/Decoder/api.cjs +9 -7
  132. package/_cjs/data/Decoder/api.cjs.map +1 -1
  133. package/_cjs/data/Duration/api.cjs +18 -12
  134. package/_cjs/data/Duration/api.cjs.map +1 -1
  135. package/_cjs/data/Either/api/align.cjs +8 -3
  136. package/_cjs/data/Either/api/align.cjs.map +1 -1
  137. package/_cjs/data/Either/api/alignWith.cjs +14 -12
  138. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  139. package/_cjs/data/Either/api.cjs +206 -169
  140. package/_cjs/data/Either/api.cjs.map +1 -1
  141. package/_cjs/data/Either/constructors.cjs +11 -9
  142. package/_cjs/data/Either/constructors.cjs.map +1 -1
  143. package/_cjs/data/Either/destructors.cjs +16 -14
  144. package/_cjs/data/Either/destructors.cjs.map +1 -1
  145. package/_cjs/data/Either/instances.cjs +8 -8
  146. package/_cjs/data/Either/instances.cjs.map +1 -1
  147. package/_cjs/data/EitherT/api.cjs +8 -8
  148. package/_cjs/data/EitherT/api.cjs.map +1 -1
  149. package/_cjs/data/Encoder/api.cjs +134 -0
  150. package/_cjs/data/Encoder/api.cjs.map +1 -0
  151. package/_cjs/data/Encoder/definition.cjs +25 -0
  152. package/_cjs/data/Encoder/definition.cjs.map +1 -0
  153. package/_cjs/data/Encoder.cjs +32 -0
  154. package/_cjs/data/Encoder.cjs.map +1 -0
  155. package/_cjs/data/Environment/api.cjs +45 -33
  156. package/_cjs/data/Environment/api.cjs.map +1 -1
  157. package/_cjs/data/EnvironmentPatch.cjs +17 -13
  158. package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
  159. package/_cjs/data/ExecutionStrategy.cjs +21 -29
  160. package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
  161. package/_cjs/data/Exit/api.cjs +159 -127
  162. package/_cjs/data/Exit/api.cjs.map +1 -1
  163. package/_cjs/data/Exit/constructors.cjs +4 -4
  164. package/_cjs/data/Exit/constructors.cjs.map +1 -1
  165. package/_cjs/data/FiberId/api.cjs +23 -21
  166. package/_cjs/data/FiberId/api.cjs.map +1 -1
  167. package/_cjs/data/FiberId/constructors.cjs.map +1 -1
  168. package/_cjs/data/Identity/api.cjs +26 -18
  169. package/_cjs/data/Identity/api.cjs.map +1 -1
  170. package/_cjs/data/Identity/instances.cjs +3 -3
  171. package/_cjs/data/Identity/instances.cjs.map +1 -1
  172. package/_cjs/data/Interval.cjs +43 -33
  173. package/_cjs/data/Interval.cjs.map +1 -1
  174. package/_cjs/data/Intervals.cjs +35 -27
  175. package/_cjs/data/Intervals.cjs.map +1 -1
  176. package/_cjs/data/Maybe/api.cjs +160 -125
  177. package/_cjs/data/Maybe/api.cjs.map +1 -1
  178. package/_cjs/data/Maybe/constructors.cjs +2 -2
  179. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  180. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  181. package/_cjs/data/Maybe/destructors.cjs +9 -7
  182. package/_cjs/data/Maybe/destructors.cjs.map +1 -1
  183. package/_cjs/data/Maybe/instances.cjs +11 -11
  184. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  185. package/_cjs/data/Predicate/api.cjs +10 -8
  186. package/_cjs/data/Predicate/api.cjs.map +1 -1
  187. package/_cjs/data/Refinement/api.cjs +15 -9
  188. package/_cjs/data/Refinement/api.cjs.map +1 -1
  189. package/_cjs/data/Struct/api.cjs +62 -50
  190. package/_cjs/data/Struct/api.cjs.map +1 -1
  191. package/_cjs/data/Tag/constructors.cjs +3 -2
  192. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  193. package/_cjs/data/Tag/definition.cjs +0 -3
  194. package/_cjs/data/Tag/definition.cjs.map +1 -1
  195. package/_cjs/data/These/api.cjs +188 -170
  196. package/_cjs/data/These/api.cjs.map +1 -1
  197. package/_cjs/data/These/constructors.cjs +1 -1
  198. package/_cjs/data/These/constructors.cjs.map +1 -1
  199. package/_cjs/data/These/destructors.cjs +39 -35
  200. package/_cjs/data/These/destructors.cjs.map +1 -1
  201. package/_cjs/data/These/instances.cjs +1 -1
  202. package/_cjs/data/These/instances.cjs.map +1 -1
  203. package/_cjs/data/Trace/api.cjs +7 -5
  204. package/_cjs/data/Trace/api.cjs.map +1 -1
  205. package/_cjs/data/Zipped.cjs.map +1 -1
  206. package/_cjs/data/function/api.cjs +6 -4
  207. package/_cjs/data/function/api.cjs.map +1 -1
  208. package/_cjs/data/function/pipe.cjs +9 -0
  209. package/_cjs/data/function/pipe.cjs.map +1 -1
  210. package/_cjs/data/string/api.cjs +53 -96
  211. package/_cjs/data/string/api.cjs.map +1 -1
  212. package/_cjs/global/api.cjs +4 -2
  213. package/_cjs/global/api.cjs.map +1 -1
  214. package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
  215. package/_cjs/internal/AtomicNumber.cjs.map +1 -1
  216. package/_cjs/internal/AtomicReference.cjs.map +1 -1
  217. package/_cjs/internal/Stack.cjs +2 -2
  218. package/_cjs/internal/Stack.cjs.map +1 -1
  219. package/_cjs/optics/At/api.cjs +1 -1
  220. package/_cjs/optics/At/api.cjs.map +1 -1
  221. package/_cjs/optics/At/definition.cjs +2 -2
  222. package/_cjs/optics/At/definition.cjs.map +1 -1
  223. package/_cjs/optics/Fold/definition.cjs +3 -4
  224. package/_cjs/optics/Fold/definition.cjs.map +1 -1
  225. package/_cjs/optics/Getter/definition.cjs +2 -3
  226. package/_cjs/optics/Getter/definition.cjs.map +1 -1
  227. package/_cjs/optics/Index/api.cjs +4 -4
  228. package/_cjs/optics/Index/api.cjs.map +1 -1
  229. package/_cjs/optics/Index/definition.cjs +2 -2
  230. package/_cjs/optics/Index/definition.cjs.map +1 -1
  231. package/_cjs/optics/Iso/api.cjs +9 -7
  232. package/_cjs/optics/Iso/api.cjs.map +1 -1
  233. package/_cjs/optics/Iso/definition.cjs +12 -12
  234. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  235. package/_cjs/optics/Lens/api.cjs +54 -44
  236. package/_cjs/optics/Lens/api.cjs.map +1 -1
  237. package/_cjs/optics/Lens/definition.cjs +10 -10
  238. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  239. package/_cjs/optics/Optional/api/compose.cjs +9 -7
  240. package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
  241. package/_cjs/optics/Optional/definition.cjs +12 -13
  242. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  243. package/_cjs/optics/Optional.cjs.map +1 -1
  244. package/_cjs/optics/Prism/api/compose.cjs +9 -7
  245. package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
  246. package/_cjs/optics/Prism/api/fromNullable.cjs +2 -2
  247. package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
  248. package/_cjs/optics/Prism/api/just.cjs +2 -2
  249. package/_cjs/optics/Prism/api/just.cjs.map +1 -1
  250. package/_cjs/optics/Prism/definition.cjs +9 -9
  251. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  252. package/_cjs/optics/Prism.cjs.map +1 -1
  253. package/_cjs/optics/Setter/definition.cjs +8 -13
  254. package/_cjs/optics/Setter/definition.cjs.map +1 -1
  255. package/_cjs/optics/Traversal/api/compose.cjs +8 -6
  256. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  257. package/_cjs/optics/Traversal/api/fromTraversable.cjs +2 -2
  258. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  259. package/_cjs/optics/Traversal/definition.cjs +12 -12
  260. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  261. package/_cjs/optics/Traversal.cjs.map +1 -1
  262. package/_cjs/typeclass/Align.cjs.map +1 -1
  263. package/_cjs/typeclass/Alt.cjs.map +1 -1
  264. package/_cjs/typeclass/Applicative.cjs.map +1 -1
  265. package/_cjs/typeclass/ApplicativeExcept.cjs +5 -10
  266. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  267. package/_cjs/typeclass/Apply.cjs +8 -8
  268. package/_cjs/typeclass/Apply.cjs.map +1 -1
  269. package/_cjs/typeclass/Chain.cjs +4 -4
  270. package/_cjs/typeclass/Chain.cjs.map +1 -1
  271. package/_cjs/typeclass/Eq/definition.cjs.map +1 -1
  272. package/_cjs/typeclass/Eq/derivations.cjs.map +1 -1
  273. package/_cjs/typeclass/Equatable/api.cjs.map +1 -1
  274. package/_cjs/typeclass/Equatable/definition.cjs.map +1 -1
  275. package/_cjs/typeclass/Equatable/fast-equals.cjs.map +1 -1
  276. package/_cjs/typeclass/Filterable.cjs.map +1 -1
  277. package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
  278. package/_cjs/typeclass/Foldable.cjs +1 -1
  279. package/_cjs/typeclass/Foldable.cjs.map +1 -1
  280. package/_cjs/typeclass/FoldableWithIndex.cjs +1 -1
  281. package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
  282. package/_cjs/typeclass/Functor.cjs.map +1 -1
  283. package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
  284. package/_cjs/typeclass/Guard/api.cjs +18 -10
  285. package/_cjs/typeclass/Guard/api.cjs.map +1 -1
  286. package/_cjs/typeclass/Guard/definition.cjs.map +1 -1
  287. package/_cjs/typeclass/Guard/derivations.cjs.map +1 -1
  288. package/_cjs/typeclass/Has.cjs +7 -5
  289. package/_cjs/typeclass/Has.cjs.map +1 -1
  290. package/_cjs/typeclass/HashEq.cjs.map +1 -1
  291. package/_cjs/typeclass/Hashable/definition.cjs.map +1 -1
  292. package/_cjs/typeclass/Hashable/hash.cjs.map +1 -1
  293. package/_cjs/typeclass/MonadExcept.cjs +1 -1
  294. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  295. package/_cjs/typeclass/Ord/api/contramap.cjs +7 -5
  296. package/_cjs/typeclass/Ord/api/contramap.cjs.map +1 -1
  297. package/_cjs/typeclass/Ord/api/max.cjs.map +1 -1
  298. package/_cjs/typeclass/Ord/api/min.cjs.map +1 -1
  299. package/_cjs/typeclass/Ord/definition.cjs.map +1 -1
  300. package/_cjs/typeclass/Ord/instances.cjs.map +1 -1
  301. package/_cjs/typeclass/Ordering.cjs.map +1 -1
  302. package/_cjs/typeclass/Semialign.cjs +7 -7
  303. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  304. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  305. package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
  306. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
  307. package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
  308. package/_cjs/typeclass/Showable/definition.cjs.map +1 -1
  309. package/_cjs/typeclass/Showable/show.cjs +107 -107
  310. package/_cjs/typeclass/Showable/show.cjs.map +1 -1
  311. package/_cjs/typeclass/Showable/styles.cjs.map +1 -1
  312. package/_cjs/typeclass/Showable/util.cjs +1 -1
  313. package/_cjs/typeclass/Showable/util.cjs.map +1 -1
  314. package/_cjs/typeclass/Traversable.cjs +1 -2
  315. package/_cjs/typeclass/Traversable.cjs.map +1 -1
  316. package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
  317. package/_cjs/typeclass/Witherable.cjs +3 -1
  318. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  319. package/_cjs/typeclass/WitherableWithIndex.cjs +3 -1
  320. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  321. package/_cjs/util/AnsiFormat.cjs +11 -11
  322. package/_cjs/util/AnsiFormat.cjs.map +1 -1
  323. package/_cjs/util/PCGRandom.cjs.map +1 -1
  324. package/_cjs/util/assert.cjs.map +1 -1
  325. package/_cjs/util/pattern.cjs.map +1 -1
  326. package/_cjs/util/predicates.cjs.map +1 -1
  327. package/_cjs/util/rand/Random.cjs.map +1 -1
  328. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
  329. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
  330. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
  331. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
  332. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
  333. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
  334. package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
  335. package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
  336. package/_cjs/util/rand.cjs.map +1 -1
  337. package/_mjs/collection/Iterable/api/traverseConc.mjs +5 -5
  338. package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
  339. package/_mjs/collection/Iterable/api.mjs +465 -411
  340. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  341. package/_mjs/collection/Iterable/constructors.mjs +5 -5
  342. package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
  343. package/_mjs/collection/compat/Array/api.mjs +16 -12
  344. package/_mjs/collection/compat/Array/api.mjs.map +1 -1
  345. package/_mjs/collection/compat/Array/derivations.mjs +35 -19
  346. package/_mjs/collection/compat/Array/derivations.mjs.map +1 -1
  347. package/_mjs/collection/compat/ArrayLike/api.mjs +1 -1
  348. package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
  349. package/_mjs/collection/compat/Record/instances.mjs +34 -3
  350. package/_mjs/collection/compat/Record/instances.mjs.map +1 -1
  351. package/_mjs/collection/immutable/Conc/api/makeBy.mjs +1 -1
  352. package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
  353. package/_mjs/collection/immutable/Conc/api.mjs +795 -697
  354. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  355. package/_mjs/collection/immutable/Conc/definition.mjs +53 -51
  356. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  357. package/_mjs/collection/immutable/Conc/derivations.mjs +10 -2
  358. package/_mjs/collection/immutable/Conc/derivations.mjs.map +1 -1
  359. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  360. package/_mjs/collection/immutable/Dictionary/api.mjs +47 -35
  361. package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
  362. package/_mjs/collection/immutable/HashMap/api.mjs +295 -217
  363. package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
  364. package/_mjs/collection/immutable/HashMap/definition.mjs +1 -1
  365. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  366. package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
  367. package/_mjs/collection/immutable/HashSet/api.mjs +206 -168
  368. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  369. package/_mjs/collection/immutable/HashSet/definition.mjs +1 -1
  370. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  371. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +5 -3
  372. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
  373. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +5 -3
  374. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
  375. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +5 -3
  376. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
  377. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +13 -11
  378. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
  379. package/_mjs/collection/immutable/ImmutableArray/api.mjs +816 -629
  380. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
  381. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs +9 -1
  382. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs.map +1 -1
  383. package/_mjs/collection/immutable/ImmutableArray/instances.mjs +34 -34
  384. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  385. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  386. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +301 -239
  387. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  388. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
  389. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
  390. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs +12 -4
  391. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs.map +1 -1
  392. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +2 -2
  393. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
  394. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +13 -13
  395. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
  396. package/_mjs/collection/immutable/List/api/foldLeft.mjs +11 -9
  397. package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
  398. package/_mjs/collection/immutable/List/api.mjs +157 -133
  399. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  400. package/_mjs/collection/immutable/List.mjs.map +1 -1
  401. package/_mjs/collection/immutable/Queue/api.mjs +55 -39
  402. package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
  403. package/_mjs/collection/immutable/Queue/definition.mjs +1 -1
  404. package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
  405. package/_mjs/collection/immutable/RoseTree/api.mjs +50 -36
  406. package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
  407. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
  408. package/_mjs/collection/immutable/SortedMap/api.mjs +398 -358
  409. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  410. package/_mjs/collection/immutable/Vector/api.mjs +650 -538
  411. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  412. package/_mjs/collection/immutable/Vector/definition.mjs +16 -14
  413. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  414. package/_mjs/collection/immutable/Vector/internal.mjs +40 -39
  415. package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
  416. package/_mjs/collection/mutable/HashMap.mjs +3 -5
  417. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  418. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  419. package/_mjs/collection/mutable/ListBuffer.mjs +2 -2
  420. package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
  421. package/_mjs/collection/mutable/internal.mjs +0 -2
  422. package/_mjs/collection/mutable/internal.mjs.map +1 -1
  423. package/_mjs/collection/weak/IterableWeakMap.mjs +7 -7
  424. package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
  425. package/_mjs/collection/weak/IterableWeakSet.mjs +7 -7
  426. package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
  427. package/_mjs/control/Eval/api.mjs +40 -28
  428. package/_mjs/control/Eval/api.mjs.map +1 -1
  429. package/_mjs/control/Eval/instance.mjs +5 -5
  430. package/_mjs/control/Eval/instance.mjs.map +1 -1
  431. package/_mjs/control/Eval/run.mjs +1 -1
  432. package/_mjs/control/Eval/run.mjs.map +1 -1
  433. package/_mjs/control/Z/api.mjs +196 -128
  434. package/_mjs/control/Z/api.mjs.map +1 -1
  435. package/_mjs/control/Z/instances.mjs +4 -4
  436. package/_mjs/control/Z/instances.mjs.map +1 -1
  437. package/_mjs/control/Z/runtime.mjs +244 -234
  438. package/_mjs/control/Z/runtime.mjs.map +1 -1
  439. package/_mjs/data/Branded/definition.mjs.map +1 -1
  440. package/_mjs/data/Branded/derivations.mjs +3 -3
  441. package/_mjs/data/Branded/derivations.mjs.map +1 -1
  442. package/_mjs/data/CaseClass.mjs.map +1 -1
  443. package/_mjs/data/Cause/api/fold.mjs +19 -17
  444. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  445. package/_mjs/data/Cause/api/isEmpty.mjs +1 -1
  446. package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
  447. package/_mjs/data/Cause/api/linearize.mjs +8 -8
  448. package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
  449. package/_mjs/data/Cause/api/prettyPrint.mjs +1 -1
  450. package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
  451. package/_mjs/data/Cause/api.mjs +149 -129
  452. package/_mjs/data/Cause/api.mjs.map +1 -1
  453. package/_mjs/data/Cause/definition.mjs +18 -18
  454. package/_mjs/data/Cause/definition.mjs.map +1 -1
  455. package/_mjs/data/Cause.mjs.map +1 -1
  456. package/_mjs/data/Const/api.mjs +6 -4
  457. package/_mjs/data/Const/api.mjs.map +1 -1
  458. package/_mjs/data/Const/instances.mjs +4 -4
  459. package/_mjs/data/Const/instances.mjs.map +1 -1
  460. package/_mjs/data/Datum/api.mjs +220 -179
  461. package/_mjs/data/Datum/api.mjs.map +1 -1
  462. package/_mjs/data/Datum/definition.mjs.map +1 -1
  463. package/_mjs/data/DatumEither/api.mjs +163 -132
  464. package/_mjs/data/DatumEither/api.mjs.map +1 -1
  465. package/_mjs/data/DecodeError/definition.mjs +14 -14
  466. package/_mjs/data/DecodeError/definition.mjs.map +1 -1
  467. package/_mjs/data/Decoder/api.mjs +9 -7
  468. package/_mjs/data/Decoder/api.mjs.map +1 -1
  469. package/_mjs/data/Duration/api.mjs +16 -10
  470. package/_mjs/data/Duration/api.mjs.map +1 -1
  471. package/_mjs/data/Either/api/align.mjs +8 -2
  472. package/_mjs/data/Either/api/align.mjs.map +1 -1
  473. package/_mjs/data/Either/api/alignWith.mjs +13 -11
  474. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  475. package/_mjs/data/Either/api.mjs +175 -136
  476. package/_mjs/data/Either/api.mjs.map +1 -1
  477. package/_mjs/data/Either/constructors.mjs +7 -5
  478. package/_mjs/data/Either/constructors.mjs.map +1 -1
  479. package/_mjs/data/Either/destructors.mjs +15 -13
  480. package/_mjs/data/Either/destructors.mjs.map +1 -1
  481. package/_mjs/data/Either/instances.mjs +9 -9
  482. package/_mjs/data/Either/instances.mjs.map +1 -1
  483. package/_mjs/data/EitherT/api.mjs +8 -8
  484. package/_mjs/data/EitherT/api.mjs.map +1 -1
  485. package/_mjs/data/Encoder/api.mjs +102 -0
  486. package/_mjs/data/Encoder/api.mjs.map +1 -0
  487. package/_mjs/data/Encoder/definition.mjs +15 -0
  488. package/_mjs/data/Encoder/definition.mjs.map +1 -0
  489. package/_mjs/data/Encoder.mjs +4 -0
  490. package/_mjs/data/Encoder.mjs.map +1 -0
  491. package/_mjs/data/Environment/api.mjs +45 -33
  492. package/_mjs/data/Environment/api.mjs.map +1 -1
  493. package/_mjs/data/EnvironmentPatch.mjs +17 -13
  494. package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
  495. package/_mjs/data/ExecutionStrategy.mjs +19 -27
  496. package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
  497. package/_mjs/data/Exit/api.mjs +140 -108
  498. package/_mjs/data/Exit/api.mjs.map +1 -1
  499. package/_mjs/data/Exit/constructors.mjs +3 -3
  500. package/_mjs/data/Exit/constructors.mjs.map +1 -1
  501. package/_mjs/data/FiberId/api.mjs +22 -20
  502. package/_mjs/data/FiberId/api.mjs.map +1 -1
  503. package/_mjs/data/FiberId/constructors.mjs.map +1 -1
  504. package/_mjs/data/Identity/api.mjs +21 -13
  505. package/_mjs/data/Identity/api.mjs.map +1 -1
  506. package/_mjs/data/Identity/instances.mjs +4 -4
  507. package/_mjs/data/Identity/instances.mjs.map +1 -1
  508. package/_mjs/data/Interval.mjs +38 -28
  509. package/_mjs/data/Interval.mjs.map +1 -1
  510. package/_mjs/data/Intervals.mjs +35 -27
  511. package/_mjs/data/Intervals.mjs.map +1 -1
  512. package/_mjs/data/Maybe/api.mjs +141 -106
  513. package/_mjs/data/Maybe/api.mjs.map +1 -1
  514. package/_mjs/data/Maybe/constructors.mjs +1 -1
  515. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  516. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  517. package/_mjs/data/Maybe/destructors.mjs +8 -6
  518. package/_mjs/data/Maybe/destructors.mjs.map +1 -1
  519. package/_mjs/data/Maybe/instances.mjs +12 -12
  520. package/_mjs/data/Maybe/instances.mjs.map +1 -1
  521. package/_mjs/data/Predicate/api.mjs +10 -8
  522. package/_mjs/data/Predicate/api.mjs.map +1 -1
  523. package/_mjs/data/Refinement/api.mjs +15 -9
  524. package/_mjs/data/Refinement/api.mjs.map +1 -1
  525. package/_mjs/data/Struct/api.mjs +56 -44
  526. package/_mjs/data/Struct/api.mjs.map +1 -1
  527. package/_mjs/data/Tag/constructors.mjs +3 -2
  528. package/_mjs/data/Tag/constructors.mjs.map +1 -1
  529. package/_mjs/data/Tag/definition.mjs +0 -2
  530. package/_mjs/data/Tag/definition.mjs.map +1 -1
  531. package/_mjs/data/These/api.mjs +187 -169
  532. package/_mjs/data/These/api.mjs.map +1 -1
  533. package/_mjs/data/These/constructors.mjs +1 -1
  534. package/_mjs/data/These/constructors.mjs.map +1 -1
  535. package/_mjs/data/These/destructors.mjs +35 -31
  536. package/_mjs/data/These/destructors.mjs.map +1 -1
  537. package/_mjs/data/These/instances.mjs +1 -1
  538. package/_mjs/data/These/instances.mjs.map +1 -1
  539. package/_mjs/data/Trace/api.mjs +6 -4
  540. package/_mjs/data/Trace/api.mjs.map +1 -1
  541. package/_mjs/data/Zipped.mjs.map +1 -1
  542. package/_mjs/data/function/api.mjs +5 -3
  543. package/_mjs/data/function/api.mjs.map +1 -1
  544. package/_mjs/data/function/pipe.mjs +7 -0
  545. package/_mjs/data/function/pipe.mjs.map +1 -1
  546. package/_mjs/data/string/api.mjs +46 -66
  547. package/_mjs/data/string/api.mjs.map +1 -1
  548. package/_mjs/global/api.mjs +4 -2
  549. package/_mjs/global/api.mjs.map +1 -1
  550. package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
  551. package/_mjs/internal/AtomicNumber.mjs.map +1 -1
  552. package/_mjs/internal/AtomicReference.mjs.map +1 -1
  553. package/_mjs/internal/Stack.mjs +1 -1
  554. package/_mjs/internal/Stack.mjs.map +1 -1
  555. package/_mjs/optics/At/api.mjs +1 -1
  556. package/_mjs/optics/At/api.mjs.map +1 -1
  557. package/_mjs/optics/At/definition.mjs +2 -2
  558. package/_mjs/optics/At/definition.mjs.map +1 -1
  559. package/_mjs/optics/Fold/definition.mjs +2 -3
  560. package/_mjs/optics/Fold/definition.mjs.map +1 -1
  561. package/_mjs/optics/Getter/definition.mjs +1 -2
  562. package/_mjs/optics/Getter/definition.mjs.map +1 -1
  563. package/_mjs/optics/Index/api.mjs +4 -4
  564. package/_mjs/optics/Index/api.mjs.map +1 -1
  565. package/_mjs/optics/Index/definition.mjs +1 -1
  566. package/_mjs/optics/Index/definition.mjs.map +1 -1
  567. package/_mjs/optics/Iso/api.mjs +8 -6
  568. package/_mjs/optics/Iso/api.mjs.map +1 -1
  569. package/_mjs/optics/Iso/definition.mjs +9 -9
  570. package/_mjs/optics/Iso/definition.mjs.map +1 -1
  571. package/_mjs/optics/Lens/api.mjs +49 -39
  572. package/_mjs/optics/Lens/api.mjs.map +1 -1
  573. package/_mjs/optics/Lens/definition.mjs +7 -7
  574. package/_mjs/optics/Lens/definition.mjs.map +1 -1
  575. package/_mjs/optics/Optional/api/compose.mjs +8 -6
  576. package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
  577. package/_mjs/optics/Optional/definition.mjs +8 -10
  578. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  579. package/_mjs/optics/Optional.mjs.map +1 -1
  580. package/_mjs/optics/Prism/api/compose.mjs +8 -6
  581. package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
  582. package/_mjs/optics/Prism/api/fromNullable.mjs +2 -2
  583. package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
  584. package/_mjs/optics/Prism/api/just.mjs +2 -2
  585. package/_mjs/optics/Prism/api/just.mjs.map +1 -1
  586. package/_mjs/optics/Prism/definition.mjs +6 -6
  587. package/_mjs/optics/Prism/definition.mjs.map +1 -1
  588. package/_mjs/optics/Prism.mjs.map +1 -1
  589. package/_mjs/optics/Setter/definition.mjs +5 -10
  590. package/_mjs/optics/Setter/definition.mjs.map +1 -1
  591. package/_mjs/optics/Traversal/api/compose.mjs +7 -5
  592. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  593. package/_mjs/optics/Traversal/api/fromTraversable.mjs +2 -2
  594. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  595. package/_mjs/optics/Traversal/definition.mjs +9 -9
  596. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  597. package/_mjs/optics/Traversal.mjs.map +1 -1
  598. package/_mjs/typeclass/Align.mjs.map +1 -1
  599. package/_mjs/typeclass/Alt.mjs.map +1 -1
  600. package/_mjs/typeclass/Applicative.mjs.map +1 -1
  601. package/_mjs/typeclass/ApplicativeExcept.mjs +6 -10
  602. package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
  603. package/_mjs/typeclass/Apply.mjs +9 -9
  604. package/_mjs/typeclass/Apply.mjs.map +1 -1
  605. package/_mjs/typeclass/Chain.mjs +5 -5
  606. package/_mjs/typeclass/Chain.mjs.map +1 -1
  607. package/_mjs/typeclass/Eq/definition.mjs.map +1 -1
  608. package/_mjs/typeclass/Eq/derivations.mjs.map +1 -1
  609. package/_mjs/typeclass/Equatable/api.mjs.map +1 -1
  610. package/_mjs/typeclass/Equatable/definition.mjs.map +1 -1
  611. package/_mjs/typeclass/Equatable/fast-equals.mjs.map +1 -1
  612. package/_mjs/typeclass/Filterable.mjs.map +1 -1
  613. package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
  614. package/_mjs/typeclass/Foldable.mjs +1 -1
  615. package/_mjs/typeclass/Foldable.mjs.map +1 -1
  616. package/_mjs/typeclass/FoldableWithIndex.mjs +1 -1
  617. package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
  618. package/_mjs/typeclass/Functor.mjs.map +1 -1
  619. package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
  620. package/_mjs/typeclass/Guard/api.mjs +18 -10
  621. package/_mjs/typeclass/Guard/api.mjs.map +1 -1
  622. package/_mjs/typeclass/Guard/definition.mjs.map +1 -1
  623. package/_mjs/typeclass/Guard/derivations.mjs.map +1 -1
  624. package/_mjs/typeclass/Has.mjs +7 -5
  625. package/_mjs/typeclass/Has.mjs.map +1 -1
  626. package/_mjs/typeclass/HashEq.mjs.map +1 -1
  627. package/_mjs/typeclass/Hashable/definition.mjs.map +1 -1
  628. package/_mjs/typeclass/Hashable/hash.mjs.map +1 -1
  629. package/_mjs/typeclass/MonadExcept.mjs +1 -1
  630. package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
  631. package/_mjs/typeclass/Ord/api/contramap.mjs +7 -5
  632. package/_mjs/typeclass/Ord/api/contramap.mjs.map +1 -1
  633. package/_mjs/typeclass/Ord/api/max.mjs.map +1 -1
  634. package/_mjs/typeclass/Ord/api/min.mjs.map +1 -1
  635. package/_mjs/typeclass/Ord/definition.mjs.map +1 -1
  636. package/_mjs/typeclass/Ord/instances.mjs.map +1 -1
  637. package/_mjs/typeclass/Ordering.mjs.map +1 -1
  638. package/_mjs/typeclass/Semialign.mjs +7 -7
  639. package/_mjs/typeclass/Semialign.mjs.map +1 -1
  640. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  641. package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
  642. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
  643. package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
  644. package/_mjs/typeclass/Showable/definition.mjs.map +1 -1
  645. package/_mjs/typeclass/Showable/show.mjs +107 -107
  646. package/_mjs/typeclass/Showable/show.mjs.map +1 -1
  647. package/_mjs/typeclass/Showable/styles.mjs.map +1 -1
  648. package/_mjs/typeclass/Showable/util.mjs +1 -1
  649. package/_mjs/typeclass/Showable/util.mjs.map +1 -1
  650. package/_mjs/typeclass/Traversable.mjs +1 -2
  651. package/_mjs/typeclass/Traversable.mjs.map +1 -1
  652. package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
  653. package/_mjs/typeclass/Witherable.mjs +2 -1
  654. package/_mjs/typeclass/Witherable.mjs.map +1 -1
  655. package/_mjs/typeclass/WitherableWithIndex.mjs +2 -1
  656. package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
  657. package/_mjs/util/AnsiFormat.mjs +11 -11
  658. package/_mjs/util/AnsiFormat.mjs.map +1 -1
  659. package/_mjs/util/PCGRandom.mjs.map +1 -1
  660. package/_mjs/util/assert.mjs.map +1 -1
  661. package/_mjs/util/pattern.mjs.map +1 -1
  662. package/_mjs/util/predicates.mjs.map +1 -1
  663. package/_mjs/util/rand/Random.mjs.map +1 -1
  664. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
  665. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
  666. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
  667. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
  668. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
  669. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
  670. package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
  671. package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
  672. package/_mjs/util/rand.mjs.map +1 -1
  673. package/_src/collection/Iterable/api/traverseConc.ts +3 -3
  674. package/_src/collection/Iterable/api.ts +445 -408
  675. package/_src/collection/Iterable/constructors.ts +1 -1
  676. package/_src/collection/compat/Array/api.ts +16 -13
  677. package/_src/collection/compat/Array/derivations.ts +27 -1
  678. package/_src/collection/compat/Record/instances.ts +51 -2
  679. package/_src/collection/immutable/Conc/api.ts +716 -607
  680. package/_src/collection/immutable/Conc/definition.ts +60 -68
  681. package/_src/collection/immutable/Conc/derivations.ts +13 -0
  682. package/_src/collection/immutable/Conc.ts +0 -1
  683. package/_src/collection/immutable/Dictionary/api.ts +44 -32
  684. package/_src/collection/immutable/HashMap/api.ts +338 -224
  685. package/_src/collection/immutable/HashMap/internal.ts +3 -7
  686. package/_src/collection/immutable/HashSet/api.ts +193 -158
  687. package/_src/collection/immutable/ImmutableArray/api/chunksOf.ts +5 -3
  688. package/_src/collection/immutable/ImmutableArray/api/slice.ts +5 -3
  689. package/_src/collection/immutable/ImmutableArray/api/splitAt.ts +5 -3
  690. package/_src/collection/immutable/ImmutableArray/api/splitWhere.ts +13 -14
  691. package/_src/collection/immutable/ImmutableArray/api.ts +870 -722
  692. package/_src/collection/immutable/ImmutableArray/derivations.ts +13 -0
  693. package/_src/collection/immutable/ImmutableArray/instances.ts +54 -73
  694. package/_src/collection/immutable/ImmutableArray.ts +0 -1
  695. package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +311 -273
  696. package/_src/collection/immutable/ImmutableNonEmptyArray/constructors.ts +19 -4
  697. package/_src/collection/immutable/ImmutableNonEmptyArray/definition.ts +0 -1
  698. package/_src/collection/immutable/ImmutableNonEmptyArray/derivations.ts +13 -0
  699. package/_src/collection/immutable/ImmutableNonEmptyArray/instances.ts +22 -23
  700. package/_src/collection/immutable/List/api/foldLeft.ts +11 -9
  701. package/_src/collection/immutable/List/api.ts +147 -133
  702. package/_src/collection/immutable/List.ts +0 -1
  703. package/_src/collection/immutable/Queue/api.ts +53 -37
  704. package/_src/collection/immutable/Queue/definition.ts +0 -1
  705. package/_src/collection/immutable/RoseTree/api.ts +38 -32
  706. package/_src/collection/immutable/RoseTree/definition.ts +2 -0
  707. package/_src/collection/immutable/SortedMap/api.ts +364 -332
  708. package/_src/collection/immutable/Vector/api.ts +608 -482
  709. package/_src/collection/immutable/Vector/definition.ts +11 -12
  710. package/_src/collection/immutable/Vector/internal.ts +37 -38
  711. package/_src/collection/mutable/HashMap.ts +1 -4
  712. package/_src/collection/mutable/HashSet.ts +1 -2
  713. package/_src/collection/mutable/ListBuffer.ts +1 -1
  714. package/_src/collection/mutable/internal.ts +0 -2
  715. package/_src/collection/weak/IterableWeakMap.ts +11 -7
  716. package/_src/collection/weak/IterableWeakSet.ts +10 -5
  717. package/_src/control/Eval/api.ts +35 -19
  718. package/_src/control/Eval/instance.ts +5 -5
  719. package/_src/control/Z/api.ts +191 -208
  720. package/_src/control/Z/instances.ts +4 -5
  721. package/_src/control/Z/runtime.ts +190 -189
  722. package/_src/data/Branded/definition.ts +11 -12
  723. package/_src/data/Branded/derivations.ts +2 -2
  724. package/_src/data/CaseClass.ts +4 -1
  725. package/_src/data/Cause/api/fold.ts +13 -14
  726. package/_src/data/Cause/api.ts +125 -105
  727. package/_src/data/Cause.ts +0 -1
  728. package/_src/data/Const/api.ts +6 -4
  729. package/_src/data/Const/instances.ts +3 -3
  730. package/_src/data/Datum/api.ts +229 -197
  731. package/_src/data/Datum/definition.ts +2 -5
  732. package/_src/data/DatumEither/api.ts +208 -193
  733. package/_src/data/Decoder/api.ts +5 -3
  734. package/_src/data/Duration/api.ts +19 -15
  735. package/_src/data/Either/api/align.ts +7 -2
  736. package/_src/data/Either/api/alignWith.ts +13 -15
  737. package/_src/data/Either/api.ts +141 -119
  738. package/_src/data/Either/constructors.ts +12 -10
  739. package/_src/data/Either/destructors.ts +11 -9
  740. package/_src/data/Either/instances.ts +24 -20
  741. package/_src/data/EitherT/api.ts +43 -49
  742. package/_src/data/Encoder/api.ts +123 -0
  743. package/_src/data/Encoder/definition.ts +12 -0
  744. package/_src/data/Encoder.ts +4 -0
  745. package/_src/data/Environment/api.ts +52 -44
  746. package/_src/data/EnvironmentPatch.ts +10 -9
  747. package/_src/data/ExecutionStrategy.ts +14 -24
  748. package/_src/data/Exit/api.ts +104 -73
  749. package/_src/data/Exit/constructors.ts +2 -2
  750. package/_src/data/FiberId/api.ts +19 -17
  751. package/_src/data/FiberId/constructors.ts +1 -2
  752. package/_src/data/Identity/api.ts +20 -12
  753. package/_src/data/Identity/instances.ts +4 -7
  754. package/_src/data/Interval.ts +39 -29
  755. package/_src/data/Intervals.ts +31 -23
  756. package/_src/data/Maybe/api.ts +112 -79
  757. package/_src/data/Maybe/constructors.ts +3 -3
  758. package/_src/data/Maybe/definition.ts +11 -1
  759. package/_src/data/Maybe/destructors.ts +6 -4
  760. package/_src/data/Maybe/instances.ts +10 -21
  761. package/_src/data/Predicate/api.ts +14 -8
  762. package/_src/data/Refinement/api.ts +19 -13
  763. package/_src/data/Struct/api.ts +75 -55
  764. package/_src/data/Tag/constructors.ts +1 -2
  765. package/_src/data/Tag/definition.ts +0 -1
  766. package/_src/data/These/api.ts +114 -114
  767. package/_src/data/These/destructors.ts +23 -24
  768. package/_src/data/Trace/api.ts +5 -3
  769. package/_src/data/Zipped.ts +3 -4
  770. package/_src/data/function/api.ts +6 -7
  771. package/_src/data/function/pipe.ts +9 -1
  772. package/_src/data/string/api.ts +40 -60
  773. package/_src/data.ts +1 -0
  774. package/_src/global/api.ts +7 -12
  775. package/_src/global.ts +4 -0
  776. package/_src/internal/AtomicBoolean.ts +0 -1
  777. package/_src/internal/AtomicNumber.ts +0 -7
  778. package/_src/internal/AtomicReference.ts +0 -4
  779. package/_src/internal/Stack.ts +1 -7
  780. package/_src/optics/At/definition.ts +5 -3
  781. package/_src/optics/Fold/definition.ts +3 -10
  782. package/_src/optics/Getter/definition.ts +1 -2
  783. package/_src/optics/Index/definition.ts +1 -1
  784. package/_src/optics/Iso/api.ts +8 -6
  785. package/_src/optics/Iso/definition.ts +3 -3
  786. package/_src/optics/Lens/api.ts +44 -42
  787. package/_src/optics/Lens/definition.ts +5 -5
  788. package/_src/optics/Optional/api/compose.ts +9 -9
  789. package/_src/optics/Optional/definition.ts +9 -16
  790. package/_src/optics/Optional.ts +0 -1
  791. package/_src/optics/Prism/api/compose.ts +9 -6
  792. package/_src/optics/Prism/definition.ts +3 -3
  793. package/_src/optics/Prism.ts +0 -1
  794. package/_src/optics/Setter/definition.ts +3 -23
  795. package/_src/optics/Traversal/api/compose.ts +7 -8
  796. package/_src/optics/Traversal/api/fromTraversable.ts +1 -1
  797. package/_src/optics/Traversal/definition.ts +10 -15
  798. package/_src/optics/Traversal.ts +0 -1
  799. package/_src/typeclass/Align.ts +0 -3
  800. package/_src/typeclass/Alt.ts +2 -1
  801. package/_src/typeclass/Applicative.ts +0 -1
  802. package/_src/typeclass/ApplicativeExcept.ts +15 -10
  803. package/_src/typeclass/Apply.ts +30 -33
  804. package/_src/typeclass/Chain.ts +9 -12
  805. package/_src/typeclass/Eq/definition.ts +0 -3
  806. package/_src/typeclass/Eq/derivations.ts +0 -2
  807. package/_src/typeclass/Equatable/api.ts +0 -2
  808. package/_src/typeclass/Equatable/definition.ts +0 -4
  809. package/_src/typeclass/Equatable/fast-equals.ts +11 -93
  810. package/_src/typeclass/Filterable.ts +19 -13
  811. package/_src/typeclass/FilterableWithIndex.ts +19 -13
  812. package/_src/typeclass/Foldable.ts +7 -10
  813. package/_src/typeclass/FoldableWithIndex.ts +7 -10
  814. package/_src/typeclass/Functor.ts +6 -4
  815. package/_src/typeclass/FunctorWithIndex.ts +3 -2
  816. package/_src/typeclass/Guard/api.ts +21 -16
  817. package/_src/typeclass/Guard/definition.ts +0 -3
  818. package/_src/typeclass/Guard/derivations.ts +5 -6
  819. package/_src/typeclass/Has.ts +6 -4
  820. package/_src/typeclass/HashEq.ts +0 -7
  821. package/_src/typeclass/Hashable/definition.ts +0 -4
  822. package/_src/typeclass/Hashable/hash.ts +0 -26
  823. package/_src/typeclass/MonadExcept.ts +1 -1
  824. package/_src/typeclass/Ord/api/contramap.ts +7 -6
  825. package/_src/typeclass/Ord/api/max.ts +0 -1
  826. package/_src/typeclass/Ord/api/min.ts +0 -1
  827. package/_src/typeclass/Ord/definition.ts +0 -4
  828. package/_src/typeclass/Ord/instances.ts +0 -2
  829. package/_src/typeclass/Ordering.ts +2 -0
  830. package/_src/typeclass/Semialign.ts +43 -32
  831. package/_src/typeclass/Semigroup/api.ts +0 -2
  832. package/_src/typeclass/Semigroup/definition.ts +0 -4
  833. package/_src/typeclass/Semigroup/derivations.ts +0 -2
  834. package/_src/typeclass/Semimonoidal.ts +3 -2
  835. package/_src/typeclass/Showable/definition.ts +0 -6
  836. package/_src/typeclass/Showable/show.ts +1 -57
  837. package/_src/typeclass/Showable/styles.ts +0 -8
  838. package/_src/typeclass/Showable/util.ts +22 -57
  839. package/_src/typeclass/Traversable.ts +13 -18
  840. package/_src/typeclass/TraversableWithIndex.ts +5 -7
  841. package/_src/typeclass/Witherable.ts +21 -13
  842. package/_src/typeclass/WitherableWithIndex.ts +26 -17
  843. package/_src/typeclass/builtin/Symbol.ts +0 -1
  844. package/_src/types/extractions.ts +12 -3
  845. package/_src/types/utility.ts +3 -5
  846. package/_src/util/AnsiFormat.ts +0 -25
  847. package/_src/util/PCGRandom.ts +4 -9
  848. package/_src/util/assert.ts +1 -2
  849. package/_src/util/pattern.ts +91 -12
  850. package/_src/util/predicates.ts +3 -1
  851. package/_src/util/rand/Random.ts +12 -16
  852. package/_src/util/rand/distribution/Distribution.ts +0 -1
  853. package/_src/util/rand/distribution/UniformArrayIntDistribution.ts +0 -3
  854. package/_src/util/rand/distribution/UniformBigIntDistribution.ts +0 -5
  855. package/_src/util/rand/distribution/UniformIntDistribution.ts +0 -7
  856. package/_src/util/rand/distribution/internals/ArrayInt.ts +3 -13
  857. package/_src/util/rand/distribution/internals/UniformArrayIntDistributionInternal.ts +0 -3
  858. package/_src/util/rand/distribution/internals/UniformIntDistributionInternal.ts +0 -4
  859. package/_src/util/rand/generator/MersenneTwister.ts +6 -29
  860. package/_src/util/rand/generator/RandomGenerator.ts +0 -3
  861. package/_src/util/rand.ts +0 -2
  862. package/collection/Iterable/api/traverseConc.d.ts +2 -2
  863. package/collection/Iterable/api.d.ts +64 -64
  864. package/collection/Iterable/constructors.d.ts +1 -1
  865. package/collection/compat/Array/api.d.ts +6 -6
  866. package/collection/compat/Array/derivations.d.ts +11 -0
  867. package/collection/compat/Record/instances.d.ts +30 -6
  868. package/collection/immutable/Conc/api.d.ts +108 -105
  869. package/collection/immutable/Conc/definition.d.ts +2 -2
  870. package/collection/immutable/Conc/derivations.d.ts +6 -0
  871. package/collection/immutable/Dictionary/api.d.ts +12 -12
  872. package/collection/immutable/HashMap/api.d.ts +76 -70
  873. package/collection/immutable/HashSet/api.d.ts +45 -41
  874. package/collection/immutable/ImmutableArray/api/chunksOf.d.ts +2 -2
  875. package/collection/immutable/ImmutableArray/api/slice.d.ts +2 -2
  876. package/collection/immutable/ImmutableArray/api/splitAt.d.ts +2 -2
  877. package/collection/immutable/ImmutableArray/api/splitWhere.d.ts +3 -3
  878. package/collection/immutable/ImmutableArray/api.d.ts +206 -206
  879. package/collection/immutable/ImmutableArray/derivations.d.ts +6 -0
  880. package/collection/immutable/ImmutableNonEmptyArray/api.d.ts +64 -63
  881. package/collection/immutable/ImmutableNonEmptyArray/derivations.d.ts +6 -0
  882. package/collection/immutable/List/api/foldLeft.d.ts +2 -2
  883. package/collection/immutable/List/api.d.ts +24 -24
  884. package/collection/immutable/Queue/api.d.ts +16 -16
  885. package/collection/immutable/RoseTree/api.d.ts +14 -14
  886. package/collection/immutable/SortedMap/api.d.ts +41 -41
  887. package/collection/immutable/Vector/api.d.ts +121 -117
  888. package/collection/immutable/Vector/definition.d.ts +2 -2
  889. package/collection/immutable/Vector/internal.d.ts +2 -2
  890. package/collection/mutable/ListBuffer.d.ts +1 -1
  891. package/control/Eval/api.d.ts +12 -12
  892. package/control/Z/api.d.ts +68 -68
  893. package/control/Z/runtime.d.ts +10 -10
  894. package/data/Branded/derivations.d.ts +2 -2
  895. package/data/Cause/api/fold.d.ts +3 -3
  896. package/data/Cause/api.d.ts +20 -20
  897. package/data/Const/api.d.ts +3 -3
  898. package/data/Datum/api.d.ts +43 -41
  899. package/data/DatumEither/api.d.ts +48 -46
  900. package/data/Decoder/api.d.ts +2 -2
  901. package/data/Duration/api.d.ts +7 -7
  902. package/data/Either/api/align.d.ts +5 -1
  903. package/data/Either/api/alignWith.d.ts +2 -2
  904. package/data/Either/api.d.ts +40 -46
  905. package/data/Either/constructors.d.ts +6 -6
  906. package/data/Either/destructors.d.ts +2 -2
  907. package/data/EitherT/api.d.ts +6 -6
  908. package/data/Encoder/api.d.ts +73 -0
  909. package/data/Encoder/definition.d.ts +12 -0
  910. package/data/Encoder.d.ts +2 -0
  911. package/data/Environment/api.d.ts +14 -14
  912. package/data/EnvironmentPatch.d.ts +4 -4
  913. package/data/ExecutionStrategy.d.ts +1 -6
  914. package/data/Exit/api.d.ts +32 -32
  915. package/data/Exit/constructors.d.ts +2 -2
  916. package/data/FiberId/api.d.ts +2 -2
  917. package/data/Identity/api.d.ts +8 -8
  918. package/data/Interval.d.ts +11 -11
  919. package/data/Intervals.d.ts +11 -11
  920. package/data/Maybe/api.d.ts +36 -37
  921. package/data/Maybe/constructors.d.ts +2 -2
  922. package/data/Maybe/definition.d.ts +7 -3
  923. package/data/Maybe/destructors.d.ts +2 -2
  924. package/data/Predicate/api.d.ts +5 -5
  925. package/data/Refinement/api.d.ts +9 -9
  926. package/data/Struct/api.d.ts +13 -23
  927. package/data/Tag/constructors.d.ts +1 -2
  928. package/data/Tag/definition.d.ts +0 -1
  929. package/data/These/api.d.ts +18 -22
  930. package/data/These/destructors.d.ts +4 -4
  931. package/data/Trace/api.d.ts +2 -2
  932. package/data/function/api.d.ts +3 -3
  933. package/data/function/pipe.d.ts +7 -1
  934. package/data/string/api.d.ts +9 -49
  935. package/data.d.ts +1 -0
  936. package/global/api.d.ts +3 -3
  937. package/global.d.ts +4 -0
  938. package/internal/Stack.d.ts +1 -1
  939. package/optics/At/definition.d.ts +1 -1
  940. package/optics/Fold/definition.d.ts +2 -6
  941. package/optics/Getter/definition.d.ts +1 -1
  942. package/optics/Index/definition.d.ts +1 -1
  943. package/optics/Iso/api.d.ts +2 -2
  944. package/optics/Iso/definition.d.ts +2 -2
  945. package/optics/Lens/api.d.ts +10 -10
  946. package/optics/Lens/definition.d.ts +4 -4
  947. package/optics/Optional/api/compose.d.ts +2 -2
  948. package/optics/Optional/definition.d.ts +4 -8
  949. package/optics/Prism/api/compose.d.ts +2 -2
  950. package/optics/Prism/definition.d.ts +2 -2
  951. package/optics/Setter/definition.d.ts +2 -14
  952. package/optics/Traversal/api/compose.d.ts +2 -2
  953. package/optics/Traversal/definition.d.ts +4 -4
  954. package/package.json +1 -1
  955. package/typeclass/Alt.d.ts +1 -1
  956. package/typeclass/ApplicativeExcept.d.ts +2 -6
  957. package/typeclass/Apply.d.ts +5 -5
  958. package/typeclass/Chain.d.ts +4 -4
  959. package/typeclass/Filterable.d.ts +6 -6
  960. package/typeclass/FilterableWithIndex.d.ts +6 -6
  961. package/typeclass/Foldable.d.ts +4 -4
  962. package/typeclass/FoldableWithIndex.d.ts +4 -4
  963. package/typeclass/Functor.d.ts +2 -2
  964. package/typeclass/FunctorWithIndex.d.ts +1 -1
  965. package/typeclass/Guard/api.d.ts +7 -7
  966. package/typeclass/Has.d.ts +3 -3
  967. package/typeclass/Ord/api/contramap.d.ts +2 -2
  968. package/typeclass/Semialign.d.ts +14 -14
  969. package/typeclass/Semimonoidal.d.ts +1 -1
  970. package/typeclass/Traversable.d.ts +4 -6
  971. package/typeclass/TraversableWithIndex.d.ts +2 -2
  972. package/typeclass/Witherable.d.ts +3 -3
  973. package/typeclass/WitherableWithIndex.d.ts +5 -5
  974. package/types/extractions.d.ts +10 -6
  975. package/util/assert.d.ts +1 -1
@@ -13,145 +13,162 @@ import * as tsplus_module_12 from "@fncts/base/collection/immutable/ImmutableNon
13
13
  import * as tsplus_module_13 from "@fncts/base/collection/immutable/Dictionary/definition";
14
14
  import * as tsplus_module_14 from "@fncts/base/collection/immutable/Dictionary/api";
15
15
  import * as tsplus_module_15 from "@fncts/base/typeclass/Ord/instances";
16
- import * as tsplus_module_16 from "@fncts/base/typeclass/TraversableWithIndex";
17
- import * as tsplus_module_17 from "@fncts/base/data/Either/destructors";
18
- import * as tsplus_module_18 from "@fncts/base/typeclass/WitherableWithIndex";
19
- export const alignWith_ = alignWith_1;
20
- export const append_ = append_1;
21
- export const crossWith_ = crossWith_1;
22
- export const flatMapWithIndex_ = flatMapWithIndex_1;
23
- export const flatMap_ = flatMap_1;
16
+ import * as tsplus_module_16 from "@fncts/base/data/Either/destructors";
17
+ export const alignWith = alignWith_1;
18
+ export const append = append_1;
19
+ export const crossWith = crossWith_1;
20
+ export const flatMapWithIndex = flatMapWithIndex_1;
21
+ export const flatMap = flatMap_1;
24
22
  export const flatten = flatten_1;
25
- export const concat_ = concat_1;
26
- export const elem_ = elem_1;
27
- export const everyWithIndex_ = everyWithIndex_1;
28
- export const filter_ = filter_1;
29
- export const filterWithIndex_ = filterWithIndex_1;
30
- export const filterMapWithIndex_ = filterMapWithIndex_1;
31
- export const findWithIndex_ = findWithIndex_1;
32
- export const findMapWithIndex_ = findMapWithIndex_1;
33
- export const findLastMapWithIndex_ = findLastMapWithIndex_1;
34
- export const foldLeftWithIndex_ = foldLeftWithIndex_1;
35
- export const foldLeft_ = foldLeft_1;
36
- export const foldLeftWithIndexWhile_ = foldLeftWithIndexWhile_1;
23
+ export const chop = chop_1;
24
+ export const concat = concat_1;
25
+ export const elem = elem_1;
26
+ export const everyWithIndex = everyWithIndex_1;
27
+ export const filter = filter_1;
28
+ export const filterWithIndex = filterWithIndex_1;
29
+ export const filterMapWithIndex = filterMapWithIndex_1;
30
+ export const findWithIndex = findWithIndex_1;
31
+ export const findMapWithIndex = findMapWithIndex_1;
32
+ export const findLastMapWithIndex = findLastMapWithIndex_1;
33
+ export const foldLeftWithIndex = foldLeftWithIndex_1;
34
+ export const foldLeft = foldLeft_1;
35
+ export const foldLeftWithIndexWhile = foldLeftWithIndexWhile_1;
37
36
  export const fold = fold_1;
38
- export const foldMapWithIndex_ = foldMapWithIndex_1;
39
- export const foldRightWithIndex_ = foldRightWithIndex_1;
40
- export const foldRightWithIndexWhile_ = foldRightWithIndexWhile_1;
41
- export const forEach_ = forEach_1;
42
- export const get_ = get_1;
37
+ export const foldMapWithIndex = foldMapWithIndex_1;
38
+ export const foldRightWithIndex = foldRightWithIndex_1;
39
+ export const foldRightWithIndexWhile = foldRightWithIndexWhile_1;
40
+ export const forEach = forEach_1;
41
+ export const get = get_1;
43
42
  export const isEmpty = isEmpty_1;
44
- export const isOutOfBound_ = isOutOfBound_1;
45
- export const map_ = map_1;
46
- export const mapWithIndex_ = mapWithIndex_1;
47
- export const mutate_ = mutate_1;
43
+ export const isOutOfBound = isOutOfBound_1;
44
+ export const map = map_1;
45
+ export const mapWithIndex = mapWithIndex_1;
46
+ export const mutate = mutate_1;
48
47
  export const mutableClone = mutableClone_1;
49
- export const partitionWithIndex_ = partitionWithIndex_1;
50
- export const partitionMapWithIndex_ = partitionMapWithIndex_1;
51
- export const prepend_ = prepend_1;
52
- export const prependAll_ = prependAll_1;
53
- export const rotate_ = rotate_1;
48
+ export const partitionWithIndex = partitionWithIndex_1;
49
+ export const partitionMapWithIndex = partitionMapWithIndex_1;
50
+ export const prepend = prepend_1;
51
+ export const prependAll = prependAll_1;
52
+ export const rotate = rotate_1;
54
53
  export const sort = sort_1;
55
- export const spanIndexLeft_ = spanIndexLeft_1;
56
- export const spanIndexRight_ = spanIndexRight_1;
54
+ export const spanIndexLeft = spanIndexLeft_1;
55
+ export const spanIndexRight = spanIndexRight_1;
56
+ export const _traverseWithIndex = _traverseWithIndex_1;
57
+ export const _traverse = _traverse_1;
57
58
  export const unsafeGet = unsafeGet_1;
58
59
  export const unsafeAsMutable = unsafeAsMutable_1;
59
- export const unsafeDeleteAt_ = unsafeDeleteAt_1;
60
- export const unsafeInsertAt_ = unsafeInsertAt_1;
61
- export const unsafeModifyAt_ = unsafeModifyAt_1;
62
- export const unsafeUpdateAt_ = unsafeUpdateAt_1;
63
- export const zipWith_ = zipWith_1;
64
- import { identity, tuple } from "@fncts/base/data/function";
60
+ export const unsafeDeleteAt = unsafeDeleteAt_1;
61
+ export const unsafeInsertAt = unsafeInsertAt_1;
62
+ export const unsafeModifyAt = unsafeModifyAt_1;
63
+ export const unsafeUpdateAt = unsafeUpdateAt_1;
64
+ export const _wiltWithIndex = _wiltWithIndex_1;
65
+ export const _witherWithIndex = _witherWithIndex_1;
66
+ export const zipWith = zipWith_1;
67
+ import { identity, pipe, tuple } from "@fncts/base/data/function";
65
68
  import * as P from "@fncts/base/typeclass";
66
69
  /**
67
- * @tsplus fluent fncts.ImmutableArray alignWith
70
+ * @tsplus pipeable fncts.ImmutableArray alignWith
68
71
  */
69
72
 
70
- function alignWith_1(self, fb, f) {
71
- const selfArray = self._array;
72
- const thatArray = fb._array;
73
- const minlen = Math.min(selfArray.length, thatArray.length);
74
- const maxlen = Math.max(selfArray.length, thatArray.length);
75
- const ret = Array(maxlen);
73
+ function alignWith_1(fb, f) {
74
+ return self => {
75
+ const selfArray = self._array;
76
+ const thatArray = fb._array;
77
+ const minlen = Math.min(selfArray.length, thatArray.length);
78
+ const maxlen = Math.max(selfArray.length, thatArray.length);
79
+ const ret = Array(maxlen);
76
80
 
77
- for (let i = 0; i < minlen; i++) {
78
- ret[i] = f(tsplus_module_1.both(selfArray[i], thatArray[i]));
79
- }
80
-
81
- if (minlen === maxlen) {
82
- return tsplus_module_2.asImmutableArray(ret);
83
- } else if (selfArray.length > thatArray.length) {
84
- for (let i = minlen; i < maxlen; i++) {
85
- ret[i] = f(tsplus_module_1.left(selfArray[i]));
81
+ for (let i = 0; i < minlen; i++) {
82
+ ret[i] = f(tsplus_module_1.both(selfArray[i], thatArray[i]));
86
83
  }
87
- } else {
88
- for (let i = minlen; i < maxlen; i++) {
89
- ret[i] = f(tsplus_module_1.right(thatArray[i]));
84
+
85
+ if (minlen === maxlen) {
86
+ return tsplus_module_2.asImmutableArray(ret);
87
+ } else if (selfArray.length > thatArray.length) {
88
+ for (let i = minlen; i < maxlen; i++) {
89
+ ret[i] = f(tsplus_module_1.left(selfArray[i]));
90
+ }
91
+ } else {
92
+ for (let i = minlen; i < maxlen; i++) {
93
+ ret[i] = f(tsplus_module_1.right(thatArray[i]));
94
+ }
90
95
  }
91
- }
92
96
 
93
- return tsplus_module_2.asImmutableArray(ret);
97
+ return tsplus_module_2.asImmutableArray(ret);
98
+ };
94
99
  }
95
100
  /**
96
- * @tsplus fluent fncts.ImmutableArray align
101
+ * @tsplus pipeable fncts.ImmutableArray align
97
102
  */
98
103
 
99
104
 
100
- export function align_(self, fb) {
101
- return alignWith_1(self, fb, identity);
105
+ export function align(fb) {
106
+ return self => {
107
+ return alignWith_1(fb, identity)(self);
108
+ };
102
109
  }
103
110
  /**
104
- * @tsplus fluent fncts.ImmutableArray alt
111
+ * @tsplus pipeable fncts.ImmutableArray alt
105
112
  */
106
113
 
107
- export function alt_(self, that) {
108
- return concat_1(self, that());
114
+ export function alt(that) {
115
+ return self => {
116
+ return concat_1(that())(self);
117
+ };
109
118
  }
110
119
  /**
111
- * @tsplus fluent fncts.ImmutableArray ap
120
+ * @tsplus pipeable fncts.ImmutableArray ap
112
121
  */
113
122
 
114
- export function ap_(self, fa) {
115
- return flatMap_1(self, f => map_1(fa, f));
123
+ export function ap(fa) {
124
+ return self => {
125
+ return flatMap_1(f => map_1(f)(fa))(self);
126
+ };
116
127
  }
117
128
  /**
118
- * @tsplus fluent fncts.ImmutableArray append
129
+ * @tsplus pipeable fncts.ImmutableArray append
119
130
  */
120
131
 
121
- function append_1(self, last) {
122
- const selfArray = self._array;
123
- const len = selfArray.length;
124
- const r = Array(len + 1);
125
- r[len] = last;
132
+ function append_1(last) {
133
+ return self => {
134
+ const selfArray = self._array;
135
+ const len = selfArray.length;
136
+ const r = Array(len + 1);
137
+ r[len] = last;
126
138
 
127
- for (let i = 0; i < len; i++) {
128
- r[i] = selfArray[i];
129
- }
139
+ for (let i = 0; i < len; i++) {
140
+ r[i] = selfArray[i];
141
+ }
130
142
 
131
- return tsplus_module_2.asImmutableArray(r);
143
+ return tsplus_module_2.asImmutableArray(r);
144
+ };
132
145
  }
133
146
  /**
134
- * @tsplus fluent fncts.ImmutableArray crossWith
147
+ * @tsplus pipeable fncts.ImmutableArray crossWith
135
148
  */
136
149
 
137
150
 
138
- function crossWith_1(self, fb, f) {
139
- return flatMap_1(self, a => map_1(fb, b => f(a, b)));
151
+ function crossWith_1(fb, f) {
152
+ return self => {
153
+ return flatMap_1(a => map_1(b => f(a, b))(fb))(self);
154
+ };
140
155
  }
141
156
  /**
142
- * @tsplus fluent fncts.ImmutableArray cross
157
+ * @tsplus pipeable fncts.ImmutableArray cross
143
158
  */
144
159
 
145
160
 
146
- export function cross_(self, fb) {
147
- return crossWith_1(self, fb, (a, b) => tsplus_module_3.make(a, b));
161
+ export function cross(fb) {
162
+ return self => {
163
+ return crossWith_1(fb, (a, b) => tsplus_module_3.make(a, b))(self);
164
+ };
148
165
  }
149
166
  /**
150
167
  * @tsplus static fncts.ImmutableArrayOps chainRecDepthFirst
151
168
  */
152
169
 
153
170
  export function chainRecDepthFirst(a, f) {
154
- const buffer = unsafeAsMutable_1(tsplus_module_4.slice_(f(a)));
171
+ const buffer = unsafeAsMutable_1(tsplus_module_4.slice()(f(a)));
155
172
  const out = [];
156
173
 
157
174
  while (buffer.length > 0) {
@@ -182,7 +199,7 @@ export function chainRecBreadthFirst(a, f) {
182
199
  void 0;
183
200
 
184
201
  if (e._tag === "Left") {
185
- forEach_1(f(e.left), v => buffer.push(v));
202
+ forEach_1(v => buffer.push(v))(f(e.left));
186
203
  } else {
187
204
  out.push(e.right);
188
205
  }
@@ -199,47 +216,51 @@ export function chainRecBreadthFirst(a, f) {
199
216
  return tsplus_module_2.asImmutableArray(out);
200
217
  }
201
218
  /**
202
- * @tsplus fluent fncts.ImmutableArray flatMapWithIndex
219
+ * @tsplus pipeable fncts.ImmutableArray flatMapWithIndex
203
220
  */
204
221
 
205
- function flatMapWithIndex_1(self, f) {
206
- let outLen = 0;
207
- const selfArray = self._array;
208
- const len = selfArray.length;
209
- const temp = Array(len);
222
+ function flatMapWithIndex_1(f) {
223
+ return self => {
224
+ let outLen = 0;
225
+ const selfArray = self._array;
226
+ const len = selfArray.length;
227
+ const temp = Array(len);
210
228
 
211
- for (let i = 0; i < len; i++) {
212
- const e = selfArray[i];
229
+ for (let i = 0; i < len; i++) {
230
+ const e = selfArray[i];
213
231
 
214
- const arr = f(i, e)._array;
232
+ const arr = f(i, e)._array;
215
233
 
216
- outLen += arr.length;
217
- temp[i] = arr;
218
- }
234
+ outLen += arr.length;
235
+ temp[i] = arr;
236
+ }
219
237
 
220
- const out = Array(outLen);
221
- let start = 0;
238
+ const out = Array(outLen);
239
+ let start = 0;
222
240
 
223
- for (let i = 0; i < len; i++) {
224
- const arr = temp[i];
225
- const l = arr.length;
241
+ for (let i = 0; i < len; i++) {
242
+ const arr = temp[i];
243
+ const l = arr.length;
226
244
 
227
- for (let j = 0; j < l; j++) {
228
- out[j + start] = arr[j];
229
- }
245
+ for (let j = 0; j < l; j++) {
246
+ out[j + start] = arr[j];
247
+ }
230
248
 
231
- start += l;
232
- }
249
+ start += l;
250
+ }
233
251
 
234
- return tsplus_module_2.asImmutableArray(out);
252
+ return tsplus_module_2.asImmutableArray(out);
253
+ };
235
254
  }
236
255
  /**
237
- * @tsplus fluent fncts.ImmutableArray flatMap
256
+ * @tsplus pipeable fncts.ImmutableArray flatMap
238
257
  */
239
258
 
240
259
 
241
- function flatMap_1(self, f) {
242
- return flatMapWithIndex_1(self, (_, a) => f(a));
260
+ function flatMap_1(f) {
261
+ return self => {
262
+ return flatMapWithIndex_1((_, a) => f(a))(self);
263
+ };
243
264
  }
244
265
  /**
245
266
  * @tsplus getter fncts.ImmutableArray flatten
@@ -247,55 +268,59 @@ function flatMap_1(self, f) {
247
268
 
248
269
 
249
270
  function flatten_1(self) {
250
- return flatMap_1(self, identity);
271
+ return flatMap_1(identity)(self);
251
272
  }
252
273
  /**
253
274
  * A useful recursion pattern for processing a `Array` to produce a new `Array`,
254
275
  * often used for "chopping" up the input `Array`. Typically chop is called with some function
255
276
  * that will consume an initial prefix of the `Array` and produce a value and the rest of the `Array`.
256
277
  *
257
- * @tsplus fluent fncts.ImmutableArray chop
278
+ * @tsplus pipeable fncts.ImmutableArray chop
258
279
  */
259
280
 
260
281
 
261
- export function chop_(as, f) {
262
- const result = [];
263
- let cs = as;
282
+ function chop_1(f) {
283
+ return as => {
284
+ const result = [];
285
+ let cs = as;
264
286
 
265
- while (tsplus_module_5.isNonEmpty(cs)) {
266
- const [b, c] = f(cs);
267
- result.push(b);
268
- cs = c;
269
- }
287
+ while (tsplus_module_5.isNonEmpty(cs)) {
288
+ const [b, c] = f(cs);
289
+ result.push(b);
290
+ cs = c;
291
+ }
270
292
 
271
- return tsplus_module_2.asImmutableArray(result);
293
+ return tsplus_module_2.asImmutableArray(result);
294
+ };
272
295
  }
273
- export const chop = f => as => chop_(as, f);
274
296
  /**
275
- * @tsplus fluent fncts.ImmutableArray collectWhile
297
+ * @tsplus pipeable fncts.ImmutableArray collectWhile
276
298
  */
277
299
 
278
- export function collectWhile_(as, f) {
279
- const result = [];
280
300
 
281
- for (let i = 0; i < tsplus_module_5.length(as); i++) {
282
- const o = f(as._array[i]);
301
+ export function collectWhile(f) {
302
+ return as => {
303
+ const result = [];
283
304
 
284
- if (tsplus_module_6.isJust(o)) {
285
- result.push(o.value);
286
- } else {
287
- break;
305
+ for (let i = 0; i < tsplus_module_5.length(as); i++) {
306
+ const o = f(as._array[i]);
307
+
308
+ if (tsplus_module_6.isJust(o)) {
309
+ result.push(o.value);
310
+ } else {
311
+ break;
312
+ }
288
313
  }
289
- }
290
314
 
291
- return tsplus_module_2.asImmutableArray(result);
315
+ return tsplus_module_2.asImmutableArray(result);
316
+ };
292
317
  }
293
318
 
294
319
  function comprehensionLoop(scope, input, f, g) {
295
320
  if (input.length === 0) {
296
321
  return g(...scope) ? tsplus_module_7.now(tsplus_module_2.make(f(...scope))) : tsplus_module_7.now(tsplus_module_2.empty());
297
322
  } else {
298
- return tsplus_module_9.map_(traverse_1(input[0])(tsplus_module_8.Applicative)(a => comprehensionLoop(append_1(scope, a), input.slice(1), f, g)), rs => flatten_1(rs));
323
+ return tsplus_module_9.map(rs => flatten_1(rs))(_traverse_1(input[0])(tsplus_module_8.Applicative)(a => comprehensionLoop(append_1(a)(scope), input.slice(1), f, g)));
299
324
  }
300
325
  }
301
326
 
@@ -303,412 +328,490 @@ export function comprehension(input, f, g = () => true) {
303
328
  return tsplus_module_10.run(comprehensionLoop(tsplus_module_2.empty(), input, f, g));
304
329
  }
305
330
  /**
306
- * @tsplus fluent fncts.ImmutableArray concat
307
- * @tsplus operator fncts.ImmutableArray +
331
+ * @tsplus pipeable fncts.ImmutableArray concat
332
+ * @tsplus pipeable-operator fncts.ImmutableArray +
308
333
  */
309
334
 
310
- function concat_1(self, that) {
311
- const lenx = self._array.length;
335
+ function concat_1(that) {
336
+ return self => {
337
+ const lenx = self._array.length;
312
338
 
313
- if (lenx === 0) {
314
- return that;
315
- }
339
+ if (lenx === 0) {
340
+ return that;
341
+ }
316
342
 
317
- const leny = that._array.length;
343
+ const leny = that._array.length;
318
344
 
319
- if (leny === 0) {
320
- return self;
321
- }
345
+ if (leny === 0) {
346
+ return self;
347
+ }
322
348
 
323
- const r = Array(lenx + leny);
349
+ const r = Array(lenx + leny);
324
350
 
325
- for (let i = 0; i < lenx; i++) {
326
- r[i] = self._array[i];
327
- }
351
+ for (let i = 0; i < lenx; i++) {
352
+ r[i] = self._array[i];
353
+ }
328
354
 
329
- for (let i = 0; i < leny; i++) {
330
- r[i + lenx] = that._array[i];
331
- }
355
+ for (let i = 0; i < leny; i++) {
356
+ r[i + lenx] = that._array[i];
357
+ }
332
358
 
333
- return tsplus_module_2.asImmutableArray(r);
359
+ return tsplus_module_2.asImmutableArray(r);
360
+ };
334
361
  }
335
362
  /**
336
- * @tsplus fluent fncts.ImmutableArray deleteAt
363
+ * @tsplus pipeable fncts.ImmutableArray deleteAt
337
364
  */
338
365
 
339
366
 
340
- export function deleteAt_(as, i) {
341
- return isOutOfBound_1(as, i) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeDeleteAt_1(as, i));
367
+ export function deleteAt(i) {
368
+ return as => {
369
+ return isOutOfBound_1(i)(as) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeDeleteAt_1(i)(as));
370
+ };
342
371
  }
343
372
  /**
344
- * @tsplus fluent fncts.ImmutableArray difference
373
+ * @tsplus pipeable fncts.ImmutableArray difference
345
374
  */
346
375
 
347
- export function difference_(self, ys,
376
+ export function difference(ys,
348
377
  /** @tsplus auto */
349
378
  E) {
350
- return filter_1(self, a => !elem_1(ys, a, E));
379
+ return self => {
380
+ return filter_1(a => !elem_1(a, E)(ys))(self);
381
+ };
351
382
  }
352
383
  /**
353
- * @tsplus fluent fncts.ImmutableArray drop
384
+ * @tsplus pipeable fncts.ImmutableArray drop
354
385
  */
355
386
 
356
- export function drop_(self, n) {
357
- return tsplus_module_4.slice_(self, n);
387
+ export function drop(n) {
388
+ return self => {
389
+ return tsplus_module_4.slice(n)(self);
390
+ };
358
391
  }
359
392
  /**
360
- * @tsplus fluent fncts.ImmutableArray dropLast
393
+ * @tsplus pipeable fncts.ImmutableArray dropLast
361
394
  */
362
395
 
363
- export function dropLast_(self, n) {
364
- return tsplus_module_4.slice_(self, 0, tsplus_module_5.length(self) - n);
396
+ export function dropLast(n) {
397
+ return self => {
398
+ return tsplus_module_4.slice(0, tsplus_module_5.length(self) - n)(self);
399
+ };
365
400
  }
366
401
  /**
367
- * @tsplus fluent fncts.ImmutableArray dropWhile
402
+ * @tsplus pipeable fncts.ImmutableArray dropWhile
368
403
  */
369
404
 
370
- export function dropWhile_(self, p) {
371
- return tsplus_module_4.slice_(self, spanIndexLeft_1(self, p));
405
+ export function dropWhile(p) {
406
+ return self => {
407
+ return tsplus_module_4.slice(spanIndexLeft_1(p)(self))(self);
408
+ };
372
409
  }
373
410
  /**
374
- * @tsplus fluent fncts.ImmutableArray dropLastWhile
411
+ * @tsplus pipeable fncts.ImmutableArray dropLastWhile
375
412
  */
376
413
 
377
- export function dropLastWhile_(as, p) {
378
- return tsplus_module_4.slice_(as, 0, spanIndexRight_1(as, p) + 1);
414
+ export function dropLastWhile(p) {
415
+ return as => {
416
+ return tsplus_module_4.slice(0, spanIndexRight_1(p)(as) + 1)(as);
417
+ };
379
418
  }
380
419
  /**
381
420
  * Test if a value is a member of an array. Takes an `Eq<A>` as a single
382
421
  * argument which returns the function to use to search for a value of type `A` in
383
422
  * an array of type `ImmutableArray<A>`.
384
423
  *
385
- * @tsplus fluent fncts.ImmutableArray elem
424
+ * @tsplus pipeable fncts.ImmutableArray elem
386
425
  */
387
426
 
388
- function elem_1(as, a,
427
+ function elem_1(a,
389
428
  /** @tsplus auto */
390
429
  E) {
391
- const predicate = element => E.equals(element, a);
430
+ return as => {
431
+ const predicate = element => E.equals(element, a);
392
432
 
393
- const len = tsplus_module_5.length(as);
433
+ const len = tsplus_module_5.length(as);
394
434
 
395
- for (let i = 0; i < len; i++) {
396
- if (predicate(as._array[i])) {
397
- return true;
435
+ for (let i = 0; i < len; i++) {
436
+ if (predicate(as._array[i])) {
437
+ return true;
438
+ }
398
439
  }
399
- }
400
440
 
401
- return false;
441
+ return false;
442
+ };
402
443
  }
403
444
 
404
- export function every_(self, p) {
405
- return everyWithIndex_1(self, (_, a) => p(a));
445
+ export function every(p) {
446
+ return self => {
447
+ return everyWithIndex_1((_, a) => p(a))(self);
448
+ };
406
449
  }
407
450
 
408
- function everyWithIndex_1(self, p) {
409
- let result = true;
410
- let i = 0;
451
+ function everyWithIndex_1(p) {
452
+ return self => {
453
+ let result = true;
454
+ let i = 0;
411
455
 
412
- while (result && i < tsplus_module_5.length(self)) {
413
- result = p(i, self._array[i]);
414
- i++;
415
- }
456
+ while (result && i < tsplus_module_5.length(self)) {
457
+ result = p(i, self._array[i]);
458
+ i++;
459
+ }
416
460
 
417
- return result;
461
+ return result;
462
+ };
418
463
  }
419
464
  /**
420
- * @tsplus fluent fncts.ImmutableArray exists
465
+ * @tsplus pipeable fncts.ImmutableArray exists
421
466
  */
422
467
 
423
468
 
424
- export function exists_(self, p) {
425
- let result = false;
426
- let i = 0;
469
+ export function exists(p) {
470
+ return self => {
471
+ let result = false;
472
+ let i = 0;
427
473
 
428
- while (!result && i < tsplus_module_5.length(self)) {
429
- result = p(self._array[i]);
430
- i++;
431
- }
474
+ while (!result && i < tsplus_module_5.length(self)) {
475
+ result = p(self._array[i]);
476
+ i++;
477
+ }
432
478
 
433
- return result;
479
+ return result;
480
+ };
434
481
  }
435
482
 
436
- function filter_1(self, p) {
437
- return filterWithIndex_1(self, (_, a) => p(a));
483
+ function filter_1(p) {
484
+ return self => {
485
+ return filterWithIndex_1((_, a) => p(a))(self);
486
+ };
438
487
  }
439
488
 
440
- function filterWithIndex_1(self, p) {
441
- const result = [];
489
+ function filterWithIndex_1(p) {
490
+ return self => {
491
+ const result = [];
442
492
 
443
- for (let i = 0; i < tsplus_module_5.length(self); i++) {
444
- const a = self._array[i];
493
+ for (let i = 0; i < tsplus_module_5.length(self); i++) {
494
+ const a = self._array[i];
445
495
 
446
- if (p(i, a)) {
447
- result.push(a);
496
+ if (p(i, a)) {
497
+ result.push(a);
498
+ }
448
499
  }
449
- }
450
500
 
451
- return tsplus_module_2.asImmutableArray(result);
501
+ return tsplus_module_2.asImmutableArray(result);
502
+ };
452
503
  }
453
504
  /**
454
- * @tsplus fluent fncts.ImmutableArray filterMapWithIndex
505
+ * @tsplus pipeable fncts.ImmutableArray filterMapWithIndex
455
506
  */
456
507
 
457
508
 
458
- function filterMapWithIndex_1(fa, f) {
459
- const result = [];
509
+ function filterMapWithIndex_1(f) {
510
+ return fa => {
511
+ const result = [];
460
512
 
461
- for (let i = 0; i < tsplus_module_5.length(fa); i++) {
462
- const maybeB = f(i, unsafeGet_1(fa, i));
513
+ for (let i = 0; i < tsplus_module_5.length(fa); i++) {
514
+ const maybeB = f(i, unsafeGet_1(fa, i));
463
515
 
464
- if (tsplus_module_6.isJust(maybeB)) {
465
- result.push(maybeB.value);
516
+ if (tsplus_module_6.isJust(maybeB)) {
517
+ result.push(maybeB.value);
518
+ }
466
519
  }
467
- }
468
520
 
469
- return tsplus_module_2.asImmutableArray(result);
521
+ return tsplus_module_2.asImmutableArray(result);
522
+ };
470
523
  }
471
524
  /**
472
- * @tsplus fluent fncts.ImmutableArray filterMap
525
+ * @tsplus pipeable fncts.ImmutableArray filterMap
473
526
  */
474
527
 
475
528
 
476
- export function filterMap_(self, f) {
477
- return filterMapWithIndex_1(self, (_, a) => f(a));
529
+ export function filterMap(f) {
530
+ return self => {
531
+ return filterMapWithIndex_1((_, a) => f(a))(self);
532
+ };
478
533
  }
479
- export function find_(self, p) {
480
- return findWithIndex_1(self, (_, a) => p(a));
534
+ export function find(p) {
535
+ return self => {
536
+ return findWithIndex_1((_, a) => p(a))(self);
537
+ };
481
538
  }
482
539
  /**
483
- * @tsplus fluent fncts.ImmutableArray findIndex
540
+ * @tsplus pipeable fncts.ImmutableArray findIndex
484
541
  */
485
542
 
486
- export function findIndex_(as, predicate) {
487
- return findMapWithIndex_1(as, (i, a) => predicate(a) ? tsplus_module_11.just(i) : tsplus_module_11.nothing());
543
+ export function findIndex(predicate) {
544
+ return as => {
545
+ return findMapWithIndex_1((i, a) => predicate(a) ? tsplus_module_11.just(i) : tsplus_module_11.nothing())(as);
546
+ };
488
547
  }
489
548
 
490
- function findWithIndex_1(as, p) {
491
- const len = tsplus_module_5.length(as);
549
+ function findWithIndex_1(p) {
550
+ return as => {
551
+ const len = tsplus_module_5.length(as);
492
552
 
493
- for (let i = 0; i < len; i++) {
494
- if (p(i, as._array[i])) {
495
- return tsplus_module_11.just(as._array[i]);
553
+ for (let i = 0; i < len; i++) {
554
+ if (p(i, as._array[i])) {
555
+ return tsplus_module_11.just(as._array[i]);
556
+ }
496
557
  }
497
- }
498
558
 
499
- return tsplus_module_11.nothing();
559
+ return tsplus_module_11.nothing();
560
+ };
500
561
  }
501
562
  /**
502
- * @tsplus fluent fncts.ImmutableArray findMap
563
+ * @tsplus pipeable fncts.ImmutableArray findMap
503
564
  */
504
565
 
505
566
 
506
- export function findMap_(as, f) {
507
- return findMapWithIndex_1(as, (_, a) => f(a));
567
+ export function findMap(f) {
568
+ return as => {
569
+ return findMapWithIndex_1((_, a) => f(a))(as);
570
+ };
508
571
  }
509
572
  /**
510
- * @tsplus fluent fncts.ImmutableArray findMapWithIndex
573
+ * @tsplus pipeable fncts.ImmutableArray findMapWithIndex
511
574
  */
512
575
 
513
- function findMapWithIndex_1(as, f) {
514
- const len = tsplus_module_5.length(as);
576
+ function findMapWithIndex_1(f) {
577
+ return as => {
578
+ const len = tsplus_module_5.length(as);
515
579
 
516
- for (let i = 0; i < len; i++) {
517
- const v = f(i, as._array[i]);
580
+ for (let i = 0; i < len; i++) {
581
+ const v = f(i, as._array[i]);
518
582
 
519
- if (tsplus_module_6.isJust(v)) {
520
- return v;
583
+ if (tsplus_module_6.isJust(v)) {
584
+ return v;
585
+ }
521
586
  }
522
- }
523
587
 
524
- return tsplus_module_11.nothing();
588
+ return tsplus_module_11.nothing();
589
+ };
525
590
  }
526
591
 
527
- export function findLast_(as, p) {
528
- const len = tsplus_module_5.length(as);
592
+ export function findLast(p) {
593
+ return as => {
594
+ const len = tsplus_module_5.length(as);
529
595
 
530
- for (let i = len - 1; i >= 0; i--) {
531
- if (p(as._array[i])) {
532
- return tsplus_module_11.just(as._array[i]);
596
+ for (let i = len - 1; i >= 0; i--) {
597
+ if (p(as._array[i])) {
598
+ return tsplus_module_11.just(as._array[i]);
599
+ }
533
600
  }
534
- }
535
601
 
536
- return tsplus_module_11.nothing();
602
+ return tsplus_module_11.nothing();
603
+ };
537
604
  }
538
605
  /**
539
- * @tsplus fluent fncts.ImmutableArray findLastIndex
606
+ * @tsplus pipeable fncts.ImmutableArray findLastIndex
540
607
  */
541
608
 
542
- export function findLastIndex_(self, p) {
543
- return findLastMapWithIndex_1(self, (i, a) => p(a) ? tsplus_module_11.just(i) : tsplus_module_11.nothing());
609
+ export function findLastIndex(p) {
610
+ return self => {
611
+ return findLastMapWithIndex_1((i, a) => p(a) ? tsplus_module_11.just(i) : tsplus_module_11.nothing())(self);
612
+ };
544
613
  }
545
614
  /**
546
- * @tsplus fluent fncts.ImmutableArray findLastMap
615
+ * @tsplus pipeable fncts.ImmutableArray findLastMap
547
616
  */
548
617
 
549
- export function findLastMap_(as, f) {
550
- return findLastMapWithIndex_1(as, (_, a) => f(a));
618
+ export function findLastMap(f) {
619
+ return as => {
620
+ return findLastMapWithIndex_1((_, a) => f(a))(as);
621
+ };
551
622
  }
552
623
  /**
553
- * @tsplus fluent fncts.ImmutableArray findLastMapWithIndex
624
+ * @tsplus pipeable fncts.ImmutableArray findLastMapWithIndex
554
625
  */
555
626
 
556
- function findLastMapWithIndex_1(as, f) {
557
- const len = tsplus_module_5.length(as);
627
+ function findLastMapWithIndex_1(f) {
628
+ return as => {
629
+ const len = tsplus_module_5.length(as);
558
630
 
559
- for (let i = len - 1; i >= 0; i--) {
560
- const v = f(i, as._array[i]);
631
+ for (let i = len - 1; i >= 0; i--) {
632
+ const v = f(i, as._array[i]);
561
633
 
562
- if (tsplus_module_6.isJust(v)) {
563
- return v;
634
+ if (tsplus_module_6.isJust(v)) {
635
+ return v;
636
+ }
564
637
  }
565
- }
566
638
 
567
- return tsplus_module_11.nothing();
639
+ return tsplus_module_11.nothing();
640
+ };
568
641
  }
569
642
  /**
570
- * @tsplus fluent fncts.ImmutableArray foldLeftWithIndex
571
- * @tsplus fluent fncts.MutableArray foldLeftWithIndex
643
+ * @tsplus pipeable fncts.ImmutableArray foldLeftWithIndex
644
+ * @tsplus pipeable fncts.MutableArray foldLeftWithIndex
572
645
  */
573
646
 
574
647
 
575
- function foldLeftWithIndex_1(self, b, f) {
576
- const len = tsplus_module_5.length(self);
577
- let r = b;
648
+ function foldLeftWithIndex_1(b, f) {
649
+ return self => {
650
+ const len = tsplus_module_5.length(self);
651
+ let r = b;
578
652
 
579
- for (let i = 0; i < len; i++) {
580
- r = f(i, r, self._array[i]);
581
- }
653
+ for (let i = 0; i < len; i++) {
654
+ r = f(i, r, self._array[i]);
655
+ }
582
656
 
583
- return r;
657
+ return r;
658
+ };
584
659
  }
585
660
  /**
586
- * @tsplus fluent fncts.ImmutableArray foldLeft
587
- * @tsplus fluent fncts.MutableArray foldLeft
661
+ * @tsplus pipeable fncts.ImmutableArray foldLeft
662
+ * @tsplus pipeable fncts.MutableArray foldLeft
588
663
  */
589
664
 
590
665
 
591
- function foldLeft_1(self, b, f) {
592
- return foldLeftWithIndex_1(self, b, (_, b, a) => f(b, a));
666
+ function foldLeft_1(b, f) {
667
+ return self => {
668
+ return foldLeftWithIndex_1(b, (_, b, a) => f(b, a))(self);
669
+ };
593
670
  }
594
671
  /**
595
- * @tsplus fluent fncts.ImmutableArray foldLeftWhile
596
- * @tsplus fluent fncts.MutableArray foldLeftWhile
672
+ * @tsplus pipeable fncts.ImmutableArray foldLeftWhile
673
+ * @tsplus pipeable fncts.MutableArray foldLeftWhile
597
674
  */
598
675
 
599
676
 
600
- export function foldLeftWhile_(self, b, p, f) {
601
- return foldLeftWithIndexWhile_1(self, b, p, (_, b, a) => f(b, a));
677
+ export function foldLeftWhile(b, p, f) {
678
+ return self => {
679
+ return foldLeftWithIndexWhile_1(b, p, (_, b, a) => f(b, a))(self);
680
+ };
602
681
  }
603
682
  /**
604
- * @tsplus fluent fncts.ImmutableArray foldLeftWithIndexWhile
605
- * @tsplus fluent fncts.MutableArray foldLeftWithIndexWhile
683
+ * @tsplus pipeable fncts.ImmutableArray foldLeftWithIndexWhile
684
+ * @tsplus pipeable fncts.MutableArray foldLeftWithIndexWhile
606
685
  */
607
686
 
608
- function foldLeftWithIndexWhile_1(self, b, p, f) {
609
- let out = b;
610
- let cont = p(out);
687
+ function foldLeftWithIndexWhile_1(b, p, f) {
688
+ return self => {
689
+ let out = b;
690
+ let cont = p(out);
611
691
 
612
- for (let i = 0; cont && i < tsplus_module_5.length(self); i++) {
613
- out = f(i, out, self._array[i]);
614
- cont = p(out);
615
- }
692
+ for (let i = 0; cont && i < tsplus_module_5.length(self); i++) {
693
+ out = f(i, out, self._array[i]);
694
+ cont = p(out);
695
+ }
616
696
 
617
- return out;
697
+ return out;
698
+ };
618
699
  }
619
700
  /**
620
- * @tsplus fluent fncts.ImmutableArray fold
701
+ * @tsplus pipeable fncts.ImmutableArray fold
621
702
  */
622
703
 
623
704
 
624
- function fold_1(self,
705
+ function fold_1(
625
706
  /** @tsplus auto */
626
707
  M) {
627
- return foldLeft_1(self, M.nat, M.combine);
708
+ return self => {
709
+ return foldLeft_1(M.nat, M.combine)(self);
710
+ };
628
711
  }
629
712
  /**
630
- * @tsplus fluent fncts.ImmutableArray foldMapWithIndex
713
+ * @tsplus pipeable fncts.ImmutableArray foldMapWithIndex
631
714
  */
632
715
 
633
716
 
634
- function foldMapWithIndex_1(self, f,
717
+ function foldMapWithIndex_1(f,
635
718
  /** @tsplus auto */
636
719
  M) {
637
- return foldLeftWithIndex_1(self, M.nat, (i, b, a) => M.combine(b, f(i, a)));
720
+ return self => {
721
+ return foldLeftWithIndex_1(M.nat, (i, b, a) => M.combine(b, f(i, a)))(self);
722
+ };
638
723
  }
639
724
  /**
640
- * @tsplus fluent fncts.ImmutableArray foldMap
725
+ * @tsplus pipeable fncts.ImmutableArray foldMap
641
726
  */
642
727
 
643
728
 
644
- export function foldMap_(self, f,
729
+ export function foldMap(f,
645
730
  /** @tsplus auto */
646
731
  M) {
647
- return foldMapWithIndex_1(self, (_, a) => f(a), M);
732
+ return self => {
733
+ return foldMapWithIndex_1((_, a) => f(a), M)(self);
734
+ };
648
735
  }
649
736
  /**
650
- * @tsplus fluent fncts.ImmutableArray foldRightWithIndex
737
+ * @tsplus pipeable fncts.ImmutableArray foldRightWithIndex
651
738
  */
652
739
 
653
- function foldRightWithIndex_1(self, b, f) {
654
- let r = b;
740
+ function foldRightWithIndex_1(b, f) {
741
+ return self => {
742
+ let r = b;
655
743
 
656
- for (let i = tsplus_module_5.length(self) - 1; i >= 0; i--) {
657
- r = f(i, self._array[i], r);
658
- }
744
+ for (let i = tsplus_module_5.length(self) - 1; i >= 0; i--) {
745
+ r = f(i, self._array[i], r);
746
+ }
659
747
 
660
- return r;
748
+ return r;
749
+ };
661
750
  }
662
751
  /**
663
- * @tsplus fluent fncts.ImmutableArray foldRight
752
+ * @tsplus pipeable fncts.ImmutableArray foldRight
664
753
  */
665
754
 
666
755
 
667
- export function foldRight_(self, b, f) {
668
- return foldRightWithIndex_1(self, b, (_, a, b) => f(a, b));
756
+ export function foldRight(b, f) {
757
+ return self => {
758
+ return foldRightWithIndex_1(b, (_, a, b) => f(a, b))(self);
759
+ };
669
760
  }
670
761
  /**
671
- * @tsplus fluent fncts.ImmutableArray foldRighWhile
762
+ * @tsplus pipeable fncts.ImmutableArray foldRighWhile
672
763
  */
673
764
 
674
- export function foldRightWhile_(self, b, p, f) {
675
- return foldRightWithIndexWhile_1(self, b, p, (_, a, b) => f(a, b));
765
+ export function foldRightWhile(b, p, f) {
766
+ return self => {
767
+ return foldRightWithIndexWhile_1(b, p, (_, a, b) => f(a, b))(self);
768
+ };
676
769
  }
677
770
  /**
678
- * @tsplus fluent fncts.ImmutableArray foldRightWithIndexWhile
771
+ * @tsplus pipeable fncts.ImmutableArray foldRightWithIndexWhile
679
772
  */
680
773
 
681
- function foldRightWithIndexWhile_1(self, b, predicate, f) {
682
- let out = b;
683
- let cont = predicate(out);
774
+ function foldRightWithIndexWhile_1(b, predicate, f) {
775
+ return self => {
776
+ let out = b;
777
+ let cont = predicate(out);
684
778
 
685
- for (let i = tsplus_module_5.length(self) - 1; cont && i >= 0; i--) {
686
- out = f(i, self._array[i], out);
687
- cont = predicate(out);
688
- }
779
+ for (let i = tsplus_module_5.length(self) - 1; cont && i >= 0; i--) {
780
+ out = f(i, self._array[i], out);
781
+ cont = predicate(out);
782
+ }
689
783
 
690
- return out;
784
+ return out;
785
+ };
691
786
  }
692
787
  /**
693
- * @tsplus fluent fncts.ImmutableArray forEach
788
+ * @tsplus pipeable fncts.ImmutableArray forEach
694
789
  */
695
790
 
696
791
 
697
- function forEach_1(self, f) {
698
- return forEach_1(self, f);
792
+ function forEach_1(f) {
793
+ return self => {
794
+ return forEach_1(f)(self);
795
+ };
699
796
  }
700
797
  /**
701
- * @tsplus fluent fncts.ImmutableArray get
702
- * @tsplus fluent fncts.MutableArray get
798
+ * @tsplus pipeable fncts.ImmutableArray get
799
+ * @tsplus pipeable fncts.MutableArray get
703
800
  */
704
801
 
705
802
 
706
- function get_1(self, i) {
707
- return isOutOfBound_1(self, i) ? tsplus_module_11.nothing() : tsplus_module_11.just(self._array[i]);
803
+ function get_1(i) {
804
+ return self => {
805
+ return isOutOfBound_1(i)(self) ? tsplus_module_11.nothing() : tsplus_module_11.just(self._array[i]);
806
+ };
708
807
  }
808
+ /**
809
+ * @tsplus pipeable fncts.ImmutableArray group
810
+ */
811
+
709
812
 
710
813
  export function group(E) {
711
- return chop(self => {
814
+ return chop_1(self => {
712
815
  const h = self._array[0];
713
816
  const out = [h];
714
817
  let i = 1;
@@ -723,35 +826,30 @@ export function group(E) {
723
826
  }
724
827
  }
725
828
 
726
- return [tsplus_module_12.unsafeAsNonEmptyArray(out), tsplus_module_4.slice_(self, i)];
829
+ return [tsplus_module_12.unsafeAsNonEmptyArray(out), tsplus_module_4.slice(i)(self)];
727
830
  });
728
831
  }
729
832
  /**
730
- * @tsplus fluent fncts.ImmutableArray group
833
+ * @tsplus pipeable fncts.ImmutableArray groupBy
731
834
  */
732
835
 
733
- export function chopSelf(self, E) {
734
- return group(E)(self);
735
- }
736
- /**
737
- * @tsplus fluent fncts.ImmutableArray groupBy
738
- */
739
-
740
- export function groupBy_(self, f) {
741
- const out = {};
836
+ export function groupBy(f) {
837
+ return self => {
838
+ const out = {};
742
839
 
743
- for (let i = 0; i < tsplus_module_5.length(self); i++) {
744
- const a = self._array[i];
745
- const k = f(a);
840
+ for (let i = 0; i < tsplus_module_5.length(self); i++) {
841
+ const a = self._array[i];
842
+ const k = f(a);
746
843
 
747
- if (Object.prototype.hasOwnProperty.call(out, k)) {
748
- out[k].push(a);
749
- } else {
750
- out[k] = [a];
844
+ if (Object.prototype.hasOwnProperty.call(out, k)) {
845
+ out[k].push(a);
846
+ } else {
847
+ out[k] = [a];
848
+ }
751
849
  }
752
- }
753
850
 
754
- return tsplus_module_14.map_(tsplus_module_13.Dictionary.get(out), tsplus_module_12.from);
851
+ return tsplus_module_14.map(tsplus_module_12.from)(tsplus_module_13.Dictionary.get(out));
852
+ };
755
853
  }
756
854
  /**
757
855
  * @tsplus getter fncts.ImmutableArray head
@@ -766,27 +864,37 @@ export function head(self) {
766
864
 
767
865
  export function init(self) {
768
866
  const len = tsplus_module_5.length(self);
769
- return len === 0 ? tsplus_module_11.nothing() : tsplus_module_11.just(tsplus_module_4.slice_(self, 0, len - 1));
867
+ return len === 0 ? tsplus_module_11.nothing() : tsplus_module_11.just(tsplus_module_4.slice(0, len - 1)(self));
770
868
  }
771
869
  /**
772
- * @tsplus fluent fncts.ImmutableArray insertAt
870
+ * @tsplus pipeable fncts.ImmutableArray insertAt
773
871
  */
774
872
 
775
- export function insertAt_(self, i, a) {
776
- return isOutOfBound_1(self, i) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeInsertAt_1(self, i, a));
873
+ export function insertAt(i, a) {
874
+ return self => {
875
+ return isOutOfBound_1(i)(self) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeInsertAt_1(i, a)(self));
876
+ };
777
877
  }
778
878
  /**
779
- * @tsplus fluent fncts.ImmutableArray intersection
879
+ * @tsplus pipeable fncts.ImmutableArray intersection
780
880
  */
781
881
 
782
- export function intersection_(self, that,
882
+ export function intersection(that,
783
883
  /** @tsplus auto */
784
884
  E) {
785
- return filter_1(self, a => elem_1(that, a, E));
885
+ return self => {
886
+ return filter_1(a => elem_1(a, E)(that))(self);
887
+ };
786
888
  }
787
- export function intersperse_(self, a) {
788
- const len = tsplus_module_5.length(self);
789
- return len === 0 ? self : prepend_1(prependAll_1(tsplus_module_4.slice_(self, 1, len), a), unsafeGet_1(self, 0));
889
+ /**
890
+ * @tsplus pipeable fncts.ImmutableArray intersperse
891
+ */
892
+
893
+ export function intersperse(a) {
894
+ return self => {
895
+ const len = tsplus_module_5.length(self);
896
+ return len === 0 ? self : prepend_1(unsafeGet_1(self, 0))(prependAll_1(a)(tsplus_module_4.slice(1, len)(self)));
897
+ };
790
898
  }
791
899
  /**
792
900
  * @tsplus fluent fncts.ImmutableArray isEmpty
@@ -796,27 +904,31 @@ function isEmpty_1(self) {
796
904
  return tsplus_module_5.length(self) === 0;
797
905
  }
798
906
  /**
799
- * @tsplus fluent fncts.ImmutableArray isOutOfBound
907
+ * @tsplus pipeable fncts.ImmutableArray isOutOfBound
800
908
  */
801
909
 
802
910
 
803
- function isOutOfBound_1(self, i) {
804
- return i < 0 || i >= tsplus_module_5.length(self);
911
+ function isOutOfBound_1(i) {
912
+ return self => {
913
+ return i < 0 || i >= tsplus_module_5.length(self);
914
+ };
805
915
  }
806
916
  /**
807
- * @tsplus fluent fncts.ImmutableArray join
917
+ * @tsplus pipeable fncts.ImmutableArray join
808
918
  */
809
919
 
810
920
 
811
- export function join(self, separator) {
812
- return self._array.join(separator);
921
+ export function join(separator) {
922
+ return self => {
923
+ return self._array.join(separator);
924
+ };
813
925
  }
814
926
  /**
815
927
  * @tsplus getter fncts.ImmutableArray last
816
928
  */
817
929
 
818
930
  export function last(self) {
819
- return get_1(self, tsplus_module_5.length(self) - 1);
931
+ return get_1(tsplus_module_5.length(self) - 1)(self);
820
932
  }
821
933
  /**
822
934
  * @tsplus getter fncts.ImmutableArray length
@@ -846,59 +958,69 @@ export function lefts(self) {
846
958
  return tsplus_module_2.asImmutableArray(ls);
847
959
  }
848
960
  /**
849
- * @tsplus fluent fncts.ImmutableArray map
961
+ * @tsplus pipeable fncts.ImmutableArray map
850
962
  */
851
963
 
852
- function map_1(self, f) {
853
- return mapWithIndex_1(self, (_, a) => f(a));
964
+ function map_1(f) {
965
+ return self => {
966
+ return mapWithIndex_1((_, a) => f(a))(self);
967
+ };
854
968
  }
855
969
  /**
856
- * @tsplus fluent fncts.ImmutableArray mapAccum
970
+ * @tsplus pipeable fncts.ImmutableArray mapAccum
857
971
  */
858
972
 
859
973
 
860
- export function mapAccum_(self, s, f) {
861
- const bs = Array(tsplus_module_5.length(self));
862
- let state = s;
974
+ export function mapAccum(s, f) {
975
+ return self => {
976
+ const bs = Array(tsplus_module_5.length(self));
977
+ let state = s;
863
978
 
864
- for (let i = 0; i < tsplus_module_5.length(self); i++) {
865
- const result = f(state, self._array[i]);
866
- bs[i] = result[0];
867
- state = result[1];
868
- }
979
+ for (let i = 0; i < tsplus_module_5.length(self); i++) {
980
+ const result = f(state, self._array[i]);
981
+ bs[i] = result[0];
982
+ state = result[1];
983
+ }
869
984
 
870
- return [tsplus_module_2.asImmutableArray(bs), state];
985
+ return [tsplus_module_2.asImmutableArray(bs), state];
986
+ };
871
987
  }
872
988
  /**
873
- * @tsplus fluent fncts.ImmutableArray mapWithIndex
989
+ * @tsplus pipeable fncts.ImmutableArray mapWithIndex
874
990
  */
875
991
 
876
- function mapWithIndex_1(self, f) {
877
- const len = self._array.length;
878
- const bs = Array(len);
992
+ function mapWithIndex_1(f) {
993
+ return self => {
994
+ const len = self._array.length;
995
+ const bs = Array(len);
879
996
 
880
- for (let i = 0; i < len; i++) {
881
- bs[i] = f(i, self._array[i]);
882
- }
997
+ for (let i = 0; i < len; i++) {
998
+ bs[i] = f(i, self._array[i]);
999
+ }
883
1000
 
884
- return tsplus_module_2.asImmutableArray(bs);
1001
+ return tsplus_module_2.asImmutableArray(bs);
1002
+ };
885
1003
  }
886
1004
  /**
887
- * @tsplus fluent fncts.ImmutableArray modifyAt
1005
+ * @tsplus pipeable fncts.ImmutableArray modifyAt
888
1006
  */
889
1007
 
890
1008
 
891
- export function modifyAt_(self, i, f) {
892
- return isOutOfBound_1(self, i) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeModifyAt_1(self, i, f));
1009
+ export function modifyAt(i, f) {
1010
+ return self => {
1011
+ return isOutOfBound_1(i)(self) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeModifyAt_1(i, f)(self));
1012
+ };
893
1013
  }
894
1014
  /**
895
- * @tsplus fluent fncts.ImmutableArray mutate
1015
+ * @tsplus pipeable fncts.ImmutableArray mutate
896
1016
  */
897
1017
 
898
- function mutate_1(self, f) {
899
- const mut = mutableClone_1(self);
900
- f(mut);
901
- return tsplus_module_2.asImmutableArray(mut);
1018
+ function mutate_1(f) {
1019
+ return self => {
1020
+ const mut = mutableClone_1(self);
1021
+ f(mut);
1022
+ return tsplus_module_2.asImmutableArray(mut);
1023
+ };
902
1024
  }
903
1025
  /**
904
1026
  * @tsplus getter fncts.ImmutableArray mutableClone
@@ -906,95 +1028,106 @@ function mutate_1(self, f) {
906
1028
 
907
1029
 
908
1030
  function mutableClone_1(self) {
909
- return tsplus_module_4.slice_(self, 0)._array;
1031
+ return tsplus_module_4.slice(0)(self)._array;
910
1032
  }
911
1033
 
912
- function partitionWithIndex_1(self, p) {
913
- const left = [];
914
- const right = [];
1034
+ function partitionWithIndex_1(p) {
1035
+ return self => {
1036
+ const left = [];
1037
+ const right = [];
915
1038
 
916
- for (let i = 0; i < tsplus_module_5.length(self); i++) {
917
- const a = self._array[i];
1039
+ for (let i = 0; i < tsplus_module_5.length(self); i++) {
1040
+ const a = self._array[i];
918
1041
 
919
- if (p(i, a)) {
920
- right.push(a);
921
- } else {
922
- left.push(a);
1042
+ if (p(i, a)) {
1043
+ right.push(a);
1044
+ } else {
1045
+ left.push(a);
1046
+ }
923
1047
  }
924
- }
925
1048
 
926
- return [tsplus_module_2.asImmutableArray(left), tsplus_module_2.asImmutableArray(right)];
1049
+ return [tsplus_module_2.asImmutableArray(left), tsplus_module_2.asImmutableArray(right)];
1050
+ };
927
1051
  }
928
1052
 
929
- export function partition_(self, p) {
930
- return partitionWithIndex_1(self, (_, a) => p(a));
1053
+ export function partition(p) {
1054
+ return self => {
1055
+ return partitionWithIndex_1((_, a) => p(a))(self);
1056
+ };
931
1057
  }
932
1058
  /**
933
- * @tsplus fluent fncts.ImmutableArray partitionMapWithIndex
1059
+ * @tsplus pipeable fncts.ImmutableArray partitionMapWithIndex
934
1060
  */
935
1061
 
936
- function partitionMapWithIndex_1(self, f) {
937
- const left = [];
938
- const right = [];
1062
+ function partitionMapWithIndex_1(f) {
1063
+ return self => {
1064
+ const left = [];
1065
+ const right = [];
939
1066
 
940
- for (let i = 0; i < tsplus_module_5.length(self); i++) {
941
- const ea = f(i, self._array[i]);
942
- void 0;
1067
+ for (let i = 0; i < tsplus_module_5.length(self); i++) {
1068
+ const ea = f(i, self._array[i]);
1069
+ void 0;
943
1070
 
944
- switch (ea._tag) {
945
- case "Left"
946
- /* EitherTag.Left */
947
- :
948
- left.push(ea.left);
949
- break;
1071
+ switch (ea._tag) {
1072
+ case "Left"
1073
+ /* EitherTag.Left */
1074
+ :
1075
+ left.push(ea.left);
1076
+ break;
950
1077
 
951
- case "Right"
952
- /* EitherTag.Right */
953
- :
954
- right.push(ea.right);
955
- break;
1078
+ case "Right"
1079
+ /* EitherTag.Right */
1080
+ :
1081
+ right.push(ea.right);
1082
+ break;
1083
+ }
956
1084
  }
957
- }
958
1085
 
959
- return [tsplus_module_2.asImmutableArray(left), tsplus_module_2.asImmutableArray(right)];
1086
+ return [tsplus_module_2.asImmutableArray(left), tsplus_module_2.asImmutableArray(right)];
1087
+ };
960
1088
  }
961
1089
  /**
962
- * @tsplus fluent fncts.ImmutableArray partitionMap
1090
+ * @tsplus pipeable fncts.ImmutableArray partitionMap
963
1091
  */
964
1092
 
965
1093
 
966
- export function partitionMap_(self, f) {
967
- return partitionMapWithIndex_1(self, (_, a) => f(a));
1094
+ export function partitionMap(f) {
1095
+ return self => {
1096
+ return partitionMapWithIndex_1((_, a) => f(a))(self);
1097
+ };
968
1098
  }
969
1099
  /**
970
- * @tsplus fluent fncts.ImmutableArray prepend
1100
+ * @tsplus pipeable fncts.ImmutableArray prepend
971
1101
  */
972
1102
 
973
- function prepend_1(self, head) {
974
- const len = tsplus_module_5.length(self);
975
- const out = Array(len + 1);
976
- out[0] = head;
1103
+ function prepend_1(head) {
1104
+ return self => {
1105
+ const len = tsplus_module_5.length(self);
1106
+ const out = Array(len + 1);
1107
+ out[0] = head;
977
1108
 
978
- for (let i = 0; i < len; i++) {
979
- out[i + 1] = self._array[i];
980
- }
1109
+ for (let i = 0; i < len; i++) {
1110
+ out[i + 1] = self._array[i];
1111
+ }
981
1112
 
982
- return tsplus_module_2.asImmutableArray(out);
1113
+ return tsplus_module_2.asImmutableArray(out);
1114
+ };
983
1115
  }
984
1116
  /**
985
- * @tsplus fluent fncts.ImmutableArray prependAll
986
- * @tsplus fluent fncts.MutableArray prependAll
1117
+ * @tsplus pipeable fncts.ImmutableArray prependAll
987
1118
  */
988
1119
 
989
1120
 
990
- function prependAll_1(self, a) {
991
- const out = [];
1121
+ function prependAll_1(a) {
1122
+ return self => {
1123
+ const out = [];
992
1124
 
993
- for (let i = 0; i < tsplus_module_5.length(self); i++) {
994
- out.push(a, self._array[i]);
995
- }
1125
+ for (let i = 0; i < tsplus_module_5.length(self); i++) {
1126
+ out.push(a, self._array[i]);
1127
+ }
996
1128
 
997
- return tsplus_module_2.asImmutableArray(out);
1129
+ return tsplus_module_2.asImmutableArray(out);
1130
+ };
998
1131
  }
999
1132
  /**
1000
1133
  * @tsplus getter fncts.ImmutableArray reverse
@@ -1037,133 +1170,151 @@ export function rights(self) {
1037
1170
  return tsplus_module_2.asImmutableArray(rs);
1038
1171
  }
1039
1172
  /**
1040
- * @tsplus fluent fncts.ImmutableArray rotate
1173
+ * @tsplus pipeable fncts.ImmutableArray rotate
1041
1174
  */
1042
1175
 
1043
- function rotate_1(self, n) {
1044
- const len = tsplus_module_5.length(self);
1176
+ function rotate_1(n) {
1177
+ return self => {
1178
+ const len = tsplus_module_5.length(self);
1045
1179
 
1046
- if (n === 0 || len <= 1 || len === Math.abs(n)) {
1047
- return self;
1048
- } else if (n < 0) {
1049
- return rotate_1(self, len + n);
1050
- } else {
1051
- return concat_1(tsplus_module_4.slice_(self, -n), tsplus_module_4.slice_(self, 0, len - n));
1052
- }
1180
+ if (n === 0 || len <= 1 || len === Math.abs(n)) {
1181
+ return self;
1182
+ } else if (n < 0) {
1183
+ return rotate_1(len + n)(self);
1184
+ } else {
1185
+ return concat_1(tsplus_module_4.slice(0, len - n)(self))(tsplus_module_4.slice(-n)(self));
1186
+ }
1187
+ };
1053
1188
  }
1054
1189
  /**
1055
- * @tsplus fluent fncts.ImmutableArray scanLeft
1190
+ * @tsplus pipeable fncts.ImmutableArray scanLeft
1056
1191
  */
1057
1192
 
1058
1193
 
1059
- export function scanLeft_(self, b, f) {
1060
- const l = tsplus_module_5.length(self);
1061
- const r = Array(l + 1);
1062
- r[0] = b;
1194
+ export function scanLeft(b, f) {
1195
+ return self => {
1196
+ const l = tsplus_module_5.length(self);
1197
+ const r = Array(l + 1);
1198
+ r[0] = b;
1063
1199
 
1064
- for (let i = 0; i < l; i++) {
1065
- r[i + 1] = f(r[i], self._array[i]);
1066
- }
1200
+ for (let i = 0; i < l; i++) {
1201
+ r[i + 1] = f(r[i], self._array[i]);
1202
+ }
1067
1203
 
1068
- return tsplus_module_2.asImmutableArray(r);
1204
+ return tsplus_module_2.asImmutableArray(r);
1205
+ };
1069
1206
  }
1070
1207
  /**
1071
- * @tsplus fluent fncts.ImmutableArray scanRight
1208
+ * @tsplus pipeable fncts.ImmutableArray scanRight
1072
1209
  */
1073
1210
 
1074
- export function scanRight_(self, b, f) {
1075
- const l = tsplus_module_5.length(self);
1076
- const r = Array(l + 1);
1077
- r[l] = b;
1211
+ export function scanRight(b, f) {
1212
+ return self => {
1213
+ const l = tsplus_module_5.length(self);
1214
+ const r = Array(l + 1);
1215
+ r[l] = b;
1078
1216
 
1079
- for (let i = l - 1; i >= 0; i--) {
1080
- r[i] = f(self._array[i], r[i + 1]);
1081
- }
1217
+ for (let i = l - 1; i >= 0; i--) {
1218
+ r[i] = f(self._array[i], r[i + 1]);
1219
+ }
1082
1220
 
1083
- return tsplus_module_2.asImmutableArray(r);
1221
+ return tsplus_module_2.asImmutableArray(r);
1222
+ };
1084
1223
  }
1085
1224
  /**
1086
- * @tsplus fluent fncts.ImmutableArray sort
1225
+ * @tsplus pipeable fncts.ImmutableArray sort
1087
1226
  */
1088
1227
 
1089
- function sort_1(self,
1228
+ function sort_1(
1090
1229
  /** @tsplus auto */
1091
1230
  O) {
1092
- return isEmpty_1(self) || tsplus_module_5.length(self) === 1 ? self : tsplus_module_2.asImmutableArray(self._array.slice().sort(O.compare));
1231
+ return self => {
1232
+ return isEmpty_1(self) || tsplus_module_5.length(self) === 1 ? self : tsplus_module_2.asImmutableArray(self._array.slice().sort(O.compare));
1233
+ };
1093
1234
  }
1094
1235
  /**
1095
- * @tsplus fluent fncts.ImmutableArray sortBy
1236
+ * @tsplus pipeable fncts.ImmutableArray sortBy
1096
1237
  */
1097
1238
 
1098
1239
 
1099
- export function sortBy(self, Os) {
1100
- return sort_1(self, fold_1(Os, tsplus_module_15.getMonoid()));
1240
+ export function sortBy(Os) {
1241
+ return self => {
1242
+ return sort_1(fold_1(tsplus_module_15.getMonoid())(Os))(self);
1243
+ };
1101
1244
  }
1102
- export function spanLeft_(self, p) {
1103
- const i = spanIndexLeft_1(self, p);
1104
- const init = Array(i);
1245
+ export function spanLeft(p) {
1246
+ return self => {
1247
+ const i = spanIndexLeft_1(p)(self);
1248
+ const init = Array(i);
1105
1249
 
1106
- for (let j = 0; j < i; j++) {
1107
- init[j] = self._array[j];
1108
- }
1250
+ for (let j = 0; j < i; j++) {
1251
+ init[j] = self._array[j];
1252
+ }
1109
1253
 
1110
- const l = tsplus_module_5.length(self);
1111
- const rest = Array(l - i);
1254
+ const l = tsplus_module_5.length(self);
1255
+ const rest = Array(l - i);
1112
1256
 
1113
- for (let j = i; j < l; j++) {
1114
- rest[j - i] = self._array[j];
1115
- }
1257
+ for (let j = i; j < l; j++) {
1258
+ rest[j - i] = self._array[j];
1259
+ }
1116
1260
 
1117
- return [tsplus_module_2.asImmutableArray(init), tsplus_module_2.asImmutableArray(rest)];
1261
+ return [tsplus_module_2.asImmutableArray(init), tsplus_module_2.asImmutableArray(rest)];
1262
+ };
1118
1263
  }
1119
- export function spanRight_(self, p) {
1120
- const i = spanIndexRight_1(self, p);
1121
- const l = tsplus_module_5.length(self);
1122
- const tail = Array(l - i - 1);
1264
+ export function spanRight(p) {
1265
+ return self => {
1266
+ const i = spanIndexRight_1(p)(self);
1267
+ const l = tsplus_module_5.length(self);
1268
+ const tail = Array(l - i - 1);
1123
1269
 
1124
- for (let j = l - 1; j > i; j--) {
1125
- tail[j - i - 1] = self._array[j];
1126
- }
1270
+ for (let j = l - 1; j > i; j--) {
1271
+ tail[j - i - 1] = self._array[j];
1272
+ }
1127
1273
 
1128
- const rest = Array(i);
1274
+ const rest = Array(i);
1129
1275
 
1130
- for (let j = i; j >= 0; j--) {
1131
- rest[j] = self._array[j];
1132
- }
1276
+ for (let j = i; j >= 0; j--) {
1277
+ rest[j] = self._array[j];
1278
+ }
1133
1279
 
1134
- return [tsplus_module_2.asImmutableArray(rest), tsplus_module_2.asImmutableArray(tail)];
1280
+ return [tsplus_module_2.asImmutableArray(rest), tsplus_module_2.asImmutableArray(tail)];
1281
+ };
1135
1282
  }
1136
1283
  /**
1137
- * @tsplus fluent fncts.ImmutableArray spanIndexLeft
1284
+ * @tsplus pipeable fncts.ImmutableArray spanIndexLeft
1138
1285
  */
1139
1286
 
1140
- function spanIndexLeft_1(self, p) {
1141
- const l = tsplus_module_5.length(self);
1142
- let i = 0;
1287
+ function spanIndexLeft_1(p) {
1288
+ return self => {
1289
+ const l = tsplus_module_5.length(self);
1290
+ let i = 0;
1143
1291
 
1144
- for (; i < l; i++) {
1145
- if (!p(self._array[i])) {
1146
- break;
1292
+ for (; i < l; i++) {
1293
+ if (!p(self._array[i])) {
1294
+ break;
1295
+ }
1147
1296
  }
1148
- }
1149
1297
 
1150
- return i;
1298
+ return i;
1299
+ };
1151
1300
  }
1152
1301
  /**
1153
- * @tsplus fluent fncts.ImmutableArray spanIndexRight
1302
+ * @tsplus pipeable fncts.ImmutableArray spanIndexRight
1154
1303
  */
1155
1304
 
1156
1305
 
1157
- function spanIndexRight_1(as, predicate) {
1158
- let i = tsplus_module_5.length(as) - 1;
1306
+ function spanIndexRight_1(predicate) {
1307
+ return as => {
1308
+ let i = tsplus_module_5.length(as) - 1;
1159
1309
 
1160
- for (; i >= 0; i--) {
1161
- if (!predicate(as._array[i])) {
1162
- break;
1310
+ for (; i >= 0; i--) {
1311
+ if (!predicate(as._array[i])) {
1312
+ break;
1313
+ }
1163
1314
  }
1164
- }
1165
1315
 
1166
- return i;
1316
+ return i;
1317
+ };
1167
1318
  }
1168
1319
  /**
1169
1320
  * @tsplus getter fncts.ImmutableArray tail
@@ -1171,84 +1322,96 @@ function spanIndexRight_1(as, predicate) {
1171
1322
 
1172
1323
 
1173
1324
  export function tail(self) {
1174
- return tsplus_module_5.isNonEmpty(self) ? tsplus_module_11.just(tsplus_module_4.slice_(self, 1)) : tsplus_module_11.nothing();
1325
+ return tsplus_module_5.isNonEmpty(self) ? tsplus_module_11.just(tsplus_module_4.slice(1)(self)) : tsplus_module_11.nothing();
1175
1326
  }
1176
1327
  /**
1177
- * @tsplus fluent fncts.ImmutableArray take
1328
+ * @tsplus pipeable fncts.ImmutableArray take
1178
1329
  */
1179
1330
 
1180
- export function take_(self, n) {
1181
- return tsplus_module_4.slice_(self, 0, n);
1331
+ export function take(n) {
1332
+ return self => {
1333
+ return tsplus_module_4.slice(0, n)(self);
1334
+ };
1182
1335
  }
1183
1336
  /**
1184
- * @tsplus fluent fncts.ImmutableArray takeLast
1337
+ * @tsplus pipeable fncts.ImmutableArray takeLast
1185
1338
  */
1186
1339
 
1187
- export function takeLast_(as, n) {
1188
- return isEmpty_1(as) ? tsplus_module_2.empty() : tsplus_module_4.slice_(as, -n);
1340
+ export function takeLast(n) {
1341
+ return as => {
1342
+ return isEmpty_1(as) ? tsplus_module_2.empty() : tsplus_module_4.slice(-n)(as);
1343
+ };
1189
1344
  }
1190
- export function takeWhile_(self, p) {
1191
- const i = spanIndexLeft_1(self, p);
1192
- const init = Array(i);
1345
+ export function takeWhile(p) {
1346
+ return self => {
1347
+ const i = spanIndexLeft_1(p)(self);
1348
+ const init = Array(i);
1193
1349
 
1194
- for (let j = 0; j < i; j++) {
1195
- init[j] = self._array[j];
1196
- }
1350
+ for (let j = 0; j < i; j++) {
1351
+ init[j] = self._array[j];
1352
+ }
1197
1353
 
1198
- return tsplus_module_2.asImmutableArray(init);
1354
+ return tsplus_module_2.asImmutableArray(init);
1355
+ };
1199
1356
  }
1200
- /**
1201
- * @tsplus getter fncts.ImmutableArray traverseWithIndex
1202
- */
1203
1357
 
1204
- const traverseWithIndex_1 = /*#__PURE__*/tsplus_module_16.mkTraverseWithIndex_()(() => ta => G => f => foldLeftWithIndex_1(ta, G.pure(tsplus_module_2.empty()), (i, fbs, a) => G.zipWith(fbs, f(i, a), (bs, b) => append_1(bs, b))));
1205
- export const traverseWithIndex_ = traverseWithIndex_1;
1358
+ function _traverseWithIndex_1(self) {
1359
+ return G => f => foldLeftWithIndex_1(G.pure(tsplus_module_2.empty()), (i, fbs, a) => G.zipWith(f(i, a), (bs, b) => append_1(b)(bs))(fbs))(self);
1360
+ }
1206
1361
  /**
1207
1362
  * @tsplus getter fncts.ImmutableArray traverse
1208
1363
  */
1209
1364
 
1210
- const traverse_1 = self => G => f => traverseWithIndex_1(self)(G)((_, a) => f(a));
1211
1365
 
1212
- export const traverse_ = traverse_1;
1366
+ function _traverse_1(self) {
1367
+ return G => f => _traverseWithIndex_1(self)(G)((_, a) => f(a));
1368
+ }
1369
+
1370
+ export const traverseWithIndex = G => f => self => _traverseWithIndex_1(self)(G)(f);
1371
+ export const traverse = G => f => self => _traverseWithIndex_1(self)(G)((_, a) => f(a));
1213
1372
  /**
1214
- * @tsplus fluent fncts.ImmutableArray union
1373
+ * @tsplus pipeable fncts.ImmutableArray union
1215
1374
  */
1216
1375
 
1217
- export function union_(self, that,
1376
+ export function union(that,
1218
1377
  /** @tsplus auto */
1219
1378
  E) {
1220
- return concat_1(self, filter_1(that, a => !elem_1(self, a, E)));
1379
+ return self => {
1380
+ return concat_1(filter_1(a => !elem_1(a, E)(self))(that))(self);
1381
+ };
1221
1382
  }
1222
1383
  /**
1223
- * @tsplus fluent fncts.ImmutableArray uniq
1384
+ * @tsplus pipeable fncts.ImmutableArray uniq
1224
1385
  */
1225
1386
 
1226
- export function uniq(self,
1387
+ export function uniq(
1227
1388
  /** @tsplus auto */
1228
1389
  E) {
1229
- if (tsplus_module_5.length(self) === 1) {
1230
- return self;
1231
- }
1390
+ return self => {
1391
+ if (tsplus_module_5.length(self) === 1) {
1392
+ return self;
1393
+ }
1232
1394
 
1233
- const out = [];
1234
- const len = tsplus_module_5.length(self);
1395
+ const out = [];
1396
+ const len = tsplus_module_5.length(self);
1235
1397
 
1236
- for (let i = 0; i < len; i++) {
1237
- const a = self._array[i];
1398
+ for (let i = 0; i < len; i++) {
1399
+ const a = self._array[i];
1238
1400
 
1239
- if (!elem_1(tsplus_module_2.asImmutableArray(out), a, E)) {
1240
- out.push(a);
1401
+ if (!elem_1(a, E)(tsplus_module_2.asImmutableArray(out))) {
1402
+ out.push(a);
1403
+ }
1241
1404
  }
1242
- }
1243
1405
 
1244
- return tsplus_module_2.asImmutableArray(out);
1406
+ return tsplus_module_2.asImmutableArray(out);
1407
+ };
1245
1408
  }
1246
1409
  /**
1247
1410
  * @tsplus getter fncts.ImmutableArray unprepend
1248
1411
  */
1249
1412
 
1250
1413
  export function unprepend(self) {
1251
- return tsplus_module_5.isNonEmpty(self) ? tsplus_module_11.just([unsafeGet_1(self, 0), tsplus_module_4.slice_(self, 1)]) : tsplus_module_11.nothing();
1414
+ return tsplus_module_5.isNonEmpty(self) ? tsplus_module_11.just([unsafeGet_1(self, 0), tsplus_module_4.slice(1)(self)]) : tsplus_module_11.nothing();
1252
1415
  }
1253
1416
  /**
1254
1417
  * @tsplus index fncts.ImmutableArray
@@ -1266,54 +1429,62 @@ function unsafeAsMutable_1(self) {
1266
1429
  return self._array;
1267
1430
  }
1268
1431
  /**
1269
- * @tsplus fluent fncts.ImmutableArray unsafeDeleteAt
1432
+ * @tsplus pipeable fncts.ImmutableArray unsafeDeleteAt
1270
1433
  */
1271
1434
 
1272
1435
 
1273
- function unsafeDeleteAt_1(self, i) {
1274
- return mutate_1(self, xs => {
1275
- xs.splice(i, 1);
1276
- });
1436
+ function unsafeDeleteAt_1(i) {
1437
+ return self => {
1438
+ return mutate_1(xs => {
1439
+ xs.splice(i, 1);
1440
+ })(self);
1441
+ };
1277
1442
  }
1278
1443
  /**
1279
- * @tsplus fluent fncts.ImmutableArray unsafeInsertAt
1444
+ * @tsplus pipeable fncts.ImmutableArray unsafeInsertAt
1280
1445
  */
1281
1446
 
1282
1447
 
1283
- function unsafeInsertAt_1(as, i, a) {
1284
- return mutate_1(as, xs => {
1285
- xs.splice(i, 0, a);
1286
- });
1448
+ function unsafeInsertAt_1(i, a) {
1449
+ return as => {
1450
+ return mutate_1(xs => {
1451
+ xs.splice(i, 0, a);
1452
+ })(as);
1453
+ };
1287
1454
  }
1288
1455
  /**
1289
- * @tsplus fluent fncts.ImmutableArray unsafeModifyAt
1456
+ * @tsplus pipeable fncts.ImmutableArray unsafeModifyAt
1290
1457
  */
1291
1458
 
1292
1459
 
1293
- function unsafeModifyAt_1(as, i, f) {
1294
- const next = f(unsafeGet_1(as, i));
1460
+ function unsafeModifyAt_1(i, f) {
1461
+ return as => {
1462
+ const next = f(unsafeGet_1(as, i));
1295
1463
 
1296
- if (unsafeGet_1(as, i) === next) {
1297
- return as;
1298
- }
1464
+ if (unsafeGet_1(as, i) === next) {
1465
+ return as;
1466
+ }
1299
1467
 
1300
- return mutate_1(as, xs => {
1301
- xs[i] = next;
1302
- });
1468
+ return mutate_1(xs => {
1469
+ xs[i] = next;
1470
+ })(as);
1471
+ };
1303
1472
  }
1304
1473
  /**
1305
- * @tsplus fluent fncts.ImmutableArray unsafeUpdateAt
1474
+ * @tsplus pipeable fncts.ImmutableArray unsafeUpdateAt
1306
1475
  */
1307
1476
 
1308
1477
 
1309
- function unsafeUpdateAt_1(as, i, a) {
1310
- if (unsafeGet_1(as, i) === a) {
1311
- return as;
1312
- } else {
1313
- return mutate_1(as, xs => {
1314
- xs[i] = a;
1315
- });
1316
- }
1478
+ function unsafeUpdateAt_1(i, a) {
1479
+ return as => {
1480
+ if (unsafeGet_1(as, i) === a) {
1481
+ return as;
1482
+ } else {
1483
+ return mutate_1(xs => {
1484
+ xs[i] = a;
1485
+ })(as);
1486
+ }
1487
+ };
1317
1488
  }
1318
1489
  /**
1319
1490
  * @tsplus getter fncts.ImmutableArray unzip
@@ -1332,67 +1503,83 @@ export function unzip(self) {
1332
1503
  return [tsplus_module_2.asImmutableArray(fa), tsplus_module_2.asImmutableArray(fb)];
1333
1504
  }
1334
1505
  /**
1335
- * @tsplus fluent fncts.ImmutableArray updateAt
1506
+ * @tsplus pipeable fncts.ImmutableArray updateAt
1336
1507
  */
1337
1508
 
1338
- export function updateAt_(as, i, a) {
1339
- return isOutOfBound_1(as, i) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeUpdateAt_1(as, i, a));
1509
+ export function updateAt(i, a) {
1510
+ return as => {
1511
+ return isOutOfBound_1(i)(as) ? tsplus_module_11.nothing() : tsplus_module_11.just(unsafeUpdateAt_1(i, a)(as));
1512
+ };
1340
1513
  }
1341
1514
  /**
1342
1515
  * @tsplus getter fncts.ImmutableArray wiltWithIndex
1343
1516
  */
1344
1517
 
1345
- const wiltWithIndex_1 = /*#__PURE__*/tsplus_module_18.makeWiltWithIndex()(_ => self => G => f => G.map(foldLeftWithIndex_1(self, G.pure([[], []]), (i, fbs, a) => G.zipWith(f(i, a), fbs, (eb, r) => tsplus_module_17.match_(eb, b1 => {
1346
- r[0].push(b1);
1347
- return r;
1348
- }, b2 => {
1349
- r[1].push(b2);
1350
- return r;
1351
- }))), ([b1s, b2s]) => [tsplus_module_2.asImmutableArray(b1s), tsplus_module_2.asImmutableArray(b2s)]));
1352
- export const wiltWithIndex = wiltWithIndex_1;
1518
+ function _wiltWithIndex_1(self) {
1519
+ return G => f => G.map(([b1s, b2s]) => [tsplus_module_2.asImmutableArray(b1s), tsplus_module_2.asImmutableArray(b2s)])(foldLeftWithIndex_1(G.pure([[], []]), (i, fbs, a) => G.zipWith(fbs, (eb, r) => tsplus_module_16.match(b1 => {
1520
+ r[0].push(b1);
1521
+ return r;
1522
+ }, b2 => {
1523
+ r[1].push(b2);
1524
+ return r;
1525
+ })(eb))(f(i, a)))(self));
1526
+ }
1353
1527
  /**
1354
1528
  * @tsplus getter fncts.ImmutableArray wilt
1355
1529
  */
1356
1530
 
1357
- export const wilt = self => G => f => wiltWithIndex_1(self)(G)((_, a) => f(a));
1531
+
1532
+ export function _wilt(self) {
1533
+ return G => f => _wiltWithIndex_1(self)(G)((_, a) => f(a));
1534
+ }
1358
1535
  /**
1359
1536
  * @tsplus getter fncts.ImmutableArray witherWithIndex
1360
1537
  */
1361
1538
 
1362
- const witherWithIndex_1 = /*#__PURE__*/tsplus_module_18.makeWitherWithIndex()(_ => self => G => f => {
1363
- return G.map(foldLeftWithIndex_1(self, G.pure([]), (i, b, a) => G.zipWith(f(i, a), b, (maybeB, bs) => {
1539
+ function _witherWithIndex_1(self) {
1540
+ return G => f => G.map(bs => tsplus_module_2.asImmutableArray(bs))(foldLeftWithIndex_1(G.pure([]), (i, b, a) => G.zipWith(b, (maybeB, bs) => {
1364
1541
  if (tsplus_module_6.isJust(maybeB)) {
1365
1542
  bs.push(maybeB.value);
1366
1543
  }
1367
1544
 
1368
1545
  return bs;
1369
- })), bs => tsplus_module_2.asImmutableArray(bs));
1370
- });
1371
- export const witherWithIndex = witherWithIndex_1;
1546
+ })(f(i, a)))(self));
1547
+ }
1372
1548
  /**
1373
1549
  * @tsplus getter fncts.ImmutableArray wither
1374
1550
  */
1375
1551
 
1376
- export const wither = self => G => f => witherWithIndex_1(self)(G)((_, a) => f(a));
1552
+
1553
+ export function _wither(self) {
1554
+ return G => f => _witherWithIndex_1(self)(G)((_, a) => f(a));
1555
+ }
1556
+ export const wiltWithIndex = G => f => self => _wiltWithIndex_1(self)(G)(f);
1557
+ export const wilt = G => f => self => _wiltWithIndex_1(self)(G)((_, a) => f(a));
1558
+ export const witherWithIndex = G => f => self => _witherWithIndex_1(self)(G)(f);
1559
+ export const wither = G => f => self => _witherWithIndex_1(self)(G)((_, a) => f(a));
1377
1560
  /**
1378
- * @tsplus fluent fncts.ImmutableArray zip
1561
+ * @tsplus pipeable fncts.ImmutableArray zip
1379
1562
  */
1380
1563
 
1381
- export function zip_(self, that) {
1382
- return zipWith_1(self, that, tuple);
1564
+ export function zip(that) {
1565
+ return self => {
1566
+ return zipWith_1(that, tuple)(self);
1567
+ };
1383
1568
  }
1384
1569
  /**
1385
- * @tsplus fluent fncts.ImmutableArray zipWith
1570
+ * @tsplus pipeable fncts.ImmutableArray zipWith
1386
1571
  */
1387
1572
 
1388
- function zipWith_1(self, fb, f) {
1389
- const len = Math.min(tsplus_module_5.length(self), tsplus_module_5.length(fb));
1390
- const fc = Array(len);
1573
+ function zipWith_1(fb, f) {
1574
+ return self => {
1575
+ const len = Math.min(tsplus_module_5.length(self), tsplus_module_5.length(fb));
1576
+ const fc = Array(len);
1391
1577
 
1392
- for (let i = 0; i < len; i++) {
1393
- fc[i] = f(self._array[i], fb._array[i]);
1394
- }
1578
+ for (let i = 0; i < len; i++) {
1579
+ fc[i] = f(self._array[i], fb._array[i]);
1580
+ }
1395
1581
 
1396
- return tsplus_module_2.asImmutableArray(fc);
1582
+ return tsplus_module_2.asImmutableArray(fc);
1583
+ };
1397
1584
  }
1398
1585
  //# sourceMappingURL=api.mjs.map