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