@typed/fx 2.0.0-beta.3 → 2.0.0-beta.5

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 (663) hide show
  1. package/README.md +34 -20
  2. package/dist/Fx/Fx.d.ts +364 -12
  3. package/dist/Fx/Fx.d.ts.map +1 -1
  4. package/dist/Fx/Fx.js +37 -6
  5. package/dist/Fx/TypeId.d.ts +49 -3
  6. package/dist/Fx/TypeId.d.ts.map +1 -1
  7. package/dist/Fx/TypeId.js +39 -2
  8. package/dist/Fx/combinators/additive.d.ts +156 -5
  9. package/dist/Fx/combinators/additive.d.ts.map +1 -1
  10. package/dist/Fx/combinators/additive.js +156 -5
  11. package/dist/Fx/combinators/catch.d.ts +195 -22
  12. package/dist/Fx/combinators/catch.d.ts.map +1 -1
  13. package/dist/Fx/combinators/catch.js +186 -16
  14. package/dist/Fx/combinators/causes.d.ts +24 -1
  15. package/dist/Fx/combinators/causes.d.ts.map +1 -1
  16. package/dist/Fx/combinators/causes.js +24 -1
  17. package/dist/Fx/combinators/changesWithEffect.d.ts +20 -0
  18. package/dist/Fx/combinators/changesWithEffect.d.ts.map +1 -1
  19. package/dist/Fx/combinators/changesWithEffect.js +20 -0
  20. package/dist/Fx/combinators/compact.d.ts +17 -0
  21. package/dist/Fx/combinators/compact.d.ts.map +1 -1
  22. package/dist/Fx/combinators/compact.js +17 -0
  23. package/dist/Fx/combinators/concatMap.d.ts +86 -0
  24. package/dist/Fx/combinators/concatMap.d.ts.map +1 -0
  25. package/dist/Fx/combinators/concatMap.js +86 -0
  26. package/dist/Fx/combinators/continueWith.d.ts +109 -1
  27. package/dist/Fx/combinators/continueWith.d.ts.map +1 -1
  28. package/dist/Fx/combinators/continueWith.js +109 -1
  29. package/dist/Fx/combinators/debounce.d.ts +34 -0
  30. package/dist/Fx/combinators/debounce.d.ts.map +1 -0
  31. package/dist/Fx/combinators/debounce.js +35 -0
  32. package/dist/Fx/combinators/delay.d.ts +34 -0
  33. package/dist/Fx/combinators/delay.d.ts.map +1 -0
  34. package/dist/Fx/combinators/delay.js +31 -0
  35. package/dist/Fx/combinators/dropUntil.d.ts +42 -0
  36. package/dist/Fx/combinators/dropUntil.d.ts.map +1 -1
  37. package/dist/Fx/combinators/dropUntil.js +42 -0
  38. package/dist/Fx/combinators/during.d.ts +38 -0
  39. package/dist/Fx/combinators/during.d.ts.map +1 -0
  40. package/dist/Fx/combinators/during.js +85 -0
  41. package/dist/Fx/combinators/ensuring.d.ts +33 -3
  42. package/dist/Fx/combinators/ensuring.d.ts.map +1 -1
  43. package/dist/Fx/combinators/ensuring.js +33 -3
  44. package/dist/Fx/combinators/exhaustLatestMap.d.ts +40 -4
  45. package/dist/Fx/combinators/exhaustLatestMap.d.ts.map +1 -1
  46. package/dist/Fx/combinators/exhaustLatestMap.js +40 -4
  47. package/dist/Fx/combinators/exhaustLatestMapEffect.d.ts +39 -3
  48. package/dist/Fx/combinators/exhaustLatestMapEffect.d.ts.map +1 -1
  49. package/dist/Fx/combinators/exhaustLatestMapEffect.js +39 -3
  50. package/dist/Fx/combinators/exhaustMap.d.ts +37 -0
  51. package/dist/Fx/combinators/exhaustMap.d.ts.map +1 -1
  52. package/dist/Fx/combinators/exhaustMap.js +37 -0
  53. package/dist/Fx/combinators/exhaustMapEffect.d.ts +32 -0
  54. package/dist/Fx/combinators/exhaustMapEffect.d.ts.map +1 -1
  55. package/dist/Fx/combinators/exhaustMapEffect.js +32 -0
  56. package/dist/Fx/combinators/exit.d.ts +22 -1
  57. package/dist/Fx/combinators/exit.d.ts.map +1 -1
  58. package/dist/Fx/combinators/exit.js +22 -1
  59. package/dist/Fx/combinators/filter.d.ts +16 -0
  60. package/dist/Fx/combinators/filter.d.ts.map +1 -1
  61. package/dist/Fx/combinators/filter.js +16 -0
  62. package/dist/Fx/combinators/filterEffect.d.ts +21 -0
  63. package/dist/Fx/combinators/filterEffect.d.ts.map +1 -1
  64. package/dist/Fx/combinators/filterEffect.js +21 -0
  65. package/dist/Fx/combinators/filterMap.d.ts +19 -0
  66. package/dist/Fx/combinators/filterMap.d.ts.map +1 -1
  67. package/dist/Fx/combinators/filterMap.js +19 -0
  68. package/dist/Fx/combinators/filterMapEffect.d.ts +20 -0
  69. package/dist/Fx/combinators/filterMapEffect.d.ts.map +1 -1
  70. package/dist/Fx/combinators/filterMapEffect.js +20 -0
  71. package/dist/Fx/combinators/filterMapLoop.d.ts +19 -0
  72. package/dist/Fx/combinators/filterMapLoop.d.ts.map +1 -1
  73. package/dist/Fx/combinators/filterMapLoop.js +19 -0
  74. package/dist/Fx/combinators/filterMapLoopCause.d.ts +20 -0
  75. package/dist/Fx/combinators/filterMapLoopCause.d.ts.map +1 -1
  76. package/dist/Fx/combinators/filterMapLoopCause.js +20 -0
  77. package/dist/Fx/combinators/filterMapLoopCauseEffect.d.ts +20 -0
  78. package/dist/Fx/combinators/filterMapLoopCauseEffect.d.ts.map +1 -1
  79. package/dist/Fx/combinators/filterMapLoopCauseEffect.js +20 -0
  80. package/dist/Fx/combinators/filterMapLoopEffect.d.ts +20 -0
  81. package/dist/Fx/combinators/filterMapLoopEffect.d.ts.map +1 -1
  82. package/dist/Fx/combinators/filterMapLoopEffect.js +20 -0
  83. package/dist/Fx/combinators/flatMap.d.ts +48 -3
  84. package/dist/Fx/combinators/flatMap.d.ts.map +1 -1
  85. package/dist/Fx/combinators/flatMap.js +35 -2
  86. package/dist/Fx/combinators/flatMapConcurrently.d.ts +50 -3
  87. package/dist/Fx/combinators/flatMapConcurrently.d.ts.map +1 -1
  88. package/dist/Fx/combinators/flatMapConcurrently.js +47 -1
  89. package/dist/Fx/combinators/flatMapConcurrentlyEffect.d.ts +47 -3
  90. package/dist/Fx/combinators/flatMapConcurrentlyEffect.d.ts.map +1 -1
  91. package/dist/Fx/combinators/flatMapConcurrentlyEffect.js +39 -1
  92. package/dist/Fx/combinators/flatMapEffect.d.ts +44 -2
  93. package/dist/Fx/combinators/flatMapEffect.d.ts.map +1 -1
  94. package/dist/Fx/combinators/flatMapEffect.js +31 -1
  95. package/dist/Fx/combinators/flip.d.ts +33 -1
  96. package/dist/Fx/combinators/flip.d.ts.map +1 -1
  97. package/dist/Fx/combinators/flip.js +33 -1
  98. package/dist/Fx/combinators/gen.d.ts +28 -9
  99. package/dist/Fx/combinators/gen.d.ts.map +1 -1
  100. package/dist/Fx/combinators/gen.js +27 -3
  101. package/dist/Fx/combinators/genScoped.d.ts +32 -9
  102. package/dist/Fx/combinators/genScoped.d.ts.map +1 -1
  103. package/dist/Fx/combinators/genScoped.js +30 -2
  104. package/dist/Fx/combinators/grouped.d.ts +89 -0
  105. package/dist/Fx/combinators/grouped.d.ts.map +1 -0
  106. package/dist/Fx/combinators/grouped.js +146 -0
  107. package/dist/Fx/combinators/index.d.ts +35 -0
  108. package/dist/Fx/combinators/index.d.ts.map +1 -1
  109. package/dist/Fx/combinators/index.js +35 -0
  110. package/dist/Fx/combinators/keyed.d.ts +121 -7
  111. package/dist/Fx/combinators/keyed.d.ts.map +1 -1
  112. package/dist/Fx/combinators/keyed.js +68 -10
  113. package/dist/Fx/combinators/loop.d.ts +16 -0
  114. package/dist/Fx/combinators/loop.d.ts.map +1 -1
  115. package/dist/Fx/combinators/loop.js +16 -0
  116. package/dist/Fx/combinators/loopCause.d.ts +17 -0
  117. package/dist/Fx/combinators/loopCause.d.ts.map +1 -1
  118. package/dist/Fx/combinators/loopCause.js +17 -0
  119. package/dist/Fx/combinators/loopCauseEffect.d.ts +18 -0
  120. package/dist/Fx/combinators/loopCauseEffect.d.ts.map +1 -1
  121. package/dist/Fx/combinators/loopCauseEffect.js +18 -0
  122. package/dist/Fx/combinators/loopEffect.d.ts +23 -0
  123. package/dist/Fx/combinators/loopEffect.d.ts.map +1 -1
  124. package/dist/Fx/combinators/loopEffect.js +23 -0
  125. package/dist/Fx/combinators/map.d.ts +45 -0
  126. package/dist/Fx/combinators/map.d.ts.map +1 -1
  127. package/dist/Fx/combinators/map.js +42 -0
  128. package/dist/Fx/combinators/mapBoth.d.ts +19 -0
  129. package/dist/Fx/combinators/mapBoth.d.ts.map +1 -1
  130. package/dist/Fx/combinators/mapBoth.js +19 -0
  131. package/dist/Fx/combinators/mapEffect.d.ts +24 -0
  132. package/dist/Fx/combinators/mapEffect.d.ts.map +1 -1
  133. package/dist/Fx/combinators/mapEffect.js +24 -0
  134. package/dist/Fx/combinators/mapError.d.ts +20 -4
  135. package/dist/Fx/combinators/mapError.d.ts.map +1 -1
  136. package/dist/Fx/combinators/mapError.js +20 -4
  137. package/dist/Fx/combinators/mergeAll.d.ts +34 -0
  138. package/dist/Fx/combinators/mergeAll.d.ts.map +1 -1
  139. package/dist/Fx/combinators/mergeAll.js +34 -0
  140. package/dist/Fx/combinators/mergeOrdered.d.ts +35 -3
  141. package/dist/Fx/combinators/mergeOrdered.d.ts.map +1 -1
  142. package/dist/Fx/combinators/mergeOrdered.js +35 -3
  143. package/dist/Fx/combinators/onError.d.ts +33 -3
  144. package/dist/Fx/combinators/onError.d.ts.map +1 -1
  145. package/dist/Fx/combinators/onError.js +33 -3
  146. package/dist/Fx/combinators/onExit.d.ts +28 -2
  147. package/dist/Fx/combinators/onExit.d.ts.map +1 -1
  148. package/dist/Fx/combinators/onExit.js +28 -2
  149. package/dist/Fx/combinators/onInterrupt.d.ts +48 -3
  150. package/dist/Fx/combinators/onInterrupt.d.ts.map +1 -1
  151. package/dist/Fx/combinators/onInterrupt.js +48 -3
  152. package/dist/Fx/combinators/pairwise.d.ts +28 -0
  153. package/dist/Fx/combinators/pairwise.d.ts.map +1 -0
  154. package/dist/Fx/combinators/pairwise.js +31 -0
  155. package/dist/Fx/combinators/provide.d.ts +138 -17
  156. package/dist/Fx/combinators/provide.d.ts.map +1 -1
  157. package/dist/Fx/combinators/provide.js +134 -13
  158. package/dist/Fx/combinators/race.d.ts +92 -0
  159. package/dist/Fx/combinators/race.d.ts.map +1 -0
  160. package/dist/Fx/combinators/race.js +149 -0
  161. package/dist/Fx/combinators/repeat.d.ts +41 -0
  162. package/dist/Fx/combinators/repeat.d.ts.map +1 -0
  163. package/dist/Fx/combinators/repeat.js +57 -0
  164. package/dist/Fx/combinators/result.d.ts +22 -0
  165. package/dist/Fx/combinators/result.d.ts.map +1 -1
  166. package/dist/Fx/combinators/result.js +26 -12
  167. package/dist/Fx/combinators/retry.d.ts +53 -0
  168. package/dist/Fx/combinators/retry.d.ts.map +1 -0
  169. package/dist/Fx/combinators/retry.js +71 -0
  170. package/dist/Fx/combinators/sample.d.ts +31 -0
  171. package/dist/Fx/combinators/sample.d.ts.map +1 -0
  172. package/dist/Fx/combinators/sample.js +42 -0
  173. package/dist/Fx/combinators/scan.d.ts +39 -0
  174. package/dist/Fx/combinators/scan.d.ts.map +1 -1
  175. package/dist/Fx/combinators/scan.js +41 -2
  176. package/dist/Fx/combinators/since.d.ts +30 -0
  177. package/dist/Fx/combinators/since.d.ts.map +1 -0
  178. package/dist/Fx/combinators/since.js +39 -0
  179. package/dist/Fx/combinators/skip.d.ts +31 -0
  180. package/dist/Fx/combinators/skip.d.ts.map +1 -1
  181. package/dist/Fx/combinators/skip.js +31 -0
  182. package/dist/Fx/combinators/skipRepeats.d.ts +16 -0
  183. package/dist/Fx/combinators/skipRepeats.d.ts.map +1 -1
  184. package/dist/Fx/combinators/skipRepeats.js +16 -0
  185. package/dist/Fx/combinators/skipRepeatsWith.d.ts +17 -0
  186. package/dist/Fx/combinators/skipRepeatsWith.d.ts.map +1 -1
  187. package/dist/Fx/combinators/skipRepeatsWith.js +17 -0
  188. package/dist/Fx/combinators/skipWhile.d.ts +68 -0
  189. package/dist/Fx/combinators/skipWhile.d.ts.map +1 -1
  190. package/dist/Fx/combinators/skipWhile.js +68 -0
  191. package/dist/Fx/combinators/slice.d.ts +82 -0
  192. package/dist/Fx/combinators/slice.d.ts.map +1 -1
  193. package/dist/Fx/combinators/slice.js +33 -0
  194. package/dist/Fx/combinators/switchMap.d.ts +38 -0
  195. package/dist/Fx/combinators/switchMap.d.ts.map +1 -1
  196. package/dist/Fx/combinators/switchMap.js +42 -4
  197. package/dist/Fx/combinators/switchMapEffect.d.ts +37 -0
  198. package/dist/Fx/combinators/switchMapEffect.d.ts.map +1 -1
  199. package/dist/Fx/combinators/switchMapEffect.js +37 -0
  200. package/dist/Fx/combinators/take.d.ts +32 -0
  201. package/dist/Fx/combinators/take.d.ts.map +1 -1
  202. package/dist/Fx/combinators/take.js +32 -0
  203. package/dist/Fx/combinators/takeUntil.d.ts +46 -0
  204. package/dist/Fx/combinators/takeUntil.d.ts.map +1 -1
  205. package/dist/Fx/combinators/takeUntil.js +46 -0
  206. package/dist/Fx/combinators/takeWhile.d.ts +31 -0
  207. package/dist/Fx/combinators/takeWhile.d.ts.map +1 -1
  208. package/dist/Fx/combinators/takeWhile.js +31 -0
  209. package/dist/Fx/combinators/tapEffect.d.ts +16 -0
  210. package/dist/Fx/combinators/tapEffect.d.ts.map +1 -1
  211. package/dist/Fx/combinators/tapEffect.js +16 -0
  212. package/dist/Fx/combinators/throttle.d.ts +79 -0
  213. package/dist/Fx/combinators/throttle.d.ts.map +1 -0
  214. package/dist/Fx/combinators/throttle.js +99 -0
  215. package/dist/Fx/combinators/timeout.d.ts +76 -0
  216. package/dist/Fx/combinators/timeout.d.ts.map +1 -0
  217. package/dist/Fx/combinators/timeout.js +110 -0
  218. package/dist/Fx/combinators/tuple.d.ts +30 -0
  219. package/dist/Fx/combinators/tuple.d.ts.map +1 -1
  220. package/dist/Fx/combinators/tuple.js +34 -3
  221. package/dist/Fx/combinators/until.d.ts +27 -0
  222. package/dist/Fx/combinators/until.d.ts.map +1 -0
  223. package/dist/Fx/combinators/until.js +56 -0
  224. package/dist/Fx/combinators/unwrap.d.ts +29 -0
  225. package/dist/Fx/combinators/unwrap.d.ts.map +1 -1
  226. package/dist/Fx/combinators/unwrap.js +29 -0
  227. package/dist/Fx/combinators/unwrapScoped.d.ts +33 -0
  228. package/dist/Fx/combinators/unwrapScoped.d.ts.map +1 -1
  229. package/dist/Fx/combinators/unwrapScoped.js +33 -0
  230. package/dist/Fx/combinators/when.d.ts +35 -0
  231. package/dist/Fx/combinators/when.d.ts.map +1 -1
  232. package/dist/Fx/combinators/when.js +36 -1
  233. package/dist/Fx/combinators/withLatestFrom.d.ts +58 -0
  234. package/dist/Fx/combinators/withLatestFrom.d.ts.map +1 -0
  235. package/dist/Fx/combinators/withLatestFrom.js +68 -0
  236. package/dist/Fx/combinators/withSpan.d.ts +35 -1
  237. package/dist/Fx/combinators/withSpan.d.ts.map +1 -1
  238. package/dist/Fx/combinators/withSpan.js +34 -3
  239. package/dist/Fx/combinators/zip.d.ts +60 -0
  240. package/dist/Fx/combinators/zip.d.ts.map +1 -1
  241. package/dist/Fx/combinators/zip.js +60 -0
  242. package/dist/Fx/constructors/at.d.ts +20 -0
  243. package/dist/Fx/constructors/at.d.ts.map +1 -1
  244. package/dist/Fx/constructors/at.js +20 -0
  245. package/dist/Fx/constructors/die.d.ts +21 -0
  246. package/dist/Fx/constructors/die.d.ts.map +1 -1
  247. package/dist/Fx/constructors/die.js +21 -0
  248. package/dist/Fx/constructors/empty.d.ts +18 -0
  249. package/dist/Fx/constructors/empty.d.ts.map +1 -1
  250. package/dist/Fx/constructors/empty.js +18 -0
  251. package/dist/Fx/constructors/fail.d.ts +21 -0
  252. package/dist/Fx/constructors/fail.d.ts.map +1 -1
  253. package/dist/Fx/constructors/fail.js +21 -0
  254. package/dist/Fx/constructors/failCause.d.ts +22 -0
  255. package/dist/Fx/constructors/failCause.d.ts.map +1 -1
  256. package/dist/Fx/constructors/failCause.js +22 -0
  257. package/dist/Fx/constructors/fn.d.ts +113 -13
  258. package/dist/Fx/constructors/fn.d.ts.map +1 -1
  259. package/dist/Fx/constructors/fn.js +36 -0
  260. package/dist/Fx/constructors/fromEffect.d.ts +43 -1
  261. package/dist/Fx/constructors/fromEffect.d.ts.map +1 -1
  262. package/dist/Fx/constructors/fromEffect.js +43 -1
  263. package/dist/Fx/constructors/fromFailures.d.ts +24 -0
  264. package/dist/Fx/constructors/fromFailures.d.ts.map +1 -1
  265. package/dist/Fx/constructors/fromFailures.js +24 -0
  266. package/dist/Fx/constructors/fromIterable.d.ts +22 -0
  267. package/dist/Fx/constructors/fromIterable.d.ts.map +1 -1
  268. package/dist/Fx/constructors/fromIterable.js +22 -0
  269. package/dist/Fx/constructors/fromSchedule.d.ts +23 -0
  270. package/dist/Fx/constructors/fromSchedule.d.ts.map +1 -1
  271. package/dist/Fx/constructors/fromSchedule.js +25 -2
  272. package/dist/Fx/constructors/index.d.ts +2 -1
  273. package/dist/Fx/constructors/index.d.ts.map +1 -1
  274. package/dist/Fx/constructors/index.js +2 -1
  275. package/dist/Fx/constructors/interrupt.d.ts +21 -1
  276. package/dist/Fx/constructors/interrupt.d.ts.map +1 -1
  277. package/dist/Fx/constructors/interrupt.js +21 -1
  278. package/dist/Fx/constructors/make.d.ts +146 -1
  279. package/dist/Fx/constructors/make.d.ts.map +1 -1
  280. package/dist/Fx/constructors/make.js +56 -5
  281. package/dist/Fx/constructors/periodic.d.ts +29 -0
  282. package/dist/Fx/constructors/periodic.d.ts.map +1 -1
  283. package/dist/Fx/constructors/periodic.js +29 -0
  284. package/dist/Fx/constructors/succeed.d.ts +75 -3
  285. package/dist/Fx/constructors/succeed.d.ts.map +1 -1
  286. package/dist/Fx/constructors/succeed.js +75 -3
  287. package/dist/Fx/constructors/suspend.d.ts +28 -0
  288. package/dist/Fx/constructors/suspend.d.ts.map +1 -1
  289. package/dist/Fx/constructors/suspend.js +28 -0
  290. package/dist/Fx/constructors/sync.d.ts +32 -0
  291. package/dist/Fx/constructors/sync.d.ts.map +1 -0
  292. package/dist/Fx/constructors/sync.js +32 -0
  293. package/dist/Fx/internal/DeferredRef.d.ts +259 -7
  294. package/dist/Fx/internal/DeferredRef.d.ts.map +1 -1
  295. package/dist/Fx/internal/DeferredRef.js +260 -9
  296. package/dist/Fx/internal/UnionToTuple.d.ts +22 -0
  297. package/dist/Fx/internal/UnionToTuple.d.ts.map +1 -1
  298. package/dist/Fx/internal/diff.d.ts +586 -0
  299. package/dist/Fx/internal/diff.d.ts.map +1 -1
  300. package/dist/Fx/internal/diff.js +120 -9
  301. package/dist/Fx/internal/effectableEvaluateKey.d.ts +30 -0
  302. package/dist/Fx/internal/effectableEvaluateKey.d.ts.map +1 -0
  303. package/dist/Fx/internal/effectableEvaluateKey.js +29 -0
  304. package/dist/Fx/internal/effectableWithOverride.d.ts +55 -0
  305. package/dist/Fx/internal/effectableWithOverride.d.ts.map +1 -0
  306. package/dist/Fx/internal/effectableWithOverride.js +46 -0
  307. package/dist/Fx/internal/equivalence.d.ts +29 -0
  308. package/dist/Fx/internal/equivalence.d.ts.map +1 -1
  309. package/dist/Fx/internal/equivalence.js +29 -0
  310. package/dist/Fx/internal/multicast.d.ts +145 -2
  311. package/dist/Fx/internal/multicast.d.ts.map +1 -1
  312. package/dist/Fx/internal/multicast.js +146 -4
  313. package/dist/Fx/internal/ring-buffer.d.ts +149 -0
  314. package/dist/Fx/internal/ring-buffer.d.ts.map +1 -1
  315. package/dist/Fx/internal/ring-buffer.js +155 -0
  316. package/dist/Fx/internal/scope.d.ts +184 -0
  317. package/dist/Fx/internal/scope.d.ts.map +1 -1
  318. package/dist/Fx/internal/scope.js +150 -0
  319. package/dist/Fx/internal/yieldable.d.ts +117 -2
  320. package/dist/Fx/internal/yieldable.d.ts.map +1 -1
  321. package/dist/Fx/internal/yieldable.js +86 -3
  322. package/dist/Fx/run/collect.d.ts +89 -0
  323. package/dist/Fx/run/collect.d.ts.map +1 -1
  324. package/dist/Fx/run/collect.js +90 -1
  325. package/dist/Fx/run/first.d.ts +22 -0
  326. package/dist/Fx/run/first.d.ts.map +1 -1
  327. package/dist/Fx/run/first.js +22 -0
  328. package/dist/Fx/run/fork.d.ts +50 -0
  329. package/dist/Fx/run/fork.d.ts.map +1 -1
  330. package/dist/Fx/run/fork.js +50 -0
  331. package/dist/Fx/run/observe.d.ts +106 -0
  332. package/dist/Fx/run/observe.d.ts.map +1 -1
  333. package/dist/Fx/run/observe.js +108 -2
  334. package/dist/Fx/run/runPromise.d.ts +43 -0
  335. package/dist/Fx/run/runPromise.d.ts.map +1 -1
  336. package/dist/Fx/run/runPromise.js +43 -0
  337. package/dist/Fx/stream.d.ts +92 -0
  338. package/dist/Fx/stream.d.ts.map +1 -1
  339. package/dist/Fx/stream.js +60 -1
  340. package/dist/Push/Push.d.ts +1219 -94
  341. package/dist/Push/Push.d.ts.map +1 -1
  342. package/dist/Push/Push.js +1015 -86
  343. package/dist/RefArray.d.ts +2 -0
  344. package/dist/RefArray.d.ts.map +1 -0
  345. package/dist/RefArray.js +1 -0
  346. package/dist/RefBigDecimal.d.ts +2 -0
  347. package/dist/RefBigDecimal.d.ts.map +1 -0
  348. package/dist/RefBigDecimal.js +1 -0
  349. package/dist/RefBigInt.d.ts +2 -0
  350. package/dist/RefBigInt.d.ts.map +1 -0
  351. package/dist/RefBigInt.js +1 -0
  352. package/dist/RefBoolean.d.ts +2 -0
  353. package/dist/RefBoolean.d.ts.map +1 -0
  354. package/dist/RefBoolean.js +1 -0
  355. package/dist/RefCause.d.ts +2 -0
  356. package/dist/RefCause.d.ts.map +1 -0
  357. package/dist/RefCause.js +1 -0
  358. package/dist/RefChunk.d.ts +2 -0
  359. package/dist/RefChunk.d.ts.map +1 -0
  360. package/dist/RefChunk.js +1 -0
  361. package/dist/RefDateTime.d.ts +2 -0
  362. package/dist/RefDateTime.d.ts.map +1 -0
  363. package/dist/RefDateTime.js +1 -0
  364. package/dist/RefDuration.d.ts +2 -0
  365. package/dist/RefDuration.d.ts.map +1 -0
  366. package/dist/RefDuration.js +1 -0
  367. package/dist/RefGraph.d.ts +2 -0
  368. package/dist/RefGraph.d.ts.map +1 -0
  369. package/dist/RefGraph.js +1 -0
  370. package/dist/RefHashMap.d.ts +2 -0
  371. package/dist/RefHashMap.d.ts.map +1 -0
  372. package/dist/RefHashMap.js +1 -0
  373. package/dist/RefHashRing.d.ts +2 -0
  374. package/dist/RefHashRing.d.ts.map +1 -0
  375. package/dist/RefHashRing.js +1 -0
  376. package/dist/RefHashSet.d.ts +2 -0
  377. package/dist/RefHashSet.d.ts.map +1 -0
  378. package/dist/RefHashSet.js +1 -0
  379. package/dist/RefIterable.d.ts +2 -0
  380. package/dist/RefIterable.d.ts.map +1 -0
  381. package/dist/RefIterable.js +1 -0
  382. package/dist/RefOption.d.ts +2 -0
  383. package/dist/RefOption.d.ts.map +1 -0
  384. package/dist/RefOption.js +1 -0
  385. package/dist/RefRecord.d.ts +2 -0
  386. package/dist/RefRecord.d.ts.map +1 -0
  387. package/dist/RefRecord.js +1 -0
  388. package/dist/RefResult.d.ts +2 -0
  389. package/dist/RefResult.d.ts.map +1 -0
  390. package/dist/RefResult.js +1 -0
  391. package/dist/RefString.d.ts +2 -0
  392. package/dist/RefString.d.ts.map +1 -0
  393. package/dist/RefString.js +1 -0
  394. package/dist/RefStruct.d.ts +2 -0
  395. package/dist/RefStruct.d.ts.map +1 -0
  396. package/dist/RefStruct.js +1 -0
  397. package/dist/RefSubject/Hydration.d.ts +504 -0
  398. package/dist/RefSubject/Hydration.d.ts.map +1 -0
  399. package/dist/RefSubject/Hydration.js +300 -0
  400. package/dist/RefSubject/RefArray.d.ts +351 -4
  401. package/dist/RefSubject/RefArray.d.ts.map +1 -1
  402. package/dist/RefSubject/RefArray.js +339 -3
  403. package/dist/RefSubject/RefBigDecimal.d.ts +221 -1
  404. package/dist/RefSubject/RefBigDecimal.d.ts.map +1 -1
  405. package/dist/RefSubject/RefBigDecimal.js +210 -1
  406. package/dist/RefSubject/RefBigInt.d.ts +166 -1
  407. package/dist/RefSubject/RefBigInt.d.ts.map +1 -1
  408. package/dist/RefSubject/RefBigInt.js +155 -1
  409. package/dist/RefSubject/RefBoolean.d.ts +166 -1
  410. package/dist/RefSubject/RefBoolean.d.ts.map +1 -1
  411. package/dist/RefSubject/RefBoolean.js +155 -1
  412. package/dist/RefSubject/RefCause.d.ts +122 -1
  413. package/dist/RefSubject/RefCause.d.ts.map +1 -1
  414. package/dist/RefSubject/RefCause.js +111 -1
  415. package/dist/RefSubject/RefChunk.d.ts +406 -1
  416. package/dist/RefSubject/RefChunk.d.ts.map +1 -1
  417. package/dist/RefSubject/RefChunk.js +394 -0
  418. package/dist/RefSubject/RefDateTime.d.ts +122 -1
  419. package/dist/RefSubject/RefDateTime.d.ts.map +1 -1
  420. package/dist/RefSubject/RefDateTime.js +111 -1
  421. package/dist/RefSubject/RefDuration.d.ts +155 -1
  422. package/dist/RefSubject/RefDuration.d.ts.map +1 -1
  423. package/dist/RefSubject/RefDuration.js +144 -1
  424. package/dist/RefSubject/RefGraph.d.ts +320 -6
  425. package/dist/RefSubject/RefGraph.d.ts.map +1 -1
  426. package/dist/RefSubject/RefGraph.js +303 -0
  427. package/dist/RefSubject/RefHashMap.d.ts +296 -1
  428. package/dist/RefSubject/RefHashMap.d.ts.map +1 -1
  429. package/dist/RefSubject/RefHashMap.js +284 -0
  430. package/dist/RefSubject/RefHashRing.d.ts +146 -2
  431. package/dist/RefSubject/RefHashRing.d.ts.map +1 -1
  432. package/dist/RefSubject/RefHashRing.js +133 -0
  433. package/dist/RefSubject/RefHashSet.d.ts +230 -1
  434. package/dist/RefSubject/RefHashSet.d.ts.map +1 -1
  435. package/dist/RefSubject/RefHashSet.js +218 -0
  436. package/dist/RefSubject/RefIterable.d.ts +327 -1
  437. package/dist/RefSubject/RefIterable.d.ts.map +1 -1
  438. package/dist/RefSubject/RefIterable.js +315 -0
  439. package/dist/RefSubject/RefOption.d.ts +144 -1
  440. package/dist/RefSubject/RefOption.d.ts.map +1 -1
  441. package/dist/RefSubject/RefOption.js +133 -1
  442. package/dist/RefSubject/RefRecord.d.ts +339 -1
  443. package/dist/RefSubject/RefRecord.d.ts.map +1 -1
  444. package/dist/RefSubject/RefRecord.js +327 -0
  445. package/dist/RefSubject/RefResult.d.ts +155 -23
  446. package/dist/RefSubject/RefResult.d.ts.map +1 -1
  447. package/dist/RefSubject/RefResult.js +122 -1
  448. package/dist/RefSubject/RefString.d.ts +188 -1
  449. package/dist/RefSubject/RefString.d.ts.map +1 -1
  450. package/dist/RefSubject/RefString.js +177 -1
  451. package/dist/RefSubject/RefStruct.d.ts +156 -1
  452. package/dist/RefSubject/RefStruct.d.ts.map +1 -1
  453. package/dist/RefSubject/RefStruct.js +145 -1
  454. package/dist/RefSubject/RefSubject.d.ts +1168 -15
  455. package/dist/RefSubject/RefSubject.d.ts.map +1 -1
  456. package/dist/RefSubject/RefSubject.js +850 -58
  457. package/dist/RefSubject/RefTrie.d.ts +290 -4
  458. package/dist/RefSubject/RefTrie.d.ts.map +1 -1
  459. package/dist/RefSubject/RefTrie.js +278 -3
  460. package/dist/RefSubject/RefTuple.d.ts +117 -1
  461. package/dist/RefSubject/RefTuple.d.ts.map +1 -1
  462. package/dist/RefSubject/RefTuple.js +106 -1
  463. package/dist/RefSubject/index.d.ts +1 -0
  464. package/dist/RefSubject/index.d.ts.map +1 -1
  465. package/dist/RefSubject/index.js +1 -0
  466. package/dist/RefSubject.d.ts +2 -1
  467. package/dist/RefSubject.d.ts.map +1 -1
  468. package/dist/RefSubject.js +2 -1
  469. package/dist/RefTrie.d.ts +2 -0
  470. package/dist/RefTrie.d.ts.map +1 -0
  471. package/dist/RefTrie.js +1 -0
  472. package/dist/RefTuple.d.ts +2 -0
  473. package/dist/RefTuple.d.ts.map +1 -0
  474. package/dist/RefTuple.js +1 -0
  475. package/dist/Sink/Sink.d.ts +385 -14
  476. package/dist/Sink/Sink.d.ts.map +1 -1
  477. package/dist/Sink/Sink.js +53 -6
  478. package/dist/Sink/combinators.d.ts +731 -2
  479. package/dist/Sink/combinators.d.ts.map +1 -1
  480. package/dist/Sink/combinators.js +707 -5
  481. package/dist/Subject/Subject.d.ts +1016 -22
  482. package/dist/Subject/Subject.d.ts.map +1 -1
  483. package/dist/Subject/Subject.js +904 -39
  484. package/dist/Versioned/Versioned.d.ts +426 -9
  485. package/dist/Versioned/Versioned.d.ts.map +1 -1
  486. package/dist/Versioned/Versioned.js +241 -15
  487. package/dist/index.d.ts +22 -3
  488. package/dist/index.d.ts.map +1 -1
  489. package/dist/index.js +22 -3
  490. package/package.json +120 -11
  491. package/dist/Fx/constructors/fromYieldable.d.ts +0 -12
  492. package/dist/Fx/constructors/fromYieldable.d.ts.map +0 -1
  493. package/dist/Fx/constructors/fromYieldable.js +0 -12
  494. package/src/Fx/Fx.ts +0 -164
  495. package/src/Fx/TypeId.ts +0 -25
  496. package/src/Fx/combinators/additive.ts +0 -142
  497. package/src/Fx/combinators/catch.ts +0 -416
  498. package/src/Fx/combinators/causes.ts +0 -23
  499. package/src/Fx/combinators/changesWithEffect.ts +0 -66
  500. package/src/Fx/combinators/compact.ts +0 -15
  501. package/src/Fx/combinators/continueWith.ts +0 -78
  502. package/src/Fx/combinators/dropUntil.ts +0 -47
  503. package/src/Fx/combinators/ensuring.ts +0 -23
  504. package/src/Fx/combinators/exhaustLatestMap.ts +0 -74
  505. package/src/Fx/combinators/exhaustLatestMapEffect.ts +0 -25
  506. package/src/Fx/combinators/exhaustMap.ts +0 -36
  507. package/src/Fx/combinators/exhaustMapEffect.ts +0 -23
  508. package/src/Fx/combinators/exit.ts +0 -15
  509. package/src/Fx/combinators/filter.ts +0 -22
  510. package/src/Fx/combinators/filterEffect.ts +0 -31
  511. package/src/Fx/combinators/filterMap.ts +0 -23
  512. package/src/Fx/combinators/filterMapEffect.ts +0 -32
  513. package/src/Fx/combinators/filterMapLoop.ts +0 -35
  514. package/src/Fx/combinators/filterMapLoopCause.ts +0 -36
  515. package/src/Fx/combinators/filterMapLoopCauseEffect.ts +0 -46
  516. package/src/Fx/combinators/filterMapLoopEffect.ts +0 -36
  517. package/src/Fx/combinators/flatMap.ts +0 -51
  518. package/src/Fx/combinators/flatMapConcurrently.ts +0 -39
  519. package/src/Fx/combinators/flatMapConcurrentlyEffect.ts +0 -26
  520. package/src/Fx/combinators/flatMapEffect.ts +0 -42
  521. package/src/Fx/combinators/flip.ts +0 -14
  522. package/src/Fx/combinators/gen.ts +0 -24
  523. package/src/Fx/combinators/genScoped.ts +0 -24
  524. package/src/Fx/combinators/index.ts +0 -61
  525. package/src/Fx/combinators/keyed.ts +0 -369
  526. package/src/Fx/combinators/loop.ts +0 -27
  527. package/src/Fx/combinators/loopCause.ts +0 -34
  528. package/src/Fx/combinators/loopCauseEffect.ts +0 -36
  529. package/src/Fx/combinators/loopEffect.ts +0 -34
  530. package/src/Fx/combinators/map.ts +0 -22
  531. package/src/Fx/combinators/mapBoth.ts +0 -40
  532. package/src/Fx/combinators/mapEffect.ts +0 -32
  533. package/src/Fx/combinators/mapError.ts +0 -28
  534. package/src/Fx/combinators/mergeAll.ts +0 -22
  535. package/src/Fx/combinators/mergeOrdered.ts +0 -123
  536. package/src/Fx/combinators/onError.ts +0 -40
  537. package/src/Fx/combinators/onExit.ts +0 -82
  538. package/src/Fx/combinators/onInterrupt.ts +0 -87
  539. package/src/Fx/combinators/provide.ts +0 -124
  540. package/src/Fx/combinators/result.ts +0 -39
  541. package/src/Fx/combinators/scan.ts +0 -82
  542. package/src/Fx/combinators/skip.ts +0 -41
  543. package/src/Fx/combinators/skipRepeats.ts +0 -15
  544. package/src/Fx/combinators/skipRepeatsWith.ts +0 -40
  545. package/src/Fx/combinators/skipWhile.ts +0 -100
  546. package/src/Fx/combinators/slice.ts +0 -55
  547. package/src/Fx/combinators/switchMap.ts +0 -55
  548. package/src/Fx/combinators/switchMapEffect.ts +0 -25
  549. package/src/Fx/combinators/take.ts +0 -38
  550. package/src/Fx/combinators/takeUntil.ts +0 -88
  551. package/src/Fx/combinators/takeWhile.ts +0 -47
  552. package/src/Fx/combinators/tapEffect.ts +0 -39
  553. package/src/Fx/combinators/tuple.ts +0 -79
  554. package/src/Fx/combinators/unwrap.ts +0 -21
  555. package/src/Fx/combinators/unwrapScoped.ts +0 -26
  556. package/src/Fx/combinators/when.ts +0 -64
  557. package/src/Fx/combinators/withSpan.ts +0 -24
  558. package/src/Fx/combinators/zip.ts +0 -175
  559. package/src/Fx/constructors/at.ts +0 -23
  560. package/src/Fx/constructors/die.ts +0 -17
  561. package/src/Fx/constructors/empty.ts +0 -10
  562. package/src/Fx/constructors/fail.ts +0 -14
  563. package/src/Fx/constructors/failCause.ts +0 -14
  564. package/src/Fx/constructors/fn.ts +0 -245
  565. package/src/Fx/constructors/fromEffect.ts +0 -24
  566. package/src/Fx/constructors/fromFailures.ts +0 -19
  567. package/src/Fx/constructors/fromIterable.ts +0 -15
  568. package/src/Fx/constructors/fromSchedule.ts +0 -18
  569. package/src/Fx/constructors/fromYieldable.ts +0 -17
  570. package/src/Fx/constructors/index.ts +0 -15
  571. package/src/Fx/constructors/interrupt.ts +0 -13
  572. package/src/Fx/constructors/make.ts +0 -103
  573. package/src/Fx/constructors/periodic.ts +0 -15
  574. package/src/Fx/constructors/succeed.ts +0 -37
  575. package/src/Fx/constructors/suspend.ts +0 -6
  576. package/src/Fx/index.ts +0 -6
  577. package/src/Fx/internal/DeferredRef.ts +0 -87
  578. package/src/Fx/internal/UnionToTuple.ts +0 -12
  579. package/src/Fx/internal/diff.ts +0 -191
  580. package/src/Fx/internal/equivalence.ts +0 -12
  581. package/src/Fx/internal/multicast.ts +0 -51
  582. package/src/Fx/internal/ring-buffer.ts +0 -60
  583. package/src/Fx/internal/scope.ts +0 -58
  584. package/src/Fx/internal/yieldable.ts +0 -31
  585. package/src/Fx/run/collect.ts +0 -79
  586. package/src/Fx/run/first.ts +0 -20
  587. package/src/Fx/run/fork.ts +0 -40
  588. package/src/Fx/run/index.ts +0 -5
  589. package/src/Fx/run/observe.ts +0 -114
  590. package/src/Fx/run/runPromise.ts +0 -32
  591. package/src/Fx/stream.ts +0 -42
  592. package/src/Fx.additive-combinators.test.ts +0 -126
  593. package/src/Fx.catch-additive.test.ts +0 -206
  594. package/src/Fx.catch.test.ts +0 -60
  595. package/src/Fx.dropUntil.test.ts +0 -61
  596. package/src/Fx.fn.test.ts +0 -51
  597. package/src/Fx.lifecycle.test.ts +0 -79
  598. package/src/Fx.mapError-mapBoth.test.ts +0 -101
  599. package/src/Fx.provide-combinators.test.ts +0 -94
  600. package/src/Fx.result-changesWithEffect.test.ts +0 -112
  601. package/src/Fx.scan.test.ts +0 -73
  602. package/src/Fx.takeWhile-skipWhile.test.ts +0 -84
  603. package/src/Fx.test.ts +0 -71
  604. package/src/Fx.ts +0 -1
  605. package/src/Fx.zip-merge-additive.test.ts +0 -171
  606. package/src/Fx.zip.test.ts +0 -133
  607. package/src/Push/Push.ts +0 -1072
  608. package/src/Push/index.ts +0 -1
  609. package/src/Push.additive.test.ts +0 -256
  610. package/src/Push.test.ts +0 -26
  611. package/src/Push.ts +0 -1
  612. package/src/RefSubject/RefArray.ts +0 -516
  613. package/src/RefSubject/RefBigDecimal.test.ts +0 -56
  614. package/src/RefSubject/RefBigDecimal.ts +0 -295
  615. package/src/RefSubject/RefBigInt.test.ts +0 -56
  616. package/src/RefSubject/RefBigInt.ts +0 -189
  617. package/src/RefSubject/RefBoolean.test.ts +0 -57
  618. package/src/RefSubject/RefBoolean.ts +0 -185
  619. package/src/RefSubject/RefCause.test.ts +0 -53
  620. package/src/RefSubject/RefCause.ts +0 -146
  621. package/src/RefSubject/RefChunk.ts +0 -516
  622. package/src/RefSubject/RefDateTime.test.ts +0 -43
  623. package/src/RefSubject/RefDateTime.ts +0 -261
  624. package/src/RefSubject/RefDuration.test.ts +0 -49
  625. package/src/RefSubject/RefDuration.ts +0 -188
  626. package/src/RefSubject/RefGraph.ts +0 -649
  627. package/src/RefSubject/RefHashMap.ts +0 -474
  628. package/src/RefSubject/RefHashRing.ts +0 -262
  629. package/src/RefSubject/RefHashSet.ts +0 -308
  630. package/src/RefSubject/RefIterable.ts +0 -454
  631. package/src/RefSubject/RefOption.test.ts +0 -67
  632. package/src/RefSubject/RefOption.ts +0 -193
  633. package/src/RefSubject/RefRecord.ts +0 -621
  634. package/src/RefSubject/RefResult.test.ts +0 -63
  635. package/src/RefSubject/RefResult.ts +0 -209
  636. package/src/RefSubject/RefString.test.ts +0 -61
  637. package/src/RefSubject/RefString.ts +0 -256
  638. package/src/RefSubject/RefStruct.test.ts +0 -60
  639. package/src/RefSubject/RefStruct.ts +0 -253
  640. package/src/RefSubject/RefSubject.ts +0 -2644
  641. package/src/RefSubject/RefTrie.ts +0 -365
  642. package/src/RefSubject/RefTuple.test.ts +0 -60
  643. package/src/RefSubject/RefTuple.ts +0 -231
  644. package/src/RefSubject/index.ts +0 -21
  645. package/src/RefSubject.additive-parity.test.ts +0 -101
  646. package/src/RefSubject.test.ts +0 -65
  647. package/src/RefSubject.ts +0 -1
  648. package/src/Sink/Sink.ts +0 -159
  649. package/src/Sink/combinators.ts +0 -1115
  650. package/src/Sink/index.ts +0 -2
  651. package/src/Sink.combinators.test.ts +0 -88
  652. package/src/Sink.reduce-collect-head-last.test.ts +0 -107
  653. package/src/Sink.ts +0 -1
  654. package/src/Subject/Subject.ts +0 -441
  655. package/src/Subject/index.ts +0 -1
  656. package/src/Subject.test.ts +0 -47
  657. package/src/Subject.ts +0 -1
  658. package/src/Versioned/Versioned.ts +0 -597
  659. package/src/Versioned/index.ts +0 -1
  660. package/src/Versioned.filterMap.test.ts +0 -91
  661. package/src/Versioned.test.ts +0 -23
  662. package/src/Versioned.ts +0 -1
  663. package/src/index.ts +0 -7
@@ -9,10 +9,21 @@ import * as RefSubject from "./RefSubject.js";
9
9
  /**
10
10
  * Creates a new `RefBoolean` from a boolean, `Effect`, or `Fx`.
11
11
  *
12
+ * @remarks
13
+ * ## Why
14
+ *
15
+ * Creates boolean state with equality suited to that Effect data type, so unchanged values do not
16
+ * produce redundant pushed updates.
17
+ *
18
+ * ## Ownership and lifetime
19
+ *
20
+ * The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
21
+ * and cleanup; source failures and services stay on reads and pushes.
22
+ *
12
23
  * @example
13
24
  * ```ts
14
25
  * import { Effect } from "effect"
15
- * import * as RefBoolean from "effect/typed/fx/RefSubject/RefBoolean"
26
+ * import * as RefBoolean from "@typed/fx/RefBoolean"
16
27
  *
17
28
  * const program = Effect.gen(function* () {
18
29
  * const value = yield* RefBoolean.make(true)
@@ -29,18 +40,51 @@ export function make(initial, eq = Equivalence_.strictEqual()) {
29
40
  }
30
41
  /**
31
42
  * Toggle the current state of a RefBoolean.
43
+ * @remarks
44
+ * ## Why
45
+ *
46
+ * Keeps toggle atomic with respect to competing RefSubject writes instead of splitting the read
47
+ * and replacement into separate effects.
48
+ *
49
+ * ## Ownership and lifetime
50
+ *
51
+ * Running toggle performs one serialized boolean transition and resolves with its committed value.
52
+ * It acquires no resource; failures and services remain those of the source ref.
53
+ *
32
54
  * @since 1.18.0
33
55
  * @category combinators
34
56
  */
35
57
  export const toggle = (ref) => RefSubject.update(ref, Boolean_.not);
36
58
  /**
37
59
  * Set the current state of a RefBoolean to true.
60
+ * @remarks
61
+ * ## Why
62
+ *
63
+ * Keeps set true atomic with respect to competing RefSubject writes instead of splitting the read
64
+ * and replacement into separate effects.
65
+ *
66
+ * ## Ownership and lifetime
67
+ *
68
+ * Running set true performs one serialized boolean transition and resolves with its committed
69
+ * value. It acquires no resource; failures and services remain those of the source ref.
70
+ *
38
71
  * @since 1.18.0
39
72
  * @category combinators
40
73
  */
41
74
  export const setTrue = (ref) => RefSubject.set(ref, true);
42
75
  /**
43
76
  * Set the current state of a RefBoolean to false.
77
+ * @remarks
78
+ * ## Why
79
+ *
80
+ * Keeps set false atomic with respect to competing RefSubject writes instead of splitting the read
81
+ * and replacement into separate effects.
82
+ *
83
+ * ## Ownership and lifetime
84
+ *
85
+ * Running set false performs one serialized boolean transition and resolves with its committed
86
+ * value. It acquires no resource; failures and services remain those of the source ref.
87
+ *
44
88
  * @since 1.18.0
45
89
  * @category combinators
46
90
  */
@@ -50,6 +94,17 @@ export const setFalse = (ref) => RefSubject.set(ref, false);
50
94
  // ========================================
51
95
  /**
52
96
  * Apply AND operation with a boolean to the current state of a RefBoolean.
97
+ * @remarks
98
+ * ## Why
99
+ *
100
+ * Apply AND operation with a boolean to the current state of a RefBoolean. The operation remains
101
+ * attached to the RefSubject's versioned state boundary.
102
+ *
103
+ * ## Ownership and lifetime
104
+ *
105
+ * The and view retains no independent state. An Effect read samples the source once; Fx
106
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
107
+ *
53
108
  * @since 1.18.0
54
109
  * @category computed
55
110
  */
@@ -58,6 +113,17 @@ export const and = dual(2, function and(ref, that) {
58
113
  });
59
114
  /**
60
115
  * Apply OR operation with a boolean to the current state of a RefBoolean.
116
+ * @remarks
117
+ * ## Why
118
+ *
119
+ * Apply OR operation with a boolean to the current state of a RefBoolean. The operation remains
120
+ * attached to the RefSubject's versioned state boundary.
121
+ *
122
+ * ## Ownership and lifetime
123
+ *
124
+ * The or view retains no independent state. An Effect read samples the source once; Fx observation
125
+ * follows later pushes and its observing Scope owns subscription cleanup.
126
+ *
61
127
  * @since 1.18.0
62
128
  * @category computed
63
129
  */
@@ -66,12 +132,34 @@ export const or = dual(2, function or(ref, that) {
66
132
  });
67
133
  /**
68
134
  * Apply NOT operation to the current state of a RefBoolean.
135
+ * @remarks
136
+ * ## Why
137
+ *
138
+ * Apply NOT operation to the current state of a RefBoolean. The operation remains attached to the
139
+ * RefSubject's versioned state boundary.
140
+ *
141
+ * ## Ownership and lifetime
142
+ *
143
+ * The not view retains no independent state. An Effect read samples the source once; Fx
144
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
145
+ *
69
146
  * @since 1.18.0
70
147
  * @category computed
71
148
  */
72
149
  export const not = (ref) => RefSubject.map(ref, Boolean_.not);
73
150
  /**
74
151
  * Apply XOR operation with a boolean to the current state of a RefBoolean.
152
+ * @remarks
153
+ * ## Why
154
+ *
155
+ * Apply XOR operation with a boolean to the current state of a RefBoolean. The operation remains
156
+ * attached to the RefSubject's versioned state boundary.
157
+ *
158
+ * ## Ownership and lifetime
159
+ *
160
+ * The xor view retains no independent state. An Effect read samples the source once; Fx
161
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
162
+ *
75
163
  * @since 1.18.0
76
164
  * @category computed
77
165
  */
@@ -80,6 +168,17 @@ export const xor = dual(2, function xor(ref, that) {
80
168
  });
81
169
  /**
82
170
  * Apply NAND operation with a boolean to the current state of a RefBoolean.
171
+ * @remarks
172
+ * ## Why
173
+ *
174
+ * Apply NAND operation with a boolean to the current state of a RefBoolean. The operation remains
175
+ * attached to the RefSubject's versioned state boundary.
176
+ *
177
+ * ## Ownership and lifetime
178
+ *
179
+ * The nand view retains no independent state. An Effect read samples the source once; Fx
180
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
181
+ *
83
182
  * @since 1.18.0
84
183
  * @category computed
85
184
  */
@@ -88,6 +187,17 @@ export const nand = dual(2, function nand(ref, that) {
88
187
  });
89
188
  /**
90
189
  * Apply NOR operation with a boolean to the current state of a RefBoolean.
190
+ * @remarks
191
+ * ## Why
192
+ *
193
+ * Apply NOR operation with a boolean to the current state of a RefBoolean. The operation remains
194
+ * attached to the RefSubject's versioned state boundary.
195
+ *
196
+ * ## Ownership and lifetime
197
+ *
198
+ * The nor view retains no independent state. An Effect read samples the source once; Fx
199
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
200
+ *
91
201
  * @since 1.18.0
92
202
  * @category computed
93
203
  */
@@ -96,6 +206,17 @@ export const nor = dual(2, function nor(ref, that) {
96
206
  });
97
207
  /**
98
208
  * Apply EQV (XNOR) operation with a boolean to the current state of a RefBoolean.
209
+ * @remarks
210
+ * ## Why
211
+ *
212
+ * Apply EQV (XNOR) operation with a boolean to the current state of a RefBoolean. The operation
213
+ * remains attached to the RefSubject's versioned state boundary.
214
+ *
215
+ * ## Ownership and lifetime
216
+ *
217
+ * The eqv view retains no independent state. An Effect read samples the source once; Fx
218
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
219
+ *
99
220
  * @since 1.18.0
100
221
  * @category computed
101
222
  */
@@ -104,6 +225,17 @@ export const eqv = dual(2, function eqv(ref, that) {
104
225
  });
105
226
  /**
106
227
  * Apply implication operation with a boolean to the current state of a RefBoolean.
228
+ * @remarks
229
+ * ## Why
230
+ *
231
+ * Apply implication operation with a boolean to the current state of a RefBoolean. The operation
232
+ * remains attached to the RefSubject's versioned state boundary.
233
+ *
234
+ * ## Ownership and lifetime
235
+ *
236
+ * The implies view retains no independent state. An Effect read samples the source once; Fx
237
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
238
+ *
107
239
  * @since 1.18.0
108
240
  * @category computed
109
241
  */
@@ -112,12 +244,34 @@ export const implies = dual(2, function implies(ref, that) {
112
244
  });
113
245
  /**
114
246
  * Check if the current state of a RefBoolean is true.
247
+ * @remarks
248
+ * ## Why
249
+ *
250
+ * Check if the current state of a RefBoolean is true. The operation remains attached to the
251
+ * RefSubject's versioned state boundary.
252
+ *
253
+ * ## Ownership and lifetime
254
+ *
255
+ * The is true view retains no independent state. An Effect read samples the source once; Fx
256
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
257
+ *
115
258
  * @since 1.18.0
116
259
  * @category computed
117
260
  */
118
261
  export const isTrue = (ref) => RefSubject.map(ref, (self) => self === true);
119
262
  /**
120
263
  * Check if the current state of a RefBoolean is false.
264
+ * @remarks
265
+ * ## Why
266
+ *
267
+ * Check if the current state of a RefBoolean is false. The operation remains attached to the
268
+ * RefSubject's versioned state boundary.
269
+ *
270
+ * ## Ownership and lifetime
271
+ *
272
+ * The is false view retains no independent state. An Effect read samples the source once; Fx
273
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
274
+ *
121
275
  * @since 1.18.0
122
276
  * @category computed
123
277
  */
@@ -10,6 +10,17 @@ import type * as Fx from "../Fx/index.js";
10
10
  import * as RefSubject from "./RefSubject.js";
11
11
  /**
12
12
  * A RefCause is a RefSubject specialized over a Cause value.
13
+ * @remarks
14
+ * ## Why
15
+ *
16
+ * Defines cause state with the same current-read, pushed-update, and synchronized-write contract
17
+ * as RefSubject.
18
+ *
19
+ * ## Ownership and lifetime
20
+ *
21
+ * RefCause is a contract and performs no acquisition. Implementations retain the errors, services,
22
+ * interruption, and Scope requirements expressed by its members.
23
+ *
13
24
  * @since 1.18.0
14
25
  * @category models
15
26
  */
@@ -18,10 +29,21 @@ export interface RefCause<in out E, in out Err = never, out R = never> extends R
18
29
  /**
19
30
  * Creates a new `RefCause` from a Cause, `Effect`, or `Fx`.
20
31
  *
32
+ * @remarks
33
+ * ## Why
34
+ *
35
+ * Creates cause state with equality suited to that Effect data type, so unchanged values do not
36
+ * produce redundant pushed updates.
37
+ *
38
+ * ## Ownership and lifetime
39
+ *
40
+ * The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
41
+ * and cleanup; source failures and services stay on reads and pushes.
42
+ *
21
43
  * @example
22
44
  * ```ts
23
45
  * import { Effect, Cause } from "effect"
24
- * import * as RefCause from "effect/typed/fx/RefSubject/RefCause"
46
+ * import * as RefCause from "@typed/fx/RefCause"
25
47
  *
26
48
  * const program = Effect.gen(function* () {
27
49
  * const value = yield* RefCause.make(Cause.fail("error"))
@@ -36,6 +58,17 @@ export interface RefCause<in out E, in out Err = never, out R = never> extends R
36
58
  export declare function make<E = never, Err = never, R = never>(initial: Cause.Cause<E> | Effect.Effect<Cause.Cause<E>, Err, R> | Fx.Fx<Cause.Cause<E>, Err, R>, eq?: Equivalence<Cause.Cause<E>>): Effect.Effect<RefCause<E, Err>, never, R | Scope.Scope>;
37
59
  /**
38
60
  * Set the current state of a RefCause to a Fail cause.
61
+ * @remarks
62
+ * ## Why
63
+ *
64
+ * Keeps set fail atomic with respect to competing RefSubject writes instead of splitting the read
65
+ * and replacement into separate effects.
66
+ *
67
+ * ## Ownership and lifetime
68
+ *
69
+ * Running set fail performs one serialized cause transition and resolves with its committed value.
70
+ * It acquires no resource; failures and services remain those of the source ref.
71
+ *
39
72
  * @since 1.18.0
40
73
  * @category combinators
41
74
  */
@@ -45,6 +78,17 @@ export declare const setFail: {
45
78
  };
46
79
  /**
47
80
  * Set the current state of a RefCause to a Die cause.
81
+ * @remarks
82
+ * ## Why
83
+ *
84
+ * Keeps set die atomic with respect to competing RefSubject writes instead of splitting the read
85
+ * and replacement into separate effects.
86
+ *
87
+ * ## Ownership and lifetime
88
+ *
89
+ * Running set die performs one serialized cause transition and resolves with its committed value.
90
+ * It acquires no resource; failures and services remain those of the source ref.
91
+ *
48
92
  * @since 1.18.0
49
93
  * @category combinators
50
94
  */
@@ -54,6 +98,17 @@ export declare const setDie: {
54
98
  };
55
99
  /**
56
100
  * Set the current state of a RefCause to an Interrupt cause.
101
+ * @remarks
102
+ * ## Why
103
+ *
104
+ * Keeps set interrupt atomic with respect to competing RefSubject writes instead of splitting the
105
+ * read and replacement into separate effects.
106
+ *
107
+ * ## Ownership and lifetime
108
+ *
109
+ * Running set interrupt performs one serialized cause transition and resolves with its committed
110
+ * value. It acquires no resource; failures and services remain those of the source ref.
111
+ *
57
112
  * @since 1.18.0
58
113
  * @category combinators
59
114
  */
@@ -63,36 +118,102 @@ export declare const setInterrupt: {
63
118
  };
64
119
  /**
65
120
  * Check if the current state of a RefCause has a Fail.
121
+ * @remarks
122
+ * ## Why
123
+ *
124
+ * Makes has fails a live projection of the cause; consumers can sample it now or observe it
125
+ * without copying the source state.
126
+ *
127
+ * ## Ownership and lifetime
128
+ *
129
+ * The has fails view retains no independent state. An Effect read samples the source once; Fx
130
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
131
+ *
66
132
  * @since 1.18.0
67
133
  * @category computed
68
134
  */
69
135
  export declare const hasFails: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
70
136
  /**
71
137
  * Check if the current state of a RefCause has a Die.
138
+ * @remarks
139
+ * ## Why
140
+ *
141
+ * Makes has dies a live projection of the cause; consumers can sample it now or observe it without
142
+ * copying the source state.
143
+ *
144
+ * ## Ownership and lifetime
145
+ *
146
+ * The has dies view retains no independent state. An Effect read samples the source once; Fx
147
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
148
+ *
72
149
  * @since 1.18.0
73
150
  * @category computed
74
151
  */
75
152
  export declare const hasDies: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
76
153
  /**
77
154
  * Check if the current state of a RefCause has an Interrupt.
155
+ * @remarks
156
+ * ## Why
157
+ *
158
+ * Makes has interrupts a live projection of the cause; consumers can sample it now or observe it
159
+ * without copying the source state.
160
+ *
161
+ * ## Ownership and lifetime
162
+ *
163
+ * The has interrupts view retains no independent state. An Effect read samples the source once; Fx
164
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
165
+ *
78
166
  * @since 1.18.0
79
167
  * @category computed
80
168
  */
81
169
  export declare const hasInterrupts: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
82
170
  /**
83
171
  * Check if the current state of a RefCause is empty.
172
+ * @remarks
173
+ * ## Why
174
+ *
175
+ * Makes is empty a live projection of the cause; consumers can sample it now or observe it without
176
+ * copying the source state.
177
+ *
178
+ * ## Ownership and lifetime
179
+ *
180
+ * The is empty view retains no independent state. An Effect read samples the source once; Fx
181
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
182
+ *
84
183
  * @since 1.18.0
85
184
  * @category computed
86
185
  */
87
186
  export declare const isEmpty: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
88
187
  /**
89
188
  * Get the size (number of failures) of the current state of a RefCause.
189
+ * @remarks
190
+ * ## Why
191
+ *
192
+ * Makes size a live projection of the cause; consumers can sample it now or observe it without
193
+ * copying the source state.
194
+ *
195
+ * ## Ownership and lifetime
196
+ *
197
+ * The size view retains no independent state. An Effect read samples the source once; Fx
198
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
199
+ *
90
200
  * @since 1.18.0
91
201
  * @category computed
92
202
  */
93
203
  export declare const size: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<number, Err, R>;
94
204
  /**
95
205
  * Get the reasons array of the current state of a RefCause.
206
+ * @remarks
207
+ * ## Why
208
+ *
209
+ * Get the reasons array of the current state of a RefCause. The operation remains attached to the
210
+ * RefSubject's versioned state boundary.
211
+ *
212
+ * ## Ownership and lifetime
213
+ *
214
+ * The reasons view retains no independent state. An Effect read samples the source once; Fx
215
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
216
+ *
96
217
  * @since 1.18.0
97
218
  * @category computed
98
219
  */
@@ -1 +1 @@
1
- {"version":3,"file":"RefCause.d.ts","sourceRoot":"","sources":["../../src/RefSubject/RefCause.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RefCause.d.ts","sourceRoot":"","sources":["../../src/RefSubject/RefCause.ts"],"names":[],"mappings":"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"}
@@ -10,10 +10,21 @@ import * as RefSubject from "./RefSubject.js";
10
10
  /**
11
11
  * Creates a new `RefCause` from a Cause, `Effect`, or `Fx`.
12
12
  *
13
+ * @remarks
14
+ * ## Why
15
+ *
16
+ * Creates cause state with equality suited to that Effect data type, so unchanged values do not
17
+ * produce redundant pushed updates.
18
+ *
19
+ * ## Ownership and lifetime
20
+ *
21
+ * The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
22
+ * and cleanup; source failures and services stay on reads and pushes.
23
+ *
13
24
  * @example
14
25
  * ```ts
15
26
  * import { Effect, Cause } from "effect"
16
- * import * as RefCause from "effect/typed/fx/RefSubject/RefCause"
27
+ * import * as RefCause from "@typed/fx/RefCause"
17
28
  *
18
29
  * const program = Effect.gen(function* () {
19
30
  * const value = yield* RefCause.make(Cause.fail("error"))
@@ -30,6 +41,17 @@ export function make(initial, eq = equals) {
30
41
  }
31
42
  /**
32
43
  * Set the current state of a RefCause to a Fail cause.
44
+ * @remarks
45
+ * ## Why
46
+ *
47
+ * Keeps set fail atomic with respect to competing RefSubject writes instead of splitting the read
48
+ * and replacement into separate effects.
49
+ *
50
+ * ## Ownership and lifetime
51
+ *
52
+ * Running set fail performs one serialized cause transition and resolves with its committed value.
53
+ * It acquires no resource; failures and services remain those of the source ref.
54
+ *
33
55
  * @since 1.18.0
34
56
  * @category combinators
35
57
  */
@@ -38,6 +60,17 @@ export const setFail = dual(2, function setFail(ref, error) {
38
60
  });
39
61
  /**
40
62
  * Set the current state of a RefCause to a Die cause.
63
+ * @remarks
64
+ * ## Why
65
+ *
66
+ * Keeps set die atomic with respect to competing RefSubject writes instead of splitting the read
67
+ * and replacement into separate effects.
68
+ *
69
+ * ## Ownership and lifetime
70
+ *
71
+ * Running set die performs one serialized cause transition and resolves with its committed value.
72
+ * It acquires no resource; failures and services remain those of the source ref.
73
+ *
41
74
  * @since 1.18.0
42
75
  * @category combinators
43
76
  */
@@ -46,6 +79,17 @@ export const setDie = dual(2, function setDie(ref, defect) {
46
79
  });
47
80
  /**
48
81
  * Set the current state of a RefCause to an Interrupt cause.
82
+ * @remarks
83
+ * ## Why
84
+ *
85
+ * Keeps set interrupt atomic with respect to competing RefSubject writes instead of splitting the
86
+ * read and replacement into separate effects.
87
+ *
88
+ * ## Ownership and lifetime
89
+ *
90
+ * Running set interrupt performs one serialized cause transition and resolves with its committed
91
+ * value. It acquires no resource; failures and services remain those of the source ref.
92
+ *
49
93
  * @since 1.18.0
50
94
  * @category combinators
51
95
  */
@@ -57,36 +101,102 @@ export const setInterrupt = dual(2, function setInterrupt(ref, fiberId) {
57
101
  // ========================================
58
102
  /**
59
103
  * Check if the current state of a RefCause has a Fail.
104
+ * @remarks
105
+ * ## Why
106
+ *
107
+ * Makes has fails a live projection of the cause; consumers can sample it now or observe it
108
+ * without copying the source state.
109
+ *
110
+ * ## Ownership and lifetime
111
+ *
112
+ * The has fails view retains no independent state. An Effect read samples the source once; Fx
113
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
114
+ *
60
115
  * @since 1.18.0
61
116
  * @category computed
62
117
  */
63
118
  export const hasFails = (ref) => RefSubject.map(ref, Cause.hasFails);
64
119
  /**
65
120
  * Check if the current state of a RefCause has a Die.
121
+ * @remarks
122
+ * ## Why
123
+ *
124
+ * Makes has dies a live projection of the cause; consumers can sample it now or observe it without
125
+ * copying the source state.
126
+ *
127
+ * ## Ownership and lifetime
128
+ *
129
+ * The has dies view retains no independent state. An Effect read samples the source once; Fx
130
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
131
+ *
66
132
  * @since 1.18.0
67
133
  * @category computed
68
134
  */
69
135
  export const hasDies = (ref) => RefSubject.map(ref, Cause.hasDies);
70
136
  /**
71
137
  * Check if the current state of a RefCause has an Interrupt.
138
+ * @remarks
139
+ * ## Why
140
+ *
141
+ * Makes has interrupts a live projection of the cause; consumers can sample it now or observe it
142
+ * without copying the source state.
143
+ *
144
+ * ## Ownership and lifetime
145
+ *
146
+ * The has interrupts view retains no independent state. An Effect read samples the source once; Fx
147
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
148
+ *
72
149
  * @since 1.18.0
73
150
  * @category computed
74
151
  */
75
152
  export const hasInterrupts = (ref) => RefSubject.map(ref, Cause.hasInterrupts);
76
153
  /**
77
154
  * Check if the current state of a RefCause is empty.
155
+ * @remarks
156
+ * ## Why
157
+ *
158
+ * Makes is empty a live projection of the cause; consumers can sample it now or observe it without
159
+ * copying the source state.
160
+ *
161
+ * ## Ownership and lifetime
162
+ *
163
+ * The is empty view retains no independent state. An Effect read samples the source once; Fx
164
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
165
+ *
78
166
  * @since 1.18.0
79
167
  * @category computed
80
168
  */
81
169
  export const isEmpty = (ref) => RefSubject.map(ref, (self) => self.reasons.length === 0);
82
170
  /**
83
171
  * Get the size (number of failures) of the current state of a RefCause.
172
+ * @remarks
173
+ * ## Why
174
+ *
175
+ * Makes size a live projection of the cause; consumers can sample it now or observe it without
176
+ * copying the source state.
177
+ *
178
+ * ## Ownership and lifetime
179
+ *
180
+ * The size view retains no independent state. An Effect read samples the source once; Fx
181
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
182
+ *
84
183
  * @since 1.18.0
85
184
  * @category computed
86
185
  */
87
186
  export const size = (ref) => RefSubject.map(ref, (self) => self.reasons.length);
88
187
  /**
89
188
  * Get the reasons array of the current state of a RefCause.
189
+ * @remarks
190
+ * ## Why
191
+ *
192
+ * Get the reasons array of the current state of a RefCause. The operation remains attached to the
193
+ * RefSubject's versioned state boundary.
194
+ *
195
+ * ## Ownership and lifetime
196
+ *
197
+ * The reasons view retains no independent state. An Effect read samples the source once; Fx
198
+ * observation follows later pushes and its observing Scope owns subscription cleanup.
199
+ *
90
200
  * @since 1.18.0
91
201
  * @category computed
92
202
  */