@fncts/base 0.0.13 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/_cjs/collection/compat/Array/api.cjs +10 -10
  2. package/_cjs/collection/compat/Array/derivations.cjs +96 -0
  3. package/_cjs/collection/compat/Array/derivations.cjs.map +1 -0
  4. package/_cjs/collection/compat/Array.cjs +13 -0
  5. package/_cjs/collection/compat/Array.cjs.map +1 -1
  6. package/_cjs/collection/compat.cjs +6 -0
  7. package/_cjs/collection/compat.cjs.map +1 -0
  8. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  9. package/_cjs/collection/immutable/Conc/derivations.cjs +45 -0
  10. package/_cjs/collection/immutable/Conc/derivations.cjs.map +1 -0
  11. package/_cjs/collection/immutable/Conc.cjs +13 -0
  12. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  13. package/_cjs/collection/immutable/ImmutableArray/api.cjs +6 -6
  14. package/_cjs/collection/immutable/ImmutableArray/constructors.cjs +2 -2
  15. package/_cjs/collection/immutable/ImmutableArray/definition.cjs +9 -4
  16. package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +1 -1
  17. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs +41 -0
  18. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs.map +1 -0
  19. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
  20. package/_cjs/collection/immutable/ImmutableArray.cjs +13 -0
  21. package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
  22. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs +2 -2
  23. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs +62 -0
  24. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs.map +1 -0
  25. package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs +13 -0
  26. package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs.map +1 -1
  27. package/_cjs/collection/immutable/List/definition.cjs +2 -2
  28. package/_cjs/collection/immutable/Vector/internal.cjs +1 -1
  29. package/_cjs/collection/immutable.cjs +6 -0
  30. package/_cjs/collection/immutable.cjs.map +1 -0
  31. package/_cjs/collection/mutable/HashMap.cjs +4 -0
  32. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  33. package/_cjs/collection/mutable.cjs +6 -0
  34. package/_cjs/collection/mutable.cjs.map +1 -0
  35. package/_cjs/collection/weak.cjs +6 -0
  36. package/_cjs/collection/weak.cjs.map +1 -0
  37. package/_cjs/collection.cjs +6 -0
  38. package/_cjs/collection.cjs.map +1 -0
  39. package/_cjs/control/Eval/definition.cjs +1 -1
  40. package/_cjs/control/Eval/definition.cjs.map +1 -1
  41. package/_cjs/control/Z/api.cjs +9 -9
  42. package/_cjs/control/Z/api.cjs.map +1 -1
  43. package/_cjs/control/Z/definition.cjs +0 -1
  44. package/_cjs/control/Z/definition.cjs.map +1 -1
  45. package/_cjs/control/Z/runtime.cjs +2 -0
  46. package/_cjs/control/Z/runtime.cjs.map +1 -1
  47. package/_cjs/control.cjs +6 -0
  48. package/_cjs/control.cjs.map +1 -0
  49. package/_cjs/data/Cause/api/isEmpty.cjs +2 -0
  50. package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
  51. package/_cjs/data/Cause/api/linearize.cjs +2 -0
  52. package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
  53. package/_cjs/data/Cause/api.cjs +2 -0
  54. package/_cjs/data/Cause/api.cjs.map +1 -1
  55. package/_cjs/data/Const/instances.cjs +4 -3
  56. package/_cjs/data/Const/instances.cjs.map +1 -1
  57. package/_cjs/data/DecodeError/definition.cjs +13 -1
  58. package/_cjs/data/DecodeError/definition.cjs.map +1 -1
  59. package/_cjs/data/DecodeError/instances.cjs +6 -0
  60. package/_cjs/data/DecodeError/instances.cjs.map +1 -0
  61. package/_cjs/data/DecodeError.cjs +13 -0
  62. package/_cjs/data/DecodeError.cjs.map +1 -1
  63. package/_cjs/data/Either/api/alignWith.cjs +2 -0
  64. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  65. package/_cjs/data/Either/definition.cjs +1 -1
  66. package/_cjs/data/Either/definition.cjs.map +1 -1
  67. package/_cjs/data/Environment/api.cjs +15 -25
  68. package/_cjs/data/Environment/api.cjs.map +1 -1
  69. package/_cjs/data/Environment/definition.cjs +1 -2
  70. package/_cjs/data/Environment/definition.cjs.map +1 -1
  71. package/_cjs/data/Intervals.cjs +2 -2
  72. package/_cjs/data/Intervals.cjs.map +1 -1
  73. package/_cjs/data/Patch/api.cjs +5 -3
  74. package/_cjs/data/Patch/api.cjs.map +1 -1
  75. package/_cjs/data/Struct/api.cjs +2 -0
  76. package/_cjs/data/Struct/api.cjs.map +1 -1
  77. package/_cjs/data/Tag/constructors.cjs +2 -2
  78. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  79. package/_cjs/data/Tag/definition.cjs +3 -3
  80. package/_cjs/data/Tag/definition.cjs.map +1 -1
  81. package/_cjs/data/These/definition.cjs +1 -1
  82. package/_cjs/data/These/definition.cjs.map +1 -1
  83. package/_cjs/data/string/api.cjs +1 -1
  84. package/_cjs/data.cjs +6 -0
  85. package/_cjs/data.cjs.map +1 -0
  86. package/_cjs/global.cjs +6 -0
  87. package/_cjs/global.cjs.map +1 -0
  88. package/_cjs/index.cjs +6 -0
  89. package/_cjs/index.cjs.map +1 -0
  90. package/_cjs/json.cjs +6 -0
  91. package/_cjs/json.cjs.map +1 -0
  92. package/_cjs/optics/At/definition.cjs +2 -0
  93. package/_cjs/optics/At/definition.cjs.map +1 -1
  94. package/_cjs/optics/Iso/definition.cjs +4 -0
  95. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  96. package/_cjs/optics/Lens/definition.cjs +4 -0
  97. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  98. package/_cjs/optics/Optional/definition.cjs +2 -0
  99. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  100. package/_cjs/optics/Prism/definition.cjs +2 -0
  101. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  102. package/_cjs/optics/Traversal/definition.cjs +4 -0
  103. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  104. package/_cjs/optics.cjs +6 -0
  105. package/_cjs/optics.cjs.map +1 -0
  106. package/_cjs/typeclass/HashEq.cjs +2 -0
  107. package/_cjs/typeclass/HashEq.cjs.map +1 -1
  108. package/_cjs/typeclass/Monoid.cjs +2 -0
  109. package/_cjs/typeclass/Monoid.cjs.map +1 -1
  110. package/_cjs/typeclass/Ord/definition.cjs +2 -0
  111. package/_cjs/typeclass/Ord/definition.cjs.map +1 -1
  112. package/_cjs/typeclass/Ord/instances.cjs +4 -3
  113. package/_cjs/typeclass/Ord/instances.cjs.map +1 -1
  114. package/_cjs/typeclass/Showable/show.cjs.map +1 -1
  115. package/_cjs/util.cjs +6 -0
  116. package/_cjs/util.cjs.map +1 -0
  117. package/_mjs/collection/compat/Array/api.mjs +10 -10
  118. package/_mjs/collection/compat/Array/derivations.mjs +70 -0
  119. package/_mjs/collection/compat/Array/derivations.mjs.map +1 -0
  120. package/_mjs/collection/compat/Array.mjs +1 -0
  121. package/_mjs/collection/compat/Array.mjs.map +1 -1
  122. package/_mjs/collection/compat.mjs +2 -0
  123. package/_mjs/collection/compat.mjs.map +1 -0
  124. package/_mjs/collection/immutable/Conc/api.mjs +1 -0
  125. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  126. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  127. package/_mjs/collection/immutable/Conc/derivations.mjs +27 -0
  128. package/_mjs/collection/immutable/Conc/derivations.mjs.map +1 -0
  129. package/_mjs/collection/immutable/Conc.mjs +2 -1
  130. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  131. package/_mjs/collection/immutable/HashSet/api.mjs +1 -0
  132. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  133. package/_mjs/collection/immutable/ImmutableArray/api.mjs +6 -6
  134. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs +2 -2
  135. package/_mjs/collection/immutable/ImmutableArray/definition.mjs +7 -2
  136. package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
  137. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs +25 -0
  138. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs.map +1 -0
  139. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  140. package/_mjs/collection/immutable/ImmutableArray.mjs +1 -0
  141. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  142. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +1 -0
  143. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  144. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs +2 -2
  145. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs +39 -0
  146. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs.map +1 -0
  147. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs +1 -0
  148. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs.map +1 -1
  149. package/_mjs/collection/immutable/List/definition.mjs +2 -2
  150. package/_mjs/collection/immutable/SortedMap/api.mjs +1 -0
  151. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  152. package/_mjs/collection/immutable/Vector/internal.mjs +1 -1
  153. package/_mjs/collection/immutable.mjs +2 -0
  154. package/_mjs/collection/immutable.mjs.map +1 -0
  155. package/_mjs/collection/mutable/HashMap.mjs +4 -0
  156. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  157. package/_mjs/collection/mutable.mjs +2 -0
  158. package/_mjs/collection/mutable.mjs.map +1 -0
  159. package/_mjs/collection/weak.mjs +2 -0
  160. package/_mjs/collection/weak.mjs.map +1 -0
  161. package/_mjs/collection.mjs +2 -0
  162. package/_mjs/collection.mjs.map +1 -0
  163. package/_mjs/control/Eval/definition.mjs +1 -1
  164. package/_mjs/control/Eval/definition.mjs.map +1 -1
  165. package/_mjs/control/Eval/run.mjs +1 -0
  166. package/_mjs/control/Eval/run.mjs.map +1 -1
  167. package/_mjs/control/Z/api.mjs +9 -9
  168. package/_mjs/control/Z/api.mjs.map +1 -1
  169. package/_mjs/control/Z/definition.mjs +0 -1
  170. package/_mjs/control/Z/definition.mjs.map +1 -1
  171. package/_mjs/control/Z/runtime.mjs +1 -0
  172. package/_mjs/control/Z/runtime.mjs.map +1 -1
  173. package/_mjs/control.mjs +2 -0
  174. package/_mjs/control.mjs.map +1 -0
  175. package/_mjs/data/Branded/derivations.mjs +1 -0
  176. package/_mjs/data/Branded/derivations.mjs.map +1 -1
  177. package/_mjs/data/Cause/api/isEmpty.mjs +1 -0
  178. package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
  179. package/_mjs/data/Cause/api/linearize.mjs +1 -0
  180. package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
  181. package/_mjs/data/Cause/api.mjs +2 -1
  182. package/_mjs/data/Cause/api.mjs.map +1 -1
  183. package/_mjs/data/Const/instances.mjs +1 -0
  184. package/_mjs/data/Const/instances.mjs.map +1 -1
  185. package/_mjs/data/Datum/api.mjs +1 -0
  186. package/_mjs/data/Datum/api.mjs.map +1 -1
  187. package/_mjs/data/DecodeError/definition.mjs +9 -0
  188. package/_mjs/data/DecodeError/definition.mjs.map +1 -1
  189. package/_mjs/data/DecodeError/instances.mjs +2 -0
  190. package/_mjs/data/DecodeError/instances.mjs.map +1 -0
  191. package/_mjs/data/DecodeError.mjs +1 -0
  192. package/_mjs/data/DecodeError.mjs.map +1 -1
  193. package/_mjs/data/Decoder/api.mjs +1 -0
  194. package/_mjs/data/Decoder/api.mjs.map +1 -1
  195. package/_mjs/data/Either/api/alignWith.mjs +1 -0
  196. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  197. package/_mjs/data/Either/api.mjs +1 -1
  198. package/_mjs/data/Either/api.mjs.map +1 -1
  199. package/_mjs/data/Either/definition.mjs +1 -1
  200. package/_mjs/data/Either/definition.mjs.map +1 -1
  201. package/_mjs/data/Either/instances.mjs +1 -1
  202. package/_mjs/data/Either/instances.mjs.map +1 -1
  203. package/_mjs/data/Environment/api.mjs +12 -21
  204. package/_mjs/data/Environment/api.mjs.map +1 -1
  205. package/_mjs/data/Environment/definition.mjs +1 -2
  206. package/_mjs/data/Environment/definition.mjs.map +1 -1
  207. package/_mjs/data/Intervals.mjs +2 -2
  208. package/_mjs/data/Intervals.mjs.map +1 -1
  209. package/_mjs/data/Patch/api.mjs +4 -3
  210. package/_mjs/data/Patch/api.mjs.map +1 -1
  211. package/_mjs/data/Struct/api.mjs +1 -0
  212. package/_mjs/data/Struct/api.mjs.map +1 -1
  213. package/_mjs/data/Tag/constructors.mjs +2 -2
  214. package/_mjs/data/Tag/constructors.mjs.map +1 -1
  215. package/_mjs/data/Tag/definition.mjs +3 -3
  216. package/_mjs/data/Tag/definition.mjs.map +1 -1
  217. package/_mjs/data/These/definition.mjs +1 -1
  218. package/_mjs/data/These/definition.mjs.map +1 -1
  219. package/_mjs/data/string/api.mjs +1 -1
  220. package/_mjs/data.mjs +2 -0
  221. package/_mjs/data.mjs.map +1 -0
  222. package/_mjs/global.mjs +2 -0
  223. package/_mjs/global.mjs.map +1 -0
  224. package/_mjs/index.mjs +2 -0
  225. package/_mjs/index.mjs.map +1 -0
  226. package/_mjs/json.mjs +2 -0
  227. package/_mjs/json.mjs.map +1 -0
  228. package/_mjs/optics/At/api.mjs +1 -0
  229. package/_mjs/optics/At/api.mjs.map +1 -1
  230. package/_mjs/optics/At/definition.mjs +1 -0
  231. package/_mjs/optics/At/definition.mjs.map +1 -1
  232. package/_mjs/optics/Index/api.mjs +1 -0
  233. package/_mjs/optics/Index/api.mjs.map +1 -1
  234. package/_mjs/optics/Iso/api.mjs +1 -0
  235. package/_mjs/optics/Iso/api.mjs.map +1 -1
  236. package/_mjs/optics/Iso/definition.mjs +2 -0
  237. package/_mjs/optics/Iso/definition.mjs.map +1 -1
  238. package/_mjs/optics/Lens/api.mjs +1 -0
  239. package/_mjs/optics/Lens/api.mjs.map +1 -1
  240. package/_mjs/optics/Lens/definition.mjs +2 -0
  241. package/_mjs/optics/Lens/definition.mjs.map +1 -1
  242. package/_mjs/optics/Optional/api/compose.mjs +1 -0
  243. package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
  244. package/_mjs/optics/Optional/definition.mjs +1 -0
  245. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  246. package/_mjs/optics/Prism/api/compose.mjs +1 -0
  247. package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
  248. package/_mjs/optics/Prism/api/fromNullable.mjs +1 -0
  249. package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
  250. package/_mjs/optics/Prism/api/just.mjs +1 -0
  251. package/_mjs/optics/Prism/api/just.mjs.map +1 -1
  252. package/_mjs/optics/Prism/definition.mjs +1 -0
  253. package/_mjs/optics/Prism/definition.mjs.map +1 -1
  254. package/_mjs/optics/Traversal/api/compose.mjs +1 -0
  255. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  256. package/_mjs/optics/Traversal/api/fromTraversable.mjs +1 -0
  257. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  258. package/_mjs/optics/Traversal/definition.mjs +2 -0
  259. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  260. package/_mjs/optics.mjs +2 -0
  261. package/_mjs/optics.mjs.map +1 -0
  262. package/_mjs/typeclass/Eq/derivations.mjs +1 -0
  263. package/_mjs/typeclass/Eq/derivations.mjs.map +1 -1
  264. package/_mjs/typeclass/Guard/api.mjs +1 -0
  265. package/_mjs/typeclass/Guard/api.mjs.map +1 -1
  266. package/_mjs/typeclass/HashEq.mjs +1 -0
  267. package/_mjs/typeclass/HashEq.mjs.map +1 -1
  268. package/_mjs/typeclass/Monoid.mjs +1 -0
  269. package/_mjs/typeclass/Monoid.mjs.map +1 -1
  270. package/_mjs/typeclass/Ord/definition.mjs +1 -0
  271. package/_mjs/typeclass/Ord/definition.mjs.map +1 -1
  272. package/_mjs/typeclass/Ord/instances.mjs +3 -0
  273. package/_mjs/typeclass/Ord/instances.mjs.map +1 -1
  274. package/_mjs/typeclass/Semigroup/api.mjs +1 -0
  275. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  276. package/_mjs/typeclass/Semigroup/derivations.mjs +1 -0
  277. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
  278. package/_mjs/typeclass/Showable/show.mjs.map +1 -1
  279. package/_mjs/util.mjs +2 -0
  280. package/_mjs/util.mjs.map +1 -0
  281. package/_src/collection/compat/Array/api.ts +10 -10
  282. package/_src/collection/compat/Array/definition.ts +3 -3
  283. package/_src/collection/compat/Array/derivations.ts +85 -0
  284. package/_src/collection/compat/Array.ts +1 -0
  285. package/_src/collection/compat/Record/instances.ts +0 -1
  286. package/_src/collection/compat.ts +4 -0
  287. package/_src/collection/immutable/Conc/definition.ts +11 -10
  288. package/_src/collection/immutable/Conc/derivations.ts +28 -0
  289. package/_src/collection/immutable/Conc.ts +1 -0
  290. package/_src/collection/immutable/ImmutableArray/api.ts +6 -6
  291. package/_src/collection/immutable/ImmutableArray/constructors.ts +2 -2
  292. package/_src/collection/immutable/ImmutableArray/definition.ts +3 -0
  293. package/_src/collection/immutable/ImmutableArray/derivations.ts +28 -0
  294. package/_src/collection/immutable/ImmutableArray/instances.ts +5 -0
  295. package/_src/collection/immutable/ImmutableArray.ts +1 -0
  296. package/_src/collection/immutable/ImmutableNonEmptyArray/constructors.ts +2 -2
  297. package/_src/collection/immutable/ImmutableNonEmptyArray/definition.ts +2 -2
  298. package/_src/collection/immutable/ImmutableNonEmptyArray/derivations.ts +44 -0
  299. package/_src/collection/immutable/ImmutableNonEmptyArray.ts +1 -0
  300. package/_src/collection/immutable/List/definition.ts +2 -2
  301. package/_src/collection/immutable/Vector/definition.ts +1 -1
  302. package/_src/collection/immutable/Vector/internal.ts +1 -1
  303. package/_src/collection/immutable.ts +12 -0
  304. package/_src/collection/mutable/HashMap.ts +4 -0
  305. package/_src/collection/mutable.ts +6 -0
  306. package/_src/collection/weak.ts +4 -0
  307. package/_src/collection.ts +7 -0
  308. package/_src/control/Eval/definition.ts +1 -1
  309. package/_src/control/Z/api.ts +24 -27
  310. package/_src/control/Z/definition.ts +6 -7
  311. package/_src/control/Z/runtime.ts +4 -4
  312. package/_src/control.ts +5 -0
  313. package/_src/data/DecodeError/definition.ts +8 -0
  314. package/_src/data/DecodeError/instances.ts +0 -0
  315. package/_src/data/DecodeError.ts +1 -0
  316. package/_src/data/Either/definition.ts +1 -1
  317. package/_src/data/Environment/api.ts +8 -14
  318. package/_src/data/Environment/definition.ts +1 -2
  319. package/_src/data/Maybe/definition.ts +2 -2
  320. package/_src/data/Patch/api.ts +4 -4
  321. package/_src/data/Tag/constructors.ts +2 -2
  322. package/_src/data/Tag/definition.ts +3 -2
  323. package/_src/data/These/definition.ts +1 -1
  324. package/_src/data/string/api.ts +1 -1
  325. package/_src/data.ts +35 -0
  326. package/_src/global.ts +252 -0
  327. package/_src/index.ts +8 -0
  328. package/_src/json.ts +5 -0
  329. package/_src/optics.ts +12 -0
  330. package/_src/typeclass/Showable/show.ts +2 -2
  331. package/_src/util.ts +8 -0
  332. package/collection/compat/Array/api.d.ts +10 -10
  333. package/collection/compat/Array/definition.d.ts +3 -3
  334. package/collection/compat/Array/derivations.d.ts +24 -0
  335. package/collection/compat/Array.d.ts +1 -0
  336. package/collection/compat.d.ts +2 -0
  337. package/collection/immutable/Conc/definition.d.ts +17 -16
  338. package/collection/immutable/Conc/derivations.d.ts +14 -0
  339. package/collection/immutable/Conc.d.ts +1 -0
  340. package/collection/immutable/ImmutableArray/api.d.ts +6 -6
  341. package/collection/immutable/ImmutableArray/constructors.d.ts +2 -2
  342. package/collection/immutable/ImmutableArray/definition.d.ts +4 -0
  343. package/collection/immutable/ImmutableArray/derivations.d.ts +14 -0
  344. package/collection/immutable/ImmutableArray.d.ts +1 -0
  345. package/collection/immutable/ImmutableNonEmptyArray/constructors.d.ts +2 -2
  346. package/collection/immutable/ImmutableNonEmptyArray/definition.d.ts +2 -2
  347. package/collection/immutable/ImmutableNonEmptyArray/derivations.d.ts +14 -0
  348. package/collection/immutable/ImmutableNonEmptyArray.d.ts +1 -0
  349. package/collection/immutable/List/definition.d.ts +2 -2
  350. package/collection/immutable/Vector/definition.d.ts +1 -1
  351. package/collection/immutable/Vector/internal.d.ts +1 -1
  352. package/collection/immutable.d.ts +10 -0
  353. package/collection/mutable/HashMap.d.ts +1 -0
  354. package/collection/mutable.d.ts +4 -0
  355. package/collection/weak.d.ts +2 -0
  356. package/collection.d.ts +5 -0
  357. package/control/Z/api.d.ts +24 -24
  358. package/control/Z/definition.d.ts +6 -6
  359. package/control/Z/runtime.d.ts +4 -4
  360. package/control.d.ts +3 -0
  361. package/data/DecodeError/definition.d.ts +6 -0
  362. package/data/DecodeError/instances.d.ts +1 -0
  363. package/data/DecodeError.d.ts +1 -0
  364. package/data/Environment/definition.d.ts +2 -3
  365. package/data/Maybe/definition.d.ts +4 -2
  366. package/data/Tag/constructors.d.ts +1 -1
  367. package/data/Tag/definition.d.ts +2 -1
  368. package/data/string/api.d.ts +1 -1
  369. package/data.d.ts +33 -0
  370. package/global.d.ts +237 -0
  371. package/index.d.ts +8 -0
  372. package/json.d.ts +3 -0
  373. package/optics.d.ts +10 -0
  374. package/package.json +6 -2
  375. package/typeclass/Showable/show.d.ts +1 -1
  376. package/util.d.ts +6 -0
@@ -1,6 +1,7 @@
1
1
  import * as tsplus_module_1 from "@fncts/base/typeclass/Semigroup/definition";
2
2
  import * as tsplus_module_2 from "@fncts/base/typeclass/Semigroup/derivations";
3
3
  export const mkMonoid = mkMonoid_1;
4
+ import { Semigroup } from "@fncts/base/typeclass/Semigroup";
4
5
  export const Monoid = {};
5
6
  /**
6
7
  * @tsplus static fncts.MonoidOps __call
@@ -1 +1 @@
1
- {"version":3,"file":"Monoid.mjs","mappings":";;aA0BgBA,QAAQ;AATxB,OAAO,MAAMC,MAAM,GAAc,EAA1B;AAMP;;;;AAGA,oBAA4BC,CAA5B,EAA2C;EACzC,OAAO,EACL,GAAGC,4BAAUD,CAAV,CADE;IAELE,GAAG,EAAEF,CAAC,CAACE;EAFF,CAAP;AAID;AAED;;;;;AAGA,OAAM,SAAUC,UAAV,CAAwBC,EAAxB,EAAuD;EAC3D,IAAIC,MAAJ;EACA,MAAMC,CAAC,GAAcC,WAAO;IAC1BC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KAAS;MAChB,IAAI,CAACL,MAAL,EAAa;QACXA,MAAM,GAAGD,EAAE,CAACE,CAAD,CAAX;MACD;;MACD,OAAOD,MAAM,CAACG,OAAP,CAAeC,CAAf,EAAkBC,CAAlB,CAAP;IACD,CANyB;;IAO1B,IAAIR,GAAJ,GAAO;MACL,IAAI,CAACG,MAAL,EAAa;QACXA,MAAM,GAAGD,EAAE,CAACE,CAAD,CAAX;MACD;;MACD,OAAOD,MAAM,CAACH,GAAd;IACD;;EAZyB,CAAP,CAArB;EAcA,OAAOI,CAAP;AACD;AAED;;;;AAGA,OAAM,SAAUK,YAAV,CACJ,GAAGC,IADC,EAgBK;EAET,MAAM,CAACC,cAAD,EAAiBC,cAAjB,IAAmCF,IAAzC;EACA,MAAMV,GAAG,GAAgC,EAAzC;;EACA,KAAK,MAAMa,KAAX,IAAoBF,cAApB,EAAoC;IAClCX,GAAG,CAACa,KAAD,CAAH,GAAcF,cAAc,CAACE,KAAD,CAAd,CAAsCb,GAApD;EACD;;EACD,KAAK,MAAMa,KAAX,IAAoBD,cAApB,EAAoC;IAClCZ,GAAG,CAACa,KAAD,CAAH,GAAcD,cAAc,CAACC,KAAD,CAAd,CAAsCb,GAApD;EACD;;EACD,OAAOK,WAAO,EACZ,GAAGS,6BAA0B,GAAGJ,IAA7B,CADS;IAEZV,GAAG,EAAEA;EAFO,CAAP,CAAP;AAID","names":["mkMonoid","Monoid","F","tsplus_module_1","nat","deriveLazy","fn","cached","M","mkMonoid_1","combine","x","y","deriveStruct","args","requiredFields","optionalFields","field","tsplus_module_2"],"sourceRoot":"","sources":["../../_src/typeclass/Monoid.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"Monoid.mjs","mappings":";;aA0BgBA,QAAQ;AAvBxB,SAASC,SAAT,QAA0B,iCAA1B;AAcA,OAAO,MAAMC,MAAM,GAAc,EAA1B;AAMP;;;;AAGA,oBAA4BC,CAA5B,EAA2C;EACzC,OAAO,EACL,GAAGC,4BAAUD,CAAV,CADE;IAELE,GAAG,EAAEF,CAAC,CAACE;EAFF,CAAP;AAID;AAED;;;;;AAGA,OAAM,SAAUC,UAAV,CAAwBC,EAAxB,EAAuD;EAC3D,IAAIC,MAAJ;EACA,MAAMC,CAAC,GAAcC,WAAO;IAC1BC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KAAS;MAChB,IAAI,CAACL,MAAL,EAAa;QACXA,MAAM,GAAGD,EAAE,CAACE,CAAD,CAAX;MACD;;MACD,OAAOD,MAAM,CAACG,OAAP,CAAeC,CAAf,EAAkBC,CAAlB,CAAP;IACD,CANyB;;IAO1B,IAAIR,GAAJ,GAAO;MACL,IAAI,CAACG,MAAL,EAAa;QACXA,MAAM,GAAGD,EAAE,CAACE,CAAD,CAAX;MACD;;MACD,OAAOD,MAAM,CAACH,GAAd;IACD;;EAZyB,CAAP,CAArB;EAcA,OAAOI,CAAP;AACD;AAED;;;;AAGA,OAAM,SAAUK,YAAV,CACJ,GAAGC,IADC,EAgBK;EAET,MAAM,CAACC,cAAD,EAAiBC,cAAjB,IAAmCF,IAAzC;EACA,MAAMV,GAAG,GAAgC,EAAzC;;EACA,KAAK,MAAMa,KAAX,IAAoBF,cAApB,EAAoC;IAClCX,GAAG,CAACa,KAAD,CAAH,GAAcF,cAAc,CAACE,KAAD,CAAd,CAAsCb,GAApD;EACD;;EACD,KAAK,MAAMa,KAAX,IAAoBD,cAApB,EAAoC;IAClCZ,GAAG,CAACa,KAAD,CAAH,GAAcD,cAAc,CAACC,KAAD,CAAd,CAAsCb,GAApD;EACD;;EACD,OAAOK,WAAO,EACZ,GAAGS,6BAA0B,GAAGJ,IAA7B,CADS;IAEZV,GAAG,EAAEA;EAFO,CAAP,CAAP;AAID","names":["mkMonoid","Semigroup","Monoid","F","tsplus_module_1","nat","deriveLazy","fn","cached","M","mkMonoid_1","combine","x","y","deriveStruct","args","requiredFields","optionalFields","field","tsplus_module_2"],"sourceRoot":"","sources":["../../_src/typeclass/Monoid.ts"],"sourcesContent":[null]}
@@ -1,4 +1,5 @@
1
1
  import * as tsplus_module_1 from "@fncts/base/typeclass/Eq/definition";
2
+ import { Eq } from "@fncts/base/typeclass/Eq";
2
3
  export const Ord = {};
3
4
  /**
4
5
  * @tsplus static fncts.OrdOps __call
@@ -1 +1 @@
1
- {"version":3,"file":"definition.mjs","mappings":";AAgBA,OAAO,MAAMA,GAAG,GAAW,EAApB;AAEP;;;;AAGA,OAAM,SAAUC,KAAV,CAAmBC,CAAnB,EAA4B;EAChC,OAAO,EACL,GAAGC,qBAAGD,CAAH,CADE;IAELE,OAAO,EAAEF,CAAC,CAACE;EAFN,CAAP;AAID","names":["Ord","mkOrd","O","tsplus_module_1","compare"],"sourceRoot":"","sources":["../../../_src/typeclass/Ord/definition.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"definition.mjs","mappings":";AAEA,SAASA,EAAT,QAAmB,0BAAnB;AAcA,OAAO,MAAMC,GAAG,GAAW,EAApB;AAEP;;;;AAGA,OAAM,SAAUC,KAAV,CAAmBC,CAAnB,EAA4B;EAChC,OAAO,EACL,GAAGC,qBAAGD,CAAH,CADE;IAELE,OAAO,EAAEF,CAAC,CAACE;EAFN,CAAP;AAID","names":["Eq","Ord","mkOrd","O","tsplus_module_1","compare"],"sourceRoot":"","sources":["../../../_src/typeclass/Ord/definition.ts"],"sourcesContent":[null]}
@@ -3,6 +3,9 @@ import * as tsplus_module_2 from "@fncts/base/typeclass/Semigroup/definition";
3
3
  import * as tsplus_module_3 from "@fncts/base/typeclass/Ordering";
4
4
  import * as tsplus_module_4 from "@fncts/base/typeclass/Monoid";
5
5
  export const getSemigroup = getSemigroup_1;
6
+ import { Monoid } from "@fncts/base/typeclass/Monoid";
7
+ import { Ord } from "@fncts/base/typeclass/Ord/definition";
8
+ import { Semigroup } from "@fncts/base/typeclass/Semigroup";
6
9
  /**
7
10
  * @tsplus static fncts.OrdOps getSemigroup
8
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"instances.mjs","mappings":";;;;aAQgBA,YAAY;AAH5B;;;;AAGA;EACE,OAAOC,4BAAU;IACfC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KACPC,sBAAI;MACFC,OAAO,EAAE,CAACC,EAAD,EAAKC,EAAL,KAAW;QAClB,MAAMC,EAAE,GAAGN,CAAC,CAACG,OAAF,CAAUC,EAAV,EAAcC,EAAd,CAAX;QACA,OAAOC,EAAE,KAAK,CAAP,GAAWA,EAAX,GAAgBL,CAAC,CAACE,OAAF,CAAUC,EAAV,EAAcC,EAAd,CAAvB;MACD,CAJC;MAKFE,MAAM,EAAE,CAACH,EAAD,EAAKC,EAAL,KAAYL,CAAC,CAACO,MAAF,CAASH,EAAT,EAAaC,EAAb,KAAoBJ,CAAC,CAACM,MAAF,CAASH,EAAT,EAAaC,EAAb;IALtC,CAAJ;EAFa,CAAV,CAAP;AAUD;AAED;;;;;AAGA,OAAM,SAAUG,SAAV,GAAmB;EACvB,OAAOC,yBAAO,EACZ,GAAGC,gBADS;IAEZC,GAAG,EAAET,sBAAI;MAAEC,OAAO,EAAE,MAAKS,kBAAhB;MAA8BL,MAAM,EAAE,MAAM;IAA5C,CAAJ;EAFO,CAAP,CAAP;AAID","names":["getSemigroup","tsplus_module_2","combine","x","y","tsplus_module_1","compare","a1","a2","ox","equals","getMonoid","tsplus_module_4","getSemigroup_1","nat","tsplus_module_3"],"sourceRoot":"","sources":["../../../_src/typeclass/Ord/instances.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"instances.mjs","mappings":";;;;aAQgBA,YAAY;AAR5B,SAASC,MAAT,QAAuB,8BAAvB;AACA,SAASC,GAAT,QAAoB,sCAApB;AAEA,SAASC,SAAT,QAA0B,iCAA1B;AAEA;;;;AAGA;EACE,OAAOC,4BAAU;IACfC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KACPC,sBAAI;MACFC,OAAO,EAAE,CAACC,EAAD,EAAKC,EAAL,KAAW;QAClB,MAAMC,EAAE,GAAGN,CAAC,CAACG,OAAF,CAAUC,EAAV,EAAcC,EAAd,CAAX;QACA,OAAOC,EAAE,KAAK,CAAP,GAAWA,EAAX,GAAgBL,CAAC,CAACE,OAAF,CAAUC,EAAV,EAAcC,EAAd,CAAvB;MACD,CAJC;MAKFE,MAAM,EAAE,CAACH,EAAD,EAAKC,EAAL,KAAYL,CAAC,CAACO,MAAF,CAASH,EAAT,EAAaC,EAAb,KAAoBJ,CAAC,CAACM,MAAF,CAASH,EAAT,EAAaC,EAAb;IALtC,CAAJ;EAFa,CAAV,CAAP;AAUD;AAED;;;;;AAGA,OAAM,SAAUG,SAAV,GAAmB;EACvB,OAAOC,yBAAO,EACZ,GAAGC,gBADS;IAEZC,GAAG,EAAET,sBAAI;MAAEC,OAAO,EAAE,MAAKS,kBAAhB;MAA8BL,MAAM,EAAE,MAAM;IAA5C,CAAJ;EAFO,CAAP,CAAP;AAID","names":["getSemigroup","Monoid","Ord","Semigroup","tsplus_module_2","combine","x","y","tsplus_module_1","compare","a1","a2","ox","equals","getMonoid","tsplus_module_4","getSemigroup_1","nat","tsplus_module_3"],"sourceRoot":"","sources":["../../../_src/typeclass/Ord/instances.ts"],"sourcesContent":[null]}
@@ -1,6 +1,7 @@
1
1
  import * as tsplus_module_1 from "@fncts/base/typeclass/Ord/api/min";
2
2
  import * as tsplus_module_2 from "@fncts/base/typeclass/Semigroup/definition";
3
3
  import * as tsplus_module_3 from "@fncts/base/typeclass/Ord/api/max";
4
+ import { Semigroup } from "@fncts/base/typeclass/Semigroup/definition";
4
5
  /**
5
6
  * @tsplus static fncts.SemigroupOps min
6
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"api.mjs","mappings":";;;AAIA;;;;AAGA,OAAM,SAAUA,GAAV,CAAiBC,CAAjB,EAA0B;EAC9B,OAAOC,4BAAU;IACfC,OAAO,uBAAEF,CAAF;EADQ,CAAV,CAAP;AAGD;AAED;;;;AAGA,OAAM,SAAUG,GAAV,CAAiBH,CAAjB,EAA0B;EAC9B,OAAOC,4BAAU;IACfC,OAAO,uBAAEF,CAAF;EADQ,CAAV,CAAP;AAGD","names":["min","O","tsplus_module_2","combine","max"],"sourceRoot":"","sources":["../../../_src/typeclass/Semigroup/api.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"api.mjs","mappings":";;;AAEA,SAASA,SAAT,QAA0B,4CAA1B;AAEA;;;;AAGA,OAAM,SAAUC,GAAV,CAAiBC,CAAjB,EAA0B;EAC9B,OAAOC,4BAAU;IACfC,OAAO,uBAAEF,CAAF;EADQ,CAAV,CAAP;AAGD;AAED;;;;AAGA,OAAM,SAAUG,GAAV,CAAiBH,CAAjB,EAA0B;EAC9B,OAAOC,4BAAU;IACfC,OAAO,uBAAEF,CAAF;EADQ,CAAV,CAAP;AAGD","names":["Semigroup","min","O","tsplus_module_2","combine","max"],"sourceRoot":"","sources":["../../../_src/typeclass/Semigroup/api.ts"],"sourcesContent":[null]}
@@ -1,4 +1,5 @@
1
1
  import * as tsplus_module_1 from "@fncts/base/typeclass/Semigroup/definition";
2
+ import { Semigroup } from "@fncts/base/typeclass/Semigroup/definition";
2
3
  /**
3
4
  * @tsplus derive fncts.Semigroup lazy
4
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"derivations.mjs","mappings":";AAKA;;;;AAGA,OAAM,SAAUA,UAAV,CAAwBC,EAAxB,EAA6D;EACjE,IAAIC,MAAJ;EACA,MAAMC,EAAE,GAAiBC,4BAAU;IACjCC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KAAS;MAChB,IAAI,CAACL,MAAL,EAAa;QACXA,MAAM,GAAGD,EAAE,CAACE,EAAD,CAAX;MACD;;MACD,OAAOD,MAAM,CAACG,OAAP,CAAeC,CAAf,EAAkBC,CAAlB,CAAP;IACD;EANgC,CAAV,CAAzB;EAQA,OAAOJ,EAAP;AACD;AAED;;;;;AAIA,OAAM,SAAUK,YAAV,CACJ,GAAG,CAACC,cAAD,EAAiBC,cAAjB,CADC,EAgBK;EAET,OAAON,4BAAU;IACfC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KAAS;MAChB,MAAMI,GAAG,GAA4B,EAArC;;MACA,KAAK,MAAMC,KAAX,IAAoBH,cAApB,EAAoC;QAClCE,GAAG,CAACC,KAAD,CAAH,GAAcH,cAAc,CAACG,KAAD,CAAd,CAA0CP,OAA1C,CAAkDC,CAAC,CAACM,KAAD,CAAnD,EAA4DL,CAAC,CAACK,KAAD,CAA7D,CAAd;MACD;;MACD,KAAK,MAAMA,KAAX,IAAoBF,cAApB,EAAoC;QAClC,MAAMG,EAAE,GAAGP,CAAC,CAACM,KAAD,CAAZ;QACA,MAAME,EAAE,GAAGP,CAAC,CAACK,KAAD,CAAZ;;QACA,IAAI,EAAEA,KAAK,IAAIN,CAAX,CAAJ,EAAmB;UACjBK,GAAG,CAACC,KAAD,CAAH,GAAaE,EAAb;QACD,CAFD,MAEO,IAAI,EAAEF,KAAK,IAAIL,CAAX,CAAJ,EAAmB;UACxBI,GAAG,CAACC,KAAD,CAAH,GAAaC,EAAb;QACD,CAFM,MAEA;UACLF,GAAG,CAACC,KAAD,CAAH,GAAaF,cAAc,CAACE,KAAD,CAAd,CAAsBP,OAAtB,CAA8BQ,EAA9B,EAAkCC,EAAlC,CAAb;QACD;MACF;;MACD,OAAOH,GAAP;IACD;EAlBc,CAAV,CAAP;AAoBD","names":["deriveLazy","fn","cached","eq","tsplus_module_1","combine","x","y","deriveStruct","requiredFields","optionalFields","out","field","xf","yf"],"sourceRoot":"","sources":["../../../_src/typeclass/Semigroup/derivations.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"derivations.mjs","mappings":";AAGA,SAASA,SAAT,QAA0B,4CAA1B;AAEA;;;;AAGA,OAAM,SAAUC,UAAV,CAAwBC,EAAxB,EAA6D;EACjE,IAAIC,MAAJ;EACA,MAAMC,EAAE,GAAiBC,4BAAU;IACjCC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KAAS;MAChB,IAAI,CAACL,MAAL,EAAa;QACXA,MAAM,GAAGD,EAAE,CAACE,EAAD,CAAX;MACD;;MACD,OAAOD,MAAM,CAACG,OAAP,CAAeC,CAAf,EAAkBC,CAAlB,CAAP;IACD;EANgC,CAAV,CAAzB;EAQA,OAAOJ,EAAP;AACD;AAED;;;;;AAIA,OAAM,SAAUK,YAAV,CACJ,GAAG,CAACC,cAAD,EAAiBC,cAAjB,CADC,EAgBK;EAET,OAAON,4BAAU;IACfC,OAAO,EAAE,CAACC,CAAD,EAAIC,CAAJ,KAAS;MAChB,MAAMI,GAAG,GAA4B,EAArC;;MACA,KAAK,MAAMC,KAAX,IAAoBH,cAApB,EAAoC;QAClCE,GAAG,CAACC,KAAD,CAAH,GAAcH,cAAc,CAACG,KAAD,CAAd,CAA0CP,OAA1C,CAAkDC,CAAC,CAACM,KAAD,CAAnD,EAA4DL,CAAC,CAACK,KAAD,CAA7D,CAAd;MACD;;MACD,KAAK,MAAMA,KAAX,IAAoBF,cAApB,EAAoC;QAClC,MAAMG,EAAE,GAAGP,CAAC,CAACM,KAAD,CAAZ;QACA,MAAME,EAAE,GAAGP,CAAC,CAACK,KAAD,CAAZ;;QACA,IAAI,EAAEA,KAAK,IAAIN,CAAX,CAAJ,EAAmB;UACjBK,GAAG,CAACC,KAAD,CAAH,GAAaE,EAAb;QACD,CAFD,MAEO,IAAI,EAAEF,KAAK,IAAIL,CAAX,CAAJ,EAAmB;UACxBI,GAAG,CAACC,KAAD,CAAH,GAAaC,EAAb;QACD,CAFM,MAEA;UACLF,GAAG,CAACC,KAAD,CAAH,GAAaF,cAAc,CAACE,KAAD,CAAd,CAAsBP,OAAtB,CAA8BQ,EAA9B,EAAkCC,EAAlC,CAAb;QACD;MACF;;MACD,OAAOH,GAAP;IACD;EAlBc,CAAV,CAAP;AAoBD","names":["Semigroup","deriveLazy","fn","cached","eq","tsplus_module_1","combine","x","y","deriveStruct","requiredFields","optionalFields","out","field","xf","yf"],"sourceRoot":"","sources":["../../../_src/typeclass/Semigroup/derivations.ts"],"sourcesContent":[null]}
@@ -1 +1 @@
1
- {"version":3,"file":"show.mjs","mappings":"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","names":["tuple","isShowable","stylizeNoColor","stylizeWithColor","ARRAY_EXTRAS_TYPE","ARRAY_TYPE","colorRegExp","escapeFn","getConstructorName","getFunctionBase","getKeys","getPrefix","getStringWidth","hex","keyStrRegExp","numberRegExp","OBJECT_TYPE","pluralize","PROTO_TYPE","strEscape","strEscapeSequencesReplacer","isAnyArrayBuffer","isArray","isArrayBuffer","isDataView","isDate","isDefined","isFunction","isMap","isObject","isPromise","isRegExp","isSet","isSymbol","isTypedArray","isWeakMap","isWeakSet","ShowContext","tsplus_module_1","showComputationPrimitive","computation","_tag","showComputationComplex","args","getShowContext","options","maxArrayLength","maxStringLength","breakLength","compact","colors","depth","showHidden","circular","tsplus_module_2","seen","budget","indentationLevel","stylize","currentDepth","recurseTimes","show","value","tsplus_module_3","showWithOptions","_show","tsplus_module_4","context","undefined","fileName_1","_showPrimitive","showValue","findIndex","v","tsplus_module_5","size","copy","n","index","showRaw","inspectionInfo","inspectionEarlyReturn","shown","inspectionExternal","getInspectionInfo","typedArray","tsplus_module_6","constructor","protoProps","keys","tag","Symbol","toStringTag","base","formatter","_","tsplus_module_7","braces","noIterator","extrasType","Object","prototype","hasOwnProperty","propertyIsEnumerable","call","iterator","tsplus_module_8","length","showChunk","prefix","showArray","showSet","tsplus_module_9","showMap","fallback","showTypedArray","RegExp","toString","Number","isNaN","getTime","toISOString","arrayType","showArrayBuffer","_showNumber","byteLength","unshift","tsplus_module_10","info","constructorName","slice","push","indices","tsplus_module_11","key","showProperty","k1","k2","externalComputation","str","replace","repeat","output","idxs","ks","baseWithRef","ref","res","reduceToSingleString","newLength","newBudget","newContext","pop","input","entries","groupElements","start","isBelowBreakLength","indentation","totalLength","i","removeColors","includes","tsplus_module_13","k","maxLength","Math","min","max","remaining","elementFormatter","_showBigInt","shownKeys","buffer","Uint8Array","tsplus_module_12","trim","maxEntries","showSpecialArray","currentComputation","currentIndex","currentLength","outputLength","tmp","test","emptyItems","message","as","b","chunk","valLen","len","props","p","type","desc","descriptor","getOwnPropertyDescriptor","enumerable","diff","get","set","extra","name","String","separatorSpace","dataLength","Array","actualMax","approxCharHeights","averageBias","sqrt","biasedMax","columns","round","floor","maxLineLength","lineMaxLength","order","padStart","padEnd","padding","_showString","_showBoolean","_showSymbol","result","trailer","split","map","line","join"],"sourceRoot":"","sources":["../../../_src/typeclass/Showable/show.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"show.mjs","mappings":"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","names":["tuple","isShowable","stylizeNoColor","stylizeWithColor","ARRAY_EXTRAS_TYPE","ARRAY_TYPE","colorRegExp","escapeFn","getConstructorName","getFunctionBase","getKeys","getPrefix","getStringWidth","hex","keyStrRegExp","numberRegExp","OBJECT_TYPE","pluralize","PROTO_TYPE","strEscape","strEscapeSequencesReplacer","isAnyArrayBuffer","isArray","isArrayBuffer","isDataView","isDate","isDefined","isFunction","isMap","isObject","isPromise","isRegExp","isSet","isSymbol","isTypedArray","isWeakMap","isWeakSet","ShowContext","tsplus_module_1","showComputationPrimitive","computation","_tag","showComputationComplex","args","getShowContext","options","maxArrayLength","maxStringLength","breakLength","compact","colors","depth","showHidden","circular","tsplus_module_2","seen","budget","indentationLevel","stylize","currentDepth","recurseTimes","show","value","tsplus_module_3","showWithOptions","_show","tsplus_module_4","context","undefined","fileName_1","_showPrimitive","showValue","findIndex","v","tsplus_module_5","size","copy","n","index","showRaw","inspectionInfo","inspectionEarlyReturn","shown","inspectionExternal","getInspectionInfo","typedArray","tsplus_module_6","constructor","protoProps","keys","tag","Symbol","toStringTag","base","formatter","_","tsplus_module_7","braces","noIterator","extrasType","Object","prototype","hasOwnProperty","propertyIsEnumerable","call","iterator","tsplus_module_8","length","showChunk","prefix","showArray","showSet","tsplus_module_9","showMap","fallback","showTypedArray","RegExp","toString","Number","isNaN","getTime","toISOString","arrayType","showArrayBuffer","_showNumber","byteLength","unshift","tsplus_module_10","info","constructorName","slice","push","indices","tsplus_module_11","key","showProperty","k1","k2","externalComputation","str","replace","repeat","output","idxs","ks","baseWithRef","ref","res","reduceToSingleString","newLength","newBudget","newContext","pop","input","entries","groupElements","start","isBelowBreakLength","indentation","totalLength","i","removeColors","includes","tsplus_module_13","k","maxLength","Math","min","max","remaining","elementFormatter","_showBigInt","shownKeys","buffer","Uint8Array","tsplus_module_12","trim","maxEntries","showSpecialArray","currentComputation","currentIndex","currentLength","outputLength","tmp","test","emptyItems","message","as","b","chunk","valLen","len","props","p","type","desc","descriptor","getOwnPropertyDescriptor","enumerable","diff","get","set","extra","name","String","separatorSpace","dataLength","Array","actualMax","approxCharHeights","averageBias","sqrt","biasedMax","columns","round","floor","maxLineLength","lineMaxLength","order","padStart","padEnd","padding","_showString","_showBoolean","_showSymbol","result","trailer","split","map","line","join"],"sourceRoot":"","sources":["../../../_src/typeclass/Showable/show.ts"],"sourcesContent":[null]}
package/_mjs/util.mjs ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=util.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.mjs","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -1,8 +1,8 @@
1
1
  import type { Eq } from "@fncts/base/typeclass";
2
2
 
3
3
  /**
4
- * @tsplus getter fncts.base.Array elem
5
- * @tsplus getter fncts.base.ReadonlyArray elem
4
+ * @tsplus getter fncts.Array elem
5
+ * @tsplus getter fncts.ReadonlyArray elem
6
6
  */
7
7
  export function elem<A>(self: ReadonlyArray<A>) {
8
8
  return (eq: Eq<A>) =>
@@ -17,32 +17,32 @@ export function elem<A>(self: ReadonlyArray<A>) {
17
17
  }
18
18
 
19
19
  /**
20
- * @tsplus fluent fncts.base.Array isEmpty
21
- * @tsplus fluent fncts.base.ReadonlyArray isEmpty
20
+ * @tsplus fluent fncts.Array isEmpty
21
+ * @tsplus fluent fncts.ReadonlyArray isEmpty
22
22
  */
23
23
  export function isEmpty<A>(self: ReadonlyArray<A>): boolean {
24
24
  return self.length === 0;
25
25
  }
26
26
 
27
27
  /**
28
- * @tsplus fluent fncts.base.Array isNonEmpty
29
- * @tsplus fluent fncts.base.ReadonlyArray isNonEmpty
28
+ * @tsplus fluent fncts.Array isNonEmpty
29
+ * @tsplus fluent fncts.ReadonlyArray isNonEmpty
30
30
  */
31
31
  export function isNonEmpty<A>(self: ReadonlyArray<A>): self is ReadonlyNonEmptyArray<A> {
32
32
  return self.length > 0;
33
33
  }
34
34
 
35
35
  /**
36
- * @tsplus fluent fncts.base.Array foldLeft
37
- * @tsplus fluent fncts.base.ReadonlyArray foldLeft
36
+ * @tsplus fluent fncts.Array foldLeft
37
+ * @tsplus fluent fncts.ReadonlyArray foldLeft
38
38
  */
39
39
  export function foldLeft<A, B>(self: ReadonlyArray<A>, b: B, f: (b: B, a: A) => B): B {
40
40
  return self.foldLeftWithIndex(b, (_, b, a) => f(b, a));
41
41
  }
42
42
 
43
43
  /**
44
- * @tsplus fluent fncts.base.Array foldLeftWithIndex
45
- * @tsplus fluent fncts.base.ReadonlyArray foldLeftWithIndex
44
+ * @tsplus fluent fncts.Array foldLeftWithIndex
45
+ * @tsplus fluent fncts.ReadonlyArray foldLeftWithIndex
46
46
  */
47
47
  export function foldLeftWithIndex<A, B>(self: ReadonlyArray<A>, b: B, f: (i: number, b: B, a: A) => B): B {
48
48
  let out = b;
@@ -1,16 +1,16 @@
1
1
  declare global {
2
2
  /**
3
- * @tsplus type fncts.base.ReadonlyArray
3
+ * @tsplus type fncts.ReadonlyArray
4
4
  */
5
5
  export interface ReadonlyArray<T> {}
6
6
 
7
7
  /**
8
- * @tsplus type fncts.base.Array
8
+ * @tsplus type fncts.Array
9
9
  */
10
10
  export interface Array<T> {}
11
11
 
12
12
  /**
13
- * @tsplus type fncts.base.ArrayOps
13
+ * @tsplus type fncts.ArrayOps
14
14
  */
15
15
  export interface ArrayConstructor {}
16
16
  }
@@ -0,0 +1,85 @@
1
+ import type { DecodeError } from "@fncts/base/data/DecodeError";
2
+ import type { Check } from "@fncts/typelevel/Check";
3
+
4
+ import { CompoundError, OptionalIndexError, PrimitiveError } from "@fncts/base/data/DecodeError";
5
+
6
+ /**
7
+ * @tsplus derive fncts.Guard[fncts.Array]<_> 10
8
+ */
9
+ export function deriveGuard<A extends Array<any>>(
10
+ ...[element]: [A] extends [Array<infer _A>]
11
+ ? Check<Check.IsEqual<A, Array<_A>>> extends Check.True
12
+ ? [element: Guard<_A>]
13
+ : never
14
+ : never
15
+ ): Guard<A> {
16
+ return Guard((u): u is A => {
17
+ if (Array.isArray(u)) {
18
+ return u.every(element.is);
19
+ }
20
+ return false;
21
+ });
22
+ }
23
+
24
+ /**
25
+ * @tsplus derive fncts.Guard[fncts.ReadonlyArray]<_> 10
26
+ */
27
+ export const deriveReadonlyArrayGuard: <A extends ReadonlyArray<any>>(
28
+ ...[element]: [A] extends [ReadonlyArray<infer _A>]
29
+ ? Check<Check.IsEqual<A, ReadonlyArray<_A>>> extends Check.True
30
+ ? [element: Guard<_A>]
31
+ : never
32
+ : never
33
+ ) => Guard<A> = deriveGuard.unsafeCoerce();
34
+
35
+ /**
36
+ * @tsplus derive fncts.Decoder[fncts.Array]<_> 10
37
+ */
38
+ export function deriveDecoder<A extends Array<any>>(
39
+ ...[element]: [A] extends [Array<infer _A>]
40
+ ? Check<Check.IsEqual<A, Array<_A>>> extends Check.True
41
+ ? [element: Decoder<_A>]
42
+ : never
43
+ : never
44
+ ): Decoder<A> {
45
+ return Decoder((u) => {
46
+ if (Array.isArray(u)) {
47
+ const errors = Vector.emptyPushable<DecodeError>();
48
+ let failed = false;
49
+ const out = Array(u.length);
50
+ for (let i = 0; i < u.length; i++) {
51
+ const decoded = element.decode(u[i]!);
52
+ decoded.match2(
53
+ (err) => {
54
+ failed = true;
55
+ errors.push(new OptionalIndexError(i, err));
56
+ },
57
+ (warning, value) => {
58
+ out[i] = value;
59
+ if (warning.isJust()) {
60
+ errors.push(warning.value);
61
+ }
62
+ },
63
+ );
64
+ }
65
+ if (failed) {
66
+ return These.left(new CompoundError("Array", errors));
67
+ }
68
+ return These.rightOrBoth(errors.length > 0 ? Just(new CompoundError("Array", errors)) : Nothing(), out as A);
69
+ }
70
+ return These.left(new PrimitiveError(u, "Array"));
71
+ }, `Array<${element.label}>`);
72
+ }
73
+
74
+ /**
75
+ * @tsplus derive fncts.Decoder[fncts.ReadonlyArray]<_> 10
76
+ */
77
+ export function deriveReadonlyArrayDecoder<A extends ReadonlyArray<any>>(
78
+ ...[element]: [A] extends [ReadonlyArray<infer _A>]
79
+ ? Check<Check.IsEqual<A, ReadonlyArray<_A>>> extends Check.True
80
+ ? [element: Decoder<_A>]
81
+ : never
82
+ : never
83
+ ): Decoder<A> {
84
+ return Decoder((u) => deriveDecoder(element).decode(u) as These<DecodeError, A>, `ReadonlyArray<${element.label}>`);
85
+ }
@@ -1,4 +1,5 @@
1
1
  // codegen:start { preset: barrel, include: ./Array/*.ts }
2
2
  export * from "./Array/api.js";
3
3
  export * from "./Array/definition.js";
4
+ export * from "./Array/derivations.js";
4
5
  // codegen:end
@@ -100,4 +100,3 @@ export function deriveDecoder<A extends Record<string, any>>(
100
100
  return These.right(res as A);
101
101
  }, `Record<string, ${valueDecoder.label}>`);
102
102
  }
103
-
@@ -0,0 +1,4 @@
1
+ // codegen:start { preset: type-barrel, include: ./compat/*.ts }
2
+ export type {} from "./compat/Array.js";
3
+ export type {} from "./compat/Record.js";
4
+ // codegen:end
@@ -32,7 +32,7 @@ export interface ConcF extends HKT {
32
32
  * @tsplus companion fncts.ConcOps
33
33
  */
34
34
  export abstract class Conc<A> implements Iterable<A>, Hashable, Equatable {
35
- readonly _A!: () => A;
35
+ declare _A: () => A;
36
36
 
37
37
  readonly _typeId: ConcTypeId = ConcTypeId;
38
38
  abstract readonly length: number;
@@ -43,19 +43,19 @@ export abstract class Conc<A> implements Iterable<A>, Hashable, Equatable {
43
43
  }
44
44
 
45
45
  [Symbol.equals](that: unknown): boolean {
46
- return Conc.isConc(that) && (this as Conc<A>).corresponds(that, Equatable.strictEquals);
46
+ return Conc.is(that) && (this as Conc<A>).corresponds(that, Equatable.strictEquals);
47
47
  }
48
48
  }
49
49
 
50
50
  abstract class ConcImplementation<A> implements Iterable<A> {
51
51
  readonly _typeId: ConcTypeId = ConcTypeId;
52
- readonly _A!: () => A;
52
+ declare _A: () => A;
53
53
  get [Symbol.hash](): number {
54
54
  return Hashable.iterator(this[Symbol.iterator]());
55
55
  }
56
56
 
57
57
  [Symbol.equals](that: unknown): boolean {
58
- return Conc.isConc(that) && (this as Conc<A>).corresponds(that, Equatable.strictEquals);
58
+ return Conc.is(that) && (this as Conc<A>).corresponds(that, Equatable.strictEquals);
59
59
  }
60
60
 
61
61
  abstract readonly length: number;
@@ -108,8 +108,8 @@ abstract class ConcImplementation<A> implements Iterable<A> {
108
108
  }
109
109
 
110
110
  concat<B>(that: ConcImplementation<B>): ConcImplementation<A | B> {
111
- concrete<A>(this);
112
- concrete<B>(that);
111
+ concrete(this);
112
+ concrete(that);
113
113
  if (this._tag === ConcTag.Empty) {
114
114
  return that;
115
115
  }
@@ -126,7 +126,7 @@ abstract class ConcImplementation<A> implements Iterable<A> {
126
126
  }
127
127
  const diff = that.depth - this.depth;
128
128
  if (Math.abs(diff) <= 1) {
129
- return new Concat(this, that);
129
+ return new Concat<A | B>(this, that);
130
130
  } else if (diff < -1) {
131
131
  if (this.left.depth >= this.right.depth) {
132
132
  const nr = this.right.concat(that);
@@ -165,7 +165,7 @@ abstract class ConcImplementation<A> implements Iterable<A> {
165
165
  } else if (n >= this.length) {
166
166
  return this;
167
167
  } else {
168
- concrete<A>(this);
168
+ concrete(this);
169
169
  switch (this._tag) {
170
170
  case ConcTag.Empty:
171
171
  return _Empty;
@@ -267,9 +267,10 @@ export class Empty<A> extends ConcImplementation<A> {
267
267
  }
268
268
  }
269
269
 
270
- export const _Empty = new Empty<any>();
270
+ export const _Empty = new Empty<never>();
271
271
 
272
272
  export class Concat<A> extends ConcImplementation<A> {
273
+ declare _A: () => A;
273
274
  readonly _tag = ConcTag.Concat;
274
275
 
275
276
  length = this.left.length + this.right.length;
@@ -729,7 +730,7 @@ export function fromArray<A>(array: ArrayLike<A>): ConcImplementation<A> {
729
730
  }
730
731
 
731
732
  /**
732
- * @tsplus static fncts.ConcOps isConc
733
+ * @tsplus static fncts.ConcOps is
733
734
  */
734
735
  export function isConc<A>(u: Iterable<A>): u is Conc<A>;
735
736
  export function isConc(u: unknown): u is Conc<unknown>;
@@ -0,0 +1,28 @@
1
+ import type { Check } from "@fncts/typelevel/Check";
2
+
3
+ /**
4
+ * @tsplus derive fncts.Guard[fncts.Conc]<_> 10
5
+ */
6
+ export function deriveGuard<A extends Conc<any>>(
7
+ ...[elem]: [A] extends [Conc<infer _A>] ? [elem: Guard<_A>] : never
8
+ ): Guard<A> {
9
+ return Guard((u): u is A => {
10
+ if (Conc.is(u)) {
11
+ return u.every(elem.is);
12
+ }
13
+ return false;
14
+ });
15
+ }
16
+
17
+ /**
18
+ * @tsplus derive fncts.Decoder[fncts.Conc]<_> 10
19
+ */
20
+ export function deriveDecoder<A extends Conc<any>>(
21
+ ...[array, elem]: [A] extends [Conc<infer _A>]
22
+ ? Check<Check.IsEqual<A, Conc<_A>>> extends Check.True
23
+ ? [array: Decoder<Array<_A>>, elem: Decoder<_A>]
24
+ : never
25
+ : never
26
+ ): Decoder<A> {
27
+ return Decoder((u) => array.decode(u).map((a) => Conc.from(a) as A), `Conc<${elem.label}>`);
28
+ }
@@ -2,6 +2,7 @@
2
2
  export * from "./Conc/api.js";
3
3
  export * from "./Conc/constructors.js";
4
4
  export * from "./Conc/definition.js";
5
+ export * from "./Conc/derivations.js";
5
6
  // codegen:end
6
7
 
7
8
  // codegen:start { preset: barrel, include: ./Conc/api/*.ts }
@@ -538,7 +538,7 @@ export function findLastMapWithIndex_<A, B>(as: ImmutableArray<A>, f: (i: number
538
538
 
539
539
  /**
540
540
  * @tsplus fluent fncts.ImmutableArray foldLeftWithIndex
541
- * @tsplus fluent fncts.base.MutableArray foldLeftWithIndex
541
+ * @tsplus fluent fncts.MutableArray foldLeftWithIndex
542
542
  */
543
543
  export function foldLeftWithIndex_<A, B>(self: ImmutableArray<A>, b: B, f: (i: number, b: B, a: A) => B): B {
544
544
  const len = self.length;
@@ -551,7 +551,7 @@ export function foldLeftWithIndex_<A, B>(self: ImmutableArray<A>, b: B, f: (i: n
551
551
 
552
552
  /**
553
553
  * @tsplus fluent fncts.ImmutableArray foldLeft
554
- * @tsplus fluent fncts.base.MutableArray foldLeft
554
+ * @tsplus fluent fncts.MutableArray foldLeft
555
555
  */
556
556
  export function foldLeft_<A, B>(self: ImmutableArray<A>, b: B, f: (b: B, a: A) => B): B {
557
557
  return self.foldLeftWithIndex(b, (_, b, a) => f(b, a));
@@ -559,7 +559,7 @@ export function foldLeft_<A, B>(self: ImmutableArray<A>, b: B, f: (b: B, a: A) =
559
559
 
560
560
  /**
561
561
  * @tsplus fluent fncts.ImmutableArray foldLeftWhile
562
- * @tsplus fluent fncts.base.MutableArray foldLeftWhile
562
+ * @tsplus fluent fncts.MutableArray foldLeftWhile
563
563
  */
564
564
  export function foldLeftWhile_<A, B>(self: ImmutableArray<A>, b: B, p: Predicate<B>, f: (b: B, a: A) => B): B {
565
565
  return self.foldLeftWithIndexWhile(b, p, (_, b, a) => f(b, a));
@@ -567,7 +567,7 @@ export function foldLeftWhile_<A, B>(self: ImmutableArray<A>, b: B, p: Predicate
567
567
 
568
568
  /**
569
569
  * @tsplus fluent fncts.ImmutableArray foldLeftWithIndexWhile
570
- * @tsplus fluent fncts.base.MutableArray foldLeftWithIndexWhile
570
+ * @tsplus fluent fncts.MutableArray foldLeftWithIndexWhile
571
571
  */
572
572
  export function foldLeftWithIndexWhile_<A, B>(
573
573
  self: ImmutableArray<A>,
@@ -661,7 +661,7 @@ export function forEach_<A, B>(self: ImmutableArray<A>, f: (a: A) => B): void {
661
661
 
662
662
  /**
663
663
  * @tsplus fluent fncts.ImmutableArray get
664
- * @tsplus fluent fncts.base.MutableArray get
664
+ * @tsplus fluent fncts.MutableArray get
665
665
  */
666
666
  export function get_<A>(self: ImmutableArray<A>, i: number): Maybe<A> {
667
667
  return self.isOutOfBound(i) ? Nothing() : Just(self._array[i]!);
@@ -954,7 +954,7 @@ export function prepend_<A, B>(self: ImmutableArray<A>, head: B): ImmutableArray
954
954
 
955
955
  /**
956
956
  * @tsplus fluent fncts.ImmutableArray prependAll
957
- * @tsplus fluent fncts.base.MutableArray prependAll
957
+ * @tsplus fluent fncts.MutableArray prependAll
958
958
  */
959
959
  export function prependAll_<A>(self: ImmutableArray<A>, a: A): ImmutableArray<A> {
960
960
  const out: Array<A> = [];
@@ -1,6 +1,6 @@
1
1
  /**
2
- * @tsplus getter fncts.base.ReadonlyArray asImmutableArray
3
- * @tsplus getter fncts.base.Array asImmutableArray
2
+ * @tsplus getter fncts.ReadonlyArray asImmutableArray
3
+ * @tsplus getter fncts.Array asImmutableArray
4
4
  */
5
5
  export function asImmutableArray<A>(self: ReadonlyArray<A>): ImmutableArray<A> {
6
6
  return new ImmutableArray(self);
@@ -35,6 +35,9 @@ export class ImmutableArray<A> implements Equatable, Hashable, Iterable<A> {
35
35
  }
36
36
  }
37
37
 
38
+ /**
39
+ * @tsplus static fncts.ImmutableArrayOps is
40
+ */
38
41
  export function isImmutableArray(u: unknown): u is ImmutableArray<unknown> {
39
42
  return hasTypeId(u, ImmutableArrayTypeId);
40
43
  }