@fncts/base 0.0.21 → 0.0.23

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 (1507) hide show
  1. package/_cjs/collection/Iterable/api/traverseConc.cjs +0 -11
  2. package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
  3. package/_cjs/collection/Iterable/api.cjs +35 -198
  4. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  5. package/_cjs/collection/Iterable/constructors.cjs +0 -18
  6. package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
  7. package/_cjs/collection/Iterable/definition.cjs.map +1 -1
  8. package/_cjs/collection/Iterable.cjs +0 -6
  9. package/_cjs/collection/Iterable.cjs.map +1 -1
  10. package/_cjs/collection/compat/Array/api.cjs +2 -15
  11. package/_cjs/collection/compat/Array/api.cjs.map +1 -1
  12. package/_cjs/collection/compat/Array/definition.cjs.map +1 -1
  13. package/_cjs/collection/compat/Array.cjs +0 -17
  14. package/_cjs/collection/compat/Array.cjs.map +1 -1
  15. package/_cjs/collection/compat/ArrayLike/api.cjs +3 -12
  16. package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
  17. package/_cjs/collection/immutable/Conc/api/empty.cjs +0 -2
  18. package/_cjs/collection/immutable/Conc/api/empty.cjs.map +1 -1
  19. package/_cjs/collection/immutable/Conc/api/makeBy.cjs +0 -8
  20. package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
  21. package/_cjs/collection/immutable/Conc/api/replicate.cjs +0 -4
  22. package/_cjs/collection/immutable/Conc/api/replicate.cjs.map +1 -1
  23. package/_cjs/collection/immutable/Conc/api.cjs +34 -373
  24. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  25. package/_cjs/collection/immutable/Conc/constructors.cjs +0 -14
  26. package/_cjs/collection/immutable/Conc/constructors.cjs.map +1 -1
  27. package/_cjs/collection/immutable/Conc/definition.cjs +33 -231
  28. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  29. package/_cjs/collection/immutable/Conc.cjs +0 -25
  30. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  31. package/_cjs/collection/immutable/Dictionary/api.cjs +0 -26
  32. package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
  33. package/_cjs/collection/immutable/Dictionary/definition.cjs +0 -4
  34. package/_cjs/collection/immutable/Dictionary/definition.cjs.map +1 -1
  35. package/_cjs/collection/immutable/Dictionary.cjs +28 -0
  36. package/_cjs/collection/immutable/Dictionary.cjs.map +1 -0
  37. package/_cjs/collection/immutable/HashMap/api.cjs +107 -261
  38. package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
  39. package/_cjs/collection/immutable/HashMap/definition.cjs +24 -44
  40. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  41. package/_cjs/collection/immutable/HashMap/internal.cjs +3 -88
  42. package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
  43. package/_cjs/collection/immutable/HashMap.cjs +0 -4
  44. package/_cjs/collection/immutable/HashMap.cjs.map +1 -1
  45. package/_cjs/collection/immutable/HashSet/api.cjs +97 -191
  46. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  47. package/_cjs/collection/immutable/HashSet/definition.cjs +22 -93
  48. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  49. package/_cjs/collection/immutable/HashSet.cjs +0 -4
  50. package/_cjs/collection/immutable/HashSet.cjs.map +1 -1
  51. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +0 -5
  52. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -1
  53. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +0 -4
  54. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -1
  55. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +0 -4
  56. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -1
  57. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +0 -7
  58. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -1
  59. package/_cjs/collection/immutable/ImmutableArray/api.cjs +24 -417
  60. package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
  61. package/_cjs/collection/immutable/ImmutableArray/constructors.cjs +0 -18
  62. package/_cjs/collection/immutable/ImmutableArray/constructors.cjs.map +1 -1
  63. package/_cjs/collection/immutable/ImmutableArray/definition.cjs +11 -25
  64. package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +1 -1
  65. package/_cjs/collection/immutable/ImmutableArray/instances.cjs +16 -30
  66. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
  67. package/_cjs/collection/immutable/ImmutableArray.cjs +0 -29
  68. package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
  69. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +17 -167
  70. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
  71. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs +0 -24
  72. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
  73. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs +0 -9
  74. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
  75. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +0 -17
  76. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
  77. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs +12 -21
  78. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
  79. package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs +0 -23
  80. package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs.map +1 -1
  81. package/_cjs/collection/immutable/List/api/foldLeft.cjs +0 -6
  82. package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
  83. package/_cjs/collection/immutable/List/api/unsafeTail.cjs +0 -6
  84. package/_cjs/collection/immutable/List/api/unsafeTail.cjs.map +1 -1
  85. package/_cjs/collection/immutable/List/api.cjs +17 -112
  86. package/_cjs/collection/immutable/List/api.cjs.map +1 -1
  87. package/_cjs/collection/immutable/List/constructors.cjs +1 -19
  88. package/_cjs/collection/immutable/List/constructors.cjs.map +1 -1
  89. package/_cjs/collection/immutable/List/definition.cjs +2 -25
  90. package/_cjs/collection/immutable/List/definition.cjs.map +1 -1
  91. package/_cjs/collection/immutable/List.cjs +0 -10
  92. package/_cjs/collection/immutable/List.cjs.map +1 -1
  93. package/_cjs/collection/immutable/Queue/api.cjs +43 -90
  94. package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
  95. package/_cjs/collection/immutable/Queue/constructors.cjs +0 -8
  96. package/_cjs/collection/immutable/Queue/constructors.cjs.map +1 -1
  97. package/_cjs/collection/immutable/Queue/definition.cjs +2 -12
  98. package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
  99. package/_cjs/collection/immutable/Queue/guards.cjs +2 -6
  100. package/_cjs/collection/immutable/Queue/guards.cjs.map +1 -1
  101. package/_cjs/collection/immutable/Queue.cjs +0 -8
  102. package/_cjs/collection/immutable/Queue.cjs.map +1 -1
  103. package/_cjs/collection/immutable/RoseTree/api.cjs +26 -82
  104. package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
  105. package/_cjs/collection/immutable/RoseTree/definition.cjs +11 -23
  106. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
  107. package/_cjs/collection/immutable/RoseTree.cjs +0 -4
  108. package/_cjs/collection/immutable/RoseTree.cjs.map +1 -1
  109. package/_cjs/collection/immutable/SortedMap/api.cjs +132 -269
  110. package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
  111. package/_cjs/collection/immutable/SortedMap/definition.cjs +6 -7
  112. package/_cjs/collection/immutable/SortedMap/definition.cjs.map +1 -1
  113. package/_cjs/collection/immutable/SortedMap/internal.cjs +55 -226
  114. package/_cjs/collection/immutable/SortedMap/internal.cjs.map +1 -1
  115. package/_cjs/collection/immutable/SortedMap/iterator.cjs +16 -107
  116. package/_cjs/collection/immutable/SortedMap/iterator.cjs.map +1 -1
  117. package/_cjs/collection/immutable/SortedMap/node.cjs +0 -3
  118. package/_cjs/collection/immutable/SortedMap/node.cjs.map +1 -1
  119. package/_cjs/collection/immutable/SortedMap.cjs +0 -10
  120. package/_cjs/collection/immutable/SortedMap.cjs.map +1 -1
  121. package/_cjs/collection/immutable/Vector/api.cjs +206 -455
  122. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  123. package/_cjs/collection/immutable/Vector/definition.cjs +16 -38
  124. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  125. package/_cjs/collection/immutable/Vector/internal.cjs +42 -362
  126. package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
  127. package/_cjs/collection/immutable/Vector.cjs +0 -4
  128. package/_cjs/collection/immutable/Vector.cjs.map +1 -1
  129. package/_cjs/collection/mutable/HashMap.cjs +7 -84
  130. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  131. package/_cjs/collection/mutable/HashSet.cjs +6 -67
  132. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  133. package/_cjs/collection/mutable/ListBuffer.cjs +1 -33
  134. package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
  135. package/_cjs/collection/mutable/internal.cjs +0 -6
  136. package/_cjs/collection/mutable/internal.cjs.map +1 -1
  137. package/_cjs/collection/weak/IterableWeakMap.cjs +0 -26
  138. package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
  139. package/_cjs/collection/weak/IterableWeakSet.cjs +0 -22
  140. package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
  141. package/_cjs/control/Eval/api/sequenceArray.cjs +0 -5
  142. package/_cjs/control/Eval/api/sequenceArray.cjs.map +1 -1
  143. package/_cjs/control/Eval/api.cjs +2 -34
  144. package/_cjs/control/Eval/api.cjs.map +1 -1
  145. package/_cjs/control/Eval/constructors.cjs +0 -9
  146. package/_cjs/control/Eval/constructors.cjs.map +1 -1
  147. package/_cjs/control/Eval/definition.cjs +16 -28
  148. package/_cjs/control/Eval/definition.cjs.map +1 -1
  149. package/_cjs/control/Eval/instance.cjs +2 -9
  150. package/_cjs/control/Eval/instance.cjs.map +1 -1
  151. package/_cjs/control/Eval/run.cjs +4 -27
  152. package/_cjs/control/Eval/run.cjs.map +1 -1
  153. package/_cjs/control/Eval.cjs +0 -10
  154. package/_cjs/control/Eval.cjs.map +1 -1
  155. package/_cjs/control/LazyValue.cjs +0 -6
  156. package/_cjs/control/LazyValue.cjs.map +1 -1
  157. package/_cjs/control/Z/api.cjs +6 -140
  158. package/_cjs/control/Z/api.cjs.map +1 -1
  159. package/_cjs/control/Z/definition.cjs +29 -93
  160. package/_cjs/control/Z/definition.cjs.map +1 -1
  161. package/_cjs/control/Z/instances.cjs +0 -5
  162. package/_cjs/control/Z/instances.cjs.map +1 -1
  163. package/_cjs/control/Z/runtime.cjs +14 -107
  164. package/_cjs/control/Z/runtime.cjs.map +1 -1
  165. package/_cjs/control/Z.cjs +0 -8
  166. package/_cjs/control/Z.cjs.map +1 -1
  167. package/_cjs/data/Branded/definition.cjs +0 -5
  168. package/_cjs/data/Branded/definition.cjs.map +1 -1
  169. package/_cjs/data/Branded.cjs +0 -15
  170. package/_cjs/data/Branded.cjs.map +1 -1
  171. package/_cjs/data/CaseClass.cjs +14 -46
  172. package/_cjs/data/CaseClass.cjs.map +1 -1
  173. package/_cjs/data/Cause/api/fold.cjs +11 -57
  174. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  175. package/_cjs/data/Cause/api/isEmpty.cjs +6 -32
  176. package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
  177. package/_cjs/data/Cause/api/linearize.cjs +6 -13
  178. package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
  179. package/_cjs/data/Cause/api/prettyPrint.cjs +0 -13
  180. package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
  181. package/_cjs/data/Cause/api/unified.cjs +14 -54
  182. package/_cjs/data/Cause/api/unified.cjs.map +1 -1
  183. package/_cjs/data/Cause/api.cjs +96 -413
  184. package/_cjs/data/Cause/api.cjs.map +1 -1
  185. package/_cjs/data/Cause/definition.cjs +49 -284
  186. package/_cjs/data/Cause/definition.cjs.map +1 -1
  187. package/_cjs/data/Cause.cjs +0 -14
  188. package/_cjs/data/Cause.cjs.map +1 -1
  189. package/_cjs/data/Const/api.cjs +1 -5
  190. package/_cjs/data/Const/api.cjs.map +1 -1
  191. package/_cjs/data/Const/definition.cjs +0 -3
  192. package/_cjs/data/Const/definition.cjs.map +1 -1
  193. package/_cjs/data/Const/instances.cjs +4 -12
  194. package/_cjs/data/Const/instances.cjs.map +1 -1
  195. package/_cjs/data/Const.cjs +0 -6
  196. package/_cjs/data/Const.cjs.map +1 -1
  197. package/_cjs/data/Datum/api.cjs +25 -147
  198. package/_cjs/data/Datum/api.cjs.map +1 -1
  199. package/_cjs/data/Datum/definition.cjs +20 -59
  200. package/_cjs/data/Datum/definition.cjs.map +1 -1
  201. package/_cjs/data/Datum/instances.cjs +0 -9
  202. package/_cjs/data/Datum/instances.cjs.map +1 -1
  203. package/_cjs/data/DatumEither/api.cjs +37 -132
  204. package/_cjs/data/DatumEither/api.cjs.map +1 -1
  205. package/_cjs/data/DatumEither/definition.cjs.map +1 -1
  206. package/_cjs/data/DatumEither.cjs +28 -0
  207. package/_cjs/data/DatumEither.cjs.map +1 -0
  208. package/_cjs/data/DecodeError/definition.cjs +4 -83
  209. package/_cjs/data/DecodeError/definition.cjs.map +1 -1
  210. package/_cjs/data/DecodeError.cjs +0 -4
  211. package/_cjs/data/DecodeError.cjs.map +1 -1
  212. package/_cjs/data/Decoder/api.cjs +424 -71
  213. package/_cjs/data/Decoder/api.cjs.map +1 -1
  214. package/_cjs/data/Decoder/definition.cjs +4 -8
  215. package/_cjs/data/Decoder/definition.cjs.map +1 -1
  216. package/_cjs/data/Decoder.cjs +0 -4
  217. package/_cjs/data/Decoder.cjs.map +1 -1
  218. package/_cjs/data/Duration/api.cjs +6 -24
  219. package/_cjs/data/Duration/api.cjs.map +1 -1
  220. package/_cjs/data/Duration/definition.cjs +8 -21
  221. package/_cjs/data/Duration/definition.cjs.map +1 -1
  222. package/_cjs/data/Duration.cjs +0 -4
  223. package/_cjs/data/Duration.cjs.map +1 -1
  224. package/_cjs/data/Either/api/align.cjs +0 -5
  225. package/_cjs/data/Either/api/align.cjs.map +1 -1
  226. package/_cjs/data/Either/api/alignWith.cjs +1 -13
  227. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  228. package/_cjs/data/Either/api.cjs +32 -160
  229. package/_cjs/data/Either/api.cjs.map +1 -1
  230. package/_cjs/data/Either/constructors.cjs +0 -19
  231. package/_cjs/data/Either/constructors.cjs.map +1 -1
  232. package/_cjs/data/Either/definition.cjs +11 -26
  233. package/_cjs/data/Either/definition.cjs.map +1 -1
  234. package/_cjs/data/Either/destructors.cjs +2 -9
  235. package/_cjs/data/Either/destructors.cjs.map +1 -1
  236. package/_cjs/data/Either/instances.cjs +14 -67
  237. package/_cjs/data/Either/instances.cjs.map +1 -1
  238. package/_cjs/data/Either.cjs +0 -10
  239. package/_cjs/data/Either.cjs.map +1 -1
  240. package/_cjs/data/EitherT/api.cjs +0 -24
  241. package/_cjs/data/EitherT/api.cjs.map +1 -1
  242. package/_cjs/data/EitherT/definition.cjs.map +1 -1
  243. package/_cjs/data/Encoder/api.cjs +226 -36
  244. package/_cjs/data/Encoder/api.cjs.map +1 -1
  245. package/_cjs/data/Encoder/definition.cjs +3 -5
  246. package/_cjs/data/Encoder/definition.cjs.map +1 -1
  247. package/_cjs/data/Encoder.cjs +0 -4
  248. package/_cjs/data/Encoder.cjs.map +1 -1
  249. package/_cjs/data/Environment/api.cjs +6 -46
  250. package/_cjs/data/Environment/api.cjs.map +1 -1
  251. package/_cjs/data/Environment/definition.cjs +14 -31
  252. package/_cjs/data/Environment/definition.cjs.map +1 -1
  253. package/_cjs/data/Environment.cjs +0 -4
  254. package/_cjs/data/Environment.cjs.map +1 -1
  255. package/_cjs/data/EnvironmentPatch.cjs +20 -82
  256. package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
  257. package/_cjs/{typeclass → data}/Eq/definition.cjs +2 -4
  258. package/_cjs/data/Eq/definition.cjs.map +1 -0
  259. package/_cjs/{typeclass → data}/Eq/derivations.cjs +9 -18
  260. package/_cjs/data/Eq/derivations.cjs.map +1 -0
  261. package/_cjs/{typeclass → data}/Eq.cjs +0 -2
  262. package/_cjs/data/Eq.cjs.map +1 -0
  263. package/_cjs/{typeclass → data}/Equatable/api.cjs +2 -10
  264. package/_cjs/data/Equatable/api.cjs.map +1 -0
  265. package/_cjs/{typeclass → data}/Equatable/definition.cjs +0 -6
  266. package/_cjs/data/Equatable/definition.cjs.map +1 -0
  267. package/_cjs/{typeclass → data}/Equatable/fast-equals.cjs +1 -83
  268. package/_cjs/data/Equatable/fast-equals.cjs.map +1 -0
  269. package/_cjs/{typeclass → data}/Equatable.cjs +0 -6
  270. package/_cjs/data/Equatable.cjs.map +1 -0
  271. package/_cjs/data/ExecutionStrategy.cjs +0 -9
  272. package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
  273. package/_cjs/data/Exit/api.cjs +43 -110
  274. package/_cjs/data/Exit/api.cjs.map +1 -1
  275. package/_cjs/data/Exit/constructors.cjs +0 -22
  276. package/_cjs/data/Exit/constructors.cjs.map +1 -1
  277. package/_cjs/data/Exit/definition.cjs +20 -57
  278. package/_cjs/data/Exit/definition.cjs.map +1 -1
  279. package/_cjs/data/Exit.cjs +0 -6
  280. package/_cjs/data/Exit.cjs.map +1 -1
  281. package/_cjs/data/FiberId/api.cjs +5 -21
  282. package/_cjs/data/FiberId/api.cjs.map +1 -1
  283. package/_cjs/data/FiberId/constructors.cjs +5 -19
  284. package/_cjs/data/FiberId/constructors.cjs.map +1 -1
  285. package/_cjs/data/FiberId/definition.cjs +16 -46
  286. package/_cjs/data/FiberId/definition.cjs.map +1 -1
  287. package/_cjs/data/FiberId.cjs +0 -6
  288. package/_cjs/data/FiberId.cjs.map +1 -1
  289. package/_cjs/data/Guard/api.cjs +419 -0
  290. package/_cjs/data/Guard/api.cjs.map +1 -0
  291. package/_cjs/{typeclass → data}/Guard/definition.cjs +7 -9
  292. package/_cjs/data/Guard/definition.cjs.map +1 -0
  293. package/_cjs/{typeclass → data}/Guard.cjs +0 -4
  294. package/_cjs/data/Guard.cjs.map +1 -0
  295. package/_cjs/{typeclass → data}/Hash.cjs +0 -2
  296. package/_cjs/data/Hash.cjs.map +1 -0
  297. package/_cjs/{typeclass → data}/HashEq.cjs +14 -25
  298. package/_cjs/data/HashEq.cjs.map +1 -0
  299. package/_cjs/{typeclass → data}/Hashable/definition.cjs +0 -6
  300. package/_cjs/data/Hashable/definition.cjs.map +1 -0
  301. package/_cjs/{typeclass → data}/Hashable/hash.cjs +3 -65
  302. package/_cjs/data/Hashable/hash.cjs.map +1 -0
  303. package/_cjs/{typeclass → data}/Hashable.cjs +0 -4
  304. package/_cjs/data/Hashable.cjs.map +1 -0
  305. package/_cjs/data/Identity/api.cjs +0 -17
  306. package/_cjs/data/Identity/api.cjs.map +1 -1
  307. package/_cjs/data/Identity/definition.cjs +0 -4
  308. package/_cjs/data/Identity/definition.cjs.map +1 -1
  309. package/_cjs/data/Identity/instances.cjs +4 -9
  310. package/_cjs/data/Identity/instances.cjs.map +1 -1
  311. package/_cjs/data/Identity.cjs +0 -6
  312. package/_cjs/data/Identity.cjs.map +1 -1
  313. package/_cjs/data/Interval.cjs +4 -35
  314. package/_cjs/data/Interval.cjs.map +1 -1
  315. package/_cjs/data/Intervals.cjs +10 -49
  316. package/_cjs/data/Intervals.cjs.map +1 -1
  317. package/_cjs/data/Maybe/api.cjs +19 -99
  318. package/_cjs/data/Maybe/api.cjs.map +1 -1
  319. package/_cjs/data/Maybe/constructors.cjs +0 -24
  320. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  321. package/_cjs/data/Maybe/definition.cjs +18 -55
  322. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  323. package/_cjs/data/Maybe/destructors.cjs +1 -4
  324. package/_cjs/data/Maybe/destructors.cjs.map +1 -1
  325. package/_cjs/data/Maybe/instances.cjs +40 -34
  326. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  327. package/_cjs/data/Maybe.cjs +0 -10
  328. package/_cjs/data/Maybe.cjs.map +1 -1
  329. package/_cjs/data/Newtype.cjs +0 -7
  330. package/_cjs/data/Newtype.cjs.map +1 -1
  331. package/_cjs/{typeclass → data}/Ord/api/contramap.cjs +2 -3
  332. package/_cjs/data/Ord/api/contramap.cjs.map +1 -0
  333. package/_cjs/{typeclass → data}/Ord/api/max.cjs +3 -4
  334. package/_cjs/data/Ord/api/max.cjs.map +1 -0
  335. package/_cjs/{typeclass → data}/Ord/api/min.cjs +3 -4
  336. package/_cjs/data/Ord/api/min.cjs.map +1 -0
  337. package/_cjs/{typeclass → data}/Ord/api.cjs +0 -6
  338. package/_cjs/data/Ord/api.cjs.map +1 -0
  339. package/_cjs/{typeclass → data}/Ord/definition.cjs +5 -12
  340. package/_cjs/data/Ord/definition.cjs.map +1 -0
  341. package/_cjs/{typeclass → data}/Ord/instances.cjs +13 -23
  342. package/_cjs/data/Ord/instances.cjs.map +1 -0
  343. package/_cjs/{typeclass → data}/Ord.cjs +0 -6
  344. package/_cjs/data/Ord.cjs.map +1 -0
  345. package/_cjs/{typeclass → data}/Ordering.cjs +0 -9
  346. package/_cjs/data/Ordering.cjs.map +1 -0
  347. package/_cjs/data/Predicate/api.cjs +0 -7
  348. package/_cjs/data/Predicate/api.cjs.map +1 -1
  349. package/_cjs/data/Predicate.cjs +0 -4
  350. package/_cjs/data/Predicate.cjs.map +1 -1
  351. package/_cjs/data/Refinement/api.cjs +0 -7
  352. package/_cjs/data/Refinement/api.cjs.map +1 -1
  353. package/_cjs/data/Refinement.cjs +0 -4
  354. package/_cjs/data/Refinement.cjs.map +1 -1
  355. package/_cjs/{typeclass → data}/Showable/definition.cjs +4 -11
  356. package/_cjs/data/Showable/definition.cjs.map +1 -0
  357. package/_cjs/{typeclass → data}/Showable/show.cjs +46 -199
  358. package/_cjs/data/Showable/show.cjs.map +1 -0
  359. package/_cjs/{typeclass → data}/Showable/styles.cjs +0 -6
  360. package/_cjs/data/Showable/styles.cjs.map +1 -0
  361. package/_cjs/{typeclass → data}/Showable/util.cjs +50 -112
  362. package/_cjs/data/Showable/util.cjs.map +1 -0
  363. package/_cjs/{typeclass → data}/Showable.cjs +0 -4
  364. package/_cjs/data/Showable.cjs.map +1 -0
  365. package/_cjs/data/Struct/api.cjs +7 -39
  366. package/_cjs/data/Struct/api.cjs.map +1 -1
  367. package/_cjs/data/Struct/definition.cjs +0 -4
  368. package/_cjs/data/Struct/definition.cjs.map +1 -1
  369. package/_cjs/data/Tag/constructors.cjs +1 -8
  370. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  371. package/_cjs/data/Tag/definition.cjs +10 -22
  372. package/_cjs/data/Tag/definition.cjs.map +1 -1
  373. package/_cjs/data/Tag.cjs +0 -4
  374. package/_cjs/data/Tag.cjs.map +1 -1
  375. package/_cjs/data/These/api.cjs +42 -167
  376. package/_cjs/data/These/api.cjs.map +1 -1
  377. package/_cjs/data/These/constructors.cjs +0 -12
  378. package/_cjs/data/These/constructors.cjs.map +1 -1
  379. package/_cjs/data/These/definition.cjs +13 -33
  380. package/_cjs/data/These/definition.cjs.map +1 -1
  381. package/_cjs/data/These/destructors.cjs +6 -38
  382. package/_cjs/data/These/destructors.cjs.map +1 -1
  383. package/_cjs/data/These/instances.cjs +1 -15
  384. package/_cjs/data/These/instances.cjs.map +1 -1
  385. package/_cjs/data/These.cjs +0 -10
  386. package/_cjs/data/These.cjs.map +1 -1
  387. package/_cjs/data/Trace/api.cjs +0 -9
  388. package/_cjs/data/Trace/api.cjs.map +1 -1
  389. package/_cjs/data/Trace/constructors.cjs +0 -8
  390. package/_cjs/data/Trace/constructors.cjs.map +1 -1
  391. package/_cjs/data/Trace/definition.cjs +0 -3
  392. package/_cjs/data/Trace/definition.cjs.map +1 -1
  393. package/_cjs/data/Trace.cjs +0 -6
  394. package/_cjs/data/Trace.cjs.map +1 -1
  395. package/_cjs/data/TraceElement/definition.cjs +0 -11
  396. package/_cjs/data/TraceElement/definition.cjs.map +1 -1
  397. package/_cjs/data/TraceElement.cjs +0 -2
  398. package/_cjs/data/TraceElement.cjs.map +1 -1
  399. package/_cjs/data/Zipped.cjs +2 -13
  400. package/_cjs/data/Zipped.cjs.map +1 -1
  401. package/_cjs/data/bigint/instances.cjs +2 -7
  402. package/_cjs/data/bigint/instances.cjs.map +1 -1
  403. package/_cjs/data/bigint.cjs +0 -4
  404. package/_cjs/data/bigint.cjs.map +1 -1
  405. package/_cjs/data/boolean/instances.cjs +2 -7
  406. package/_cjs/data/boolean/instances.cjs.map +1 -1
  407. package/_cjs/data/boolean.cjs +0 -4
  408. package/_cjs/data/boolean.cjs.map +1 -1
  409. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs +0 -3
  410. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs.map +1 -1
  411. package/_cjs/data/exceptions/IllegalArgumentError.cjs +0 -3
  412. package/_cjs/data/exceptions/IllegalArgumentError.cjs.map +1 -1
  413. package/_cjs/data/exceptions/IllegalStateError.cjs +0 -3
  414. package/_cjs/data/exceptions/IllegalStateError.cjs.map +1 -1
  415. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs +0 -3
  416. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs.map +1 -1
  417. package/_cjs/data/exceptions/InterruptedException.cjs +7 -9
  418. package/_cjs/data/exceptions/InterruptedException.cjs.map +1 -1
  419. package/_cjs/data/exceptions/InvalidCapacityError.cjs +0 -4
  420. package/_cjs/data/exceptions/InvalidCapacityError.cjs.map +1 -1
  421. package/_cjs/data/exceptions/NoSuchElementError.cjs +0 -3
  422. package/_cjs/data/exceptions/NoSuchElementError.cjs.map +1 -1
  423. package/_cjs/data/exceptions.cjs +0 -16
  424. package/_cjs/data/exceptions.cjs.map +1 -1
  425. package/_cjs/data/function/api.cjs +0 -11
  426. package/_cjs/data/function/api.cjs.map +1 -1
  427. package/_cjs/data/function/pipe.cjs +0 -22
  428. package/_cjs/data/function/pipe.cjs.map +1 -1
  429. package/_cjs/data/function.cjs +0 -6
  430. package/_cjs/data/function.cjs.map +1 -1
  431. package/_cjs/data/number/api.cjs +0 -1
  432. package/_cjs/data/number/api.cjs.map +1 -1
  433. package/_cjs/data/number/instances.cjs +10 -19
  434. package/_cjs/data/number/instances.cjs.map +1 -1
  435. package/_cjs/data/number.cjs +0 -6
  436. package/_cjs/data/number.cjs.map +1 -1
  437. package/_cjs/data/object/instances.cjs +1 -16
  438. package/_cjs/data/object/instances.cjs.map +1 -1
  439. package/_cjs/data/object.cjs +0 -4
  440. package/_cjs/data/object.cjs.map +1 -1
  441. package/_cjs/data/string/api.cjs +3 -36
  442. package/_cjs/data/string/api.cjs.map +1 -1
  443. package/_cjs/data/string/instances.cjs +11 -24
  444. package/_cjs/data/string/instances.cjs.map +1 -1
  445. package/_cjs/data/string.cjs +0 -6
  446. package/_cjs/data/string.cjs.map +1 -1
  447. package/_cjs/global/api.cjs +0 -1
  448. package/_cjs/global/api.cjs.map +1 -1
  449. package/_cjs/internal/AtomicBoolean.cjs +0 -4
  450. package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
  451. package/_cjs/internal/AtomicNumber.cjs +0 -7
  452. package/_cjs/internal/AtomicNumber.cjs.map +1 -1
  453. package/_cjs/internal/AtomicReference.cjs +0 -8
  454. package/_cjs/internal/AtomicReference.cjs.map +1 -1
  455. package/_cjs/internal/Stack.cjs +0 -13
  456. package/_cjs/internal/Stack.cjs.map +1 -1
  457. package/_cjs/json/EitherJson.cjs +1 -7
  458. package/_cjs/json/EitherJson.cjs.map +1 -1
  459. package/_cjs/json/MaybeJson.cjs +1 -7
  460. package/_cjs/json/MaybeJson.cjs.map +1 -1
  461. package/_cjs/json/TheseJson.cjs +1 -7
  462. package/_cjs/json/TheseJson.cjs.map +1 -1
  463. package/_cjs/optics/At/api.cjs +0 -5
  464. package/_cjs/optics/At/api.cjs.map +1 -1
  465. package/_cjs/optics/At/definition.cjs +0 -7
  466. package/_cjs/optics/At/definition.cjs.map +1 -1
  467. package/_cjs/optics/At.cjs +0 -4
  468. package/_cjs/optics/At.cjs.map +1 -1
  469. package/_cjs/optics/Fold/definition.cjs +0 -2
  470. package/_cjs/optics/Fold/definition.cjs.map +1 -1
  471. package/_cjs/optics/Fold.cjs +0 -2
  472. package/_cjs/optics/Fold.cjs.map +1 -1
  473. package/_cjs/optics/Getter/definition.cjs +0 -2
  474. package/_cjs/optics/Getter/definition.cjs.map +1 -1
  475. package/_cjs/optics/Getter.cjs +0 -2
  476. package/_cjs/optics/Getter.cjs.map +1 -1
  477. package/_cjs/optics/Index/api.cjs +0 -8
  478. package/_cjs/optics/Index/api.cjs.map +1 -1
  479. package/_cjs/optics/Index/definition.cjs +0 -2
  480. package/_cjs/optics/Index/definition.cjs.map +1 -1
  481. package/_cjs/optics/Index.cjs +0 -4
  482. package/_cjs/optics/Index.cjs.map +1 -1
  483. package/_cjs/optics/Iso/api.cjs +0 -5
  484. package/_cjs/optics/Iso/api.cjs.map +1 -1
  485. package/_cjs/optics/Iso/definition.cjs +2 -14
  486. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  487. package/_cjs/optics/Iso.cjs +0 -4
  488. package/_cjs/optics/Iso.cjs.map +1 -1
  489. package/_cjs/optics/Lens/api.cjs +0 -35
  490. package/_cjs/optics/Lens/api.cjs.map +1 -1
  491. package/_cjs/optics/Lens/definition.cjs +2 -14
  492. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  493. package/_cjs/optics/Lens.cjs +0 -4
  494. package/_cjs/optics/Lens.cjs.map +1 -1
  495. package/_cjs/optics/Optional/api/compose.cjs +0 -6
  496. package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
  497. package/_cjs/optics/Optional/definition.cjs +0 -15
  498. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  499. package/_cjs/optics/Optional.cjs +0 -4
  500. package/_cjs/optics/Optional.cjs.map +1 -1
  501. package/_cjs/optics/Prism/api/compose.cjs +0 -7
  502. package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
  503. package/_cjs/optics/Prism/api/fromNullable.cjs +0 -6
  504. package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
  505. package/_cjs/optics/Prism/api/just.cjs +0 -7
  506. package/_cjs/optics/Prism/api/just.cjs.map +1 -1
  507. package/_cjs/optics/Prism/definition.cjs +0 -12
  508. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  509. package/_cjs/optics/Prism.cjs +0 -8
  510. package/_cjs/optics/Prism.cjs.map +1 -1
  511. package/_cjs/optics/Setter/definition.cjs +0 -4
  512. package/_cjs/optics/Setter/definition.cjs.map +1 -1
  513. package/_cjs/optics/Setter.cjs +0 -2
  514. package/_cjs/optics/Setter.cjs.map +1 -1
  515. package/_cjs/optics/Traversal/api/compose.cjs +0 -4
  516. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  517. package/_cjs/optics/Traversal/api/fromTraversable.cjs +0 -4
  518. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  519. package/_cjs/optics/Traversal/definition.cjs +0 -16
  520. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  521. package/_cjs/optics/Traversal.cjs +0 -6
  522. package/_cjs/optics/Traversal.cjs.map +1 -1
  523. package/_cjs/typeclass/Align.cjs.map +1 -1
  524. package/_cjs/typeclass/Alt.cjs.map +1 -1
  525. package/_cjs/typeclass/Alternative.cjs.map +1 -1
  526. package/_cjs/typeclass/Applicative.cjs.map +1 -1
  527. package/_cjs/typeclass/ApplicativeExcept.cjs +0 -8
  528. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  529. package/_cjs/typeclass/Apply.cjs +8 -40
  530. package/_cjs/typeclass/Apply.cjs.map +1 -1
  531. package/_cjs/typeclass/Chain.cjs +0 -9
  532. package/_cjs/typeclass/Chain.cjs.map +1 -1
  533. package/_cjs/typeclass/Closure.cjs +2 -4
  534. package/_cjs/typeclass/Closure.cjs.map +1 -1
  535. package/_cjs/typeclass/Filterable.cjs.map +1 -1
  536. package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
  537. package/_cjs/typeclass/Foldable.cjs +1 -3
  538. package/_cjs/typeclass/Foldable.cjs.map +1 -1
  539. package/_cjs/typeclass/FoldableWithIndex.cjs +1 -3
  540. package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
  541. package/_cjs/typeclass/Functor.cjs +0 -2
  542. package/_cjs/typeclass/Functor.cjs.map +1 -1
  543. package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
  544. package/_cjs/typeclass/Has.cjs +2 -2
  545. package/_cjs/typeclass/Has.cjs.map +1 -1
  546. package/_cjs/typeclass/Monad.cjs.map +1 -1
  547. package/_cjs/typeclass/MonadExcept.cjs +0 -5
  548. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  549. package/_cjs/typeclass/Monoid.cjs +6 -23
  550. package/_cjs/typeclass/Monoid.cjs.map +1 -1
  551. package/_cjs/typeclass/Pointed.cjs.map +1 -1
  552. package/_cjs/typeclass/Semialign.cjs +1 -19
  553. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  554. package/_cjs/typeclass/Semigroup/api.cjs +6 -14
  555. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  556. package/_cjs/typeclass/Semigroup/definition.cjs +3 -6
  557. package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
  558. package/_cjs/typeclass/Semigroup/derivations.cjs +7 -18
  559. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
  560. package/_cjs/typeclass/Semigroup.cjs +0 -4
  561. package/_cjs/typeclass/Semigroup.cjs.map +1 -1
  562. package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
  563. package/_cjs/typeclass/Traversable.cjs +0 -5
  564. package/_cjs/typeclass/Traversable.cjs.map +1 -1
  565. package/_cjs/typeclass/TraversableWithIndex.cjs +0 -1
  566. package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
  567. package/_cjs/typeclass/Witherable.cjs +0 -7
  568. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  569. package/_cjs/typeclass/WitherableWithIndex.cjs +0 -8
  570. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  571. package/_cjs/typeclass/builtin.cjs +0 -2
  572. package/_cjs/typeclass/builtin.cjs.map +1 -1
  573. package/_cjs/typeclass.cjs +95 -162
  574. package/_cjs/typeclass.cjs.map +1 -1
  575. package/_cjs/types.cjs +0 -6
  576. package/_cjs/types.cjs.map +1 -1
  577. package/_cjs/util/AnsiFormat.cjs +8 -50
  578. package/_cjs/util/AnsiFormat.cjs.map +1 -1
  579. package/_cjs/util/PCGRandom.cjs +16 -46
  580. package/_cjs/util/PCGRandom.cjs.map +1 -1
  581. package/_cjs/util/assert.cjs +0 -4
  582. package/_cjs/util/assert.cjs.map +1 -1
  583. package/_cjs/util/pattern.cjs +0 -4
  584. package/_cjs/util/pattern.cjs.map +1 -1
  585. package/_cjs/util/predicates.cjs +1 -33
  586. package/_cjs/util/predicates.cjs.map +1 -1
  587. package/_cjs/util/rand/Random.cjs +0 -21
  588. package/_cjs/util/rand/Random.cjs.map +1 -1
  589. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs +0 -5
  590. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
  591. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs +4 -12
  592. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
  593. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs +0 -12
  594. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
  595. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs +6 -42
  596. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
  597. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs +6 -10
  598. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
  599. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs +8 -14
  600. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
  601. package/_cjs/util/rand/generator/MersenneTwister.cjs +5 -25
  602. package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
  603. package/_cjs/util/rand/generator/RandomGenerator.cjs +0 -4
  604. package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
  605. package/_cjs/util/rand.cjs +0 -9
  606. package/_cjs/util/rand.cjs.map +1 -1
  607. package/_mjs/collection/Iterable/api/traverseConc.mjs +0 -5
  608. package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
  609. package/_mjs/collection/Iterable/api.mjs +33 -172
  610. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  611. package/_mjs/collection/Iterable/constructors.mjs +0 -15
  612. package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
  613. package/_mjs/collection/Iterable/definition.mjs.map +1 -1
  614. package/_mjs/collection/Iterable.mjs.map +1 -1
  615. package/_mjs/collection/compat/Array/api.mjs +2 -10
  616. package/_mjs/collection/compat/Array/api.mjs.map +1 -1
  617. package/_mjs/collection/compat/Array/definition.mjs.map +1 -1
  618. package/_mjs/collection/compat/Array.mjs +0 -1
  619. package/_mjs/collection/compat/Array.mjs.map +1 -1
  620. package/_mjs/collection/compat/ArrayLike/api.mjs +2 -8
  621. package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
  622. package/_mjs/collection/immutable/Conc/api/empty.mjs +0 -1
  623. package/_mjs/collection/immutable/Conc/api/empty.mjs.map +1 -1
  624. package/_mjs/collection/immutable/Conc/api/makeBy.mjs +0 -4
  625. package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
  626. package/_mjs/collection/immutable/Conc/api/replicate.mjs +0 -1
  627. package/_mjs/collection/immutable/Conc/api/replicate.mjs.map +1 -1
  628. package/_mjs/collection/immutable/Conc/api.mjs +32 -316
  629. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  630. package/_mjs/collection/immutable/Conc/constructors.mjs +0 -5
  631. package/_mjs/collection/immutable/Conc/constructors.mjs.map +1 -1
  632. package/_mjs/collection/immutable/Conc/definition.mjs +33 -202
  633. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  634. package/_mjs/collection/immutable/Conc.mjs +1 -2
  635. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  636. package/_mjs/collection/immutable/Dictionary/api.mjs +0 -15
  637. package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
  638. package/_mjs/collection/immutable/Dictionary/definition.mjs.map +1 -1
  639. package/_mjs/collection/immutable/Dictionary.mjs +4 -0
  640. package/_mjs/collection/immutable/Dictionary.mjs.map +1 -0
  641. package/_mjs/collection/immutable/HashMap/api.mjs +103 -205
  642. package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
  643. package/_mjs/collection/immutable/HashMap/definition.mjs +20 -29
  644. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  645. package/_mjs/collection/immutable/HashMap/internal.mjs +4 -66
  646. package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
  647. package/_mjs/collection/immutable/HashMap.mjs.map +1 -1
  648. package/_mjs/collection/immutable/HashSet/api.mjs +88 -152
  649. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  650. package/_mjs/collection/immutable/HashSet/definition.mjs +17 -68
  651. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  652. package/_mjs/collection/immutable/HashSet.mjs.map +1 -1
  653. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +0 -1
  654. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
  655. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +0 -1
  656. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
  657. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +0 -1
  658. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
  659. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +0 -3
  660. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
  661. package/_mjs/collection/immutable/ImmutableArray/api.mjs +22 -325
  662. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
  663. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs +0 -10
  664. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs.map +1 -1
  665. package/_mjs/collection/immutable/ImmutableArray/definition.mjs +9 -13
  666. package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
  667. package/_mjs/collection/immutable/ImmutableArray/instances.mjs +16 -25
  668. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  669. package/_mjs/collection/immutable/ImmutableArray.mjs +2 -3
  670. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  671. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +17 -131
  672. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  673. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs +0 -12
  674. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
  675. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs +0 -5
  676. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
  677. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +0 -10
  678. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
  679. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +12 -16
  680. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
  681. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs +0 -1
  682. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs.map +1 -1
  683. package/_mjs/collection/immutable/List/api/foldLeft.mjs +0 -3
  684. package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
  685. package/_mjs/collection/immutable/List/api/unsafeTail.mjs +0 -2
  686. package/_mjs/collection/immutable/List/api/unsafeTail.mjs.map +1 -1
  687. package/_mjs/collection/immutable/List/api.mjs +13 -85
  688. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  689. package/_mjs/collection/immutable/List/constructors.mjs +1 -11
  690. package/_mjs/collection/immutable/List/constructors.mjs.map +1 -1
  691. package/_mjs/collection/immutable/List/definition.mjs +2 -18
  692. package/_mjs/collection/immutable/List/definition.mjs.map +1 -1
  693. package/_mjs/collection/immutable/List.mjs +2 -2
  694. package/_mjs/collection/immutable/List.mjs.map +1 -1
  695. package/_mjs/collection/immutable/Queue/api.mjs +42 -68
  696. package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
  697. package/_mjs/collection/immutable/Queue/constructors.mjs +0 -2
  698. package/_mjs/collection/immutable/Queue/constructors.mjs.map +1 -1
  699. package/_mjs/collection/immutable/Queue/definition.mjs +2 -8
  700. package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
  701. package/_mjs/collection/immutable/Queue/guards.mjs +2 -3
  702. package/_mjs/collection/immutable/Queue/guards.mjs.map +1 -1
  703. package/_mjs/collection/immutable/Queue.mjs.map +1 -1
  704. package/_mjs/collection/immutable/RoseTree/api.mjs +26 -67
  705. package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
  706. package/_mjs/collection/immutable/RoseTree/definition.mjs +9 -11
  707. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
  708. package/_mjs/collection/immutable/RoseTree.mjs.map +1 -1
  709. package/_mjs/collection/immutable/SortedMap/api.mjs +130 -240
  710. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  711. package/_mjs/collection/immutable/SortedMap/definition.mjs +4 -4
  712. package/_mjs/collection/immutable/SortedMap/definition.mjs.map +1 -1
  713. package/_mjs/collection/immutable/SortedMap/internal.mjs +56 -222
  714. package/_mjs/collection/immutable/SortedMap/internal.mjs.map +1 -1
  715. package/_mjs/collection/immutable/SortedMap/iterator.mjs +16 -97
  716. package/_mjs/collection/immutable/SortedMap/iterator.mjs.map +1 -1
  717. package/_mjs/collection/immutable/SortedMap/node.mjs +0 -1
  718. package/_mjs/collection/immutable/SortedMap/node.mjs.map +1 -1
  719. package/_mjs/collection/immutable/SortedMap.mjs.map +1 -1
  720. package/_mjs/collection/immutable/Vector/api.mjs +204 -390
  721. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  722. package/_mjs/collection/immutable/Vector/definition.mjs +14 -24
  723. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  724. package/_mjs/collection/immutable/Vector/internal.mjs +42 -314
  725. package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
  726. package/_mjs/collection/immutable/Vector.mjs.map +1 -1
  727. package/_mjs/collection/mutable/HashMap.mjs +6 -74
  728. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  729. package/_mjs/collection/mutable/HashSet.mjs +5 -59
  730. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  731. package/_mjs/collection/mutable/ListBuffer.mjs +0 -26
  732. package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
  733. package/_mjs/collection/mutable/internal.mjs +0 -2
  734. package/_mjs/collection/mutable/internal.mjs.map +1 -1
  735. package/_mjs/collection/weak/IterableWeakMap.mjs +0 -22
  736. package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
  737. package/_mjs/collection/weak/IterableWeakSet.mjs +0 -20
  738. package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
  739. package/_mjs/control/Eval/api/sequenceArray.mjs +0 -1
  740. package/_mjs/control/Eval/api/sequenceArray.mjs.map +1 -1
  741. package/_mjs/control/Eval/api.mjs +2 -21
  742. package/_mjs/control/Eval/api.mjs.map +1 -1
  743. package/_mjs/control/Eval/constructors.mjs +0 -6
  744. package/_mjs/control/Eval/constructors.mjs.map +1 -1
  745. package/_mjs/control/Eval/definition.mjs +15 -18
  746. package/_mjs/control/Eval/definition.mjs.map +1 -1
  747. package/_mjs/control/Eval/instance.mjs +2 -4
  748. package/_mjs/control/Eval/instance.mjs.map +1 -1
  749. package/_mjs/control/Eval/run.mjs +4 -23
  750. package/_mjs/control/Eval/run.mjs.map +1 -1
  751. package/_mjs/control/Eval.mjs.map +1 -1
  752. package/_mjs/control/LazyValue.mjs +0 -3
  753. package/_mjs/control/LazyValue.mjs.map +1 -1
  754. package/_mjs/control/Z/api.mjs +4 -92
  755. package/_mjs/control/Z/api.mjs.map +1 -1
  756. package/_mjs/control/Z/definition.mjs +34 -58
  757. package/_mjs/control/Z/definition.mjs.map +1 -1
  758. package/_mjs/control/Z/instances.mjs +0 -1
  759. package/_mjs/control/Z/instances.mjs.map +1 -1
  760. package/_mjs/control/Z/runtime.mjs +14 -90
  761. package/_mjs/control/Z/runtime.mjs.map +1 -1
  762. package/_mjs/control/Z.mjs.map +1 -1
  763. package/_mjs/data/Branded/definition.mjs +0 -2
  764. package/_mjs/data/Branded/definition.mjs.map +1 -1
  765. package/_mjs/data/Branded.mjs +0 -1
  766. package/_mjs/data/Branded.mjs.map +1 -1
  767. package/_mjs/data/CaseClass.mjs +14 -33
  768. package/_mjs/data/CaseClass.mjs.map +1 -1
  769. package/_mjs/data/Cause/api/fold.mjs +11 -48
  770. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  771. package/_mjs/data/Cause/api/isEmpty.mjs +6 -28
  772. package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
  773. package/_mjs/data/Cause/api/linearize.mjs +6 -7
  774. package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
  775. package/_mjs/data/Cause/api/prettyPrint.mjs +0 -7
  776. package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
  777. package/_mjs/data/Cause/api/unified.mjs +14 -44
  778. package/_mjs/data/Cause/api/unified.mjs.map +1 -1
  779. package/_mjs/data/Cause/api.mjs +92 -368
  780. package/_mjs/data/Cause/api.mjs.map +1 -1
  781. package/_mjs/data/Cause/definition.mjs +47 -245
  782. package/_mjs/data/Cause/definition.mjs.map +1 -1
  783. package/_mjs/data/Cause.mjs +2 -2
  784. package/_mjs/data/Cause.mjs.map +1 -1
  785. package/_mjs/data/Const/api.mjs +1 -3
  786. package/_mjs/data/Const/api.mjs.map +1 -1
  787. package/_mjs/data/Const/definition.mjs +0 -1
  788. package/_mjs/data/Const/definition.mjs.map +1 -1
  789. package/_mjs/data/Const/instances.mjs +4 -6
  790. package/_mjs/data/Const/instances.mjs.map +1 -1
  791. package/_mjs/data/Const.mjs.map +1 -1
  792. package/_mjs/data/Datum/api.mjs +24 -117
  793. package/_mjs/data/Datum/api.mjs.map +1 -1
  794. package/_mjs/data/Datum/definition.mjs +20 -44
  795. package/_mjs/data/Datum/definition.mjs.map +1 -1
  796. package/_mjs/data/Datum/instances.mjs +0 -5
  797. package/_mjs/data/Datum/instances.mjs.map +1 -1
  798. package/_mjs/data/DatumEither/api.mjs +36 -100
  799. package/_mjs/data/DatumEither/api.mjs.map +1 -1
  800. package/_mjs/data/DatumEither/definition.mjs.map +1 -1
  801. package/_mjs/data/DatumEither.mjs +4 -0
  802. package/_mjs/data/DatumEither.mjs.map +1 -0
  803. package/_mjs/data/DecodeError/definition.mjs +4 -30
  804. package/_mjs/data/DecodeError/definition.mjs.map +1 -1
  805. package/_mjs/data/DecodeError.mjs.map +1 -1
  806. package/_mjs/data/Decoder/api.mjs +393 -48
  807. package/_mjs/data/Decoder/api.mjs.map +1 -1
  808. package/_mjs/data/Decoder/definition.mjs +3 -4
  809. package/_mjs/data/Decoder/definition.mjs.map +1 -1
  810. package/_mjs/data/Decoder.mjs.map +1 -1
  811. package/_mjs/data/Duration/api.mjs +4 -11
  812. package/_mjs/data/Duration/api.mjs.map +1 -1
  813. package/_mjs/data/Duration/definition.mjs +8 -11
  814. package/_mjs/data/Duration/definition.mjs.map +1 -1
  815. package/_mjs/data/Duration.mjs.map +1 -1
  816. package/_mjs/data/Either/api/align.mjs +0 -1
  817. package/_mjs/data/Either/api/align.mjs.map +1 -1
  818. package/_mjs/data/Either/api/alignWith.mjs +1 -8
  819. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  820. package/_mjs/data/Either/api.mjs +32 -120
  821. package/_mjs/data/Either/api.mjs.map +1 -1
  822. package/_mjs/data/Either/constructors.mjs +0 -11
  823. package/_mjs/data/Either/constructors.mjs.map +1 -1
  824. package/_mjs/data/Either/definition.mjs +8 -16
  825. package/_mjs/data/Either/definition.mjs.map +1 -1
  826. package/_mjs/data/Either/destructors.mjs +2 -8
  827. package/_mjs/data/Either/destructors.mjs.map +1 -1
  828. package/_mjs/data/Either/instances.mjs +14 -48
  829. package/_mjs/data/Either/instances.mjs.map +1 -1
  830. package/_mjs/data/Either.mjs.map +1 -1
  831. package/_mjs/data/EitherT/api.mjs +0 -9
  832. package/_mjs/data/EitherT/api.mjs.map +1 -1
  833. package/_mjs/data/EitherT/definition.mjs.map +1 -1
  834. package/_mjs/data/Encoder/api.mjs +192 -21
  835. package/_mjs/data/Encoder/api.mjs.map +1 -1
  836. package/_mjs/data/Encoder/definition.mjs +3 -3
  837. package/_mjs/data/Encoder/definition.mjs.map +1 -1
  838. package/_mjs/data/Encoder.mjs.map +1 -1
  839. package/_mjs/data/Environment/api.mjs +5 -28
  840. package/_mjs/data/Environment/api.mjs.map +1 -1
  841. package/_mjs/data/Environment/definition.mjs +11 -18
  842. package/_mjs/data/Environment/definition.mjs.map +1 -1
  843. package/_mjs/data/Environment.mjs.map +1 -1
  844. package/_mjs/data/EnvironmentPatch.mjs +22 -56
  845. package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
  846. package/_mjs/{typeclass → data}/Eq/definition.mjs +1 -2
  847. package/_mjs/data/Eq/definition.mjs.map +1 -0
  848. package/_mjs/{typeclass → data}/Eq/derivations.mjs +9 -15
  849. package/_mjs/data/Eq/derivations.mjs.map +1 -0
  850. package/_mjs/{typeclass → data}/Eq.mjs +0 -0
  851. package/_mjs/data/Eq.mjs.map +1 -0
  852. package/_mjs/{typeclass → data}/Equatable/api.mjs +3 -6
  853. package/_mjs/data/Equatable/api.mjs.map +1 -0
  854. package/_mjs/{typeclass → data}/Equatable/definition.mjs +0 -1
  855. package/_mjs/data/Equatable/definition.mjs.map +1 -0
  856. package/_mjs/{typeclass → data}/Equatable/fast-equals.mjs +1 -63
  857. package/_mjs/data/Equatable/fast-equals.mjs.map +1 -0
  858. package/_mjs/{typeclass → data}/Equatable.mjs +0 -0
  859. package/_mjs/data/Equatable.mjs.map +1 -0
  860. package/_mjs/data/ExecutionStrategy.mjs +0 -5
  861. package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
  862. package/_mjs/data/Exit/api.mjs +35 -78
  863. package/_mjs/data/Exit/api.mjs.map +1 -1
  864. package/_mjs/data/Exit/constructors.mjs +0 -11
  865. package/_mjs/data/Exit/constructors.mjs.map +1 -1
  866. package/_mjs/data/Exit/definition.mjs +18 -41
  867. package/_mjs/data/Exit/definition.mjs.map +1 -1
  868. package/_mjs/data/Exit.mjs.map +1 -1
  869. package/_mjs/data/FiberId/api.mjs +5 -15
  870. package/_mjs/data/FiberId/api.mjs.map +1 -1
  871. package/_mjs/data/FiberId/constructors.mjs +3 -9
  872. package/_mjs/data/FiberId/constructors.mjs.map +1 -1
  873. package/_mjs/data/FiberId/definition.mjs +16 -34
  874. package/_mjs/data/FiberId/definition.mjs.map +1 -1
  875. package/_mjs/data/FiberId.mjs.map +1 -1
  876. package/_mjs/data/Guard/api.mjs +369 -0
  877. package/_mjs/data/Guard/api.mjs.map +1 -0
  878. package/_mjs/{typeclass → data}/Guard/definition.mjs +4 -4
  879. package/_mjs/data/Guard/definition.mjs.map +1 -0
  880. package/_mjs/data/Guard.mjs +4 -0
  881. package/_mjs/data/Guard.mjs.map +1 -0
  882. package/_mjs/{typeclass → data}/Hash.mjs +0 -1
  883. package/_mjs/data/Hash.mjs.map +1 -0
  884. package/_mjs/data/HashEq.mjs +30 -0
  885. package/_mjs/data/HashEq.mjs.map +1 -0
  886. package/_mjs/{typeclass → data}/Hashable/definition.mjs +0 -1
  887. package/_mjs/data/Hashable/definition.mjs.map +1 -0
  888. package/_mjs/{typeclass → data}/Hashable/hash.mjs +4 -59
  889. package/_mjs/data/Hashable/hash.mjs.map +1 -0
  890. package/_mjs/{typeclass → data}/Hashable.mjs +0 -0
  891. package/_mjs/data/Hashable.mjs.map +1 -0
  892. package/_mjs/data/Identity/api.mjs +0 -7
  893. package/_mjs/data/Identity/api.mjs.map +1 -1
  894. package/_mjs/data/Identity/definition.mjs.map +1 -1
  895. package/_mjs/data/Identity/instances.mjs +4 -5
  896. package/_mjs/data/Identity/instances.mjs.map +1 -1
  897. package/_mjs/data/Identity.mjs.map +1 -1
  898. package/_mjs/data/Interval.mjs +4 -20
  899. package/_mjs/data/Interval.mjs.map +1 -1
  900. package/_mjs/data/Intervals.mjs +10 -33
  901. package/_mjs/data/Intervals.mjs.map +1 -1
  902. package/_mjs/data/Maybe/api.mjs +18 -74
  903. package/_mjs/data/Maybe/api.mjs.map +1 -1
  904. package/_mjs/data/Maybe/constructors.mjs +0 -17
  905. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  906. package/_mjs/data/Maybe/definition.mjs +15 -38
  907. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  908. package/_mjs/data/Maybe/destructors.mjs +1 -3
  909. package/_mjs/data/Maybe/destructors.mjs.map +1 -1
  910. package/_mjs/data/Maybe/instances.mjs +28 -9
  911. package/_mjs/data/Maybe/instances.mjs.map +1 -1
  912. package/_mjs/data/Maybe.mjs.map +1 -1
  913. package/_mjs/data/Newtype.mjs +0 -1
  914. package/_mjs/data/Newtype.mjs.map +1 -1
  915. package/_mjs/data/Ord/api/contramap.mjs +12 -0
  916. package/_mjs/data/Ord/api/contramap.mjs.map +1 -0
  917. package/_mjs/data/Ord/api/max.mjs +8 -0
  918. package/_mjs/data/Ord/api/max.mjs.map +1 -0
  919. package/_mjs/data/Ord/api/min.mjs +8 -0
  920. package/_mjs/data/Ord/api/min.mjs.map +1 -0
  921. package/_mjs/{typeclass → data}/Ord/api.mjs +0 -0
  922. package/_mjs/data/Ord/api.mjs.map +1 -0
  923. package/_mjs/data/Ord/definition.mjs +12 -0
  924. package/_mjs/data/Ord/definition.mjs.map +1 -0
  925. package/_mjs/data/Ord/instances.mjs +34 -0
  926. package/_mjs/data/Ord/instances.mjs.map +1 -0
  927. package/_mjs/{typeclass → data}/Ord.mjs +0 -0
  928. package/_mjs/data/Ord.mjs.map +1 -0
  929. package/_mjs/{typeclass → data}/Ordering.mjs +0 -6
  930. package/_mjs/data/Ordering.mjs.map +1 -0
  931. package/_mjs/data/Predicate/api.mjs +0 -3
  932. package/_mjs/data/Predicate/api.mjs.map +1 -1
  933. package/_mjs/data/Predicate.mjs.map +1 -1
  934. package/_mjs/data/Refinement/api.mjs +0 -3
  935. package/_mjs/data/Refinement/api.mjs.map +1 -1
  936. package/_mjs/data/Refinement.mjs.map +1 -1
  937. package/_mjs/{typeclass → data}/Showable/definition.mjs +2 -3
  938. package/_mjs/data/Showable/definition.mjs.map +1 -0
  939. package/_mjs/{typeclass → data}/Showable/show.mjs +47 -173
  940. package/_mjs/data/Showable/show.mjs.map +1 -0
  941. package/_mjs/{typeclass → data}/Showable/styles.mjs +0 -0
  942. package/_mjs/data/Showable/styles.mjs.map +1 -0
  943. package/_mjs/{typeclass → data}/Showable/util.mjs +52 -92
  944. package/_mjs/data/Showable/util.mjs.map +1 -0
  945. package/_mjs/{typeclass → data}/Showable.mjs +0 -0
  946. package/_mjs/data/Showable.mjs.map +1 -0
  947. package/_mjs/data/Struct/api.mjs +7 -23
  948. package/_mjs/data/Struct/api.mjs.map +1 -1
  949. package/_mjs/data/Struct/definition.mjs.map +1 -1
  950. package/_mjs/data/Tag/constructors.mjs +1 -4
  951. package/_mjs/data/Tag/constructors.mjs.map +1 -1
  952. package/_mjs/data/Tag/definition.mjs +8 -12
  953. package/_mjs/data/Tag/definition.mjs.map +1 -1
  954. package/_mjs/data/Tag.mjs.map +1 -1
  955. package/_mjs/data/These/api.mjs +42 -151
  956. package/_mjs/data/These/api.mjs.map +1 -1
  957. package/_mjs/data/These/constructors.mjs +0 -6
  958. package/_mjs/data/These/constructors.mjs.map +1 -1
  959. package/_mjs/data/These/definition.mjs +14 -20
  960. package/_mjs/data/These/definition.mjs.map +1 -1
  961. package/_mjs/data/These/destructors.mjs +6 -28
  962. package/_mjs/data/These/destructors.mjs.map +1 -1
  963. package/_mjs/data/These/instances.mjs +1 -6
  964. package/_mjs/data/These/instances.mjs.map +1 -1
  965. package/_mjs/data/These.mjs.map +1 -1
  966. package/_mjs/data/Trace/api.mjs +0 -2
  967. package/_mjs/data/Trace/api.mjs.map +1 -1
  968. package/_mjs/data/Trace/constructors.mjs +0 -2
  969. package/_mjs/data/Trace/constructors.mjs.map +1 -1
  970. package/_mjs/data/Trace/definition.mjs +0 -1
  971. package/_mjs/data/Trace/definition.mjs.map +1 -1
  972. package/_mjs/data/Trace.mjs.map +1 -1
  973. package/_mjs/data/TraceElement/definition.mjs +0 -9
  974. package/_mjs/data/TraceElement/definition.mjs.map +1 -1
  975. package/_mjs/data/TraceElement.mjs.map +1 -1
  976. package/_mjs/data/Zipped.mjs +2 -7
  977. package/_mjs/data/Zipped.mjs.map +1 -1
  978. package/_mjs/data/bigint/instances.mjs +2 -2
  979. package/_mjs/data/bigint/instances.mjs.map +1 -1
  980. package/_mjs/data/bigint.mjs.map +1 -1
  981. package/_mjs/data/boolean/instances.mjs +2 -2
  982. package/_mjs/data/boolean/instances.mjs.map +1 -1
  983. package/_mjs/data/boolean.mjs.map +1 -1
  984. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs +0 -1
  985. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs.map +1 -1
  986. package/_mjs/data/exceptions/IllegalArgumentError.mjs +0 -1
  987. package/_mjs/data/exceptions/IllegalArgumentError.mjs.map +1 -1
  988. package/_mjs/data/exceptions/IllegalStateError.mjs +0 -1
  989. package/_mjs/data/exceptions/IllegalStateError.mjs.map +1 -1
  990. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs +0 -1
  991. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs.map +1 -1
  992. package/_mjs/data/exceptions/InterruptedException.mjs +5 -4
  993. package/_mjs/data/exceptions/InterruptedException.mjs.map +1 -1
  994. package/_mjs/data/exceptions/InvalidCapacityError.mjs +0 -1
  995. package/_mjs/data/exceptions/InvalidCapacityError.mjs.map +1 -1
  996. package/_mjs/data/exceptions/NoSuchElementError.mjs +0 -1
  997. package/_mjs/data/exceptions/NoSuchElementError.mjs.map +1 -1
  998. package/_mjs/data/exceptions.mjs.map +1 -1
  999. package/_mjs/data/function/api.mjs +0 -5
  1000. package/_mjs/data/function/api.mjs.map +1 -1
  1001. package/_mjs/data/function/pipe.mjs +0 -20
  1002. package/_mjs/data/function/pipe.mjs.map +1 -1
  1003. package/_mjs/data/function.mjs.map +1 -1
  1004. package/_mjs/data/number/api.mjs.map +1 -1
  1005. package/_mjs/data/number/instances.mjs +10 -13
  1006. package/_mjs/data/number/instances.mjs.map +1 -1
  1007. package/_mjs/data/number.mjs.map +1 -1
  1008. package/_mjs/data/object/instances.mjs +1 -9
  1009. package/_mjs/data/object/instances.mjs.map +1 -1
  1010. package/_mjs/data/object.mjs.map +1 -1
  1011. package/_mjs/data/string/api.mjs +3 -21
  1012. package/_mjs/data/string/api.mjs.map +1 -1
  1013. package/_mjs/data/string/instances.mjs +11 -15
  1014. package/_mjs/data/string/instances.mjs.map +1 -1
  1015. package/_mjs/data/string.mjs.map +1 -1
  1016. package/_mjs/global/api.mjs.map +1 -1
  1017. package/_mjs/internal/AtomicBoolean.mjs +0 -1
  1018. package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
  1019. package/_mjs/internal/AtomicNumber.mjs +0 -4
  1020. package/_mjs/internal/AtomicNumber.mjs.map +1 -1
  1021. package/_mjs/internal/AtomicReference.mjs +0 -6
  1022. package/_mjs/internal/AtomicReference.mjs.map +1 -1
  1023. package/_mjs/internal/Stack.mjs +0 -9
  1024. package/_mjs/internal/Stack.mjs.map +1 -1
  1025. package/_mjs/json/EitherJson.mjs +1 -2
  1026. package/_mjs/json/EitherJson.mjs.map +1 -1
  1027. package/_mjs/json/MaybeJson.mjs +1 -2
  1028. package/_mjs/json/MaybeJson.mjs.map +1 -1
  1029. package/_mjs/json/TheseJson.mjs +1 -2
  1030. package/_mjs/json/TheseJson.mjs.map +1 -1
  1031. package/_mjs/optics/At/api.mjs +0 -1
  1032. package/_mjs/optics/At/api.mjs.map +1 -1
  1033. package/_mjs/optics/At/definition.mjs +0 -1
  1034. package/_mjs/optics/At/definition.mjs.map +1 -1
  1035. package/_mjs/optics/At.mjs.map +1 -1
  1036. package/_mjs/optics/Fold/definition.mjs +0 -1
  1037. package/_mjs/optics/Fold/definition.mjs.map +1 -1
  1038. package/_mjs/optics/Fold.mjs.map +1 -1
  1039. package/_mjs/optics/Getter/definition.mjs +0 -1
  1040. package/_mjs/optics/Getter/definition.mjs.map +1 -1
  1041. package/_mjs/optics/Getter.mjs.map +1 -1
  1042. package/_mjs/optics/Index/api.mjs +0 -2
  1043. package/_mjs/optics/Index/api.mjs.map +1 -1
  1044. package/_mjs/optics/Index/definition.mjs +0 -1
  1045. package/_mjs/optics/Index/definition.mjs.map +1 -1
  1046. package/_mjs/optics/Index.mjs.map +1 -1
  1047. package/_mjs/optics/Iso/api.mjs +0 -1
  1048. package/_mjs/optics/Iso/api.mjs.map +1 -1
  1049. package/_mjs/optics/Iso/definition.mjs +2 -4
  1050. package/_mjs/optics/Iso/definition.mjs.map +1 -1
  1051. package/_mjs/optics/Iso.mjs.map +1 -1
  1052. package/_mjs/optics/Lens/api.mjs +0 -22
  1053. package/_mjs/optics/Lens/api.mjs.map +1 -1
  1054. package/_mjs/optics/Lens/definition.mjs +2 -4
  1055. package/_mjs/optics/Lens/definition.mjs.map +1 -1
  1056. package/_mjs/optics/Lens.mjs.map +1 -1
  1057. package/_mjs/optics/Optional/api/compose.mjs +0 -1
  1058. package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
  1059. package/_mjs/optics/Optional/definition.mjs +0 -4
  1060. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  1061. package/_mjs/optics/Optional.mjs +2 -2
  1062. package/_mjs/optics/Optional.mjs.map +1 -1
  1063. package/_mjs/optics/Prism/api/compose.mjs +0 -1
  1064. package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
  1065. package/_mjs/optics/Prism/api/fromNullable.mjs +0 -1
  1066. package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
  1067. package/_mjs/optics/Prism/api/just.mjs +0 -1
  1068. package/_mjs/optics/Prism/api/just.mjs.map +1 -1
  1069. package/_mjs/optics/Prism/definition.mjs +0 -3
  1070. package/_mjs/optics/Prism/definition.mjs.map +1 -1
  1071. package/_mjs/optics/Prism.mjs +2 -2
  1072. package/_mjs/optics/Prism.mjs.map +1 -1
  1073. package/_mjs/optics/Setter/definition.mjs +0 -3
  1074. package/_mjs/optics/Setter/definition.mjs.map +1 -1
  1075. package/_mjs/optics/Setter.mjs.map +1 -1
  1076. package/_mjs/optics/Traversal/api/compose.mjs +0 -1
  1077. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  1078. package/_mjs/optics/Traversal/api/fromTraversable.mjs +0 -1
  1079. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  1080. package/_mjs/optics/Traversal/definition.mjs +0 -3
  1081. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  1082. package/_mjs/optics/Traversal.mjs +2 -2
  1083. package/_mjs/optics/Traversal.mjs.map +1 -1
  1084. package/_mjs/typeclass/Align.mjs.map +1 -1
  1085. package/_mjs/typeclass/Alt.mjs.map +1 -1
  1086. package/_mjs/typeclass/Alternative.mjs.map +1 -1
  1087. package/_mjs/typeclass/Applicative.mjs.map +1 -1
  1088. package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
  1089. package/_mjs/typeclass/Apply.mjs +6 -27
  1090. package/_mjs/typeclass/Apply.mjs.map +1 -1
  1091. package/_mjs/typeclass/Chain.mjs +0 -2
  1092. package/_mjs/typeclass/Chain.mjs.map +1 -1
  1093. package/_mjs/typeclass/Closure.mjs +1 -2
  1094. package/_mjs/typeclass/Closure.mjs.map +1 -1
  1095. package/_mjs/typeclass/Filterable.mjs.map +1 -1
  1096. package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
  1097. package/_mjs/typeclass/Foldable.mjs +1 -2
  1098. package/_mjs/typeclass/Foldable.mjs.map +1 -1
  1099. package/_mjs/typeclass/FoldableWithIndex.mjs +1 -2
  1100. package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
  1101. package/_mjs/typeclass/Functor.mjs +0 -1
  1102. package/_mjs/typeclass/Functor.mjs.map +1 -1
  1103. package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
  1104. package/_mjs/typeclass/Has.mjs +2 -1
  1105. package/_mjs/typeclass/Has.mjs.map +1 -1
  1106. package/_mjs/typeclass/Monad.mjs.map +1 -1
  1107. package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
  1108. package/_mjs/typeclass/Monoid.mjs +6 -15
  1109. package/_mjs/typeclass/Monoid.mjs.map +1 -1
  1110. package/_mjs/typeclass/Pointed.mjs.map +1 -1
  1111. package/_mjs/typeclass/Semialign.mjs +1 -8
  1112. package/_mjs/typeclass/Semialign.mjs.map +1 -1
  1113. package/_mjs/typeclass/Semigroup/api.mjs +6 -8
  1114. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  1115. package/_mjs/typeclass/Semigroup/definition.mjs +2 -3
  1116. package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
  1117. package/_mjs/typeclass/Semigroup/derivations.mjs +7 -14
  1118. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
  1119. package/_mjs/typeclass/Semigroup.mjs.map +1 -1
  1120. package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
  1121. package/_mjs/typeclass/Traversable.mjs +0 -1
  1122. package/_mjs/typeclass/Traversable.mjs.map +1 -1
  1123. package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
  1124. package/_mjs/typeclass/Witherable.mjs +0 -1
  1125. package/_mjs/typeclass/Witherable.mjs.map +1 -1
  1126. package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
  1127. package/_mjs/typeclass/builtin.mjs.map +1 -1
  1128. package/_mjs/typeclass.mjs +9 -8
  1129. package/_mjs/typeclass.mjs.map +1 -1
  1130. package/_mjs/types.mjs.map +1 -1
  1131. package/_mjs/util/AnsiFormat.mjs +8 -35
  1132. package/_mjs/util/AnsiFormat.mjs.map +1 -1
  1133. package/_mjs/util/PCGRandom.mjs +16 -43
  1134. package/_mjs/util/PCGRandom.mjs.map +1 -1
  1135. package/_mjs/util/assert.mjs +0 -1
  1136. package/_mjs/util/assert.mjs.map +1 -1
  1137. package/_mjs/util/pattern.mjs.map +1 -1
  1138. package/_mjs/util/predicates.mjs +1 -2
  1139. package/_mjs/util/predicates.mjs.map +1 -1
  1140. package/_mjs/util/rand/Random.mjs +0 -17
  1141. package/_mjs/util/rand/Random.mjs.map +1 -1
  1142. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs +0 -4
  1143. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
  1144. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs +4 -12
  1145. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
  1146. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs +0 -9
  1147. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
  1148. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs +6 -36
  1149. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
  1150. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs +6 -9
  1151. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
  1152. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs +8 -13
  1153. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
  1154. package/_mjs/util/rand/generator/MersenneTwister.mjs +5 -23
  1155. package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
  1156. package/_mjs/util/rand/generator/RandomGenerator.mjs +0 -4
  1157. package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
  1158. package/_mjs/util/rand.mjs.map +1 -1
  1159. package/_src/collection/Iterable/api.ts +25 -18
  1160. package/_src/collection/Iterable/constructors.ts +2 -0
  1161. package/_src/collection/compat/Array/api.ts +2 -2
  1162. package/_src/collection/compat/Array.ts +0 -1
  1163. package/_src/collection/compat/ArrayLike/api.ts +2 -2
  1164. package/_src/collection/compat.ts +0 -1
  1165. package/_src/collection/immutable/Conc/api.ts +7 -7
  1166. package/_src/collection/immutable/Conc/definition.ts +6 -6
  1167. package/_src/collection/immutable/Conc.ts +1 -1
  1168. package/_src/collection/immutable/Dictionary.ts +4 -0
  1169. package/_src/collection/immutable/HashMap/api.ts +109 -115
  1170. package/_src/collection/immutable/HashMap/definition.ts +23 -4
  1171. package/_src/collection/immutable/HashMap/internal.ts +2 -2
  1172. package/_src/collection/immutable/HashSet/api.ts +84 -72
  1173. package/_src/collection/immutable/HashSet/definition.ts +30 -10
  1174. package/_src/collection/immutable/ImmutableArray/api.ts +9 -7
  1175. package/_src/collection/immutable/ImmutableArray/definition.ts +8 -3
  1176. package/_src/collection/immutable/ImmutableArray.ts +1 -1
  1177. package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +7 -7
  1178. package/_src/collection/immutable/ImmutableNonEmptyArray.ts +0 -1
  1179. package/_src/collection/immutable/List/api.ts +22 -12
  1180. package/_src/collection/immutable/List/constructors.ts +1 -1
  1181. package/_src/collection/immutable/Queue/api.ts +42 -42
  1182. package/_src/collection/immutable/Queue/guards.ts +2 -2
  1183. package/_src/collection/immutable/RoseTree/definition.ts +8 -3
  1184. package/_src/collection/immutable/SortedMap/api.ts +125 -126
  1185. package/_src/collection/immutable/SortedMap/definition.ts +5 -0
  1186. package/_src/collection/immutable/Vector/api.ts +206 -206
  1187. package/_src/collection/immutable/Vector/definition.ts +12 -5
  1188. package/_src/collection/immutable.ts +1 -0
  1189. package/_src/collection/mutable/HashMap.ts +7 -7
  1190. package/_src/collection/mutable/HashSet.ts +6 -6
  1191. package/_src/control/Eval/definition.ts +22 -10
  1192. package/_src/control/Z/api.ts +4 -4
  1193. package/_src/control/Z/definition.ts +17 -14
  1194. package/_src/data/Branded.ts +0 -1
  1195. package/_src/data/CaseClass.ts +1 -1
  1196. package/_src/data/Cause/api/linearize.ts +4 -4
  1197. package/_src/data/Cause/api/unified.ts +1 -1
  1198. package/_src/data/Cause/api.ts +25 -3
  1199. package/_src/data/Cause/definition.ts +27 -17
  1200. package/_src/data/Const/api.ts +1 -1
  1201. package/_src/data/Const/instances.ts +2 -2
  1202. package/_src/data/Datum/api.ts +5 -7
  1203. package/_src/data/Datum/definition.ts +8 -7
  1204. package/_src/data/DatumEither/definition.ts +0 -1
  1205. package/_src/data/DatumEither.ts +4 -0
  1206. package/_src/data/DecodeError/definition.ts +5 -3
  1207. package/_src/data/Decoder/api.ts +493 -8
  1208. package/_src/data/Decoder/definition.ts +1 -1
  1209. package/_src/data/Duration/api.ts +5 -0
  1210. package/_src/data/Duration/definition.ts +2 -4
  1211. package/_src/data/Either/api.ts +1 -3
  1212. package/_src/data/Either/definition.ts +8 -3
  1213. package/_src/data/Either/instances.ts +3 -3
  1214. package/_src/data/Encoder/api.ts +261 -9
  1215. package/_src/data/Encoder/definition.ts +5 -1
  1216. package/_src/data/Environment/api.ts +1 -12
  1217. package/_src/data/Environment/definition.ts +10 -12
  1218. package/_src/data/EnvironmentPatch.ts +8 -3
  1219. package/_src/{typeclass → data}/Eq/definition.ts +5 -2
  1220. package/_src/{typeclass → data}/Eq/derivations.ts +8 -6
  1221. package/_src/{typeclass → data}/Eq.ts +0 -0
  1222. package/_src/{typeclass → data}/Equatable/api.ts +4 -2
  1223. package/_src/{typeclass → data}/Equatable/definition.ts +4 -0
  1224. package/_src/{typeclass → data}/Equatable/fast-equals.ts +33 -4
  1225. package/_src/{typeclass → data}/Equatable.ts +0 -0
  1226. package/_src/data/Exit/api.ts +26 -26
  1227. package/_src/data/Exit/definition.ts +16 -12
  1228. package/_src/data/FiberId/api.ts +3 -3
  1229. package/_src/data/FiberId/constructors.ts +3 -3
  1230. package/_src/data/FiberId/definition.ts +11 -10
  1231. package/_src/data/Guard/api.ts +457 -0
  1232. package/_src/{typeclass → data}/Guard/definition.ts +13 -3
  1233. package/_src/data/Guard.ts +4 -0
  1234. package/_src/{typeclass → data}/Hash.ts +0 -0
  1235. package/_src/{typeclass → data}/HashEq.ts +10 -5
  1236. package/_src/{typeclass → data}/Hashable/definition.ts +4 -0
  1237. package/_src/{typeclass → data}/Hashable/hash.ts +26 -1
  1238. package/_src/{typeclass → data}/Hashable.ts +0 -0
  1239. package/_src/data/Interval.ts +2 -2
  1240. package/_src/data/Maybe/api.ts +3 -3
  1241. package/_src/data/Maybe/definition.ts +11 -18
  1242. package/_src/data/Maybe/instances.ts +21 -0
  1243. package/_src/data/Ord/api/contramap.ts +11 -0
  1244. package/_src/data/Ord/api/max.ts +7 -0
  1245. package/_src/data/Ord/api/min.ts +7 -0
  1246. package/_src/{typeclass → data}/Ord/api.ts +0 -0
  1247. package/_src/{typeclass → data}/Ord/definition.ts +5 -5
  1248. package/_src/{typeclass → data}/Ord/instances.ts +8 -8
  1249. package/_src/{typeclass → data}/Ord.ts +0 -0
  1250. package/_src/{typeclass → data}/Ordering.ts +0 -0
  1251. package/_src/{typeclass → data}/Showable/definition.ts +10 -4
  1252. package/_src/{typeclass → data}/Showable/show.ts +58 -17
  1253. package/_src/{typeclass → data}/Showable/styles.ts +0 -0
  1254. package/_src/{typeclass → data}/Showable/util.ts +0 -0
  1255. package/_src/{typeclass → data}/Showable.ts +0 -0
  1256. package/_src/data/Struct/api.ts +1 -1
  1257. package/_src/data/Tag/definition.ts +7 -4
  1258. package/_src/data/These/api.ts +6 -6
  1259. package/_src/data/These/definition.ts +7 -7
  1260. package/_src/data/bigint/instances.ts +1 -0
  1261. package/_src/data/boolean/instances.ts +1 -0
  1262. package/_src/data/exceptions/InterruptedException.ts +2 -4
  1263. package/_src/data/number/instances.ts +5 -5
  1264. package/_src/data/object/instances.ts +0 -11
  1265. package/_src/data/string/api.ts +2 -4
  1266. package/_src/data/string/instances.ts +4 -4
  1267. package/_src/data.ts +10 -0
  1268. package/_src/global.ts +24 -12
  1269. package/_src/typeclass/Apply.ts +5 -4
  1270. package/_src/typeclass/Closure.ts +2 -2
  1271. package/_src/typeclass/Foldable.ts +1 -1
  1272. package/_src/typeclass/FoldableWithIndex.ts +1 -1
  1273. package/_src/typeclass/Monoid.ts +2 -2
  1274. package/_src/typeclass/Semialign.ts +1 -1
  1275. package/_src/typeclass/Semigroup/api.ts +2 -2
  1276. package/_src/typeclass/Semigroup/definition.ts +6 -2
  1277. package/_src/typeclass/Semigroup/derivations.ts +7 -5
  1278. package/_src/typeclass.ts +9 -8
  1279. package/_src/util/predicates.ts +2 -2
  1280. package/collection/Iterable/api.d.ts +12 -7
  1281. package/collection/compat/Array.d.ts +0 -1
  1282. package/collection/compat/ArrayLike/api.d.ts +2 -2
  1283. package/collection/compat.d.ts +0 -1
  1284. package/collection/immutable/Conc/api.d.ts +2 -2
  1285. package/collection/immutable/Conc/definition.d.ts +4 -4
  1286. package/collection/immutable/Conc.d.ts +0 -1
  1287. package/collection/immutable/Dictionary.d.ts +2 -0
  1288. package/collection/immutable/HashMap/api.d.ts +48 -48
  1289. package/collection/immutable/HashMap/definition.d.ts +18 -5
  1290. package/collection/immutable/HashSet/api.d.ts +39 -28
  1291. package/collection/immutable/HashSet/definition.d.ts +21 -7
  1292. package/collection/immutable/ImmutableArray/api.d.ts +2 -2
  1293. package/collection/immutable/ImmutableArray/definition.d.ts +8 -4
  1294. package/collection/immutable/ImmutableArray.d.ts +0 -1
  1295. package/collection/immutable/ImmutableNonEmptyArray.d.ts +0 -1
  1296. package/collection/immutable/List/api.d.ts +8 -6
  1297. package/collection/immutable/List/constructors.d.ts +1 -1
  1298. package/collection/immutable/Queue/api.d.ts +16 -16
  1299. package/collection/immutable/Queue/guards.d.ts +1 -1
  1300. package/collection/immutable/RoseTree/definition.d.ts +8 -4
  1301. package/collection/immutable/SortedMap/api.d.ts +27 -26
  1302. package/collection/immutable/SortedMap/definition.d.ts +3 -0
  1303. package/collection/immutable/Vector/api.d.ts +66 -66
  1304. package/collection/immutable/Vector/definition.d.ts +12 -6
  1305. package/collection/immutable.d.ts +1 -0
  1306. package/collection/mutable/HashMap.d.ts +2 -2
  1307. package/collection/mutable/HashSet.d.ts +2 -2
  1308. package/control/Eval/definition.d.ts +18 -7
  1309. package/control/Z/api.d.ts +4 -4
  1310. package/control/Z/definition.d.ts +12 -8
  1311. package/data/Branded.d.ts +0 -1
  1312. package/data/CaseClass.d.ts +2 -2
  1313. package/data/Cause/api.d.ts +12 -0
  1314. package/data/Cause/definition.d.ts +23 -7
  1315. package/data/Datum/api.d.ts +4 -5
  1316. package/data/Datum/definition.d.ts +6 -5
  1317. package/data/DatumEither/definition.d.ts +0 -1
  1318. package/data/DatumEither.d.ts +2 -0
  1319. package/data/DecodeError/definition.d.ts +3 -2
  1320. package/data/Decoder/api.d.ts +152 -4
  1321. package/data/Decoder/definition.d.ts +1 -1
  1322. package/data/Duration/api.d.ts +5 -0
  1323. package/data/Duration/definition.d.ts +3 -3
  1324. package/data/Either/definition.d.ts +7 -3
  1325. package/data/Either/instances.d.ts +1 -1
  1326. package/data/EitherT/api.d.ts +2 -2
  1327. package/data/Encoder/api.d.ts +147 -6
  1328. package/data/Encoder/definition.d.ts +5 -1
  1329. package/data/Environment/api.d.ts +0 -5
  1330. package/data/Environment/definition.d.ts +10 -10
  1331. package/data/EnvironmentPatch.d.ts +7 -3
  1332. package/{typeclass → data}/Eq/definition.d.ts +3 -3
  1333. package/{typeclass → data}/Eq/derivations.d.ts +3 -3
  1334. package/{typeclass → data}/Eq.d.ts +0 -0
  1335. package/{typeclass → data}/Equatable/api.d.ts +2 -2
  1336. package/{typeclass → data}/Equatable/definition.d.ts +1 -1
  1337. package/{typeclass → data}/Equatable/fast-equals.d.ts +0 -0
  1338. package/{typeclass → data}/Equatable.d.ts +0 -0
  1339. package/data/Exit/api.d.ts +15 -15
  1340. package/data/Exit/definition.d.ts +13 -7
  1341. package/data/FiberId/constructors.d.ts +1 -2
  1342. package/data/FiberId/definition.d.ts +10 -8
  1343. package/data/Guard/api.d.ts +242 -0
  1344. package/{typeclass → data}/Guard/definition.d.ts +10 -4
  1345. package/{typeclass → data}/Guard.d.ts +0 -0
  1346. package/{typeclass → data}/Hash.d.ts +1 -1
  1347. package/{typeclass → data}/HashEq.d.ts +6 -7
  1348. package/{typeclass → data}/Hashable/definition.d.ts +1 -1
  1349. package/{typeclass → data}/Hashable/hash.d.ts +11 -11
  1350. package/{typeclass → data}/Hashable.d.ts +0 -0
  1351. package/data/Interval.d.ts +2 -1
  1352. package/data/Maybe/api.d.ts +2 -2
  1353. package/data/Maybe/definition.d.ts +15 -13
  1354. package/data/Maybe/instances.d.ts +7 -1
  1355. package/{typeclass → data}/Ord/api/contramap.d.ts +2 -2
  1356. package/data/Ord/api/max.d.ts +7 -0
  1357. package/data/Ord/api/min.d.ts +7 -0
  1358. package/{typeclass → data}/Ord/api.d.ts +0 -0
  1359. package/data/Ord/definition.d.ts +19 -0
  1360. package/{typeclass → data}/Ord/instances.d.ts +3 -3
  1361. package/{typeclass → data}/Ord.d.ts +0 -0
  1362. package/{typeclass → data}/Ordering.d.ts +5 -5
  1363. package/data/Showable/definition.d.ts +17 -0
  1364. package/{typeclass → data}/Showable/show.d.ts +1 -1
  1365. package/{typeclass → data}/Showable/styles.d.ts +0 -0
  1366. package/{typeclass → data}/Showable/util.d.ts +0 -0
  1367. package/{typeclass → data}/Showable.d.ts +0 -0
  1368. package/data/Tag/definition.d.ts +8 -4
  1369. package/data/These/definition.d.ts +3 -3
  1370. package/data/These/instances.d.ts +1 -1
  1371. package/data/bigint/instances.d.ts +1 -0
  1372. package/data/boolean/instances.d.ts +1 -0
  1373. package/data/exceptions/InterruptedException.d.ts +1 -1
  1374. package/data/number/instances.d.ts +1 -1
  1375. package/data/object/instances.d.ts +0 -6
  1376. package/data.d.ts +10 -0
  1377. package/global.d.ts +24 -12
  1378. package/package.json +2 -2
  1379. package/typeclass/Apply.d.ts +4 -4
  1380. package/typeclass/Closure.d.ts +2 -2
  1381. package/typeclass/Semigroup/api.d.ts +1 -1
  1382. package/typeclass/Semigroup/definition.d.ts +2 -2
  1383. package/typeclass.d.ts +8 -8
  1384. package/util/predicates.d.ts +1 -1
  1385. package/_cjs/collection/compat/Array/derivations.cjs +0 -118
  1386. package/_cjs/collection/compat/Array/derivations.cjs.map +0 -1
  1387. package/_cjs/collection/compat/Record/instances.cjs +0 -164
  1388. package/_cjs/collection/compat/Record/instances.cjs.map +0 -1
  1389. package/_cjs/collection/compat/Record.cjs +0 -19
  1390. package/_cjs/collection/compat/Record.cjs.map +0 -1
  1391. package/_cjs/collection/immutable/Conc/derivations.cjs +0 -56
  1392. package/_cjs/collection/immutable/Conc/derivations.cjs.map +0 -1
  1393. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs +0 -52
  1394. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs.map +0 -1
  1395. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs +0 -73
  1396. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs.map +0 -1
  1397. package/_cjs/data/Branded/derivations.cjs +0 -58
  1398. package/_cjs/data/Branded/derivations.cjs.map +0 -1
  1399. package/_cjs/typeclass/Eq/definition.cjs.map +0 -1
  1400. package/_cjs/typeclass/Eq/derivations.cjs.map +0 -1
  1401. package/_cjs/typeclass/Eq.cjs.map +0 -1
  1402. package/_cjs/typeclass/Equatable/api.cjs.map +0 -1
  1403. package/_cjs/typeclass/Equatable/definition.cjs.map +0 -1
  1404. package/_cjs/typeclass/Equatable/fast-equals.cjs.map +0 -1
  1405. package/_cjs/typeclass/Equatable.cjs.map +0 -1
  1406. package/_cjs/typeclass/Guard/api.cjs +0 -48
  1407. package/_cjs/typeclass/Guard/api.cjs.map +0 -1
  1408. package/_cjs/typeclass/Guard/definition.cjs.map +0 -1
  1409. package/_cjs/typeclass/Guard/derivations.cjs +0 -85
  1410. package/_cjs/typeclass/Guard/derivations.cjs.map +0 -1
  1411. package/_cjs/typeclass/Guard.cjs.map +0 -1
  1412. package/_cjs/typeclass/Hash.cjs.map +0 -1
  1413. package/_cjs/typeclass/HashEq.cjs.map +0 -1
  1414. package/_cjs/typeclass/Hashable/definition.cjs.map +0 -1
  1415. package/_cjs/typeclass/Hashable/hash.cjs.map +0 -1
  1416. package/_cjs/typeclass/Hashable.cjs.map +0 -1
  1417. package/_cjs/typeclass/Ord/api/contramap.cjs.map +0 -1
  1418. package/_cjs/typeclass/Ord/api/max.cjs.map +0 -1
  1419. package/_cjs/typeclass/Ord/api/min.cjs.map +0 -1
  1420. package/_cjs/typeclass/Ord/api.cjs.map +0 -1
  1421. package/_cjs/typeclass/Ord/definition.cjs.map +0 -1
  1422. package/_cjs/typeclass/Ord/instances.cjs.map +0 -1
  1423. package/_cjs/typeclass/Ord.cjs.map +0 -1
  1424. package/_cjs/typeclass/Ordering.cjs.map +0 -1
  1425. package/_cjs/typeclass/Showable/definition.cjs.map +0 -1
  1426. package/_cjs/typeclass/Showable/show.cjs.map +0 -1
  1427. package/_cjs/typeclass/Showable/styles.cjs.map +0 -1
  1428. package/_cjs/typeclass/Showable/util.cjs.map +0 -1
  1429. package/_cjs/typeclass/Showable.cjs.map +0 -1
  1430. package/_mjs/collection/compat/Array/derivations.mjs +0 -86
  1431. package/_mjs/collection/compat/Array/derivations.mjs.map +0 -1
  1432. package/_mjs/collection/compat/Record/instances.mjs +0 -136
  1433. package/_mjs/collection/compat/Record/instances.mjs.map +0 -1
  1434. package/_mjs/collection/compat/Record.mjs +0 -3
  1435. package/_mjs/collection/compat/Record.mjs.map +0 -1
  1436. package/_mjs/collection/immutable/Conc/derivations.mjs +0 -35
  1437. package/_mjs/collection/immutable/Conc/derivations.mjs.map +0 -1
  1438. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs +0 -33
  1439. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs.map +0 -1
  1440. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs +0 -47
  1441. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs.map +0 -1
  1442. package/_mjs/data/Branded/derivations.mjs +0 -40
  1443. package/_mjs/data/Branded/derivations.mjs.map +0 -1
  1444. package/_mjs/typeclass/Eq/definition.mjs.map +0 -1
  1445. package/_mjs/typeclass/Eq/derivations.mjs.map +0 -1
  1446. package/_mjs/typeclass/Eq.mjs.map +0 -1
  1447. package/_mjs/typeclass/Equatable/api.mjs.map +0 -1
  1448. package/_mjs/typeclass/Equatable/definition.mjs.map +0 -1
  1449. package/_mjs/typeclass/Equatable/fast-equals.mjs.map +0 -1
  1450. package/_mjs/typeclass/Equatable.mjs.map +0 -1
  1451. package/_mjs/typeclass/Guard/api.mjs +0 -32
  1452. package/_mjs/typeclass/Guard/api.mjs.map +0 -1
  1453. package/_mjs/typeclass/Guard/definition.mjs.map +0 -1
  1454. package/_mjs/typeclass/Guard/derivations.mjs +0 -67
  1455. package/_mjs/typeclass/Guard/derivations.mjs.map +0 -1
  1456. package/_mjs/typeclass/Guard.mjs +0 -4
  1457. package/_mjs/typeclass/Guard.mjs.map +0 -1
  1458. package/_mjs/typeclass/Hash.mjs.map +0 -1
  1459. package/_mjs/typeclass/HashEq.mjs +0 -33
  1460. package/_mjs/typeclass/HashEq.mjs.map +0 -1
  1461. package/_mjs/typeclass/Hashable/definition.mjs.map +0 -1
  1462. package/_mjs/typeclass/Hashable/hash.mjs.map +0 -1
  1463. package/_mjs/typeclass/Hashable.mjs.map +0 -1
  1464. package/_mjs/typeclass/Ord/api/contramap.mjs +0 -12
  1465. package/_mjs/typeclass/Ord/api/contramap.mjs.map +0 -1
  1466. package/_mjs/typeclass/Ord/api/max.mjs +0 -8
  1467. package/_mjs/typeclass/Ord/api/max.mjs.map +0 -1
  1468. package/_mjs/typeclass/Ord/api/min.mjs +0 -8
  1469. package/_mjs/typeclass/Ord/api/min.mjs.map +0 -1
  1470. package/_mjs/typeclass/Ord/api.mjs.map +0 -1
  1471. package/_mjs/typeclass/Ord/definition.mjs +0 -13
  1472. package/_mjs/typeclass/Ord/definition.mjs.map +0 -1
  1473. package/_mjs/typeclass/Ord/instances.mjs +0 -37
  1474. package/_mjs/typeclass/Ord/instances.mjs.map +0 -1
  1475. package/_mjs/typeclass/Ord.mjs.map +0 -1
  1476. package/_mjs/typeclass/Ordering.mjs.map +0 -1
  1477. package/_mjs/typeclass/Showable/definition.mjs.map +0 -1
  1478. package/_mjs/typeclass/Showable/show.mjs.map +0 -1
  1479. package/_mjs/typeclass/Showable/styles.mjs.map +0 -1
  1480. package/_mjs/typeclass/Showable/util.mjs.map +0 -1
  1481. package/_mjs/typeclass/Showable.mjs.map +0 -1
  1482. package/_src/collection/compat/Array/derivations.ts +0 -111
  1483. package/_src/collection/compat/Record/instances.ts +0 -151
  1484. package/_src/collection/compat/Record.ts +0 -3
  1485. package/_src/collection/immutable/Conc/derivations.ts +0 -41
  1486. package/_src/collection/immutable/ImmutableArray/derivations.ts +0 -41
  1487. package/_src/collection/immutable/ImmutableNonEmptyArray/derivations.ts +0 -57
  1488. package/_src/data/Branded/derivations.ts +0 -58
  1489. package/_src/typeclass/Guard/api.ts +0 -37
  1490. package/_src/typeclass/Guard/derivations.ts +0 -80
  1491. package/_src/typeclass/Guard.ts +0 -4
  1492. package/_src/typeclass/Ord/api/contramap.ts +0 -12
  1493. package/_src/typeclass/Ord/api/max.ts +0 -8
  1494. package/_src/typeclass/Ord/api/min.ts +0 -8
  1495. package/collection/compat/Array/derivations.d.ts +0 -35
  1496. package/collection/compat/Record/instances.d.ts +0 -46
  1497. package/collection/compat/Record.d.ts +0 -1
  1498. package/collection/immutable/Conc/derivations.d.ts +0 -20
  1499. package/collection/immutable/ImmutableArray/derivations.d.ts +0 -20
  1500. package/collection/immutable/ImmutableNonEmptyArray/derivations.d.ts +0 -20
  1501. package/data/Branded/derivations.d.ts +0 -24
  1502. package/typeclass/Guard/api.d.ts +0 -20
  1503. package/typeclass/Guard/derivations.d.ts +0 -36
  1504. package/typeclass/Ord/api/max.d.ts +0 -7
  1505. package/typeclass/Ord/api/min.d.ts +0 -7
  1506. package/typeclass/Ord/definition.d.ts +0 -19
  1507. package/typeclass/Showable/definition.d.ts +0 -17
@@ -3,7 +3,6 @@
3
3
  * Internal
4
4
  * -------------------------------------------------------------------------------------------------
5
5
  */
6
-
7
6
  /**
8
7
  * @internal
9
8
  */
@@ -17,48 +16,39 @@ export class VectorIterator {
17
16
  this.idx = direction === 1 ? -1 : l.length;
18
17
  this.prefixSize = getPrefixSize(l);
19
18
  this.middleSize = l.length - getSuffixSize(l);
20
-
21
19
  if (l.root !== undefined) {
22
20
  const depth = getDepth(l);
23
21
  this.stack = new Array(depth + 1);
24
22
  this.indices = new Array(depth + 1);
25
23
  let currentNode = l.root.array;
26
-
27
24
  for (let i = depth; 0 <= i; --i) {
28
25
  this.stack[i] = currentNode;
29
26
  const idx = direction === 1 ? 0 : currentNode.length - 1;
30
27
  this.indices[i] = idx;
31
28
  currentNode = currentNode[idx].array;
32
29
  }
33
-
34
30
  this.indices[0] -= direction;
35
31
  }
36
32
  }
37
-
38
33
  }
39
34
  /**
40
35
  * @internal
41
36
  */
42
-
43
37
  export class ForwardVectorIterator extends VectorIterator {
44
38
  constructor(l) {
45
39
  super(l, 1);
46
40
  }
47
-
48
41
  nextInTree() {
49
42
  for (var i = 0; ++this.indices[i] === this.stack[i].length; ++i) {
50
43
  this.indices[i] = 0;
51
44
  }
52
-
53
45
  for (; 0 < i; --i) {
54
46
  this.stack[i - 1] = this.stack[i][this.indices[i]].array;
55
47
  }
56
48
  }
57
-
58
49
  next() {
59
50
  let newVal;
60
51
  const idx = ++this.idx;
61
-
62
52
  if (idx < this.prefixSize) {
63
53
  newVal = this.l.prefix[this.prefixSize - idx - 1];
64
54
  } else if (idx < this.middleSize) {
@@ -69,38 +59,31 @@ export class ForwardVectorIterator extends VectorIterator {
69
59
  } else {
70
60
  this.result.done = true;
71
61
  }
72
-
73
62
  this.result.value = newVal;
74
63
  return this.result;
75
64
  }
76
-
77
65
  }
78
66
  /**
79
67
  * @internal
80
68
  */
81
-
82
69
  export class BackwardVectorIterator extends VectorIterator {
83
70
  constructor(l) {
84
71
  super(l, -1);
85
72
  }
86
-
87
73
  prevInTree() {
88
- for (var i = 0; this.indices[i] === 0; ++i) {//
74
+ for (var i = 0; this.indices[i] === 0; ++i) {
75
+ //
89
76
  }
90
-
91
77
  --this.indices[i];
92
-
93
78
  for (; 0 < i; --i) {
94
79
  const n = this.stack[i][this.indices[i]].array;
95
80
  this.stack[i - 1] = n;
96
81
  this.indices[i - 1] = n.length - 1;
97
82
  }
98
83
  }
99
-
100
84
  next() {
101
85
  let newVal;
102
86
  const idx = --this.idx;
103
-
104
87
  if (this.middleSize <= idx) {
105
88
  newVal = this.l.suffix[idx - this.middleSize];
106
89
  } else if (this.prefixSize <= idx) {
@@ -111,76 +94,59 @@ export class BackwardVectorIterator extends VectorIterator {
111
94
  } else {
112
95
  this.result.done = true;
113
96
  }
114
-
115
97
  this.result.value = newVal;
116
98
  return this.result;
117
99
  }
118
-
119
100
  }
120
101
  /**
121
102
  * @internal
122
103
  */
123
-
124
104
  const branchingFactor = 32;
125
105
  /**
126
106
  * @internal
127
107
  */
128
-
129
108
  export const branchBits = 5;
130
109
  /**
131
110
  * @internal
132
111
  */
133
-
134
112
  export const mask = 31;
135
113
  /** @internal */
136
-
137
114
  export class Node {
138
115
  constructor(sizes, array) {
139
116
  this.sizes = sizes;
140
117
  this.array = array;
141
118
  }
142
-
143
119
  }
144
120
  /**
145
121
  * @internal
146
122
  */
147
-
148
123
  function elementEquals(a, b) {
149
124
  return a === b;
150
125
  }
151
126
  /**
152
127
  * @internal
153
128
  */
154
-
155
-
156
129
  function createPath(depth, value) {
157
130
  let current = value;
158
-
159
131
  for (let i = 0; i < depth; ++i) {
160
132
  current = new Node(undefined, [current]);
161
133
  }
162
-
163
134
  return current;
164
- } // Array Helpers
165
-
135
+ }
136
+ // Array Helpers
166
137
  /**
167
138
  * @internal
168
139
  */
169
-
170
-
171
140
  export function copyArray(source) {
172
141
  const array = [];
173
-
174
142
  for (let i = 0; i < source.length; ++i) {
175
143
  array[i] = source[i];
176
144
  }
177
-
178
145
  return array;
179
146
  }
180
147
  /**
181
148
  * @internal
182
149
  */
183
-
184
150
  function pushElements(source, target, offset, amount) {
185
151
  for (let i = offset; i < offset + amount; ++i) {
186
152
  target.push(source[i]);
@@ -189,8 +155,6 @@ function pushElements(source, target, offset, amount) {
189
155
  /**
190
156
  * @internal
191
157
  */
192
-
193
-
194
158
  function copyIndices(source, sourceStart, target, targetStart, length) {
195
159
  for (let i = 0; i < length; ++i) {
196
160
  target[targetStart + i] = source[sourceStart + i];
@@ -199,44 +163,34 @@ function copyIndices(source, sourceStart, target, targetStart, length) {
199
163
  /**
200
164
  * @internal
201
165
  */
202
-
203
-
204
166
  function arrayPrepend(value, array) {
205
167
  const newLength = array.length + 1;
206
168
  const result = new Array(newLength);
207
169
  result[0] = value;
208
-
209
170
  for (let i = 1; i < newLength; ++i) {
210
171
  result[i] = array[i - 1];
211
172
  }
212
-
213
173
  return result;
214
174
  }
215
175
  /**
216
176
  * Create a reverse _copy_ of an array.
217
177
  * @internal
218
178
  */
219
-
220
-
221
179
  export function reverseArray(array) {
222
180
  return array.slice().reverse();
223
181
  }
224
182
  /**
225
183
  * @internal
226
184
  */
227
-
228
185
  function arrayFirst(array) {
229
186
  return array[0];
230
187
  }
231
188
  /**
232
189
  * @internal
233
190
  */
234
-
235
-
236
191
  function arrayLast(array) {
237
192
  return array[array.length - 1];
238
193
  }
239
-
240
194
  const pathResult = {
241
195
  path: 0,
242
196
  index: 0,
@@ -245,27 +199,21 @@ const pathResult = {
245
199
  /**
246
200
  * @internal
247
201
  */
248
-
249
202
  function getPath(index, offset, depth, sizes) {
250
203
  let i = index;
251
-
252
204
  if (sizes === undefined && offset !== 0) {
253
205
  pathResult.updatedOffset = 0;
254
206
  i = handleOffset(depth, offset, i);
255
207
  }
256
-
257
208
  let path = i >> depth * branchBits & mask;
258
-
259
209
  if (sizes !== undefined) {
260
210
  while (sizes[path] <= i) {
261
211
  path++;
262
212
  }
263
-
264
213
  const traversed = path === 0 ? 0 : sizes[path - 1];
265
214
  i -= traversed;
266
215
  pathResult.updatedOffset = offset;
267
216
  }
268
-
269
217
  pathResult.path = path;
270
218
  pathResult.index = i;
271
219
  return pathResult;
@@ -273,8 +221,6 @@ function getPath(index, offset, depth, sizes) {
273
221
  /**
274
222
  * @internal
275
223
  */
276
-
277
-
278
224
  export function updateNode(node, depth, index, offset, value) {
279
225
  const {
280
226
  path,
@@ -288,102 +234,87 @@ export function updateNode(node, depth, index, offset, value) {
288
234
  /**
289
235
  * @internal
290
236
  */
291
-
292
237
  function cloneNode({
293
238
  sizes,
294
239
  array
295
240
  }) {
296
241
  return new Node(sizes === undefined ? undefined : copyArray(sizes), copyArray(array));
297
- } // This array should not be mutated. Thus a dummy element is placed in
242
+ }
243
+ // This array should not be mutated. Thus a dummy element is placed in
298
244
  // it. Thus the affix will not be owned and thus not mutated.
299
-
300
245
  /**
301
246
  * @internal
302
247
  */
303
-
304
-
305
- export const emptyAffix = [0]; // We store a bit field in Vector. From right to left, the first five
248
+ export const emptyAffix = [0];
249
+ // We store a bit field in Vector. From right to left, the first five
306
250
  // bits are suffix length, the next five are prefix length and the
307
251
  // rest is depth. The functions below are for working with the bits in
308
252
  // a sane way.
309
-
310
253
  /**
311
254
  * @internal
312
255
  */
313
-
314
256
  const affixBits = 6;
315
257
  /**
316
258
  * @internal
317
259
  */
318
-
319
260
  const affixMask = 0b111111;
320
261
  /**
321
262
  * @internal
322
263
  */
323
-
324
264
  export function getSuffixSize(l) {
325
265
  return l.bits & affixMask;
326
266
  }
327
267
  /**
328
268
  * @internal
329
269
  */
330
-
331
270
  export function getPrefixSize(l) {
332
271
  return l.bits >> affixBits & affixMask;
333
272
  }
334
273
  /**
335
274
  * @internal
336
275
  */
337
-
338
276
  export function getDepth(l) {
339
277
  return l.bits >> affixBits * 2;
340
278
  }
341
279
  /**
342
280
  * @internal
343
281
  */
344
-
345
282
  export function setPrefix(size, bits) {
346
283
  return size << affixBits | bits & ~(affixMask << affixBits);
347
284
  }
348
285
  /**
349
286
  * @internal
350
287
  */
351
-
352
288
  export function setSuffix(size, bits) {
353
289
  return size | bits & ~affixMask;
354
290
  }
355
291
  /**
356
292
  * @internal
357
293
  */
358
-
359
294
  export function setDepth(depth, bits) {
360
295
  return depth << affixBits * 2 | bits & (affixMask | affixMask << affixBits);
361
296
  }
362
297
  /**
363
298
  * @internal
364
299
  */
365
-
366
300
  export function incrementPrefix(bits) {
367
301
  return bits + (1 << affixBits);
368
302
  }
369
303
  /**
370
304
  * @internal
371
305
  */
372
-
373
306
  export function incrementSuffix(bits) {
374
307
  return bits + 1;
375
308
  }
376
309
  /**
377
310
  * @internal
378
311
  */
379
-
380
312
  export function incrementDepth(bits) {
381
313
  return bits + (1 << affixBits * 2);
382
314
  }
383
315
  /**
384
316
  * @internal
385
317
  */
386
-
387
318
  export function decrementDepth(bits) {
388
319
  return bits - (1 << affixBits * 2);
389
320
  }
@@ -392,11 +323,9 @@ export function decrementDepth(bits) {
392
323
  *
393
324
  * @tsplus pipeable fncts.MutableVector push
394
325
  */
395
-
396
326
  export function push(value) {
397
327
  return l => {
398
328
  const suffixSize = getSuffixSize(l);
399
-
400
329
  if (l.length === 0) {
401
330
  l.bits = setPrefix(1, l.bits);
402
331
  l.prefix = [value];
@@ -414,11 +343,9 @@ export function push(value) {
414
343
  let depth = getDepth(l);
415
344
  l.suffix = [value];
416
345
  l.bits = setSuffix(1, l.bits);
417
-
418
346
  if (index - 1 < branchingFactor ** (depth + 1)) {
419
347
  for (; depth >= 0; --depth) {
420
348
  const path = index >> depth * branchBits & mask;
421
-
422
349
  if (path < current.array.length) {
423
350
  current = current.array[path];
424
351
  } else {
@@ -431,7 +358,6 @@ export function push(value) {
431
358
  l.root = new Node(undefined, [l.root, createPath(depth, newNode)]);
432
359
  }
433
360
  }
434
-
435
361
  l.length++;
436
362
  return l;
437
363
  };
@@ -439,52 +365,43 @@ export function push(value) {
439
365
  /**
440
366
  * @internal
441
367
  */
442
-
443
368
  export function nodeNthDense(node, depth, index) {
444
- let current = node; // eslint-disable-next-line no-param-reassign
445
-
369
+ let current = node;
370
+ // eslint-disable-next-line no-param-reassign
446
371
  for (; depth >= 0; --depth) {
447
372
  current = current.array[index >> depth * branchBits & mask];
448
373
  }
449
-
450
374
  return current;
451
375
  }
452
376
  /**
453
377
  * @internal
454
378
  */
455
-
456
379
  export function handleOffset(depth, offset, index) {
457
380
  let i = index;
458
- i += offset; // eslint-disable-next-line no-param-reassign
459
-
381
+ i += offset;
382
+ // eslint-disable-next-line no-param-reassign
460
383
  for (; depth >= 0; --depth) {
461
384
  i = index - (offset & mask << depth * branchBits);
462
-
463
385
  if ((index >> depth * branchBits & mask) !== 0) {
464
386
  break;
465
387
  }
466
388
  }
467
-
468
389
  return i;
469
390
  }
470
391
  /**
471
392
  * @internal
472
393
  */
473
-
474
394
  export function nodeNth(node, depth, offset, index) {
475
395
  let path;
476
396
  let current = node;
477
397
  let i = index;
478
398
  let ofs = offset;
479
399
  let dep = depth;
480
-
481
400
  while (current.sizes !== undefined) {
482
401
  path = i >> dep * branchBits & mask;
483
-
484
402
  while (current.sizes[path] <= i) {
485
403
  path++;
486
404
  }
487
-
488
405
  if (path !== 0) {
489
406
  i -= current.sizes[path - 1];
490
407
  ofs = 0; // Offset is discarded if the left spine isn't traversed
@@ -493,22 +410,18 @@ export function nodeNth(node, depth, offset, index) {
493
410
  dep--;
494
411
  current = current.array[path];
495
412
  }
496
-
497
413
  return nodeNthDense(current, dep, ofs === 0 ? i : handleOffset(dep, ofs, i));
498
414
  }
499
415
  /**
500
416
  * @internal
501
417
  */
502
-
503
418
  export function setSizes(node, height) {
504
419
  let sum = 0;
505
420
  const sizeTable = [];
506
-
507
421
  for (let i = 0; i < node.array.length; ++i) {
508
422
  sum += sizeOfSubtree(node.array[i], height - 1);
509
423
  sizeTable[i] = sum;
510
424
  }
511
-
512
425
  node.sizes = sizeTable;
513
426
  return node;
514
427
  }
@@ -517,7 +430,6 @@ export function setSizes(node, height) {
517
430
  *
518
431
  * @internal
519
432
  */
520
-
521
433
  function sizeOfSubtree(node, height) {
522
434
  if (height !== 0) {
523
435
  if (node.sizes !== undefined) {
@@ -530,13 +442,11 @@ function sizeOfSubtree(node, height) {
530
442
  } else {
531
443
  return node.array.length;
532
444
  }
533
- } // prepend & append
534
-
445
+ }
446
+ // prepend & append
535
447
  /**
536
448
  * @internal
537
449
  */
538
-
539
-
540
450
  export function affixPush(a, array, length) {
541
451
  if (array.length === length) {
542
452
  array.push(a);
@@ -554,27 +464,21 @@ export function affixPush(a, array, length) {
554
464
  *
555
465
  * @internal
556
466
  */
557
-
558
467
  function copyLeft(l, k) {
559
468
  let currentNode = cloneNode(l.root); // copy root
560
-
561
469
  l.root = currentNode; // install copy of root
562
-
563
470
  for (let i = 1; i < k; ++i) {
564
471
  const index = 0; // go left
565
-
566
472
  if (currentNode.sizes !== undefined) {
567
473
  for (let i = 0; i < currentNode.sizes.length; ++i) {
568
474
  currentNode.sizes[i] += 32;
569
475
  }
570
476
  }
571
-
572
- const newNode = cloneNode(currentNode.array[index]); // Install the copied node
573
-
477
+ const newNode = cloneNode(currentNode.array[index]);
478
+ // Install the copied node
574
479
  currentNode.array[index] = newNode;
575
480
  currentNode = newNode;
576
481
  }
577
-
578
482
  return currentNode;
579
483
  }
580
484
  /**
@@ -582,21 +486,16 @@ function copyLeft(l, k) {
582
486
  *
583
487
  * @internal
584
488
  */
585
-
586
-
587
489
  function nodePrepend(value, size, node) {
588
490
  const array = arrayPrepend(value, node.array);
589
491
  let sizes = undefined;
590
-
591
492
  if (node.sizes !== undefined) {
592
493
  sizes = new Array(node.sizes.length + 1);
593
494
  sizes[0] = size;
594
-
595
495
  for (let i = 0; i < node.sizes.length; ++i) {
596
496
  sizes[i + 1] = node.sizes[i] + size;
597
497
  }
598
498
  }
599
-
600
499
  return new Node(sizes, array);
601
500
  }
602
501
  /**
@@ -605,11 +504,8 @@ function nodePrepend(value, size, node) {
605
504
  *
606
505
  * @internal
607
506
  */
608
-
609
-
610
507
  function prependTopTree(l, depth, node) {
611
508
  let newOffset;
612
-
613
509
  if (l.root.array.length < branchingFactor) {
614
510
  // There is space in the root, there is never a size table in this
615
511
  // case
@@ -622,7 +518,6 @@ function prependTopTree(l, depth, node) {
622
518
  newOffset = depth === 0 ? 0 : 32 ** (depth + 1) - 32;
623
519
  l.root = new Node(sizes, [createPath(depth, node), l.root]);
624
520
  }
625
-
626
521
  return newOffset;
627
522
  }
628
523
  /**
@@ -631,8 +526,6 @@ function prependTopTree(l, depth, node) {
631
526
  *
632
527
  * @internal
633
528
  */
634
-
635
-
636
529
  export function prependNodeToTree(l, array) {
637
530
  if (l.root === undefined) {
638
531
  if (getSuffixSize(l) === 0) {
@@ -642,13 +535,11 @@ export function prependNodeToTree(l, array) {
642
535
  } else {
643
536
  l.root = new Node(undefined, array);
644
537
  }
645
-
646
538
  return l;
647
539
  } else {
648
540
  const node = new Node(undefined, array);
649
541
  const depth = getDepth(l);
650
542
  let newOffset = 0;
651
-
652
543
  if (l.root.sizes === undefined) {
653
544
  if (l.offset !== 0) {
654
545
  newOffset = l.offset - branchingFactor;
@@ -660,30 +551,24 @@ export function prependNodeToTree(l, array) {
660
551
  }
661
552
  } else {
662
553
  // represents how many nodes _with size-tables_ that we should copy.
663
- let copyableCount = 0; // go down while there is size tables
664
-
554
+ let copyableCount = 0;
555
+ // go down while there is size tables
665
556
  let nodesTraversed = 0;
666
557
  let currentNode = l.root;
667
-
668
558
  while (currentNode.sizes !== undefined && nodesTraversed < depth) {
669
559
  ++nodesTraversed;
670
-
671
560
  if (currentNode.array.length < 32) {
672
561
  // there is room if offset is > 0 or if the first node does not
673
562
  // contain as many nodes as it possibly can
674
563
  copyableCount = nodesTraversed;
675
564
  }
676
-
677
565
  currentNode = currentNode.array[0];
678
566
  }
679
-
680
567
  if (l.offset !== 0) {
681
568
  const copiedNode = copyLeft(l, nodesTraversed);
682
-
683
569
  for (let i = 0; i < copiedNode.sizes.length; ++i) {
684
570
  copiedNode.sizes[i] += branchingFactor;
685
571
  }
686
-
687
572
  copiedNode.array[0] = prependDense(copiedNode.array[0], depth - nodesTraversed, l.offset, node);
688
573
  l.offset = l.offset - branchingFactor;
689
574
  return l;
@@ -692,8 +577,8 @@ export function prependNodeToTree(l, array) {
692
577
  l.offset = prependTopTree(l, depth, node);
693
578
  } else {
694
579
  let parent;
695
- let prependableNode; // Copy the part of the path with size tables
696
-
580
+ let prependableNode;
581
+ // Copy the part of the path with size tables
697
582
  if (copyableCount > 1) {
698
583
  parent = copyLeft(l, copyableCount - 1);
699
584
  prependableNode = parent.array[0];
@@ -701,23 +586,19 @@ export function prependNodeToTree(l, array) {
701
586
  parent = undefined;
702
587
  prependableNode = l.root;
703
588
  }
704
-
705
- const path = createPath(depth - copyableCount, node); // add offset
706
-
589
+ const path = createPath(depth - copyableCount, node);
590
+ // add offset
707
591
  l.offset = 32 ** (depth - copyableCount + 1) - 32;
708
592
  const prepended = nodePrepend(path, 32, prependableNode);
709
-
710
593
  if (parent === undefined) {
711
594
  l.root = prepended;
712
595
  } else {
713
596
  parent.array[0] = prepended;
714
597
  }
715
598
  }
716
-
717
599
  return l;
718
600
  }
719
601
  }
720
-
721
602
  l.offset = newOffset;
722
603
  return l;
723
604
  }
@@ -727,12 +608,10 @@ export function prependNodeToTree(l, array) {
727
608
  *
728
609
  * @internal
729
610
  */
730
-
731
611
  function prependDense(node, depth, offset, value) {
732
612
  // We're indexing down `offset - 1`. At each step `path` is either 0 or -1.
733
613
  const curOffset = offset >> depth * branchBits & mask;
734
614
  const path = (offset - 1 >> depth * branchBits & mask) - curOffset;
735
-
736
615
  if (path < 0) {
737
616
  return new Node(undefined, arrayPrepend(createPath(depth - 1, value), node.array));
738
617
  } else {
@@ -747,8 +626,6 @@ function prependDense(node, depth, offset, value) {
747
626
  *
748
627
  * @internal
749
628
  */
750
-
751
-
752
629
  export function appendNodeToTree(l, array) {
753
630
  if (l.root === undefined) {
754
631
  // The old Vector has no content in tree, all content is in affixes
@@ -758,26 +635,20 @@ export function appendNodeToTree(l, array) {
758
635
  } else {
759
636
  l.root = new Node(undefined, array);
760
637
  }
761
-
762
638
  return l;
763
639
  }
764
-
765
640
  const depth = getDepth(l);
766
641
  let index = handleOffset(depth, l.offset, l.length - 1 - getPrefixSize(l));
767
642
  let nodesToCopy = 0;
768
643
  let nodesVisited = 0;
769
644
  let shift = depth * 5;
770
645
  let currentNode = l.root;
771
-
772
646
  if (32 ** (depth + 1) < index) {
773
647
  shift = 0; // there is no room
774
-
775
648
  nodesVisited = depth;
776
649
  }
777
-
778
650
  while (shift > 5) {
779
651
  let childIndex;
780
-
781
652
  if (currentNode.sizes === undefined) {
782
653
  // does not have size table
783
654
  childIndex = index >> shift & mask;
@@ -786,17 +657,13 @@ export function appendNodeToTree(l, array) {
786
657
  childIndex = currentNode.array.length - 1;
787
658
  index -= currentNode.sizes[childIndex - 1];
788
659
  }
789
-
790
660
  nodesVisited++;
791
-
792
661
  if (childIndex < mask) {
793
662
  // we are not going down the far right path, this implies that
794
663
  // there is still room in the current node
795
664
  nodesToCopy = nodesVisited;
796
665
  }
797
-
798
666
  currentNode = currentNode.array[childIndex];
799
-
800
667
  if (currentNode === undefined) {
801
668
  // This will only happened in a pvec subtree. The index does not
802
669
  // exist so we'll have to create a new path from here on.
@@ -806,18 +673,14 @@ export function appendNodeToTree(l, array) {
806
673
 
807
674
  shift -= 5;
808
675
  }
809
-
810
676
  if (shift !== 0) {
811
677
  nodesVisited++;
812
-
813
678
  if (currentNode.array.length < branchingFactor) {
814
679
  // there is room in the found node
815
680
  nodesToCopy = nodesVisited;
816
681
  }
817
682
  }
818
-
819
683
  const node = new Node(undefined, array);
820
-
821
684
  if (nodesToCopy === 0) {
822
685
  // there was no room in the found node
823
686
  const newPath = nodesVisited === 0 ? node : createPath(nodesVisited, node);
@@ -828,7 +691,6 @@ export function appendNodeToTree(l, array) {
828
691
  const copiedNode = copyFirstK(l, nodesToCopy, array.length);
829
692
  copiedNode.array.push(createPath(depth - nodesToCopy, node));
830
693
  }
831
-
832
694
  return l;
833
695
  }
834
696
  /**
@@ -836,51 +698,38 @@ export function appendNodeToTree(l, array) {
836
698
  *
837
699
  * @internal
838
700
  */
839
-
840
701
  function copyFirstK(newVector, k, leafSize) {
841
702
  let currentNode = cloneNode(newVector.root); // copy root
842
-
843
703
  newVector.root = currentNode; // install root
844
-
845
704
  for (let i = 1; i < k; ++i) {
846
705
  const index = currentNode.array.length - 1;
847
-
848
706
  if (currentNode.sizes !== undefined) {
849
707
  currentNode.sizes[index] += leafSize;
850
708
  }
851
-
852
- const newNode = cloneNode(currentNode.array[index]); // Install the copied node
853
-
709
+ const newNode = cloneNode(currentNode.array[index]);
710
+ // Install the copied node
854
711
  currentNode.array[index] = newNode;
855
712
  currentNode = newNode;
856
713
  }
857
-
858
714
  if (currentNode.sizes !== undefined) {
859
715
  currentNode.sizes.push(arrayLast(currentNode.sizes) + leafSize);
860
716
  }
861
-
862
717
  return currentNode;
863
718
  }
864
-
865
719
  const eMax = 2;
866
720
  /**
867
721
  * @internal
868
722
  */
869
-
870
723
  function createConcatPlan(array) {
871
724
  const sizes = [];
872
725
  let sum = 0;
873
-
874
726
  for (let i = 0; i < array.length; ++i) {
875
727
  sum += array[i].array.length; // FIXME: maybe only access array once
876
-
877
728
  sizes[i] = array[i].array.length;
878
729
  }
879
-
880
730
  const optimalLength = Math.ceil(sum / branchingFactor);
881
731
  let n = array.length;
882
732
  let i = 0;
883
-
884
733
  if (optimalLength + eMax >= n) {
885
734
  return undefined; // no rebalancing needed
886
735
  }
@@ -889,27 +738,22 @@ function createConcatPlan(array) {
889
738
  while (sizes[i] > branchingFactor - eMax / 2) {
890
739
  // Skip nodes that are already sufficiently balanced
891
740
  ++i;
892
- } // the node at this index is too short
893
-
894
-
741
+ }
742
+ // the node at this index is too short
895
743
  let remaining = sizes[i]; // number of elements to re-distribute
896
-
897
744
  do {
898
745
  const size = Math.min(remaining + sizes[i + 1], branchingFactor);
899
746
  sizes[i] = size;
900
747
  remaining = remaining - (size - sizes[i + 1]);
901
748
  ++i;
902
- } while (remaining > 0); // Shift nodes after
903
-
904
-
749
+ } while (remaining > 0);
750
+ // Shift nodes after
905
751
  for (let j = i; j <= n - 1; ++j) {
906
752
  sizes[j] = sizes[j + 1];
907
753
  }
908
-
909
754
  --i;
910
755
  --n;
911
756
  }
912
-
913
757
  sizes.length = n;
914
758
  return sizes;
915
759
  }
@@ -920,55 +764,42 @@ function createConcatPlan(array) {
920
764
  *
921
765
  * @internal
922
766
  */
923
-
924
-
925
767
  function concatNodeMerge(left, center, right) {
926
768
  const array = [];
927
-
928
769
  if (left !== undefined) {
929
770
  for (let i = 0; i < left.array.length - 1; ++i) {
930
771
  array.push(left.array[i]);
931
772
  }
932
773
  }
933
-
934
774
  for (let i = 0; i < center.array.length; ++i) {
935
775
  array.push(center.array[i]);
936
776
  }
937
-
938
777
  if (right !== undefined) {
939
778
  for (let i = 1; i < right.array.length; ++i) {
940
779
  array.push(right.array[i]);
941
780
  }
942
781
  }
943
-
944
782
  return array;
945
783
  }
946
784
  /**
947
785
  * @internal
948
786
  */
949
-
950
-
951
787
  function executeConcatPlan(merged, plan, height) {
952
788
  const result = [];
953
789
  let sourceIdx = 0; // the current node we're copying from
954
-
955
790
  let offset = 0; // elements in source already used
956
-
957
791
  for (let toMove of plan) {
958
792
  let source = merged[sourceIdx].array;
959
-
960
793
  if (toMove === source.length && offset === 0) {
961
794
  // source matches target exactly, reuse source
962
795
  result.push(merged[sourceIdx]);
963
796
  ++sourceIdx;
964
797
  } else {
965
798
  const node = new Node(undefined, []);
966
-
967
799
  while (toMove > 0) {
968
800
  const available = source.length - offset;
969
801
  const itemsToCopy = Math.min(toMove, available);
970
802
  pushElements(source, node.array, offset, itemsToCopy);
971
-
972
803
  if (toMove >= available) {
973
804
  ++sourceIdx;
974
805
  source = merged[sourceIdx].array;
@@ -976,19 +807,15 @@ function executeConcatPlan(merged, plan, height) {
976
807
  } else {
977
808
  offset += itemsToCopy;
978
809
  }
979
-
980
810
  toMove -= itemsToCopy;
981
811
  }
982
-
983
812
  if (height > 1) {
984
813
  // Set sizes on children unless they are leaf nodes
985
814
  setSizes(node, height - 1);
986
815
  }
987
-
988
816
  result.push(node);
989
817
  }
990
818
  }
991
-
992
819
  return result;
993
820
  }
994
821
  /**
@@ -998,13 +825,10 @@ function executeConcatPlan(merged, plan, height) {
998
825
  *
999
826
  * @internal
1000
827
  */
1001
-
1002
-
1003
828
  function rebalance(left, center, right, height, top) {
1004
829
  const merged = concatNodeMerge(left, center, right);
1005
830
  const plan = createConcatPlan(merged);
1006
831
  const balanced = plan !== undefined ? executeConcatPlan(merged, plan, height) : merged;
1007
-
1008
832
  if (balanced.length <= branchingFactor) {
1009
833
  if (top === true) {
1010
834
  return new Node(undefined, balanced);
@@ -1020,8 +844,6 @@ function rebalance(left, center, right, height, top) {
1020
844
  /**
1021
845
  * @internal
1022
846
  */
1023
-
1024
-
1025
847
  export function concatSubTree(left, lDepth, right, rDepth, isTop) {
1026
848
  if (lDepth > rDepth) {
1027
849
  const c = concatSubTree(arrayLast(left.array), lDepth - 1, right, rDepth, false);
@@ -1039,12 +861,10 @@ export function concatSubTree(left, lDepth, right, rDepth, isTop) {
1039
861
  /**
1040
862
  * @internal
1041
863
  */
1042
-
1043
864
  export const concatBuffer = /*#__PURE__*/new Array(3);
1044
865
  /**
1045
866
  * @internal
1046
867
  */
1047
-
1048
868
  export function concatAffixes(left, right) {
1049
869
  // TODO: Try and find a neat way to reduce the LOC here
1050
870
  let nr = 0;
@@ -1052,41 +872,32 @@ export function concatAffixes(left, right) {
1052
872
  let i = 0;
1053
873
  let length = getSuffixSize(left);
1054
874
  concatBuffer[nr] = [];
1055
-
1056
875
  for (i = 0; i < length; ++i) {
1057
876
  concatBuffer[nr][arrIdx++] = left.suffix[i];
1058
877
  }
1059
-
1060
878
  length = getPrefixSize(right);
1061
-
1062
879
  for (i = 0; i < length; ++i) {
1063
880
  if (arrIdx === 32) {
1064
881
  arrIdx = 0;
1065
882
  ++nr;
1066
883
  concatBuffer[nr] = [];
1067
884
  }
1068
-
1069
885
  concatBuffer[nr][arrIdx++] = right.prefix[length - 1 - i];
1070
886
  }
1071
-
1072
887
  length = getSuffixSize(right);
1073
-
1074
888
  for (i = 0; i < length; ++i) {
1075
889
  if (arrIdx === 32) {
1076
890
  arrIdx = 0;
1077
891
  ++nr;
1078
892
  concatBuffer[nr] = [];
1079
893
  }
1080
-
1081
894
  concatBuffer[nr][arrIdx++] = right.suffix[i];
1082
895
  }
1083
-
1084
896
  return nr;
1085
897
  }
1086
898
  /**
1087
899
  * @internal
1088
900
  */
1089
-
1090
901
  export function getHeight(node) {
1091
902
  if (node.array[0] instanceof Node) {
1092
903
  return 1 + getHeight(node.array[0]);
@@ -1097,28 +908,22 @@ export function getHeight(node) {
1097
908
  /**
1098
909
  * @internal
1099
910
  */
1100
-
1101
- export let newAffix; // function getBitsForDepth(n: number, depth: number): number {
911
+ export let newAffix;
912
+ // function getBitsForDepth(n: number, depth: number): number {
1102
913
  // return n & ~(~0 << ((depth + 1) * branchBits));
1103
914
  // }
1104
-
1105
915
  function sliceNode(node, index, depth, pathLeft, pathRight, childLeft, childRight) {
1106
916
  const array = node.array.slice(pathLeft, pathRight + 1);
1107
-
1108
917
  if (childLeft !== undefined) {
1109
918
  array[0] = childLeft;
1110
919
  }
1111
-
1112
920
  if (childRight !== undefined) {
1113
921
  array[array.length - 1] = childRight;
1114
922
  }
1115
-
1116
923
  let sizes = node.sizes;
1117
-
1118
924
  if (sizes !== undefined) {
1119
925
  sizes = sizes.slice(pathLeft, pathRight + 1);
1120
926
  let slicedOffLeft = pathLeft !== 0 ? node.sizes[pathLeft - 1] : 0;
1121
-
1122
927
  if (childLeft !== undefined) {
1123
928
  // If the left child has been sliced into a new child we need to know
1124
929
  // how many elements have been removed from the child.
@@ -1137,24 +942,19 @@ function sliceNode(node, index, depth, pathLeft, pathRight, childLeft, childRigh
1137
942
  slicedOffLeft += (index - slicedOffLeft & ~0b011111) + 32;
1138
943
  }
1139
944
  }
1140
-
1141
945
  for (let i = 0; i < sizes.length; ++i) {
1142
946
  sizes[i] -= slicedOffLeft;
1143
947
  }
1144
-
1145
948
  if (childRight !== undefined) {
1146
949
  const slicedOffRight = sizeOfSubtree(node.array[pathRight], depth - 1) - sizeOfSubtree(childRight, depth - 1);
1147
950
  sizes[sizes.length - 1] -= slicedOffRight;
1148
951
  }
1149
952
  }
1150
-
1151
953
  return new Node(sizes, array);
1152
954
  }
1153
955
  /**
1154
956
  * @internal
1155
957
  */
1156
-
1157
-
1158
958
  export let newOffset = 0;
1159
959
  export function sliceLeft(tree, depth, index, offset, top) {
1160
960
  let {
@@ -1162,80 +962,65 @@ export function sliceLeft(tree, depth, index, offset, top) {
1162
962
  path,
1163
963
  updatedOffset
1164
964
  } = getPath(index, offset, depth, tree.sizes);
1165
-
1166
965
  if (depth === 0) {
1167
- newAffix = tree.array.slice(path).reverse(); // This leaf node is moved up as a suffix so there is nothing here
966
+ newAffix = tree.array.slice(path).reverse();
967
+ // This leaf node is moved up as a suffix so there is nothing here
1168
968
  // after slicing
1169
-
1170
969
  return undefined;
1171
970
  } else {
1172
971
  const child = sliceLeft(tree.array[path], depth - 1, newIndex, updatedOffset, false);
1173
-
1174
972
  if (child === undefined) {
1175
973
  // There is nothing in the child after slicing so we don't include it
1176
974
  ++path;
1177
-
1178
975
  if (path === tree.array.length) {
1179
976
  return undefined;
1180
977
  }
1181
- } // If we've sliced something away and it's not a the root, update offset
1182
-
1183
-
978
+ }
979
+ // If we've sliced something away and it's not a the root, update offset
1184
980
  if (tree.sizes === undefined && top === false) {
1185
981
  newOffset |= 32 - (tree.array.length - path) << depth * branchBits;
1186
982
  }
1187
-
1188
983
  return sliceNode(tree, index, depth, path, tree.array.length - 1, child, undefined);
1189
984
  }
1190
985
  }
1191
986
  /** Slice elements off of a tree from the right */
1192
-
1193
987
  export function sliceRight(node, depth, index, offset) {
1194
988
  let {
1195
989
  index: newIndex,
1196
990
  path
1197
991
  } = getPath(index, offset, depth, node.sizes);
1198
-
1199
992
  if (depth === 0) {
1200
- newAffix = node.array.slice(0, path + 1); // this leaf node is moved up as a suffix so there is nothing here
993
+ newAffix = node.array.slice(0, path + 1);
994
+ // this leaf node is moved up as a suffix so there is nothing here
1201
995
  // after slicing
1202
-
1203
996
  return undefined;
1204
997
  } else {
1205
998
  // slice the child, note that we subtract 1 then the radix lookup
1206
999
  // algorithm can find the last element that we want to include
1207
1000
  // and sliceRight will do a slice that is inclusive on the index.
1208
1001
  const child = sliceRight(node.array[path], depth - 1, newIndex, path === 0 ? offset : 0);
1209
-
1210
1002
  if (child === undefined) {
1211
1003
  // there is nothing in the child after slicing so we don't include it
1212
1004
  --path;
1213
-
1214
1005
  if (path === -1) {
1215
1006
  return undefined;
1216
1007
  }
1217
- } // note that we add 1 to the path since we want the slice to be
1008
+ }
1009
+ // note that we add 1 to the path since we want the slice to be
1218
1010
  // inclusive on the end index. Only at the leaf level do we want
1219
1011
  // to do an exclusive slice.
1220
-
1221
-
1222
1012
  const array = node.array.slice(0, path + 1);
1223
-
1224
1013
  if (child !== undefined) {
1225
1014
  array[array.length - 1] = child;
1226
1015
  }
1227
-
1228
1016
  let sizes = node.sizes;
1229
-
1230
1017
  if (sizes !== undefined) {
1231
1018
  sizes = sizes.slice(0, path + 1);
1232
-
1233
1019
  if (child !== undefined) {
1234
1020
  const slicedOff = sizeOfSubtree(node.array[path], depth - 1) - sizeOfSubtree(child, depth - 1);
1235
1021
  sizes[sizes.length - 1] -= slicedOff;
1236
1022
  }
1237
1023
  }
1238
-
1239
1024
  return new Node(sizes, array);
1240
1025
  }
1241
1026
  }
@@ -1249,7 +1034,6 @@ export function sliceTreeVector(from, to, tree, depth, offset, l) {
1249
1034
  index: newTo,
1250
1035
  path: pathRight
1251
1036
  } = getPath(to, offset, depth, sizes);
1252
-
1253
1037
  if (depth === 0) {
1254
1038
  // we are slicing a piece off a leaf node
1255
1039
  l.prefix = emptyAffix;
@@ -1266,21 +1050,17 @@ export function sliceTreeVector(from, to, tree, depth, offset, l) {
1266
1050
  const childRight = sliceRight(tree.array[pathRight], depth - 1, newTo, 0);
1267
1051
  l.bits = setSuffix(newAffix.length, l.bits);
1268
1052
  l.suffix = newAffix;
1269
-
1270
1053
  if (childRight === undefined) {
1271
1054
  --pathRight;
1272
1055
  }
1273
-
1274
1056
  newOffset = 0;
1275
1057
  const childLeft = sliceLeft(tree.array[pathLeft], depth - 1, newFrom, pathLeft === 0 ? offset : 0, pathLeft === pathRight);
1276
1058
  l.offset = newOffset;
1277
1059
  l.bits = setPrefix(newAffix.length, l.bits);
1278
1060
  l.prefix = newAffix;
1279
-
1280
1061
  if (childLeft === undefined) {
1281
1062
  ++pathLeft;
1282
1063
  }
1283
-
1284
1064
  if (pathLeft >= pathRight) {
1285
1065
  if (pathLeft > pathRight) {
1286
1066
  // This only happens when `pathLeft` originally was equal to
@@ -1297,54 +1077,44 @@ export function sliceTreeVector(from, to, tree, depth, offset, l) {
1297
1077
  } else {
1298
1078
  l.root = sliceNode(tree, from, depth, pathLeft, pathRight, childLeft, childRight);
1299
1079
  }
1300
-
1301
1080
  return l;
1302
1081
  }
1303
1082
  }
1304
1083
  /**
1305
1084
  * @internal
1306
1085
  */
1307
-
1308
1086
  export function zeroOffset() {
1309
1087
  newOffset = 0;
1310
1088
  }
1311
-
1312
1089
  function foldLeftArrayCb(cb, state, array, from, to, offset) {
1313
- for (var i = from; i < to && cb(array[i], state, i + offset); ++i) {//
1090
+ for (var i = from; i < to && cb(array[i], state, i + offset); ++i) {
1091
+ //
1314
1092
  }
1315
-
1316
1093
  return [i === to, i + offset + 1];
1317
1094
  }
1318
-
1319
1095
  function foldRightArrayCb(cb, state, array, from, to, offset) {
1320
1096
  // eslint-disable-next-line no-param-reassign
1321
- for (var i = from - 1; to <= i && cb(array[i], state, offset); --i, offset--) {//
1097
+ for (var i = from - 1; to <= i && cb(array[i], state, offset); --i, offset--) {
1098
+ //
1322
1099
  }
1323
-
1324
1100
  return [i === to - 1, offset];
1325
1101
  }
1326
-
1327
1102
  function foldLeftNodeCb(cb, state, node, depth, offset) {
1328
1103
  const {
1329
1104
  array
1330
1105
  } = node;
1331
-
1332
1106
  if (depth === 0) {
1333
1107
  return foldLeftArrayCb(cb, state, array, 0, array.length, offset);
1334
1108
  }
1335
-
1336
1109
  const to = array.length;
1337
1110
  let j = offset;
1338
1111
  let cont;
1339
-
1340
1112
  for (let i = 0; i < to; ++i) {
1341
1113
  [cont, j] = foldLeftNodeCb(cb, state, array[i], depth - 1, j);
1342
-
1343
1114
  if (!cont) {
1344
1115
  return [false, j];
1345
1116
  }
1346
1117
  }
1347
-
1348
1118
  return [true, j];
1349
1119
  }
1350
1120
  /**
@@ -1354,75 +1124,57 @@ function foldLeftNodeCb(cb, state, node, depth, offset) {
1354
1124
  * to continue the fold. `true` indicates that the folding should
1355
1125
  * continue.
1356
1126
  */
1357
-
1358
-
1359
1127
  export function foldLeftCb(cb, state, l) {
1360
1128
  const prefixSize = getPrefixSize(l);
1361
1129
  let i = prefixSize - 1;
1362
1130
  let cont = true;
1363
1131
  [cont, i] = foldRightArrayCb(cb, state, l.prefix, prefixSize, 0, i);
1364
-
1365
1132
  if (!cont) {
1366
1133
  return state;
1367
1134
  }
1368
-
1369
1135
  i = prefixSize;
1370
-
1371
1136
  if (l.root !== undefined) {
1372
1137
  [cont, i] = foldLeftNodeCb(cb, state, l.root, getDepth(l), i);
1373
-
1374
1138
  if (!cont) {
1375
1139
  return state;
1376
1140
  }
1377
1141
  }
1378
-
1379
1142
  const suffixSize = getSuffixSize(l);
1380
1143
  foldLeftArrayCb(cb, state, l.suffix, 0, suffixSize, i);
1381
1144
  return state;
1382
1145
  }
1383
-
1384
1146
  function foldRightNodeCb(cb, state, node, depth, offset) {
1385
1147
  const {
1386
1148
  array
1387
1149
  } = node;
1388
-
1389
1150
  if (depth === 0) {
1390
1151
  return foldRightArrayCb(cb, state, array, array.length, 0, offset);
1391
1152
  }
1392
-
1393
1153
  let j = offset;
1394
1154
  let cont;
1395
-
1396
1155
  for (let i = array.length - 1; 0 <= i; --i) {
1397
1156
  [cont, j] = foldRightNodeCb(cb, state, array[i], depth - 1, j);
1398
-
1399
1157
  if (!cont) {
1400
1158
  return [false, j];
1401
1159
  }
1402
1160
  }
1403
-
1404
1161
  return [true, j];
1405
1162
  }
1406
-
1407
1163
  export function foldRightCb(cb, state, l) {
1408
1164
  const suffixSize = getSuffixSize(l);
1409
1165
  const prefixSize = getPrefixSize(l);
1410
1166
  let i = l.length - 1;
1411
1167
  let cont = true;
1412
1168
  [cont, i] = foldRightArrayCb(cb, state, l.suffix, suffixSize, 0, i);
1413
-
1414
1169
  if (!cont) {
1415
1170
  return state;
1416
1171
  }
1417
-
1418
1172
  if (l.root !== undefined) {
1419
1173
  [cont, i] = foldRightNodeCb(cb, state, l.root, getDepth(l), i);
1420
-
1421
1174
  if (!cont) {
1422
1175
  return state;
1423
1176
  }
1424
1177
  }
1425
-
1426
1178
  const prefix = l.prefix;
1427
1179
  foldLeftArrayCb(cb, state, l.prefix, prefix.length - prefixSize, prefix.length, prefix.length - 1);
1428
1180
  return state;
@@ -1430,11 +1182,9 @@ export function foldRightCb(cb, state, l) {
1430
1182
  export function foldLeftPrefix(f, b, array, length) {
1431
1183
  let acc = b;
1432
1184
  let j = 0;
1433
-
1434
1185
  for (let i = length - 1; 0 <= i; --i, j++) {
1435
1186
  acc = f(j, acc, array[i]);
1436
1187
  }
1437
-
1438
1188
  return [acc, j];
1439
1189
  }
1440
1190
  export function foldLeftNode(f, b, node, depth, offset) {
@@ -1443,35 +1193,28 @@ export function foldLeftNode(f, b, node, depth, offset) {
1443
1193
  } = node;
1444
1194
  let acc = b;
1445
1195
  let j = offset;
1446
-
1447
1196
  if (depth === 0) {
1448
1197
  return foldLeftSuffix(f, b, array, array.length, offset);
1449
1198
  }
1450
-
1451
1199
  for (let i = 0; i < array.length; ++i) {
1452
1200
  [acc, j] = foldLeftNode(f, acc, array[i], depth - 1, j);
1453
1201
  }
1454
-
1455
1202
  return [acc, j];
1456
1203
  }
1457
1204
  export function foldLeftSuffix(f, b, array, length, offset) {
1458
1205
  let acc = b;
1459
1206
  let j = offset;
1460
-
1461
1207
  for (let i = 0; i < length; ++i, j++) {
1462
1208
  acc = f(j, acc, array[i]);
1463
1209
  }
1464
-
1465
1210
  return [acc, j];
1466
1211
  }
1467
1212
  export function foldRightPrefix(f, b, array, length, offset) {
1468
1213
  let acc = b;
1469
1214
  let j = offset;
1470
-
1471
1215
  for (let i = 0; i < length; ++i, j--) {
1472
1216
  acc = f(j, array[i], acc);
1473
1217
  }
1474
-
1475
1218
  return [acc, j];
1476
1219
  }
1477
1220
  export function foldRightNode(f, b, node, depth, offset) {
@@ -1480,38 +1223,29 @@ export function foldRightNode(f, b, node, depth, offset) {
1480
1223
  } = node;
1481
1224
  let acc = b;
1482
1225
  let j = offset;
1483
-
1484
1226
  if (depth === 0) {
1485
1227
  return foldRightSuffix(f, b, array, array.length, offset);
1486
1228
  }
1487
-
1488
1229
  for (let i = array.length - 1; 0 <= i; --i) {
1489
1230
  [acc, j] = foldRightNode(f, acc, array[i], depth - 1, j);
1490
1231
  }
1491
-
1492
1232
  return [acc, j];
1493
1233
  }
1494
1234
  export function foldRightSuffix(f, b, array, length, offset) {
1495
1235
  let acc = b;
1496
1236
  let j = offset;
1497
-
1498
1237
  for (let i = length - 1; 0 <= i; --i, j--) {
1499
1238
  acc = f(j, array[i], acc);
1500
1239
  }
1501
-
1502
1240
  return [acc, j];
1503
1241
  }
1504
-
1505
1242
  function mapArray(f, array, offset) {
1506
1243
  const result = new Array(array.length);
1507
-
1508
1244
  for (let i = 0; i < array.length; ++i) {
1509
1245
  result[i] = f(offset + i, array[i]);
1510
1246
  }
1511
-
1512
1247
  return [result, offset + array.length];
1513
1248
  }
1514
-
1515
1249
  export function mapNode(f, node, depth, offset, adjust) {
1516
1250
  if (depth !== 0) {
1517
1251
  const {
@@ -1519,13 +1253,11 @@ export function mapNode(f, node, depth, offset, adjust) {
1519
1253
  } = node;
1520
1254
  let innerOffset = offset;
1521
1255
  const result = new Array(array.length);
1522
-
1523
1256
  for (let i = 0; i < array.length; ++i) {
1524
1257
  const [res, newOffset] = mapNode(f, array[i], depth - 1, innerOffset, adjust * 32);
1525
1258
  innerOffset = newOffset;
1526
1259
  result[i] = res;
1527
1260
  }
1528
-
1529
1261
  return [new Node(node.sizes, result), innerOffset];
1530
1262
  } else {
1531
1263
  const [res, newOffset] = mapArray(f, node.array, offset);
@@ -1534,21 +1266,17 @@ export function mapNode(f, node, depth, offset, adjust) {
1534
1266
  }
1535
1267
  export function mapPrefix(f, prefix, length) {
1536
1268
  const newPrefix = new Array(length);
1537
-
1538
1269
  for (let i = length - 1; 0 <= i; --i) {
1539
1270
  newPrefix[i] = f(length - 1 - i, prefix[i]);
1540
1271
  }
1541
-
1542
1272
  return newPrefix;
1543
1273
  }
1544
1274
  export function mapAffix(f, suffix, length, totalLength) {
1545
1275
  const priorLength = totalLength - length;
1546
1276
  const newSuffix = new Array(length);
1547
-
1548
1277
  for (let i = 0; i < length; ++i) {
1549
1278
  newSuffix[i] = f(priorLength + i, suffix[i]);
1550
1279
  }
1551
-
1552
1280
  return newSuffix;
1553
1281
  }
1554
1282
  export function arrayPush(array, a) {