@fncts/base 0.0.21 → 0.0.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1469) 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 +27 -226
  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 +20 -43
  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 +18 -92
  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 +4 -21
  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 +4 -19
  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 +4 -6
  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 +9 -34
  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 +5 -23
  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 +13 -84
  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 +13 -45
  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 +70 -412
  184. package/_cjs/data/Cause/api.cjs.map +1 -1
  185. package/_cjs/data/Cause/definition.cjs +46 -283
  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 +10 -50
  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/DecodeError/definition.cjs +1 -82
  207. package/_cjs/data/DecodeError/definition.cjs.map +1 -1
  208. package/_cjs/data/DecodeError.cjs +0 -4
  209. package/_cjs/data/DecodeError.cjs.map +1 -1
  210. package/_cjs/data/Decoder/api.cjs +424 -71
  211. package/_cjs/data/Decoder/api.cjs.map +1 -1
  212. package/_cjs/data/Decoder/definition.cjs +0 -6
  213. package/_cjs/data/Decoder/definition.cjs.map +1 -1
  214. package/_cjs/data/Decoder.cjs +0 -4
  215. package/_cjs/data/Decoder.cjs.map +1 -1
  216. package/_cjs/data/Duration/api.cjs +6 -24
  217. package/_cjs/data/Duration/api.cjs.map +1 -1
  218. package/_cjs/data/Duration/definition.cjs +3 -17
  219. package/_cjs/data/Duration/definition.cjs.map +1 -1
  220. package/_cjs/data/Duration.cjs +0 -4
  221. package/_cjs/data/Duration.cjs.map +1 -1
  222. package/_cjs/data/Either/api/align.cjs +0 -5
  223. package/_cjs/data/Either/api/align.cjs.map +1 -1
  224. package/_cjs/data/Either/api/alignWith.cjs +1 -13
  225. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  226. package/_cjs/data/Either/api.cjs +27 -155
  227. package/_cjs/data/Either/api.cjs.map +1 -1
  228. package/_cjs/data/Either/constructors.cjs +0 -19
  229. package/_cjs/data/Either/constructors.cjs.map +1 -1
  230. package/_cjs/data/Either/definition.cjs +4 -23
  231. package/_cjs/data/Either/definition.cjs.map +1 -1
  232. package/_cjs/data/Either/destructors.cjs +2 -9
  233. package/_cjs/data/Either/destructors.cjs.map +1 -1
  234. package/_cjs/data/Either/instances.cjs +14 -67
  235. package/_cjs/data/Either/instances.cjs.map +1 -1
  236. package/_cjs/data/Either.cjs +0 -10
  237. package/_cjs/data/Either.cjs.map +1 -1
  238. package/_cjs/data/EitherT/api.cjs +0 -24
  239. package/_cjs/data/EitherT/api.cjs.map +1 -1
  240. package/_cjs/data/EitherT/definition.cjs.map +1 -1
  241. package/_cjs/data/Encoder/api.cjs +226 -36
  242. package/_cjs/data/Encoder/api.cjs.map +1 -1
  243. package/_cjs/data/Encoder/definition.cjs +0 -4
  244. package/_cjs/data/Encoder/definition.cjs.map +1 -1
  245. package/_cjs/data/Encoder.cjs +0 -4
  246. package/_cjs/data/Encoder.cjs.map +1 -1
  247. package/_cjs/data/Environment/api.cjs +3 -33
  248. package/_cjs/data/Environment/api.cjs.map +1 -1
  249. package/_cjs/data/Environment/definition.cjs +5 -21
  250. package/_cjs/data/Environment/definition.cjs.map +1 -1
  251. package/_cjs/data/Environment.cjs +0 -4
  252. package/_cjs/data/Environment.cjs.map +1 -1
  253. package/_cjs/data/EnvironmentPatch.cjs +14 -80
  254. package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
  255. package/_cjs/{typeclass → data}/Eq/definition.cjs +2 -4
  256. package/_cjs/data/Eq/definition.cjs.map +1 -0
  257. package/_cjs/{typeclass → data}/Eq/derivations.cjs +9 -18
  258. package/_cjs/data/Eq/derivations.cjs.map +1 -0
  259. package/_cjs/{typeclass → data}/Eq.cjs +0 -2
  260. package/_cjs/data/Eq.cjs.map +1 -0
  261. package/_cjs/{typeclass → data}/Equatable/api.cjs +2 -10
  262. package/_cjs/data/Equatable/api.cjs.map +1 -0
  263. package/_cjs/{typeclass → data}/Equatable/definition.cjs +0 -6
  264. package/_cjs/data/Equatable/definition.cjs.map +1 -0
  265. package/_cjs/{typeclass → data}/Equatable/fast-equals.cjs +1 -83
  266. package/_cjs/data/Equatable/fast-equals.cjs.map +1 -0
  267. package/_cjs/{typeclass → data}/Equatable.cjs +0 -6
  268. package/_cjs/data/Equatable.cjs.map +1 -0
  269. package/_cjs/data/ExecutionStrategy.cjs +0 -9
  270. package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
  271. package/_cjs/data/Exit/api.cjs +43 -110
  272. package/_cjs/data/Exit/api.cjs.map +1 -1
  273. package/_cjs/data/Exit/constructors.cjs +0 -22
  274. package/_cjs/data/Exit/constructors.cjs.map +1 -1
  275. package/_cjs/data/Exit/definition.cjs +8 -48
  276. package/_cjs/data/Exit/definition.cjs.map +1 -1
  277. package/_cjs/data/Exit.cjs +0 -6
  278. package/_cjs/data/Exit.cjs.map +1 -1
  279. package/_cjs/data/FiberId/api.cjs +5 -21
  280. package/_cjs/data/FiberId/api.cjs.map +1 -1
  281. package/_cjs/data/FiberId/constructors.cjs +5 -19
  282. package/_cjs/data/FiberId/constructors.cjs.map +1 -1
  283. package/_cjs/data/FiberId/definition.cjs +7 -38
  284. package/_cjs/data/FiberId/definition.cjs.map +1 -1
  285. package/_cjs/data/FiberId.cjs +0 -6
  286. package/_cjs/data/FiberId.cjs.map +1 -1
  287. package/_cjs/data/Guard/api.cjs +419 -0
  288. package/_cjs/data/Guard/api.cjs.map +1 -0
  289. package/_cjs/{typeclass → data}/Guard/definition.cjs +0 -6
  290. package/_cjs/data/Guard/definition.cjs.map +1 -0
  291. package/_cjs/{typeclass → data}/Guard.cjs +0 -4
  292. package/_cjs/data/Guard.cjs.map +1 -0
  293. package/_cjs/{typeclass → data}/Hash.cjs +0 -2
  294. package/_cjs/data/Hash.cjs.map +1 -0
  295. package/_cjs/{typeclass → data}/HashEq.cjs +14 -25
  296. package/_cjs/data/HashEq.cjs.map +1 -0
  297. package/_cjs/{typeclass → data}/Hashable/definition.cjs +0 -6
  298. package/_cjs/data/Hashable/definition.cjs.map +1 -0
  299. package/_cjs/{typeclass → data}/Hashable/hash.cjs +3 -65
  300. package/_cjs/data/Hashable/hash.cjs.map +1 -0
  301. package/_cjs/{typeclass → data}/Hashable.cjs +0 -4
  302. package/_cjs/data/Hashable.cjs.map +1 -0
  303. package/_cjs/data/Identity/api.cjs +0 -17
  304. package/_cjs/data/Identity/api.cjs.map +1 -1
  305. package/_cjs/data/Identity/definition.cjs +0 -4
  306. package/_cjs/data/Identity/definition.cjs.map +1 -1
  307. package/_cjs/data/Identity/instances.cjs +4 -9
  308. package/_cjs/data/Identity/instances.cjs.map +1 -1
  309. package/_cjs/data/Identity.cjs +0 -6
  310. package/_cjs/data/Identity.cjs.map +1 -1
  311. package/_cjs/data/Interval.cjs +4 -35
  312. package/_cjs/data/Interval.cjs.map +1 -1
  313. package/_cjs/data/Intervals.cjs +10 -49
  314. package/_cjs/data/Intervals.cjs.map +1 -1
  315. package/_cjs/data/Maybe/api.cjs +19 -99
  316. package/_cjs/data/Maybe/api.cjs.map +1 -1
  317. package/_cjs/data/Maybe/constructors.cjs +0 -24
  318. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  319. package/_cjs/data/Maybe/definition.cjs +10 -51
  320. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  321. package/_cjs/data/Maybe/destructors.cjs +1 -4
  322. package/_cjs/data/Maybe/destructors.cjs.map +1 -1
  323. package/_cjs/data/Maybe/instances.cjs +40 -34
  324. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  325. package/_cjs/data/Maybe.cjs +0 -10
  326. package/_cjs/data/Maybe.cjs.map +1 -1
  327. package/_cjs/data/Newtype.cjs +0 -7
  328. package/_cjs/data/Newtype.cjs.map +1 -1
  329. package/_cjs/{typeclass → data}/Ord/api/contramap.cjs +2 -3
  330. package/_cjs/data/Ord/api/contramap.cjs.map +1 -0
  331. package/_cjs/{typeclass → data}/Ord/api/max.cjs +3 -4
  332. package/_cjs/data/Ord/api/max.cjs.map +1 -0
  333. package/_cjs/{typeclass → data}/Ord/api/min.cjs +3 -4
  334. package/_cjs/data/Ord/api/min.cjs.map +1 -0
  335. package/_cjs/{typeclass → data}/Ord/api.cjs +0 -6
  336. package/_cjs/data/Ord/api.cjs.map +1 -0
  337. package/_cjs/{typeclass → data}/Ord/definition.cjs +5 -12
  338. package/_cjs/data/Ord/definition.cjs.map +1 -0
  339. package/_cjs/{typeclass → data}/Ord/instances.cjs +13 -23
  340. package/_cjs/data/Ord/instances.cjs.map +1 -0
  341. package/_cjs/{typeclass → data}/Ord.cjs +0 -6
  342. package/_cjs/data/Ord.cjs.map +1 -0
  343. package/_cjs/{typeclass → data}/Ordering.cjs +0 -9
  344. package/_cjs/data/Ordering.cjs.map +1 -0
  345. package/_cjs/data/Predicate/api.cjs +0 -7
  346. package/_cjs/data/Predicate/api.cjs.map +1 -1
  347. package/_cjs/data/Predicate.cjs +0 -4
  348. package/_cjs/data/Predicate.cjs.map +1 -1
  349. package/_cjs/data/Refinement/api.cjs +0 -7
  350. package/_cjs/data/Refinement/api.cjs.map +1 -1
  351. package/_cjs/data/Refinement.cjs +0 -4
  352. package/_cjs/data/Refinement.cjs.map +1 -1
  353. package/_cjs/{typeclass → data}/Showable/definition.cjs +4 -11
  354. package/_cjs/data/Showable/definition.cjs.map +1 -0
  355. package/_cjs/{typeclass → data}/Showable/show.cjs +46 -199
  356. package/_cjs/data/Showable/show.cjs.map +1 -0
  357. package/_cjs/{typeclass → data}/Showable/styles.cjs +0 -6
  358. package/_cjs/data/Showable/styles.cjs.map +1 -0
  359. package/_cjs/{typeclass → data}/Showable/util.cjs +50 -112
  360. package/_cjs/data/Showable/util.cjs.map +1 -0
  361. package/_cjs/{typeclass → data}/Showable.cjs +0 -4
  362. package/_cjs/data/Showable.cjs.map +1 -0
  363. package/_cjs/data/Struct/api.cjs +7 -39
  364. package/_cjs/data/Struct/api.cjs.map +1 -1
  365. package/_cjs/data/Struct/definition.cjs +0 -4
  366. package/_cjs/data/Struct/definition.cjs.map +1 -1
  367. package/_cjs/data/Tag/constructors.cjs +1 -8
  368. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  369. package/_cjs/data/Tag/definition.cjs +3 -18
  370. package/_cjs/data/Tag/definition.cjs.map +1 -1
  371. package/_cjs/data/Tag.cjs +0 -4
  372. package/_cjs/data/Tag.cjs.map +1 -1
  373. package/_cjs/data/These/api.cjs +42 -167
  374. package/_cjs/data/These/api.cjs.map +1 -1
  375. package/_cjs/data/These/constructors.cjs +0 -12
  376. package/_cjs/data/These/constructors.cjs.map +1 -1
  377. package/_cjs/data/These/definition.cjs +3 -27
  378. package/_cjs/data/These/definition.cjs.map +1 -1
  379. package/_cjs/data/These/destructors.cjs +6 -38
  380. package/_cjs/data/These/destructors.cjs.map +1 -1
  381. package/_cjs/data/These/instances.cjs +1 -15
  382. package/_cjs/data/These/instances.cjs.map +1 -1
  383. package/_cjs/data/These.cjs +0 -10
  384. package/_cjs/data/These.cjs.map +1 -1
  385. package/_cjs/data/Trace/api.cjs +0 -9
  386. package/_cjs/data/Trace/api.cjs.map +1 -1
  387. package/_cjs/data/Trace/constructors.cjs +0 -8
  388. package/_cjs/data/Trace/constructors.cjs.map +1 -1
  389. package/_cjs/data/Trace/definition.cjs +0 -3
  390. package/_cjs/data/Trace/definition.cjs.map +1 -1
  391. package/_cjs/data/Trace.cjs +0 -6
  392. package/_cjs/data/Trace.cjs.map +1 -1
  393. package/_cjs/data/TraceElement/definition.cjs +0 -11
  394. package/_cjs/data/TraceElement/definition.cjs.map +1 -1
  395. package/_cjs/data/TraceElement.cjs +0 -2
  396. package/_cjs/data/TraceElement.cjs.map +1 -1
  397. package/_cjs/data/Zipped.cjs +2 -13
  398. package/_cjs/data/Zipped.cjs.map +1 -1
  399. package/_cjs/data/bigint/instances.cjs +2 -7
  400. package/_cjs/data/bigint/instances.cjs.map +1 -1
  401. package/_cjs/data/bigint.cjs +0 -4
  402. package/_cjs/data/bigint.cjs.map +1 -1
  403. package/_cjs/data/boolean/instances.cjs +2 -7
  404. package/_cjs/data/boolean/instances.cjs.map +1 -1
  405. package/_cjs/data/boolean.cjs +0 -4
  406. package/_cjs/data/boolean.cjs.map +1 -1
  407. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs +0 -3
  408. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs.map +1 -1
  409. package/_cjs/data/exceptions/IllegalArgumentError.cjs +0 -3
  410. package/_cjs/data/exceptions/IllegalArgumentError.cjs.map +1 -1
  411. package/_cjs/data/exceptions/IllegalStateError.cjs +0 -3
  412. package/_cjs/data/exceptions/IllegalStateError.cjs.map +1 -1
  413. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs +0 -3
  414. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs.map +1 -1
  415. package/_cjs/data/exceptions/InterruptedException.cjs +0 -6
  416. package/_cjs/data/exceptions/InterruptedException.cjs.map +1 -1
  417. package/_cjs/data/exceptions/InvalidCapacityError.cjs +0 -4
  418. package/_cjs/data/exceptions/InvalidCapacityError.cjs.map +1 -1
  419. package/_cjs/data/exceptions/NoSuchElementError.cjs +0 -3
  420. package/_cjs/data/exceptions/NoSuchElementError.cjs.map +1 -1
  421. package/_cjs/data/exceptions.cjs +0 -16
  422. package/_cjs/data/exceptions.cjs.map +1 -1
  423. package/_cjs/data/function/api.cjs +0 -11
  424. package/_cjs/data/function/api.cjs.map +1 -1
  425. package/_cjs/data/function/pipe.cjs +0 -22
  426. package/_cjs/data/function/pipe.cjs.map +1 -1
  427. package/_cjs/data/function.cjs +0 -6
  428. package/_cjs/data/function.cjs.map +1 -1
  429. package/_cjs/data/number/api.cjs +0 -1
  430. package/_cjs/data/number/api.cjs.map +1 -1
  431. package/_cjs/data/number/instances.cjs +10 -19
  432. package/_cjs/data/number/instances.cjs.map +1 -1
  433. package/_cjs/data/number.cjs +0 -6
  434. package/_cjs/data/number.cjs.map +1 -1
  435. package/_cjs/data/object/instances.cjs +1 -16
  436. package/_cjs/data/object/instances.cjs.map +1 -1
  437. package/_cjs/data/object.cjs +0 -4
  438. package/_cjs/data/object.cjs.map +1 -1
  439. package/_cjs/data/string/api.cjs +3 -36
  440. package/_cjs/data/string/api.cjs.map +1 -1
  441. package/_cjs/data/string/instances.cjs +11 -24
  442. package/_cjs/data/string/instances.cjs.map +1 -1
  443. package/_cjs/data/string.cjs +0 -6
  444. package/_cjs/data/string.cjs.map +1 -1
  445. package/_cjs/global/api.cjs +0 -1
  446. package/_cjs/global/api.cjs.map +1 -1
  447. package/_cjs/internal/AtomicBoolean.cjs +0 -4
  448. package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
  449. package/_cjs/internal/AtomicNumber.cjs +0 -7
  450. package/_cjs/internal/AtomicNumber.cjs.map +1 -1
  451. package/_cjs/internal/AtomicReference.cjs +0 -8
  452. package/_cjs/internal/AtomicReference.cjs.map +1 -1
  453. package/_cjs/internal/Stack.cjs +0 -13
  454. package/_cjs/internal/Stack.cjs.map +1 -1
  455. package/_cjs/json/EitherJson.cjs +1 -7
  456. package/_cjs/json/EitherJson.cjs.map +1 -1
  457. package/_cjs/json/MaybeJson.cjs +1 -7
  458. package/_cjs/json/MaybeJson.cjs.map +1 -1
  459. package/_cjs/json/TheseJson.cjs +1 -7
  460. package/_cjs/json/TheseJson.cjs.map +1 -1
  461. package/_cjs/optics/At/api.cjs +0 -5
  462. package/_cjs/optics/At/api.cjs.map +1 -1
  463. package/_cjs/optics/At/definition.cjs +0 -7
  464. package/_cjs/optics/At/definition.cjs.map +1 -1
  465. package/_cjs/optics/At.cjs +0 -4
  466. package/_cjs/optics/At.cjs.map +1 -1
  467. package/_cjs/optics/Fold/definition.cjs +0 -2
  468. package/_cjs/optics/Fold/definition.cjs.map +1 -1
  469. package/_cjs/optics/Fold.cjs +0 -2
  470. package/_cjs/optics/Fold.cjs.map +1 -1
  471. package/_cjs/optics/Getter/definition.cjs +0 -2
  472. package/_cjs/optics/Getter/definition.cjs.map +1 -1
  473. package/_cjs/optics/Getter.cjs +0 -2
  474. package/_cjs/optics/Getter.cjs.map +1 -1
  475. package/_cjs/optics/Index/api.cjs +0 -8
  476. package/_cjs/optics/Index/api.cjs.map +1 -1
  477. package/_cjs/optics/Index/definition.cjs +0 -2
  478. package/_cjs/optics/Index/definition.cjs.map +1 -1
  479. package/_cjs/optics/Index.cjs +0 -4
  480. package/_cjs/optics/Index.cjs.map +1 -1
  481. package/_cjs/optics/Iso/api.cjs +0 -5
  482. package/_cjs/optics/Iso/api.cjs.map +1 -1
  483. package/_cjs/optics/Iso/definition.cjs +2 -14
  484. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  485. package/_cjs/optics/Iso.cjs +0 -4
  486. package/_cjs/optics/Iso.cjs.map +1 -1
  487. package/_cjs/optics/Lens/api.cjs +0 -35
  488. package/_cjs/optics/Lens/api.cjs.map +1 -1
  489. package/_cjs/optics/Lens/definition.cjs +2 -14
  490. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  491. package/_cjs/optics/Lens.cjs +0 -4
  492. package/_cjs/optics/Lens.cjs.map +1 -1
  493. package/_cjs/optics/Optional/api/compose.cjs +0 -6
  494. package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
  495. package/_cjs/optics/Optional/definition.cjs +0 -15
  496. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  497. package/_cjs/optics/Optional.cjs +0 -4
  498. package/_cjs/optics/Optional.cjs.map +1 -1
  499. package/_cjs/optics/Prism/api/compose.cjs +0 -7
  500. package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
  501. package/_cjs/optics/Prism/api/fromNullable.cjs +0 -6
  502. package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
  503. package/_cjs/optics/Prism/api/just.cjs +0 -7
  504. package/_cjs/optics/Prism/api/just.cjs.map +1 -1
  505. package/_cjs/optics/Prism/definition.cjs +0 -12
  506. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  507. package/_cjs/optics/Prism.cjs +0 -8
  508. package/_cjs/optics/Prism.cjs.map +1 -1
  509. package/_cjs/optics/Setter/definition.cjs +0 -4
  510. package/_cjs/optics/Setter/definition.cjs.map +1 -1
  511. package/_cjs/optics/Setter.cjs +0 -2
  512. package/_cjs/optics/Setter.cjs.map +1 -1
  513. package/_cjs/optics/Traversal/api/compose.cjs +0 -4
  514. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  515. package/_cjs/optics/Traversal/api/fromTraversable.cjs +0 -4
  516. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  517. package/_cjs/optics/Traversal/definition.cjs +0 -16
  518. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  519. package/_cjs/optics/Traversal.cjs +0 -6
  520. package/_cjs/optics/Traversal.cjs.map +1 -1
  521. package/_cjs/typeclass/Align.cjs.map +1 -1
  522. package/_cjs/typeclass/Alt.cjs.map +1 -1
  523. package/_cjs/typeclass/Alternative.cjs.map +1 -1
  524. package/_cjs/typeclass/Applicative.cjs.map +1 -1
  525. package/_cjs/typeclass/ApplicativeExcept.cjs +0 -8
  526. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  527. package/_cjs/typeclass/Apply.cjs +8 -40
  528. package/_cjs/typeclass/Apply.cjs.map +1 -1
  529. package/_cjs/typeclass/Chain.cjs +0 -9
  530. package/_cjs/typeclass/Chain.cjs.map +1 -1
  531. package/_cjs/typeclass/Closure.cjs +2 -4
  532. package/_cjs/typeclass/Closure.cjs.map +1 -1
  533. package/_cjs/typeclass/Filterable.cjs.map +1 -1
  534. package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
  535. package/_cjs/typeclass/Foldable.cjs +1 -3
  536. package/_cjs/typeclass/Foldable.cjs.map +1 -1
  537. package/_cjs/typeclass/FoldableWithIndex.cjs +1 -3
  538. package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
  539. package/_cjs/typeclass/Functor.cjs +0 -2
  540. package/_cjs/typeclass/Functor.cjs.map +1 -1
  541. package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
  542. package/_cjs/typeclass/Has.cjs +2 -2
  543. package/_cjs/typeclass/Has.cjs.map +1 -1
  544. package/_cjs/typeclass/Monad.cjs.map +1 -1
  545. package/_cjs/typeclass/MonadExcept.cjs +0 -5
  546. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  547. package/_cjs/typeclass/Monoid.cjs +6 -23
  548. package/_cjs/typeclass/Monoid.cjs.map +1 -1
  549. package/_cjs/typeclass/Pointed.cjs.map +1 -1
  550. package/_cjs/typeclass/Semialign.cjs +1 -19
  551. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  552. package/_cjs/typeclass/Semigroup/api.cjs +6 -14
  553. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  554. package/_cjs/typeclass/Semigroup/definition.cjs +3 -6
  555. package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
  556. package/_cjs/typeclass/Semigroup/derivations.cjs +7 -18
  557. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
  558. package/_cjs/typeclass/Semigroup.cjs +0 -4
  559. package/_cjs/typeclass/Semigroup.cjs.map +1 -1
  560. package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
  561. package/_cjs/typeclass/Traversable.cjs +0 -5
  562. package/_cjs/typeclass/Traversable.cjs.map +1 -1
  563. package/_cjs/typeclass/TraversableWithIndex.cjs +0 -1
  564. package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
  565. package/_cjs/typeclass/Witherable.cjs +0 -7
  566. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  567. package/_cjs/typeclass/WitherableWithIndex.cjs +0 -8
  568. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  569. package/_cjs/typeclass/builtin.cjs +0 -2
  570. package/_cjs/typeclass/builtin.cjs.map +1 -1
  571. package/_cjs/typeclass.cjs +95 -162
  572. package/_cjs/typeclass.cjs.map +1 -1
  573. package/_cjs/types.cjs +0 -6
  574. package/_cjs/types.cjs.map +1 -1
  575. package/_cjs/util/AnsiFormat.cjs +8 -50
  576. package/_cjs/util/AnsiFormat.cjs.map +1 -1
  577. package/_cjs/util/PCGRandom.cjs +16 -46
  578. package/_cjs/util/PCGRandom.cjs.map +1 -1
  579. package/_cjs/util/assert.cjs +0 -4
  580. package/_cjs/util/assert.cjs.map +1 -1
  581. package/_cjs/util/pattern.cjs +0 -4
  582. package/_cjs/util/pattern.cjs.map +1 -1
  583. package/_cjs/util/predicates.cjs +0 -32
  584. package/_cjs/util/predicates.cjs.map +1 -1
  585. package/_cjs/util/rand/Random.cjs +0 -21
  586. package/_cjs/util/rand/Random.cjs.map +1 -1
  587. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs +0 -5
  588. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
  589. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs +4 -12
  590. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
  591. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs +0 -12
  592. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
  593. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs +6 -42
  594. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
  595. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs +6 -10
  596. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
  597. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs +8 -14
  598. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
  599. package/_cjs/util/rand/generator/MersenneTwister.cjs +5 -25
  600. package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
  601. package/_cjs/util/rand/generator/RandomGenerator.cjs +0 -4
  602. package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
  603. package/_cjs/util/rand.cjs +0 -9
  604. package/_cjs/util/rand.cjs.map +1 -1
  605. package/_mjs/collection/Iterable/api/traverseConc.mjs +0 -5
  606. package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
  607. package/_mjs/collection/Iterable/api.mjs +33 -172
  608. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  609. package/_mjs/collection/Iterable/constructors.mjs +0 -15
  610. package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
  611. package/_mjs/collection/Iterable/definition.mjs.map +1 -1
  612. package/_mjs/collection/Iterable.mjs.map +1 -1
  613. package/_mjs/collection/compat/Array/api.mjs +2 -10
  614. package/_mjs/collection/compat/Array/api.mjs.map +1 -1
  615. package/_mjs/collection/compat/Array/definition.mjs.map +1 -1
  616. package/_mjs/collection/compat/Array.mjs +0 -1
  617. package/_mjs/collection/compat/Array.mjs.map +1 -1
  618. package/_mjs/collection/compat/ArrayLike/api.mjs +2 -8
  619. package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
  620. package/_mjs/collection/immutable/Conc/api/empty.mjs +0 -1
  621. package/_mjs/collection/immutable/Conc/api/empty.mjs.map +1 -1
  622. package/_mjs/collection/immutable/Conc/api/makeBy.mjs +0 -4
  623. package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
  624. package/_mjs/collection/immutable/Conc/api/replicate.mjs +0 -1
  625. package/_mjs/collection/immutable/Conc/api/replicate.mjs.map +1 -1
  626. package/_mjs/collection/immutable/Conc/api.mjs +32 -316
  627. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  628. package/_mjs/collection/immutable/Conc/constructors.mjs +0 -5
  629. package/_mjs/collection/immutable/Conc/constructors.mjs.map +1 -1
  630. package/_mjs/collection/immutable/Conc/definition.mjs +27 -197
  631. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  632. package/_mjs/collection/immutable/Conc.mjs +1 -2
  633. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  634. package/_mjs/collection/immutable/Dictionary/api.mjs +0 -15
  635. package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
  636. package/_mjs/collection/immutable/Dictionary/definition.mjs.map +1 -1
  637. package/_mjs/collection/immutable/Dictionary.mjs +4 -0
  638. package/_mjs/collection/immutable/Dictionary.mjs.map +1 -0
  639. package/_mjs/collection/immutable/HashMap/api.mjs +103 -205
  640. package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
  641. package/_mjs/collection/immutable/HashMap/definition.mjs +17 -28
  642. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  643. package/_mjs/collection/immutable/HashMap/internal.mjs +4 -66
  644. package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
  645. package/_mjs/collection/immutable/HashMap.mjs.map +1 -1
  646. package/_mjs/collection/immutable/HashSet/api.mjs +88 -152
  647. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  648. package/_mjs/collection/immutable/HashSet/definition.mjs +14 -67
  649. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  650. package/_mjs/collection/immutable/HashSet.mjs.map +1 -1
  651. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +0 -1
  652. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
  653. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +0 -1
  654. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
  655. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +0 -1
  656. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
  657. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +0 -3
  658. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
  659. package/_mjs/collection/immutable/ImmutableArray/api.mjs +22 -325
  660. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
  661. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs +0 -10
  662. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs.map +1 -1
  663. package/_mjs/collection/immutable/ImmutableArray/definition.mjs +4 -10
  664. package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
  665. package/_mjs/collection/immutable/ImmutableArray/instances.mjs +16 -25
  666. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  667. package/_mjs/collection/immutable/ImmutableArray.mjs +2 -3
  668. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  669. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +17 -131
  670. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  671. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs +0 -12
  672. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
  673. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs +0 -5
  674. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
  675. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +0 -10
  676. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
  677. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +12 -16
  678. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
  679. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs +0 -1
  680. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs.map +1 -1
  681. package/_mjs/collection/immutable/List/api/foldLeft.mjs +0 -3
  682. package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
  683. package/_mjs/collection/immutable/List/api/unsafeTail.mjs +0 -2
  684. package/_mjs/collection/immutable/List/api/unsafeTail.mjs.map +1 -1
  685. package/_mjs/collection/immutable/List/api.mjs +13 -85
  686. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  687. package/_mjs/collection/immutable/List/constructors.mjs +1 -11
  688. package/_mjs/collection/immutable/List/constructors.mjs.map +1 -1
  689. package/_mjs/collection/immutable/List/definition.mjs +2 -18
  690. package/_mjs/collection/immutable/List/definition.mjs.map +1 -1
  691. package/_mjs/collection/immutable/List.mjs +2 -2
  692. package/_mjs/collection/immutable/List.mjs.map +1 -1
  693. package/_mjs/collection/immutable/Queue/api.mjs +42 -68
  694. package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
  695. package/_mjs/collection/immutable/Queue/constructors.mjs +0 -2
  696. package/_mjs/collection/immutable/Queue/constructors.mjs.map +1 -1
  697. package/_mjs/collection/immutable/Queue/definition.mjs +2 -8
  698. package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
  699. package/_mjs/collection/immutable/Queue/guards.mjs +2 -3
  700. package/_mjs/collection/immutable/Queue/guards.mjs.map +1 -1
  701. package/_mjs/collection/immutable/Queue.mjs.map +1 -1
  702. package/_mjs/collection/immutable/RoseTree/api.mjs +26 -67
  703. package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
  704. package/_mjs/collection/immutable/RoseTree/definition.mjs +4 -8
  705. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
  706. package/_mjs/collection/immutable/RoseTree.mjs.map +1 -1
  707. package/_mjs/collection/immutable/SortedMap/api.mjs +130 -240
  708. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  709. package/_mjs/collection/immutable/SortedMap/definition.mjs +2 -3
  710. package/_mjs/collection/immutable/SortedMap/definition.mjs.map +1 -1
  711. package/_mjs/collection/immutable/SortedMap/internal.mjs +56 -222
  712. package/_mjs/collection/immutable/SortedMap/internal.mjs.map +1 -1
  713. package/_mjs/collection/immutable/SortedMap/iterator.mjs +16 -97
  714. package/_mjs/collection/immutable/SortedMap/iterator.mjs.map +1 -1
  715. package/_mjs/collection/immutable/SortedMap/node.mjs +0 -1
  716. package/_mjs/collection/immutable/SortedMap/node.mjs.map +1 -1
  717. package/_mjs/collection/immutable/SortedMap.mjs.map +1 -1
  718. package/_mjs/collection/immutable/Vector/api.mjs +204 -390
  719. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  720. package/_mjs/collection/immutable/Vector/definition.mjs +9 -21
  721. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  722. package/_mjs/collection/immutable/Vector/internal.mjs +42 -314
  723. package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
  724. package/_mjs/collection/immutable/Vector.mjs.map +1 -1
  725. package/_mjs/collection/mutable/HashMap.mjs +6 -74
  726. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  727. package/_mjs/collection/mutable/HashSet.mjs +5 -59
  728. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  729. package/_mjs/collection/mutable/ListBuffer.mjs +0 -26
  730. package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
  731. package/_mjs/collection/mutable/internal.mjs +0 -2
  732. package/_mjs/collection/mutable/internal.mjs.map +1 -1
  733. package/_mjs/collection/weak/IterableWeakMap.mjs +0 -22
  734. package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
  735. package/_mjs/collection/weak/IterableWeakSet.mjs +0 -20
  736. package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
  737. package/_mjs/control/Eval/api/sequenceArray.mjs +0 -1
  738. package/_mjs/control/Eval/api/sequenceArray.mjs.map +1 -1
  739. package/_mjs/control/Eval/api.mjs +2 -21
  740. package/_mjs/control/Eval/api.mjs.map +1 -1
  741. package/_mjs/control/Eval/constructors.mjs +0 -6
  742. package/_mjs/control/Eval/constructors.mjs.map +1 -1
  743. package/_mjs/control/Eval/definition.mjs +6 -15
  744. package/_mjs/control/Eval/definition.mjs.map +1 -1
  745. package/_mjs/control/Eval/instance.mjs +2 -4
  746. package/_mjs/control/Eval/instance.mjs.map +1 -1
  747. package/_mjs/control/Eval/run.mjs +4 -23
  748. package/_mjs/control/Eval/run.mjs.map +1 -1
  749. package/_mjs/control/Eval.mjs.map +1 -1
  750. package/_mjs/control/LazyValue.mjs +0 -3
  751. package/_mjs/control/LazyValue.mjs.map +1 -1
  752. package/_mjs/control/Z/api.mjs +4 -92
  753. package/_mjs/control/Z/api.mjs.map +1 -1
  754. package/_mjs/control/Z/definition.mjs +23 -51
  755. package/_mjs/control/Z/definition.mjs.map +1 -1
  756. package/_mjs/control/Z/instances.mjs +0 -1
  757. package/_mjs/control/Z/instances.mjs.map +1 -1
  758. package/_mjs/control/Z/runtime.mjs +14 -90
  759. package/_mjs/control/Z/runtime.mjs.map +1 -1
  760. package/_mjs/control/Z.mjs.map +1 -1
  761. package/_mjs/data/Branded/definition.mjs +0 -2
  762. package/_mjs/data/Branded/definition.mjs.map +1 -1
  763. package/_mjs/data/Branded.mjs +0 -1
  764. package/_mjs/data/Branded.mjs.map +1 -1
  765. package/_mjs/data/CaseClass.mjs +13 -32
  766. package/_mjs/data/CaseClass.mjs.map +1 -1
  767. package/_mjs/data/Cause/api/fold.mjs +11 -48
  768. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  769. package/_mjs/data/Cause/api/isEmpty.mjs +6 -28
  770. package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
  771. package/_mjs/data/Cause/api/linearize.mjs +6 -7
  772. package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
  773. package/_mjs/data/Cause/api/prettyPrint.mjs +0 -7
  774. package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
  775. package/_mjs/data/Cause/api/unified.mjs +14 -44
  776. package/_mjs/data/Cause/api/unified.mjs.map +1 -1
  777. package/_mjs/data/Cause/api.mjs +70 -368
  778. package/_mjs/data/Cause/api.mjs.map +1 -1
  779. package/_mjs/data/Cause/definition.mjs +46 -245
  780. package/_mjs/data/Cause/definition.mjs.map +1 -1
  781. package/_mjs/data/Cause.mjs +2 -2
  782. package/_mjs/data/Cause.mjs.map +1 -1
  783. package/_mjs/data/Const/api.mjs +1 -3
  784. package/_mjs/data/Const/api.mjs.map +1 -1
  785. package/_mjs/data/Const/definition.mjs +0 -1
  786. package/_mjs/data/Const/definition.mjs.map +1 -1
  787. package/_mjs/data/Const/instances.mjs +4 -6
  788. package/_mjs/data/Const/instances.mjs.map +1 -1
  789. package/_mjs/data/Const.mjs.map +1 -1
  790. package/_mjs/data/Datum/api.mjs +24 -117
  791. package/_mjs/data/Datum/api.mjs.map +1 -1
  792. package/_mjs/data/Datum/definition.mjs +10 -35
  793. package/_mjs/data/Datum/definition.mjs.map +1 -1
  794. package/_mjs/data/Datum/instances.mjs +0 -5
  795. package/_mjs/data/Datum/instances.mjs.map +1 -1
  796. package/_mjs/data/DatumEither/api.mjs +36 -100
  797. package/_mjs/data/DatumEither/api.mjs.map +1 -1
  798. package/_mjs/data/DatumEither/definition.mjs.map +1 -1
  799. package/_mjs/data/DecodeError/definition.mjs +1 -29
  800. package/_mjs/data/DecodeError/definition.mjs.map +1 -1
  801. package/_mjs/data/DecodeError.mjs.map +1 -1
  802. package/_mjs/data/Decoder/api.mjs +393 -48
  803. package/_mjs/data/Decoder/api.mjs.map +1 -1
  804. package/_mjs/data/Decoder/definition.mjs +0 -3
  805. package/_mjs/data/Decoder/definition.mjs.map +1 -1
  806. package/_mjs/data/Decoder.mjs.map +1 -1
  807. package/_mjs/data/Duration/api.mjs +4 -11
  808. package/_mjs/data/Duration/api.mjs.map +1 -1
  809. package/_mjs/data/Duration/definition.mjs +3 -7
  810. package/_mjs/data/Duration/definition.mjs.map +1 -1
  811. package/_mjs/data/Duration.mjs.map +1 -1
  812. package/_mjs/data/Either/api/align.mjs +0 -1
  813. package/_mjs/data/Either/api/align.mjs.map +1 -1
  814. package/_mjs/data/Either/api/alignWith.mjs +1 -8
  815. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  816. package/_mjs/data/Either/api.mjs +27 -115
  817. package/_mjs/data/Either/api.mjs.map +1 -1
  818. package/_mjs/data/Either/constructors.mjs +0 -11
  819. package/_mjs/data/Either/constructors.mjs.map +1 -1
  820. package/_mjs/data/Either/definition.mjs +4 -15
  821. package/_mjs/data/Either/definition.mjs.map +1 -1
  822. package/_mjs/data/Either/destructors.mjs +2 -8
  823. package/_mjs/data/Either/destructors.mjs.map +1 -1
  824. package/_mjs/data/Either/instances.mjs +14 -48
  825. package/_mjs/data/Either/instances.mjs.map +1 -1
  826. package/_mjs/data/Either.mjs.map +1 -1
  827. package/_mjs/data/EitherT/api.mjs +0 -9
  828. package/_mjs/data/EitherT/api.mjs.map +1 -1
  829. package/_mjs/data/EitherT/definition.mjs.map +1 -1
  830. package/_mjs/data/Encoder/api.mjs +192 -21
  831. package/_mjs/data/Encoder/api.mjs.map +1 -1
  832. package/_mjs/data/Encoder/definition.mjs +0 -2
  833. package/_mjs/data/Encoder/definition.mjs.map +1 -1
  834. package/_mjs/data/Encoder.mjs.map +1 -1
  835. package/_mjs/data/Environment/api.mjs +3 -18
  836. package/_mjs/data/Environment/api.mjs.map +1 -1
  837. package/_mjs/data/Environment/definition.mjs +5 -10
  838. package/_mjs/data/Environment/definition.mjs.map +1 -1
  839. package/_mjs/data/Environment.mjs.map +1 -1
  840. package/_mjs/data/EnvironmentPatch.mjs +18 -55
  841. package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
  842. package/_mjs/{typeclass → data}/Eq/definition.mjs +1 -2
  843. package/_mjs/data/Eq/definition.mjs.map +1 -0
  844. package/_mjs/{typeclass → data}/Eq/derivations.mjs +9 -15
  845. package/_mjs/data/Eq/derivations.mjs.map +1 -0
  846. package/_mjs/{typeclass → data}/Eq.mjs +0 -0
  847. package/_mjs/data/Eq.mjs.map +1 -0
  848. package/_mjs/{typeclass → data}/Equatable/api.mjs +3 -6
  849. package/_mjs/data/Equatable/api.mjs.map +1 -0
  850. package/_mjs/{typeclass → data}/Equatable/definition.mjs +0 -1
  851. package/_mjs/data/Equatable/definition.mjs.map +1 -0
  852. package/_mjs/{typeclass → data}/Equatable/fast-equals.mjs +1 -63
  853. package/_mjs/data/Equatable/fast-equals.mjs.map +1 -0
  854. package/_mjs/{typeclass → data}/Equatable.mjs +0 -0
  855. package/_mjs/data/Equatable.mjs.map +1 -0
  856. package/_mjs/data/ExecutionStrategy.mjs +0 -5
  857. package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
  858. package/_mjs/data/Exit/api.mjs +35 -78
  859. package/_mjs/data/Exit/api.mjs.map +1 -1
  860. package/_mjs/data/Exit/constructors.mjs +0 -11
  861. package/_mjs/data/Exit/constructors.mjs.map +1 -1
  862. package/_mjs/data/Exit/definition.mjs +8 -33
  863. package/_mjs/data/Exit/definition.mjs.map +1 -1
  864. package/_mjs/data/Exit.mjs.map +1 -1
  865. package/_mjs/data/FiberId/api.mjs +5 -15
  866. package/_mjs/data/FiberId/api.mjs.map +1 -1
  867. package/_mjs/data/FiberId/constructors.mjs +3 -9
  868. package/_mjs/data/FiberId/constructors.mjs.map +1 -1
  869. package/_mjs/data/FiberId/definition.mjs +7 -26
  870. package/_mjs/data/FiberId/definition.mjs.map +1 -1
  871. package/_mjs/data/FiberId.mjs.map +1 -1
  872. package/_mjs/data/Guard/api.mjs +369 -0
  873. package/_mjs/data/Guard/api.mjs.map +1 -0
  874. package/_mjs/{typeclass → data}/Guard/definition.mjs +0 -3
  875. package/_mjs/data/Guard/definition.mjs.map +1 -0
  876. package/_mjs/data/Guard.mjs +4 -0
  877. package/_mjs/data/Guard.mjs.map +1 -0
  878. package/_mjs/{typeclass → data}/Hash.mjs +0 -1
  879. package/_mjs/data/Hash.mjs.map +1 -0
  880. package/_mjs/data/HashEq.mjs +30 -0
  881. package/_mjs/data/HashEq.mjs.map +1 -0
  882. package/_mjs/{typeclass → data}/Hashable/definition.mjs +0 -1
  883. package/_mjs/data/Hashable/definition.mjs.map +1 -0
  884. package/_mjs/{typeclass → data}/Hashable/hash.mjs +4 -59
  885. package/_mjs/data/Hashable/hash.mjs.map +1 -0
  886. package/_mjs/{typeclass → data}/Hashable.mjs +0 -0
  887. package/_mjs/data/Hashable.mjs.map +1 -0
  888. package/_mjs/data/Identity/api.mjs +0 -7
  889. package/_mjs/data/Identity/api.mjs.map +1 -1
  890. package/_mjs/data/Identity/definition.mjs.map +1 -1
  891. package/_mjs/data/Identity/instances.mjs +4 -5
  892. package/_mjs/data/Identity/instances.mjs.map +1 -1
  893. package/_mjs/data/Identity.mjs.map +1 -1
  894. package/_mjs/data/Interval.mjs +4 -20
  895. package/_mjs/data/Interval.mjs.map +1 -1
  896. package/_mjs/data/Intervals.mjs +10 -33
  897. package/_mjs/data/Intervals.mjs.map +1 -1
  898. package/_mjs/data/Maybe/api.mjs +18 -74
  899. package/_mjs/data/Maybe/api.mjs.map +1 -1
  900. package/_mjs/data/Maybe/constructors.mjs +0 -17
  901. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  902. package/_mjs/data/Maybe/definition.mjs +10 -36
  903. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  904. package/_mjs/data/Maybe/destructors.mjs +1 -3
  905. package/_mjs/data/Maybe/destructors.mjs.map +1 -1
  906. package/_mjs/data/Maybe/instances.mjs +28 -9
  907. package/_mjs/data/Maybe/instances.mjs.map +1 -1
  908. package/_mjs/data/Maybe.mjs.map +1 -1
  909. package/_mjs/data/Newtype.mjs +0 -1
  910. package/_mjs/data/Newtype.mjs.map +1 -1
  911. package/_mjs/data/Ord/api/contramap.mjs +12 -0
  912. package/_mjs/data/Ord/api/contramap.mjs.map +1 -0
  913. package/_mjs/data/Ord/api/max.mjs +8 -0
  914. package/_mjs/data/Ord/api/max.mjs.map +1 -0
  915. package/_mjs/data/Ord/api/min.mjs +8 -0
  916. package/_mjs/data/Ord/api/min.mjs.map +1 -0
  917. package/_mjs/{typeclass → data}/Ord/api.mjs +0 -0
  918. package/_mjs/data/Ord/api.mjs.map +1 -0
  919. package/_mjs/data/Ord/definition.mjs +12 -0
  920. package/_mjs/data/Ord/definition.mjs.map +1 -0
  921. package/_mjs/data/Ord/instances.mjs +34 -0
  922. package/_mjs/data/Ord/instances.mjs.map +1 -0
  923. package/_mjs/{typeclass → data}/Ord.mjs +0 -0
  924. package/_mjs/data/Ord.mjs.map +1 -0
  925. package/_mjs/{typeclass → data}/Ordering.mjs +0 -6
  926. package/_mjs/data/Ordering.mjs.map +1 -0
  927. package/_mjs/data/Predicate/api.mjs +0 -3
  928. package/_mjs/data/Predicate/api.mjs.map +1 -1
  929. package/_mjs/data/Predicate.mjs.map +1 -1
  930. package/_mjs/data/Refinement/api.mjs +0 -3
  931. package/_mjs/data/Refinement/api.mjs.map +1 -1
  932. package/_mjs/data/Refinement.mjs.map +1 -1
  933. package/_mjs/{typeclass → data}/Showable/definition.mjs +2 -3
  934. package/_mjs/data/Showable/definition.mjs.map +1 -0
  935. package/_mjs/{typeclass → data}/Showable/show.mjs +47 -173
  936. package/_mjs/data/Showable/show.mjs.map +1 -0
  937. package/_mjs/{typeclass → data}/Showable/styles.mjs +0 -0
  938. package/_mjs/data/Showable/styles.mjs.map +1 -0
  939. package/_mjs/{typeclass → data}/Showable/util.mjs +52 -92
  940. package/_mjs/data/Showable/util.mjs.map +1 -0
  941. package/_mjs/{typeclass → data}/Showable.mjs +0 -0
  942. package/_mjs/data/Showable.mjs.map +1 -0
  943. package/_mjs/data/Struct/api.mjs +7 -23
  944. package/_mjs/data/Struct/api.mjs.map +1 -1
  945. package/_mjs/data/Struct/definition.mjs.map +1 -1
  946. package/_mjs/data/Tag/constructors.mjs +1 -4
  947. package/_mjs/data/Tag/constructors.mjs.map +1 -1
  948. package/_mjs/data/Tag/definition.mjs +3 -9
  949. package/_mjs/data/Tag/definition.mjs.map +1 -1
  950. package/_mjs/data/Tag.mjs.map +1 -1
  951. package/_mjs/data/These/api.mjs +42 -151
  952. package/_mjs/data/These/api.mjs.map +1 -1
  953. package/_mjs/data/These/constructors.mjs +0 -6
  954. package/_mjs/data/These/constructors.mjs.map +1 -1
  955. package/_mjs/data/These/definition.mjs +4 -16
  956. package/_mjs/data/These/definition.mjs.map +1 -1
  957. package/_mjs/data/These/destructors.mjs +6 -28
  958. package/_mjs/data/These/destructors.mjs.map +1 -1
  959. package/_mjs/data/These/instances.mjs +1 -6
  960. package/_mjs/data/These/instances.mjs.map +1 -1
  961. package/_mjs/data/These.mjs.map +1 -1
  962. package/_mjs/data/Trace/api.mjs +0 -2
  963. package/_mjs/data/Trace/api.mjs.map +1 -1
  964. package/_mjs/data/Trace/constructors.mjs +0 -2
  965. package/_mjs/data/Trace/constructors.mjs.map +1 -1
  966. package/_mjs/data/Trace/definition.mjs +0 -1
  967. package/_mjs/data/Trace/definition.mjs.map +1 -1
  968. package/_mjs/data/Trace.mjs.map +1 -1
  969. package/_mjs/data/TraceElement/definition.mjs +0 -9
  970. package/_mjs/data/TraceElement/definition.mjs.map +1 -1
  971. package/_mjs/data/TraceElement.mjs.map +1 -1
  972. package/_mjs/data/Zipped.mjs +2 -7
  973. package/_mjs/data/Zipped.mjs.map +1 -1
  974. package/_mjs/data/bigint/instances.mjs +2 -2
  975. package/_mjs/data/bigint/instances.mjs.map +1 -1
  976. package/_mjs/data/bigint.mjs.map +1 -1
  977. package/_mjs/data/boolean/instances.mjs +2 -2
  978. package/_mjs/data/boolean/instances.mjs.map +1 -1
  979. package/_mjs/data/boolean.mjs.map +1 -1
  980. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs +0 -1
  981. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs.map +1 -1
  982. package/_mjs/data/exceptions/IllegalArgumentError.mjs +0 -1
  983. package/_mjs/data/exceptions/IllegalArgumentError.mjs.map +1 -1
  984. package/_mjs/data/exceptions/IllegalStateError.mjs +0 -1
  985. package/_mjs/data/exceptions/IllegalStateError.mjs.map +1 -1
  986. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs +0 -1
  987. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs.map +1 -1
  988. package/_mjs/data/exceptions/InterruptedException.mjs +0 -1
  989. package/_mjs/data/exceptions/InterruptedException.mjs.map +1 -1
  990. package/_mjs/data/exceptions/InvalidCapacityError.mjs +0 -1
  991. package/_mjs/data/exceptions/InvalidCapacityError.mjs.map +1 -1
  992. package/_mjs/data/exceptions/NoSuchElementError.mjs +0 -1
  993. package/_mjs/data/exceptions/NoSuchElementError.mjs.map +1 -1
  994. package/_mjs/data/exceptions.mjs.map +1 -1
  995. package/_mjs/data/function/api.mjs +0 -5
  996. package/_mjs/data/function/api.mjs.map +1 -1
  997. package/_mjs/data/function/pipe.mjs +0 -20
  998. package/_mjs/data/function/pipe.mjs.map +1 -1
  999. package/_mjs/data/function.mjs.map +1 -1
  1000. package/_mjs/data/number/api.mjs.map +1 -1
  1001. package/_mjs/data/number/instances.mjs +10 -13
  1002. package/_mjs/data/number/instances.mjs.map +1 -1
  1003. package/_mjs/data/number.mjs.map +1 -1
  1004. package/_mjs/data/object/instances.mjs +1 -9
  1005. package/_mjs/data/object/instances.mjs.map +1 -1
  1006. package/_mjs/data/object.mjs.map +1 -1
  1007. package/_mjs/data/string/api.mjs +3 -21
  1008. package/_mjs/data/string/api.mjs.map +1 -1
  1009. package/_mjs/data/string/instances.mjs +11 -15
  1010. package/_mjs/data/string/instances.mjs.map +1 -1
  1011. package/_mjs/data/string.mjs.map +1 -1
  1012. package/_mjs/global/api.mjs.map +1 -1
  1013. package/_mjs/internal/AtomicBoolean.mjs +0 -1
  1014. package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
  1015. package/_mjs/internal/AtomicNumber.mjs +0 -4
  1016. package/_mjs/internal/AtomicNumber.mjs.map +1 -1
  1017. package/_mjs/internal/AtomicReference.mjs +0 -6
  1018. package/_mjs/internal/AtomicReference.mjs.map +1 -1
  1019. package/_mjs/internal/Stack.mjs +0 -9
  1020. package/_mjs/internal/Stack.mjs.map +1 -1
  1021. package/_mjs/json/EitherJson.mjs +1 -2
  1022. package/_mjs/json/EitherJson.mjs.map +1 -1
  1023. package/_mjs/json/MaybeJson.mjs +1 -2
  1024. package/_mjs/json/MaybeJson.mjs.map +1 -1
  1025. package/_mjs/json/TheseJson.mjs +1 -2
  1026. package/_mjs/json/TheseJson.mjs.map +1 -1
  1027. package/_mjs/optics/At/api.mjs +0 -1
  1028. package/_mjs/optics/At/api.mjs.map +1 -1
  1029. package/_mjs/optics/At/definition.mjs +0 -1
  1030. package/_mjs/optics/At/definition.mjs.map +1 -1
  1031. package/_mjs/optics/At.mjs.map +1 -1
  1032. package/_mjs/optics/Fold/definition.mjs +0 -1
  1033. package/_mjs/optics/Fold/definition.mjs.map +1 -1
  1034. package/_mjs/optics/Fold.mjs.map +1 -1
  1035. package/_mjs/optics/Getter/definition.mjs +0 -1
  1036. package/_mjs/optics/Getter/definition.mjs.map +1 -1
  1037. package/_mjs/optics/Getter.mjs.map +1 -1
  1038. package/_mjs/optics/Index/api.mjs +0 -2
  1039. package/_mjs/optics/Index/api.mjs.map +1 -1
  1040. package/_mjs/optics/Index/definition.mjs +0 -1
  1041. package/_mjs/optics/Index/definition.mjs.map +1 -1
  1042. package/_mjs/optics/Index.mjs.map +1 -1
  1043. package/_mjs/optics/Iso/api.mjs +0 -1
  1044. package/_mjs/optics/Iso/api.mjs.map +1 -1
  1045. package/_mjs/optics/Iso/definition.mjs +2 -4
  1046. package/_mjs/optics/Iso/definition.mjs.map +1 -1
  1047. package/_mjs/optics/Iso.mjs.map +1 -1
  1048. package/_mjs/optics/Lens/api.mjs +0 -22
  1049. package/_mjs/optics/Lens/api.mjs.map +1 -1
  1050. package/_mjs/optics/Lens/definition.mjs +2 -4
  1051. package/_mjs/optics/Lens/definition.mjs.map +1 -1
  1052. package/_mjs/optics/Lens.mjs.map +1 -1
  1053. package/_mjs/optics/Optional/api/compose.mjs +0 -1
  1054. package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
  1055. package/_mjs/optics/Optional/definition.mjs +0 -4
  1056. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  1057. package/_mjs/optics/Optional.mjs +2 -2
  1058. package/_mjs/optics/Optional.mjs.map +1 -1
  1059. package/_mjs/optics/Prism/api/compose.mjs +0 -1
  1060. package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
  1061. package/_mjs/optics/Prism/api/fromNullable.mjs +0 -1
  1062. package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
  1063. package/_mjs/optics/Prism/api/just.mjs +0 -1
  1064. package/_mjs/optics/Prism/api/just.mjs.map +1 -1
  1065. package/_mjs/optics/Prism/definition.mjs +0 -3
  1066. package/_mjs/optics/Prism/definition.mjs.map +1 -1
  1067. package/_mjs/optics/Prism.mjs +2 -2
  1068. package/_mjs/optics/Prism.mjs.map +1 -1
  1069. package/_mjs/optics/Setter/definition.mjs +0 -3
  1070. package/_mjs/optics/Setter/definition.mjs.map +1 -1
  1071. package/_mjs/optics/Setter.mjs.map +1 -1
  1072. package/_mjs/optics/Traversal/api/compose.mjs +0 -1
  1073. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  1074. package/_mjs/optics/Traversal/api/fromTraversable.mjs +0 -1
  1075. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  1076. package/_mjs/optics/Traversal/definition.mjs +0 -3
  1077. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  1078. package/_mjs/optics/Traversal.mjs +2 -2
  1079. package/_mjs/optics/Traversal.mjs.map +1 -1
  1080. package/_mjs/typeclass/Align.mjs.map +1 -1
  1081. package/_mjs/typeclass/Alt.mjs.map +1 -1
  1082. package/_mjs/typeclass/Alternative.mjs.map +1 -1
  1083. package/_mjs/typeclass/Applicative.mjs.map +1 -1
  1084. package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
  1085. package/_mjs/typeclass/Apply.mjs +6 -27
  1086. package/_mjs/typeclass/Apply.mjs.map +1 -1
  1087. package/_mjs/typeclass/Chain.mjs +0 -2
  1088. package/_mjs/typeclass/Chain.mjs.map +1 -1
  1089. package/_mjs/typeclass/Closure.mjs +1 -2
  1090. package/_mjs/typeclass/Closure.mjs.map +1 -1
  1091. package/_mjs/typeclass/Filterable.mjs.map +1 -1
  1092. package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
  1093. package/_mjs/typeclass/Foldable.mjs +1 -2
  1094. package/_mjs/typeclass/Foldable.mjs.map +1 -1
  1095. package/_mjs/typeclass/FoldableWithIndex.mjs +1 -2
  1096. package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
  1097. package/_mjs/typeclass/Functor.mjs +0 -1
  1098. package/_mjs/typeclass/Functor.mjs.map +1 -1
  1099. package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
  1100. package/_mjs/typeclass/Has.mjs +2 -1
  1101. package/_mjs/typeclass/Has.mjs.map +1 -1
  1102. package/_mjs/typeclass/Monad.mjs.map +1 -1
  1103. package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
  1104. package/_mjs/typeclass/Monoid.mjs +6 -15
  1105. package/_mjs/typeclass/Monoid.mjs.map +1 -1
  1106. package/_mjs/typeclass/Pointed.mjs.map +1 -1
  1107. package/_mjs/typeclass/Semialign.mjs +1 -8
  1108. package/_mjs/typeclass/Semialign.mjs.map +1 -1
  1109. package/_mjs/typeclass/Semigroup/api.mjs +6 -8
  1110. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  1111. package/_mjs/typeclass/Semigroup/definition.mjs +2 -3
  1112. package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
  1113. package/_mjs/typeclass/Semigroup/derivations.mjs +7 -14
  1114. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
  1115. package/_mjs/typeclass/Semigroup.mjs.map +1 -1
  1116. package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
  1117. package/_mjs/typeclass/Traversable.mjs +0 -1
  1118. package/_mjs/typeclass/Traversable.mjs.map +1 -1
  1119. package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
  1120. package/_mjs/typeclass/Witherable.mjs +0 -1
  1121. package/_mjs/typeclass/Witherable.mjs.map +1 -1
  1122. package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
  1123. package/_mjs/typeclass/builtin.mjs.map +1 -1
  1124. package/_mjs/typeclass.mjs +9 -8
  1125. package/_mjs/typeclass.mjs.map +1 -1
  1126. package/_mjs/types.mjs.map +1 -1
  1127. package/_mjs/util/AnsiFormat.mjs +8 -35
  1128. package/_mjs/util/AnsiFormat.mjs.map +1 -1
  1129. package/_mjs/util/PCGRandom.mjs +16 -43
  1130. package/_mjs/util/PCGRandom.mjs.map +1 -1
  1131. package/_mjs/util/assert.mjs +0 -1
  1132. package/_mjs/util/assert.mjs.map +1 -1
  1133. package/_mjs/util/pattern.mjs.map +1 -1
  1134. package/_mjs/util/predicates.mjs +0 -1
  1135. package/_mjs/util/predicates.mjs.map +1 -1
  1136. package/_mjs/util/rand/Random.mjs +0 -17
  1137. package/_mjs/util/rand/Random.mjs.map +1 -1
  1138. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs +0 -4
  1139. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
  1140. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs +4 -12
  1141. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
  1142. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs +0 -9
  1143. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
  1144. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs +6 -36
  1145. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
  1146. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs +6 -9
  1147. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
  1148. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs +8 -13
  1149. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
  1150. package/_mjs/util/rand/generator/MersenneTwister.mjs +5 -23
  1151. package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
  1152. package/_mjs/util/rand/generator/RandomGenerator.mjs +0 -4
  1153. package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
  1154. package/_mjs/util/rand.mjs.map +1 -1
  1155. package/_src/collection/Iterable/api.ts +25 -18
  1156. package/_src/collection/Iterable/constructors.ts +2 -0
  1157. package/_src/collection/compat/Array/api.ts +2 -2
  1158. package/_src/collection/compat/Array.ts +0 -1
  1159. package/_src/collection/compat/ArrayLike/api.ts +2 -2
  1160. package/_src/collection/compat.ts +0 -1
  1161. package/_src/collection/immutable/Conc/api.ts +7 -7
  1162. package/_src/collection/immutable/Conc/definition.ts +3 -3
  1163. package/_src/collection/immutable/Conc.ts +1 -1
  1164. package/_src/collection/immutable/Dictionary.ts +4 -0
  1165. package/_src/collection/immutable/HashMap/api.ts +109 -115
  1166. package/_src/collection/immutable/HashMap/definition.ts +17 -3
  1167. package/_src/collection/immutable/HashMap/internal.ts +2 -2
  1168. package/_src/collection/immutable/HashSet/api.ts +84 -72
  1169. package/_src/collection/immutable/HashSet/definition.ts +23 -9
  1170. package/_src/collection/immutable/ImmutableArray/api.ts +9 -7
  1171. package/_src/collection/immutable/ImmutableArray.ts +1 -1
  1172. package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +7 -7
  1173. package/_src/collection/immutable/ImmutableNonEmptyArray.ts +0 -1
  1174. package/_src/collection/immutable/List/api.ts +22 -12
  1175. package/_src/collection/immutable/List/constructors.ts +1 -1
  1176. package/_src/collection/immutable/Queue/api.ts +42 -42
  1177. package/_src/collection/immutable/Queue/guards.ts +2 -2
  1178. package/_src/collection/immutable/SortedMap/api.ts +125 -126
  1179. package/_src/collection/immutable/SortedMap/definition.ts +5 -0
  1180. package/_src/collection/immutable/Vector/api.ts +206 -206
  1181. package/_src/collection/immutable.ts +1 -0
  1182. package/_src/collection/mutable/HashMap.ts +7 -7
  1183. package/_src/collection/mutable/HashSet.ts +6 -6
  1184. package/_src/control/Z/api.ts +4 -4
  1185. package/_src/data/Branded.ts +0 -1
  1186. package/_src/data/Cause/api/linearize.ts +4 -4
  1187. package/_src/data/Cause/api/unified.ts +1 -1
  1188. package/_src/data/Cause/api.ts +1 -3
  1189. package/_src/data/Cause/definition.ts +2 -2
  1190. package/_src/data/Const/api.ts +1 -1
  1191. package/_src/data/Const/instances.ts +2 -2
  1192. package/_src/data/Datum/api.ts +5 -7
  1193. package/_src/data/DecodeError/definition.ts +4 -2
  1194. package/_src/data/Decoder/api.ts +493 -8
  1195. package/_src/data/Duration/api.ts +5 -0
  1196. package/_src/data/Either/instances.ts +3 -3
  1197. package/_src/data/Encoder/api.ts +261 -9
  1198. package/_src/data/Encoder/definition.ts +4 -0
  1199. package/_src/data/Environment/api.ts +2 -2
  1200. package/_src/data/Environment/definition.ts +1 -4
  1201. package/_src/{typeclass → data}/Eq/definition.ts +5 -2
  1202. package/_src/{typeclass → data}/Eq/derivations.ts +8 -6
  1203. package/_src/{typeclass → data}/Eq.ts +0 -0
  1204. package/_src/{typeclass → data}/Equatable/api.ts +4 -2
  1205. package/_src/{typeclass → data}/Equatable/definition.ts +4 -0
  1206. package/_src/{typeclass → data}/Equatable/fast-equals.ts +33 -4
  1207. package/_src/{typeclass → data}/Equatable.ts +0 -0
  1208. package/_src/data/Exit/api.ts +26 -26
  1209. package/_src/data/FiberId/api.ts +3 -3
  1210. package/_src/data/FiberId/constructors.ts +3 -3
  1211. package/_src/data/FiberId/definition.ts +4 -1
  1212. package/_src/data/Guard/api.ts +457 -0
  1213. package/_src/{typeclass → data}/Guard/definition.ts +6 -1
  1214. package/_src/data/Guard.ts +4 -0
  1215. package/_src/{typeclass → data}/Hash.ts +0 -0
  1216. package/_src/{typeclass → data}/HashEq.ts +10 -5
  1217. package/_src/{typeclass → data}/Hashable/definition.ts +4 -0
  1218. package/_src/{typeclass → data}/Hashable/hash.ts +26 -1
  1219. package/_src/{typeclass → data}/Hashable.ts +0 -0
  1220. package/_src/data/Interval.ts +2 -2
  1221. package/_src/data/Maybe/api.ts +3 -3
  1222. package/_src/data/Maybe/instances.ts +21 -0
  1223. package/_src/data/Ord/api/contramap.ts +11 -0
  1224. package/_src/data/Ord/api/max.ts +7 -0
  1225. package/_src/data/Ord/api/min.ts +7 -0
  1226. package/_src/{typeclass → data}/Ord/api.ts +0 -0
  1227. package/_src/{typeclass → data}/Ord/definition.ts +5 -5
  1228. package/_src/{typeclass → data}/Ord/instances.ts +8 -8
  1229. package/_src/{typeclass → data}/Ord.ts +0 -0
  1230. package/_src/{typeclass → data}/Ordering.ts +0 -0
  1231. package/_src/{typeclass → data}/Showable/definition.ts +10 -4
  1232. package/_src/{typeclass → data}/Showable/show.ts +58 -17
  1233. package/_src/{typeclass → data}/Showable/styles.ts +0 -0
  1234. package/_src/{typeclass → data}/Showable/util.ts +0 -0
  1235. package/_src/{typeclass → data}/Showable.ts +0 -0
  1236. package/_src/data/Struct/api.ts +1 -1
  1237. package/_src/data/These/api.ts +6 -6
  1238. package/_src/data/bigint/instances.ts +1 -0
  1239. package/_src/data/boolean/instances.ts +1 -0
  1240. package/_src/data/number/instances.ts +5 -5
  1241. package/_src/data/object/instances.ts +0 -11
  1242. package/_src/data/string/api.ts +2 -4
  1243. package/_src/data/string/instances.ts +4 -4
  1244. package/_src/data.ts +9 -0
  1245. package/_src/global.ts +24 -12
  1246. package/_src/typeclass/Apply.ts +5 -4
  1247. package/_src/typeclass/Closure.ts +2 -2
  1248. package/_src/typeclass/Foldable.ts +1 -1
  1249. package/_src/typeclass/FoldableWithIndex.ts +1 -1
  1250. package/_src/typeclass/Monoid.ts +2 -2
  1251. package/_src/typeclass/Semialign.ts +1 -1
  1252. package/_src/typeclass/Semigroup/api.ts +2 -2
  1253. package/_src/typeclass/Semigroup/definition.ts +6 -2
  1254. package/_src/typeclass/Semigroup/derivations.ts +7 -5
  1255. package/_src/typeclass.ts +9 -8
  1256. package/collection/Iterable/api.d.ts +12 -7
  1257. package/collection/compat/Array.d.ts +0 -1
  1258. package/collection/compat/ArrayLike/api.d.ts +2 -2
  1259. package/collection/compat.d.ts +0 -1
  1260. package/collection/immutable/Conc/api.d.ts +2 -2
  1261. package/collection/immutable/Conc/definition.d.ts +2 -2
  1262. package/collection/immutable/Conc.d.ts +0 -1
  1263. package/collection/immutable/Dictionary.d.ts +2 -0
  1264. package/collection/immutable/HashMap/api.d.ts +48 -48
  1265. package/collection/immutable/HashMap/definition.d.ts +13 -4
  1266. package/collection/immutable/HashSet/api.d.ts +39 -28
  1267. package/collection/immutable/HashSet/definition.d.ts +15 -6
  1268. package/collection/immutable/ImmutableArray/api.d.ts +2 -2
  1269. package/collection/immutable/ImmutableArray/definition.d.ts +2 -2
  1270. package/collection/immutable/ImmutableArray.d.ts +0 -1
  1271. package/collection/immutable/ImmutableNonEmptyArray.d.ts +0 -1
  1272. package/collection/immutable/List/api.d.ts +8 -6
  1273. package/collection/immutable/List/constructors.d.ts +1 -1
  1274. package/collection/immutable/Queue/api.d.ts +16 -16
  1275. package/collection/immutable/Queue/guards.d.ts +1 -1
  1276. package/collection/immutable/RoseTree/definition.d.ts +2 -2
  1277. package/collection/immutable/SortedMap/api.d.ts +27 -26
  1278. package/collection/immutable/SortedMap/definition.d.ts +3 -0
  1279. package/collection/immutable/Vector/api.d.ts +66 -66
  1280. package/collection/immutable/Vector/definition.d.ts +2 -2
  1281. package/collection/immutable.d.ts +1 -0
  1282. package/collection/mutable/HashMap.d.ts +2 -2
  1283. package/collection/mutable/HashSet.d.ts +2 -2
  1284. package/control/Z/api.d.ts +4 -4
  1285. package/data/Branded.d.ts +0 -1
  1286. package/data/CaseClass.d.ts +2 -2
  1287. package/data/Datum/api.d.ts +4 -5
  1288. package/data/Datum/definition.d.ts +2 -2
  1289. package/data/DecodeError/definition.d.ts +2 -1
  1290. package/data/Decoder/api.d.ts +152 -4
  1291. package/data/Duration/api.d.ts +5 -0
  1292. package/data/Duration/definition.d.ts +2 -2
  1293. package/data/Either/instances.d.ts +1 -1
  1294. package/data/Encoder/api.d.ts +147 -6
  1295. package/data/Encoder/definition.d.ts +4 -0
  1296. package/data/Environment/definition.d.ts +2 -2
  1297. package/{typeclass → data}/Eq/definition.d.ts +3 -3
  1298. package/{typeclass → data}/Eq/derivations.d.ts +3 -3
  1299. package/{typeclass → data}/Eq.d.ts +0 -0
  1300. package/{typeclass → data}/Equatable/api.d.ts +2 -2
  1301. package/{typeclass → data}/Equatable/definition.d.ts +1 -1
  1302. package/{typeclass → data}/Equatable/fast-equals.d.ts +0 -0
  1303. package/{typeclass → data}/Equatable.d.ts +0 -0
  1304. package/data/Exit/api.d.ts +15 -15
  1305. package/data/Exit/definition.d.ts +1 -1
  1306. package/data/FiberId/constructors.d.ts +1 -2
  1307. package/data/FiberId/definition.d.ts +7 -5
  1308. package/data/Guard/api.d.ts +242 -0
  1309. package/{typeclass → data}/Guard/definition.d.ts +4 -2
  1310. package/{typeclass → data}/Guard.d.ts +0 -0
  1311. package/{typeclass → data}/Hash.d.ts +1 -1
  1312. package/{typeclass → data}/HashEq.d.ts +6 -7
  1313. package/{typeclass → data}/Hashable/definition.d.ts +1 -1
  1314. package/{typeclass → data}/Hashable/hash.d.ts +11 -11
  1315. package/{typeclass → data}/Hashable.d.ts +0 -0
  1316. package/data/Interval.d.ts +2 -1
  1317. package/data/Maybe/api.d.ts +2 -2
  1318. package/data/Maybe/definition.d.ts +2 -2
  1319. package/data/Maybe/instances.d.ts +7 -1
  1320. package/{typeclass → data}/Ord/api/contramap.d.ts +2 -2
  1321. package/data/Ord/api/max.d.ts +7 -0
  1322. package/data/Ord/api/min.d.ts +7 -0
  1323. package/{typeclass → data}/Ord/api.d.ts +0 -0
  1324. package/data/Ord/definition.d.ts +19 -0
  1325. package/{typeclass → data}/Ord/instances.d.ts +3 -3
  1326. package/{typeclass → data}/Ord.d.ts +0 -0
  1327. package/{typeclass → data}/Ordering.d.ts +5 -5
  1328. package/data/Showable/definition.d.ts +17 -0
  1329. package/{typeclass → data}/Showable/show.d.ts +1 -1
  1330. package/{typeclass → data}/Showable/styles.d.ts +0 -0
  1331. package/{typeclass → data}/Showable/util.d.ts +0 -0
  1332. package/{typeclass → data}/Showable.d.ts +0 -0
  1333. package/data/Tag/definition.d.ts +2 -2
  1334. package/data/These/instances.d.ts +1 -1
  1335. package/data/bigint/instances.d.ts +1 -0
  1336. package/data/boolean/instances.d.ts +1 -0
  1337. package/data/number/instances.d.ts +1 -1
  1338. package/data/object/instances.d.ts +0 -6
  1339. package/data.d.ts +9 -0
  1340. package/global.d.ts +24 -12
  1341. package/package.json +2 -2
  1342. package/typeclass/Apply.d.ts +4 -4
  1343. package/typeclass/Closure.d.ts +2 -2
  1344. package/typeclass/Semigroup/api.d.ts +1 -1
  1345. package/typeclass/Semigroup/definition.d.ts +2 -2
  1346. package/typeclass.d.ts +8 -8
  1347. package/_cjs/collection/compat/Array/derivations.cjs +0 -118
  1348. package/_cjs/collection/compat/Array/derivations.cjs.map +0 -1
  1349. package/_cjs/collection/compat/Record/instances.cjs +0 -164
  1350. package/_cjs/collection/compat/Record/instances.cjs.map +0 -1
  1351. package/_cjs/collection/compat/Record.cjs +0 -19
  1352. package/_cjs/collection/compat/Record.cjs.map +0 -1
  1353. package/_cjs/collection/immutable/Conc/derivations.cjs +0 -56
  1354. package/_cjs/collection/immutable/Conc/derivations.cjs.map +0 -1
  1355. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs +0 -52
  1356. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs.map +0 -1
  1357. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs +0 -73
  1358. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs.map +0 -1
  1359. package/_cjs/data/Branded/derivations.cjs +0 -58
  1360. package/_cjs/data/Branded/derivations.cjs.map +0 -1
  1361. package/_cjs/typeclass/Eq/definition.cjs.map +0 -1
  1362. package/_cjs/typeclass/Eq/derivations.cjs.map +0 -1
  1363. package/_cjs/typeclass/Eq.cjs.map +0 -1
  1364. package/_cjs/typeclass/Equatable/api.cjs.map +0 -1
  1365. package/_cjs/typeclass/Equatable/definition.cjs.map +0 -1
  1366. package/_cjs/typeclass/Equatable/fast-equals.cjs.map +0 -1
  1367. package/_cjs/typeclass/Equatable.cjs.map +0 -1
  1368. package/_cjs/typeclass/Guard/api.cjs +0 -48
  1369. package/_cjs/typeclass/Guard/api.cjs.map +0 -1
  1370. package/_cjs/typeclass/Guard/definition.cjs.map +0 -1
  1371. package/_cjs/typeclass/Guard/derivations.cjs +0 -85
  1372. package/_cjs/typeclass/Guard/derivations.cjs.map +0 -1
  1373. package/_cjs/typeclass/Guard.cjs.map +0 -1
  1374. package/_cjs/typeclass/Hash.cjs.map +0 -1
  1375. package/_cjs/typeclass/HashEq.cjs.map +0 -1
  1376. package/_cjs/typeclass/Hashable/definition.cjs.map +0 -1
  1377. package/_cjs/typeclass/Hashable/hash.cjs.map +0 -1
  1378. package/_cjs/typeclass/Hashable.cjs.map +0 -1
  1379. package/_cjs/typeclass/Ord/api/contramap.cjs.map +0 -1
  1380. package/_cjs/typeclass/Ord/api/max.cjs.map +0 -1
  1381. package/_cjs/typeclass/Ord/api/min.cjs.map +0 -1
  1382. package/_cjs/typeclass/Ord/api.cjs.map +0 -1
  1383. package/_cjs/typeclass/Ord/definition.cjs.map +0 -1
  1384. package/_cjs/typeclass/Ord/instances.cjs.map +0 -1
  1385. package/_cjs/typeclass/Ord.cjs.map +0 -1
  1386. package/_cjs/typeclass/Ordering.cjs.map +0 -1
  1387. package/_cjs/typeclass/Showable/definition.cjs.map +0 -1
  1388. package/_cjs/typeclass/Showable/show.cjs.map +0 -1
  1389. package/_cjs/typeclass/Showable/styles.cjs.map +0 -1
  1390. package/_cjs/typeclass/Showable/util.cjs.map +0 -1
  1391. package/_cjs/typeclass/Showable.cjs.map +0 -1
  1392. package/_mjs/collection/compat/Array/derivations.mjs +0 -86
  1393. package/_mjs/collection/compat/Array/derivations.mjs.map +0 -1
  1394. package/_mjs/collection/compat/Record/instances.mjs +0 -136
  1395. package/_mjs/collection/compat/Record/instances.mjs.map +0 -1
  1396. package/_mjs/collection/compat/Record.mjs +0 -3
  1397. package/_mjs/collection/compat/Record.mjs.map +0 -1
  1398. package/_mjs/collection/immutable/Conc/derivations.mjs +0 -35
  1399. package/_mjs/collection/immutable/Conc/derivations.mjs.map +0 -1
  1400. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs +0 -33
  1401. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs.map +0 -1
  1402. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs +0 -47
  1403. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs.map +0 -1
  1404. package/_mjs/data/Branded/derivations.mjs +0 -40
  1405. package/_mjs/data/Branded/derivations.mjs.map +0 -1
  1406. package/_mjs/typeclass/Eq/definition.mjs.map +0 -1
  1407. package/_mjs/typeclass/Eq/derivations.mjs.map +0 -1
  1408. package/_mjs/typeclass/Eq.mjs.map +0 -1
  1409. package/_mjs/typeclass/Equatable/api.mjs.map +0 -1
  1410. package/_mjs/typeclass/Equatable/definition.mjs.map +0 -1
  1411. package/_mjs/typeclass/Equatable/fast-equals.mjs.map +0 -1
  1412. package/_mjs/typeclass/Equatable.mjs.map +0 -1
  1413. package/_mjs/typeclass/Guard/api.mjs +0 -32
  1414. package/_mjs/typeclass/Guard/api.mjs.map +0 -1
  1415. package/_mjs/typeclass/Guard/definition.mjs.map +0 -1
  1416. package/_mjs/typeclass/Guard/derivations.mjs +0 -67
  1417. package/_mjs/typeclass/Guard/derivations.mjs.map +0 -1
  1418. package/_mjs/typeclass/Guard.mjs +0 -4
  1419. package/_mjs/typeclass/Guard.mjs.map +0 -1
  1420. package/_mjs/typeclass/Hash.mjs.map +0 -1
  1421. package/_mjs/typeclass/HashEq.mjs +0 -33
  1422. package/_mjs/typeclass/HashEq.mjs.map +0 -1
  1423. package/_mjs/typeclass/Hashable/definition.mjs.map +0 -1
  1424. package/_mjs/typeclass/Hashable/hash.mjs.map +0 -1
  1425. package/_mjs/typeclass/Hashable.mjs.map +0 -1
  1426. package/_mjs/typeclass/Ord/api/contramap.mjs +0 -12
  1427. package/_mjs/typeclass/Ord/api/contramap.mjs.map +0 -1
  1428. package/_mjs/typeclass/Ord/api/max.mjs +0 -8
  1429. package/_mjs/typeclass/Ord/api/max.mjs.map +0 -1
  1430. package/_mjs/typeclass/Ord/api/min.mjs +0 -8
  1431. package/_mjs/typeclass/Ord/api/min.mjs.map +0 -1
  1432. package/_mjs/typeclass/Ord/api.mjs.map +0 -1
  1433. package/_mjs/typeclass/Ord/definition.mjs +0 -13
  1434. package/_mjs/typeclass/Ord/definition.mjs.map +0 -1
  1435. package/_mjs/typeclass/Ord/instances.mjs +0 -37
  1436. package/_mjs/typeclass/Ord/instances.mjs.map +0 -1
  1437. package/_mjs/typeclass/Ord.mjs.map +0 -1
  1438. package/_mjs/typeclass/Ordering.mjs.map +0 -1
  1439. package/_mjs/typeclass/Showable/definition.mjs.map +0 -1
  1440. package/_mjs/typeclass/Showable/show.mjs.map +0 -1
  1441. package/_mjs/typeclass/Showable/styles.mjs.map +0 -1
  1442. package/_mjs/typeclass/Showable/util.mjs.map +0 -1
  1443. package/_mjs/typeclass/Showable.mjs.map +0 -1
  1444. package/_src/collection/compat/Array/derivations.ts +0 -111
  1445. package/_src/collection/compat/Record/instances.ts +0 -151
  1446. package/_src/collection/compat/Record.ts +0 -3
  1447. package/_src/collection/immutable/Conc/derivations.ts +0 -41
  1448. package/_src/collection/immutable/ImmutableArray/derivations.ts +0 -41
  1449. package/_src/collection/immutable/ImmutableNonEmptyArray/derivations.ts +0 -57
  1450. package/_src/data/Branded/derivations.ts +0 -58
  1451. package/_src/typeclass/Guard/api.ts +0 -37
  1452. package/_src/typeclass/Guard/derivations.ts +0 -80
  1453. package/_src/typeclass/Guard.ts +0 -4
  1454. package/_src/typeclass/Ord/api/contramap.ts +0 -12
  1455. package/_src/typeclass/Ord/api/max.ts +0 -8
  1456. package/_src/typeclass/Ord/api/min.ts +0 -8
  1457. package/collection/compat/Array/derivations.d.ts +0 -35
  1458. package/collection/compat/Record/instances.d.ts +0 -46
  1459. package/collection/compat/Record.d.ts +0 -1
  1460. package/collection/immutable/Conc/derivations.d.ts +0 -20
  1461. package/collection/immutable/ImmutableArray/derivations.d.ts +0 -20
  1462. package/collection/immutable/ImmutableNonEmptyArray/derivations.d.ts +0 -20
  1463. package/data/Branded/derivations.d.ts +0 -24
  1464. package/typeclass/Guard/api.d.ts +0 -20
  1465. package/typeclass/Guard/derivations.d.ts +0 -36
  1466. package/typeclass/Ord/api/max.d.ts +0 -7
  1467. package/typeclass/Ord/api/min.d.ts +0 -7
  1468. package/typeclass/Ord/definition.d.ts +0 -19
  1469. package/typeclass/Showable/definition.d.ts +0 -17
@@ -1,7 +1,12 @@
1
+ import type { Brand, Validation } from "@fncts/base/data/Branded";
1
2
  import type { DecodeError } from "@fncts/base/data/DecodeError";
3
+ import type { Literal } from "@fncts/typelevel/Any";
2
4
  import type { Check } from "@fncts/typelevel/Check";
3
5
  import type { OptionalKeys, RequiredKeys } from "@fncts/typelevel/Object";
4
6
 
7
+ import { BrandedError } from "@fncts/base/data/DecodeError";
8
+ import { EmptyError } from "@fncts/base/data/DecodeError";
9
+ import { OptionalIndexError } from "@fncts/base/data/DecodeError";
5
10
  import {
6
11
  CompoundError,
7
12
  LiteralError,
@@ -13,6 +18,8 @@ import {
13
18
  UnionError,
14
19
  } from "@fncts/base/data/DecodeError";
15
20
  import { Decoder } from "@fncts/base/data/Decoder/definition";
21
+ import { pipe } from "@fncts/base/data/function";
22
+ import { isNull, isUndefined } from "@fncts/base/util/predicates";
16
23
 
17
24
  /**
18
25
  * @tsplus pipeable fncts.Decoder __call
@@ -43,13 +50,47 @@ export const number: Decoder<number> = fromGuard(Number.Guard, (u) => new Primit
43
50
  export const boolean: Decoder<boolean> = fromGuard(Boolean.Guard, (u) => new PrimitiveError(u, "boolean"), "boolean");
44
51
 
45
52
  /**
46
- * @tsplus static fncts.DecoderOps record
47
53
  * @tsplus implicit
48
54
  */
49
- export const record: Decoder<{}> = fromGuard(Object.Guard, (u) => new PrimitiveError(u, "{}"), "{}");
55
+ export const bigint: Decoder<bigint> = fromGuard(BigInt.Guard, (u) => new PrimitiveError(u, "bigint"), "bigint");
56
+
57
+ /**
58
+ * @tsplus static fncts.DecoderOps object
59
+ * @tsplus implicit
60
+ */
61
+ export const object: Decoder<{}> = fromGuard(Object.Guard, (u) => new PrimitiveError(u, "{}"), "{}");
62
+
63
+ /**
64
+ * @tsplus static fncts.DecoderOps unknown
65
+ */
66
+ export const unknown: Decoder<unknown> = Decoder(These.right, "unknown");
67
+
68
+ /**
69
+ * @tsplus static fncts.DecoderOps null
70
+ * @tsplus implicit
71
+ */
72
+ export const _null: Decoder<null> = fromGuard(Guard(isNull), (u) => new PrimitiveError(u, "null"), "null");
73
+
74
+ /**
75
+ * @tsplus static fncts.DecoderOps undefined
76
+ * @tsplus implicit
77
+ */
78
+ export const _undefined: Decoder<undefined> = fromGuard(
79
+ Guard(isUndefined),
80
+ (u) => new PrimitiveError(u, "undefined"),
81
+ "undefined",
82
+ );
83
+
84
+ /**
85
+ * @tsplus static fncts.DecoderOps nullable
86
+ */
87
+ export function nullable<A>(/** @tsplus implicit local */ base: Decoder<A>): Decoder<A | null | undefined> {
88
+ return Derive();
89
+ }
50
90
 
51
91
  /**
52
92
  * @tsplus derive fncts.Decoder lazy
93
+ * @tsplus static fncts.DecoderOps lazy
53
94
  */
54
95
  export function deriveLazy<A>(f: (_: Decoder<A>) => Decoder<A>): Decoder<A> {
55
96
  let cached: Decoder<A> | undefined;
@@ -63,11 +104,9 @@ export function deriveLazy<A>(f: (_: Decoder<A>) => Decoder<A>): Decoder<A> {
63
104
  }
64
105
 
65
106
  /**
66
- * @tsplus derive fncts.Decoder<_> 20
107
+ * @tsplus static fncts.DecoderOps literal
67
108
  */
68
- export function deriveLiteral<A extends string | number | boolean>(
69
- ...[value]: Check<Check.IsLiteral<A> & Check.Not<Check.IsUnion<A>>> extends Check.True ? [value: A] : never
70
- ): Decoder<A> {
109
+ export function literal<A extends Literal>(value: A): Decoder<A> {
71
110
  return Decoder(
72
111
  (u) => (u === value ? These.right(u as A) : These.left(new LiteralError(u, Vector(value)))),
73
112
  value.toString(),
@@ -75,9 +114,19 @@ export function deriveLiteral<A extends string | number | boolean>(
75
114
  }
76
115
 
77
116
  /**
117
+ * @tsplus derive fncts.Decoder<_> 20
118
+ */
119
+ export function deriveLiteral<A extends string | number | boolean>(
120
+ ...[value]: Check<Check.IsLiteral<A> & Check.Not<Check.IsUnion<A>>> extends Check.True ? [value: A] : never
121
+ ): Decoder<A> {
122
+ return Decoder.literal(value);
123
+ }
124
+
125
+ /**
126
+ * @tsplus static fncts.DecoderOps union
78
127
  * @tsplus derive fncts.Decoder<|> 30
79
128
  */
80
- export function deriveUnion<A extends ReadonlyArray<unknown>>(
129
+ export function union<A extends ReadonlyArray<unknown>>(
81
130
  ...elements: {
82
131
  [K in keyof A]: Decoder<A[K]>;
83
132
  }
@@ -97,6 +146,123 @@ export function deriveUnion<A extends ReadonlyArray<unknown>>(
97
146
  }, label);
98
147
  }
99
148
 
149
+ /**
150
+ * @tsplus static fncts.DecoderOps struct
151
+ */
152
+ export function struct<A extends Record<string, any>>(fields: {
153
+ [K in keyof A]: Decoder<A[K]>;
154
+ }): Decoder<A> {
155
+ let label = "{";
156
+ let first = true;
157
+ for (const k in fields) {
158
+ if (first) {
159
+ label += ` ${k}: ${(fields[k] as Decoder<any>).label}`;
160
+ } else {
161
+ label += `, ${k}: ${(fields[k] as Decoder<any>).label}`;
162
+ }
163
+ first = false;
164
+ }
165
+ if (label.length > 1) {
166
+ label += " ";
167
+ }
168
+ label += "}";
169
+
170
+ return Decoder((u) => {
171
+ const recordResult = object.decode(u);
172
+ if (recordResult.isLeft()) {
173
+ return recordResult;
174
+ }
175
+ const input = recordResult.right;
176
+ let errored = false;
177
+ const errors: Array<RequiredKeyError | OptionalKeyError> = [];
178
+ const decoded = {} as A;
179
+ for (const key in fields) {
180
+ if (!(key in input)) {
181
+ errors.push(new RequiredKeyError(key, new MissingKeyError(key)));
182
+ errored = true;
183
+ } else {
184
+ const res = (fields[key] as Decoder<any>).decode(input[key as string]);
185
+ res.match2(
186
+ (e) => {
187
+ errored = true;
188
+ errors.push(new RequiredKeyError(key, e));
189
+ },
190
+ (warning, a) => {
191
+ decoded[key as keyof A] = a;
192
+ if (warning.isJust()) {
193
+ errors.push(new RequiredKeyError(key, warning.value));
194
+ }
195
+ },
196
+ );
197
+ }
198
+ }
199
+ if (errored) {
200
+ return These.left(new CompoundError("struct", Vector.from(errors)));
201
+ }
202
+ if (errors.length !== 0) {
203
+ return These.both(new CompoundError("struct", Vector.from(errors)), decoded);
204
+ }
205
+ return These.right(decoded);
206
+ }, label);
207
+ }
208
+
209
+ /**
210
+ * @tsplus static fncts.DecoderOps partial
211
+ */
212
+ export function partial<A extends Record<string, any>>(fields: {
213
+ [K in keyof A]: Decoder<A[K]>;
214
+ }): Decoder<Partial<A>> {
215
+ let label = "{";
216
+ let first = true;
217
+ for (const k in fields) {
218
+ if (first) {
219
+ label += ` ${k}?: ${(fields[k] as Decoder<any>).label}`;
220
+ } else {
221
+ label += `, ${k}?: ${(fields[k] as Decoder<any>).label}`;
222
+ }
223
+ first = false;
224
+ }
225
+ if (label.length > 1) {
226
+ label += " ";
227
+ }
228
+ label += "}";
229
+
230
+ return Decoder((u) => {
231
+ const recordResult = object.decode(u);
232
+ if (recordResult.isLeft()) {
233
+ return recordResult;
234
+ }
235
+ const input = recordResult.right;
236
+ let errored = false;
237
+ const errors: Array<RequiredKeyError | OptionalKeyError> = [];
238
+ const decoded = {} as A;
239
+ for (const key in fields) {
240
+ if (key in input && typeof input[key as string] !== "undefined") {
241
+ const res = (fields[key] as Decoder<any>).decode(input[key as string]);
242
+ res.match2(
243
+ (e) => {
244
+ errored = true;
245
+ errors.push(new OptionalKeyError(key, e));
246
+ },
247
+ (warning, a) => {
248
+ decoded[key as keyof A] = a;
249
+ if (warning.isJust()) {
250
+ errors.push(new RequiredKeyError(key, warning.value));
251
+ }
252
+ },
253
+ );
254
+ }
255
+ }
256
+ if (errored) {
257
+ return These.left(new CompoundError("struct", Vector.from(errors)));
258
+ }
259
+ if (errors.length !== 0) {
260
+ return These.both(new CompoundError("struct", Vector.from(errors)), decoded);
261
+ }
262
+ return These.right(decoded);
263
+ }, label);
264
+ }
265
+
100
266
  /**
101
267
  * @tsplus derive fncts.Decoder<_> 20
102
268
  */
@@ -143,7 +309,7 @@ export function deriveStruct<A extends Record<string, any>>(
143
309
  label += "}";
144
310
 
145
311
  return Decoder((u) => {
146
- const recordResult = record.decode(u);
312
+ const recordResult = object.decode(u);
147
313
  if (recordResult.isLeft()) {
148
314
  return recordResult;
149
315
  }
@@ -199,3 +365,322 @@ export function deriveStruct<A extends Record<string, any>>(
199
365
  return These.right(decoded);
200
366
  }, label);
201
367
  }
368
+
369
+ /**
370
+ * @tsplus derive fncts.Decoder[fncts.Array]<_> 10
371
+ */
372
+ export function deriveArray<A extends Array<any>>(
373
+ ...[element]: [A] extends [Array<infer _A>]
374
+ ? Check<Check.IsEqual<A, Array<_A>>> extends Check.True
375
+ ? [element: Decoder<_A>]
376
+ : never
377
+ : never
378
+ ): Decoder<A> {
379
+ return Decoder((u) => {
380
+ if (Array.isArray(u)) {
381
+ const errors = Vector.emptyPushable<DecodeError>();
382
+ let failed = false;
383
+ const out = Array(u.length);
384
+ for (let i = 0; i < u.length; i++) {
385
+ const decoded = element.decode(u[i]!);
386
+ decoded.match2(
387
+ (err) => {
388
+ failed = true;
389
+ errors.push(new OptionalIndexError(i, err));
390
+ },
391
+ (warning, value) => {
392
+ out[i] = value;
393
+ if (warning.isJust()) {
394
+ errors.push(warning.value);
395
+ }
396
+ },
397
+ );
398
+ }
399
+ if (failed) {
400
+ return These.left(new CompoundError("Array", errors));
401
+ }
402
+ return These.rightOrBoth(errors.length > 0 ? Just(new CompoundError("Array", errors)) : Nothing(), out as A);
403
+ }
404
+ return These.left(new PrimitiveError(u, "Array"));
405
+ }, `Array<${element.label}>`);
406
+ }
407
+
408
+ /**
409
+ * @tsplus static fncts.DecoderOps array
410
+ */
411
+ export function array<A>(base: Decoder<A>): Decoder<Array<A>> {
412
+ return Derive();
413
+ }
414
+
415
+ /**
416
+ * @tsplus derive fncts.Decoder[fncts.ReadonlyArray]<_> 10
417
+ */
418
+ export function deriveReadonlyArray<A extends ReadonlyArray<any>>(
419
+ ...[element]: [A] extends [ReadonlyArray<infer _A>]
420
+ ? Check<Check.IsEqual<A, ReadonlyArray<_A>>> extends Check.True
421
+ ? [element: Decoder<_A>]
422
+ : never
423
+ : never
424
+ ): Decoder<A> {
425
+ return Decoder((u) => deriveArray(element).decode(u) as These<DecodeError, A>, `ReadonlyArray<${element.label}>`);
426
+ }
427
+
428
+ /**
429
+ * @tsplus static fncts.DecoderOps readonlyArray
430
+ */
431
+ export function readonlyArray<A>(base: Decoder<A>): Decoder<ReadonlyArray<A>> {
432
+ return Derive();
433
+ }
434
+
435
+ /**
436
+ * @tsplus derive fncts.Decoder<_> 15
437
+ */
438
+ export function deriveRecord<A extends Record<string, any>>(
439
+ ...[keyGuard, valueDecoder, requiredKeysRecord]: [A] extends [Record<infer X, infer Y>]
440
+ ? Check<Check.Not<Check.IsUnion<A>> & Check.IsEqual<A, Record<X, Y>>> extends Check.True
441
+ ? [
442
+ keyGuard: Guard<X>,
443
+ valueDecoder: Decoder<Y>,
444
+ requiredKeysRecord: {
445
+ [k in X]: 0;
446
+ },
447
+ ]
448
+ : never
449
+ : never
450
+ ): Decoder<A> {
451
+ return Decoder((u) => {
452
+ const recordResult = Derive<Decoder<{}>>().decode(u);
453
+ if (recordResult.isLeft()) {
454
+ return recordResult;
455
+ }
456
+ const asRecord = recordResult.right;
457
+ const errors: Array<RequiredKeyError | OptionalKeyError> = [];
458
+ let errored = false;
459
+ const missing = new Set(Object.keys(requiredKeysRecord));
460
+ const res = {};
461
+ for (const k in asRecord) {
462
+ if (keyGuard.is(k)) {
463
+ const valueResult = valueDecoder.decode(asRecord[k]);
464
+ valueResult.match2(
465
+ (e) => {
466
+ errored = true;
467
+ errors.push(new (k in requiredKeysRecord ? RequiredKeyError : OptionalKeyError)(k, e));
468
+ },
469
+ (warning, a) => {
470
+ missing.delete(k);
471
+ res[k] = a;
472
+ if (warning.isJust()) {
473
+ errors.push(new (k in requiredKeysRecord ? RequiredKeyError : OptionalKeyError)(k, warning.value));
474
+ }
475
+ },
476
+ );
477
+ }
478
+ }
479
+ if (errored) {
480
+ return These.left(new CompoundError("record", Vector.from(errors)));
481
+ }
482
+ if (errors.length > 0) {
483
+ return These.both(new CompoundError("record", Vector.from(errors)), res as A);
484
+ }
485
+ if (missing.size > 0) {
486
+ return These.left(
487
+ new CompoundError(
488
+ "record",
489
+ Vector.from(missing).map((k) => new MissingKeyError(k)),
490
+ ),
491
+ );
492
+ }
493
+ return These.right(res as A);
494
+ }, `Record<string, ${valueDecoder.label}>`);
495
+ }
496
+
497
+ /**
498
+ * @tsplus static fncts.DecoderOps record
499
+ */
500
+ export function record<A>(codomain: Decoder<A>): Decoder<Record<string, A>> {
501
+ return Derive();
502
+ }
503
+
504
+ /**
505
+ * @tsplus derive fncts.Decoder[fncts.ImmutableArray]<_> 10
506
+ */
507
+ export function deriveImmutableArray<A extends ImmutableArray<any>>(
508
+ ...[array, elem]: [A] extends [ImmutableArray<infer _A>]
509
+ ? Check<Check.IsEqual<A, ImmutableArray<_A>>> extends Check.True
510
+ ? [array: Decoder<Array<_A>>, elem: Decoder<_A>]
511
+ : never
512
+ : never
513
+ ): Decoder<A> {
514
+ return Decoder((u) => array.decode(u).map((as) => new ImmutableArray(as) as A), `ImmutableArray<${elem.label}>`);
515
+ }
516
+
517
+ /**
518
+ * @tsplus static fncts.DecoderOps immutableArray
519
+ */
520
+ export function immutableArray<A>(base: Decoder<A>): Decoder<ImmutableArray<A>> {
521
+ return Derive();
522
+ }
523
+
524
+ /**
525
+ * @tsplus derive fncts.Decoder[fncts.ImmutableNonEmptyArray]<_> 10
526
+ */
527
+ export function deriveImmutableNonEmptyArray<A extends ImmutableNonEmptyArray<any>>(
528
+ ...[array, elem]: [A] extends [ImmutableNonEmptyArray<infer _A>]
529
+ ? Check<Check.IsEqual<A, ImmutableNonEmptyArray<_A>>> extends Check.True
530
+ ? [array: Decoder<Array<_A>>, elem: Decoder<_A>]
531
+ : never
532
+ : never
533
+ ): Decoder<A> {
534
+ return Decoder(
535
+ (u) =>
536
+ array.decode(u).match2(These.left, (warn, as) => {
537
+ if (as.isNonEmpty()) {
538
+ return These.right(new ImmutableNonEmptyArray(as) as A);
539
+ } else {
540
+ const err = new EmptyError(as);
541
+ return warn.match(
542
+ () => These.left(err),
543
+ (err0) => These.left(new CompoundError(`ImmutableNonEmptyArray<${elem.label}>`, Vector(err0, err))),
544
+ );
545
+ }
546
+ }),
547
+ `ImmutableNonEmptyArray<${elem.label}>`,
548
+ );
549
+ }
550
+
551
+ /**
552
+ * @tsplus static fncts.DecoderOps immutableNonEmptyArray
553
+ */
554
+ export function immutableNonEmptyArray<A>(base: Decoder<A>): Decoder<ImmutableNonEmptyArray<A>> {
555
+ return Derive();
556
+ }
557
+
558
+ /**
559
+ * @tsplus derive fncts.Decoder[fncts.Conc]<_> 10
560
+ */
561
+ export function deriveConc<A extends Conc<any>>(
562
+ ...[array, elem]: [A] extends [Conc<infer _A>]
563
+ ? Check<Check.IsEqual<A, Conc<_A>>> extends Check.True
564
+ ? [array: Decoder<Array<_A>>, elem: Decoder<_A>]
565
+ : never
566
+ : never
567
+ ): Decoder<A> {
568
+ return Decoder((u) => array.decode(u).map((a) => Conc.from(a) as A), `Conc<${elem.label}>`);
569
+ }
570
+
571
+ /**
572
+ * @tsplus static fncts.DecoderOps conc
573
+ */
574
+ export function conc<A>(base: Decoder<A>): Decoder<Conc<A>> {
575
+ return Derive();
576
+ }
577
+
578
+ /**
579
+ * @tsplus derive fncts.Decoder<_> 10
580
+ */
581
+ export function deriveValidation<A extends Brand.Valid<any, any>>(
582
+ ...[base, brands]: Check<Brand.IsValidated<A>> extends Check.True
583
+ ? [
584
+ base: Decoder<Brand.Unbranded<A>>,
585
+ brands: {
586
+ [K in keyof A[Brand.valid] & string]: Validation<A[Brand.valid][K], K>;
587
+ },
588
+ ]
589
+ : never
590
+ ): Decoder<A> {
591
+ const label = "Brand<" + Object.keys(brands).join(" & ") + ">";
592
+ return Decoder(
593
+ (u) =>
594
+ base.decode(u).match2(These.left, (warning, value) => {
595
+ const failedBrands: Array<string> = [];
596
+ for (const brand in brands) {
597
+ if (!brands[brand]!.validate(value as any)) {
598
+ failedBrands.push(brand);
599
+ }
600
+ }
601
+ if (failedBrands.length > 0) {
602
+ const error = new BrandedError(label, Vector.from(failedBrands));
603
+ return warning.match(
604
+ () => These.left(error),
605
+ (warning) => These.left(new CompoundError(label, Vector(warning, error))),
606
+ );
607
+ }
608
+ return These.rightOrBoth(warning, value as A);
609
+ }),
610
+ label,
611
+ );
612
+ }
613
+
614
+ /**
615
+ * @tsplus static fncts.DecoderOps validation
616
+ */
617
+ export function validation<A, B extends ReadonlyArray<Validation<A, any>>>(...validations: B) {
618
+ return (
619
+ base: Decoder<A>,
620
+ ): Decoder<A & { [K in keyof B]: B[K] extends Validation<any, infer S> ? Brand.Valid<A, S> : never }[number]> =>
621
+ Decoder(
622
+ (u) =>
623
+ base.decode(u).match2(These.left, (warning, value) => {
624
+ let failed = false;
625
+ for (const validation of validations) {
626
+ if (!validation.validate(value)) {
627
+ failed = true;
628
+ }
629
+ }
630
+ if (failed) {
631
+ const error = new BrandedError(base.label, Vector());
632
+ return warning.match(
633
+ () => These.left(error),
634
+ (warning) => These.left(new CompoundError(base.label, Vector(warning, error))),
635
+ );
636
+ }
637
+ return These.rightOrBoth(
638
+ warning,
639
+ value as A & { [K in keyof B]: B[K] extends Validation<any, infer S> ? Brand.Valid<A, S> : never }[number],
640
+ );
641
+ }),
642
+ base.label,
643
+ );
644
+ }
645
+
646
+ /**
647
+ * @tsplus derive fncts.Decoder<_> 10
648
+ */
649
+ export function deriveTuple<A extends ReadonlyArray<unknown>>(
650
+ ...[components]: Check<Check.IsTuple<A>> extends Check.True ? [components: { [K in keyof A]: Decoder<A[K]> }] : never
651
+ ): Decoder<A> {
652
+ const label = `[ ${components.map((d) => d.label).join(", ")} ]`;
653
+ return Decoder((u) => {
654
+ if (Array.isArray(u)) {
655
+ const errors = Vector.emptyPushable<DecodeError>();
656
+ let failed = false;
657
+ const out = Array(u.length);
658
+ for (let i = 0; i < components.length; i++) {
659
+ const decoded = components[i]!.decode(u[i]!);
660
+ decoded.match2(
661
+ (err) => {
662
+ failed = true;
663
+ errors.push(new OptionalIndexError(i, err));
664
+ },
665
+ (warning, value) => {
666
+ out[i] = value;
667
+ if (warning.isJust()) {
668
+ errors.push(warning.value);
669
+ }
670
+ },
671
+ );
672
+ }
673
+ if (failed) {
674
+ return These.left(new CompoundError("Array", errors));
675
+ }
676
+ }
677
+ return These.left(new PrimitiveError(u, "Array"));
678
+ }, label);
679
+ }
680
+
681
+ /**
682
+ * @tsplus static fncts.DecoderOps tuple
683
+ */
684
+ export function tuple<A extends ReadonlyArray<unknown>>(...components: { [K in keyof A]: Decoder<A[K]> }): Decoder<A> {
685
+ return deriveTuple(components.unsafeCoerce()).unsafeCoerce();
686
+ }
@@ -78,3 +78,8 @@ export function difference(that: Duration) {
78
78
  export function fromInterval(start: number, end: number): Duration {
79
79
  return Duration.milliseconds(Math.round(end) - Math.round(start));
80
80
  }
81
+
82
+ /**
83
+ * @tsplus static fncts.DurationOps zero
84
+ */
85
+ export const zero: Duration = (0).milliseconds;
@@ -18,18 +18,18 @@ export const Functor = HKT.instance<P.Functor<EitherF>>({
18
18
  */
19
19
  export function getEq<E, A>(EE: P.Eq<E>, EA: P.Eq<A>): P.Eq<Either<E, A>> {
20
20
  return P.Eq({
21
- equals: (x, y) =>
21
+ equals: (y) => (x) =>
22
22
  x === y ||
23
23
  x.match(
24
24
  (e1) =>
25
25
  y.match(
26
- (e2) => EE.equals(e1, e2),
26
+ (e2) => EE.equals(e2)(e1),
27
27
  () => false,
28
28
  ),
29
29
  (a1) =>
30
30
  y.match(
31
31
  () => false,
32
- (a2) => EA.equals(a1, a2),
32
+ (a2) => EA.equals(a2)(a1),
33
33
  ),
34
34
  ),
35
35
  });