@fncts/io 0.0.34 → 0.0.35

Sign up to get free protection for your applications and to get access to all the features.
Files changed (173) hide show
  1. package/Fiber/FiberRuntime.d.ts +7 -7
  2. package/IO/api/all.d.ts +41 -0
  3. package/IO/api/concurrency.d.ts +11 -0
  4. package/IO/api/interrupt.d.ts +1 -1
  5. package/IO/api/raceWith.d.ts +2 -1
  6. package/IO/api.d.ts +7 -2
  7. package/IO/definition.d.ts +103 -127
  8. package/IO.d.ts +1 -0
  9. package/Push/api.d.ts +25 -4
  10. package/Push/definition.d.ts +17 -0
  11. package/STM/definition.d.ts +2 -2
  12. package/Sink/api.d.ts +19 -19
  13. package/_cjs/Channel/api/runScoped.cjs +1 -1
  14. package/_cjs/Channel/api/runScoped.cjs.map +1 -1
  15. package/_cjs/Channel/api.cjs +2 -2
  16. package/_cjs/Channel/api.cjs.map +1 -1
  17. package/_cjs/Fiber/FiberRuntime.cjs +110 -98
  18. package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
  19. package/_cjs/Future/api.cjs +1 -1
  20. package/_cjs/Future/api.cjs.map +1 -1
  21. package/_cjs/IO/api/all.cjs +33 -0
  22. package/_cjs/IO/api/all.cjs.map +1 -0
  23. package/_cjs/IO/api/asyncIO.cjs +1 -1
  24. package/_cjs/IO/api/asyncIO.cjs.map +1 -1
  25. package/_cjs/IO/api/bracketExit.cjs +1 -1
  26. package/_cjs/IO/api/bracketExit.cjs.map +1 -1
  27. package/_cjs/IO/api/concurrency.cjs +25 -4
  28. package/_cjs/IO/api/concurrency.cjs.map +1 -1
  29. package/_cjs/IO/api/disconnect.cjs +1 -1
  30. package/_cjs/IO/api/disconnect.cjs.map +1 -1
  31. package/_cjs/IO/api/foreachConcurrent.cjs +1 -1
  32. package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -1
  33. package/_cjs/IO/api/foreachExec.cjs +1 -1
  34. package/_cjs/IO/api/foreachExec.cjs.map +1 -1
  35. package/_cjs/IO/api/forkIn.cjs +1 -1
  36. package/_cjs/IO/api/forkIn.cjs.map +1 -1
  37. package/_cjs/IO/api/forkScoped.cjs +1 -1
  38. package/_cjs/IO/api/forkScoped.cjs.map +1 -1
  39. package/_cjs/IO/api/fulfill.cjs +1 -1
  40. package/_cjs/IO/api/fulfill.cjs.map +1 -1
  41. package/_cjs/IO/api/interrupt.cjs +18 -6
  42. package/_cjs/IO/api/interrupt.cjs.map +1 -1
  43. package/_cjs/IO/api/raceWith.cjs +4 -4
  44. package/_cjs/IO/api/raceWith.cjs.map +1 -1
  45. package/_cjs/IO/api/timeout.cjs +8 -5
  46. package/_cjs/IO/api/timeout.cjs.map +1 -1
  47. package/_cjs/IO/api/zipConcurrent.cjs +1 -1
  48. package/_cjs/IO/api/zipConcurrent.cjs.map +1 -1
  49. package/_cjs/IO/api.cjs +78 -20
  50. package/_cjs/IO/api.cjs.map +1 -1
  51. package/_cjs/IO/definition.cjs +14 -191
  52. package/_cjs/IO/definition.cjs.map +1 -1
  53. package/_cjs/IO.cjs +11 -0
  54. package/_cjs/IO.cjs.map +1 -1
  55. package/_cjs/Layer/MemoMap.cjs +1 -1
  56. package/_cjs/Layer/MemoMap.cjs.map +1 -1
  57. package/_cjs/Push/api.cjs +149 -110
  58. package/_cjs/Push/api.cjs.map +1 -1
  59. package/_cjs/Push/definition.cjs.map +1 -1
  60. package/_cjs/STM/api/atomically.cjs +1 -1
  61. package/_cjs/STM/api/atomically.cjs.map +1 -1
  62. package/_cjs/STM/definition.cjs +1 -1
  63. package/_cjs/STM/definition.cjs.map +1 -1
  64. package/_cjs/ScopedRef/api.cjs +2 -2
  65. package/_cjs/ScopedRef/api.cjs.map +1 -1
  66. package/_cjs/Semaphore.cjs +1 -1
  67. package/_cjs/Semaphore.cjs.map +1 -1
  68. package/_cjs/TReentrantLock/api.cjs +2 -2
  69. package/_cjs/TReentrantLock/api.cjs.map +1 -1
  70. package/_cjs/TSemaphore/api.cjs +1 -1
  71. package/_cjs/TSemaphore/api.cjs.map +1 -1
  72. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +12 -17
  73. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
  74. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +12 -17
  75. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
  76. package/_cjs/collection/immutable/Conc/filterIO.cjs +2 -12
  77. package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
  78. package/_cjs/collection/immutable/Conc/mapIO.cjs +3 -9
  79. package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
  80. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +11 -27
  81. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
  82. package/_mjs/Channel/api/runScoped.mjs +1 -1
  83. package/_mjs/Channel/api/runScoped.mjs.map +1 -1
  84. package/_mjs/Channel/api.mjs +2 -2
  85. package/_mjs/Channel/api.mjs.map +1 -1
  86. package/_mjs/Fiber/FiberRuntime.mjs +111 -100
  87. package/_mjs/Fiber/FiberRuntime.mjs.map +1 -1
  88. package/_mjs/Future/api.mjs +1 -1
  89. package/_mjs/Future/api.mjs.map +1 -1
  90. package/_mjs/IO/api/all.mjs +24 -0
  91. package/_mjs/IO/api/all.mjs.map +1 -0
  92. package/_mjs/IO/api/asyncIO.mjs +1 -1
  93. package/_mjs/IO/api/asyncIO.mjs.map +1 -1
  94. package/_mjs/IO/api/bracketExit.mjs +1 -1
  95. package/_mjs/IO/api/bracketExit.mjs.map +1 -1
  96. package/_mjs/IO/api/concurrency.mjs +19 -2
  97. package/_mjs/IO/api/concurrency.mjs.map +1 -1
  98. package/_mjs/IO/api/disconnect.mjs +1 -1
  99. package/_mjs/IO/api/disconnect.mjs.map +1 -1
  100. package/_mjs/IO/api/foreachConcurrent.mjs +1 -1
  101. package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -1
  102. package/_mjs/IO/api/foreachExec.mjs +1 -1
  103. package/_mjs/IO/api/foreachExec.mjs.map +1 -1
  104. package/_mjs/IO/api/forkIn.mjs +1 -1
  105. package/_mjs/IO/api/forkIn.mjs.map +1 -1
  106. package/_mjs/IO/api/forkScoped.mjs +1 -1
  107. package/_mjs/IO/api/forkScoped.mjs.map +1 -1
  108. package/_mjs/IO/api/fulfill.mjs +1 -1
  109. package/_mjs/IO/api/fulfill.mjs.map +1 -1
  110. package/_mjs/IO/api/interrupt.mjs +19 -7
  111. package/_mjs/IO/api/interrupt.mjs.map +1 -1
  112. package/_mjs/IO/api/raceWith.mjs +4 -4
  113. package/_mjs/IO/api/raceWith.mjs.map +1 -1
  114. package/_mjs/IO/api/timeout.mjs +8 -5
  115. package/_mjs/IO/api/timeout.mjs.map +1 -1
  116. package/_mjs/IO/api/zipConcurrent.mjs +1 -1
  117. package/_mjs/IO/api/zipConcurrent.mjs.map +1 -1
  118. package/_mjs/IO/api.mjs +78 -23
  119. package/_mjs/IO/api.mjs.map +1 -1
  120. package/_mjs/IO/definition.mjs +12 -181
  121. package/_mjs/IO/definition.mjs.map +1 -1
  122. package/_mjs/IO.mjs +1 -0
  123. package/_mjs/IO.mjs.map +1 -1
  124. package/_mjs/Layer/MemoMap.mjs +1 -1
  125. package/_mjs/Layer/MemoMap.mjs.map +1 -1
  126. package/_mjs/Push/api.mjs +145 -109
  127. package/_mjs/Push/api.mjs.map +1 -1
  128. package/_mjs/Push/definition.mjs.map +1 -1
  129. package/_mjs/STM/api/atomically.mjs +1 -1
  130. package/_mjs/STM/api/atomically.mjs.map +1 -1
  131. package/_mjs/STM/definition.mjs +1 -1
  132. package/_mjs/STM/definition.mjs.map +1 -1
  133. package/_mjs/ScopedRef/api.mjs +2 -2
  134. package/_mjs/ScopedRef/api.mjs.map +1 -1
  135. package/_mjs/Semaphore.mjs +1 -1
  136. package/_mjs/Semaphore.mjs.map +1 -1
  137. package/_mjs/TReentrantLock/api.mjs +2 -2
  138. package/_mjs/TReentrantLock/api.mjs.map +1 -1
  139. package/_mjs/TSemaphore/api.mjs +1 -1
  140. package/_mjs/TSemaphore/api.mjs.map +1 -1
  141. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +12 -17
  142. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
  143. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +12 -17
  144. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
  145. package/_mjs/collection/immutable/Conc/filterIO.mjs +2 -12
  146. package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
  147. package/_mjs/collection/immutable/Conc/mapIO.mjs +3 -9
  148. package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
  149. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +11 -27
  150. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
  151. package/_src/Channel/api.ts +3 -3
  152. package/_src/Fiber/FiberRuntime.ts +76 -75
  153. package/_src/IO/api/all.ts +64 -0
  154. package/_src/IO/api/concurrency.ts +33 -0
  155. package/_src/IO/api/foreachExec.ts +2 -2
  156. package/_src/IO/api/interrupt.ts +20 -7
  157. package/_src/IO/api/raceWith.ts +4 -2
  158. package/_src/IO/api/timeout.ts +21 -1
  159. package/_src/IO/api.ts +79 -27
  160. package/_src/IO/definition.ts +155 -199
  161. package/_src/IO.ts +1 -0
  162. package/_src/Push/api.ts +70 -4
  163. package/_src/Push/definition.ts +6 -0
  164. package/_src/STM/definition.ts +2 -2
  165. package/_src/collection/immutable/Conc/dropUntilIO.ts +18 -15
  166. package/_src/collection/immutable/Conc/dropWhileIO.ts +18 -17
  167. package/_src/collection/immutable/Conc/filterIO.ts +1 -11
  168. package/_src/collection/immutable/Conc/mapIO.ts +2 -9
  169. package/_src/collection/immutable/Conc/takeWhileIO.ts +19 -28
  170. package/collection/immutable/Conc/filterIO.d.ts +1 -1
  171. package/collection/immutable/Conc/mapIO.d.ts +1 -1
  172. package/collection/immutable/Conc/takeWhileIO.d.ts +1 -1
  173. package/package.json +2 -2
package/_cjs/Push/api.cjs CHANGED
@@ -5,7 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.Multicast = exports.Hold = void 0;
7
7
  exports.as = as;
8
- exports.combineLatest = void 0;
8
+ exports.async = async;
9
+ exports.combineLatest = exports.asyncInterrupt = void 0;
9
10
  exports.combineLatestWith = combineLatestWith;
10
11
  exports.debounce = debounce;
11
12
  exports.defer = defer;
@@ -24,6 +25,7 @@ exports.merge = merge;
24
25
  exports.mergeAll = void 0;
25
26
  exports.multicast = multicast;
26
27
  exports.never = void 0;
28
+ exports.observe = observe;
27
29
  exports.repeatIOMaybe = repeatIOMaybe;
28
30
  exports.runCollect = runCollect;
29
31
  exports.runDrain = runDrain;
@@ -37,39 +39,44 @@ exports.untilFuture = untilFuture;
37
39
  exports.untilPush = untilPush;
38
40
  exports.unwrap = void 0;
39
41
  exports.unwrapScoped = unwrapScoped;
40
- var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
41
- var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Push/definition"));
42
- var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/forkScoped"));
43
- var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/CountdownLatch"));
44
- var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/Iterable/api"));
45
- var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/delay"));
46
- var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
47
- var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interrupt"));
48
- var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/Synchronized/api"));
49
- var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/Synchronized/constructors"));
50
- var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/api"));
51
- var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/constructors"));
52
- var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/STM/api/atomically"));
53
- var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
54
- var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/concurrency"));
55
- var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/function/api"));
56
- var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
57
- var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Schedule/api"));
58
- var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/schedule"));
59
- var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/constructors"));
60
- var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/environment"));
61
- var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fulfill"));
62
- var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
63
- var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
64
- var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/FiberId/constructors"));
65
- var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interruptAs"));
66
- var tsplus_module_27 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Cause/api"));
67
- var tsplus_module_28 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/foreachConcurrent"));
68
- var tsplus_module_29 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/definition"));
69
- var tsplus_module_30 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/scoped"));
70
- var tsplus_module_31 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/set"));
71
- var tsplus_module_32 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/joinAll"));
72
- var tsplus_module_33 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/asyncInterrupt"));
42
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
43
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/interrupt"));
44
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/destructors"));
45
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
46
+ var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/forkIn"));
47
+ var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fulfill"));
48
+ var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/runtime"));
49
+ var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/scope"));
50
+ var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/constructors"));
51
+ var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Push/definition"));
52
+ var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
53
+ var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/forkScoped"));
54
+ var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/CountdownLatch"));
55
+ var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/Iterable/api"));
56
+ var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/delay"));
57
+ var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
58
+ var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interrupt"));
59
+ var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/Synchronized/api"));
60
+ var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/Synchronized/constructors"));
61
+ var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Semaphore"));
62
+ var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
63
+ var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/concurrency"));
64
+ var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/function/api"));
65
+ var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Schedule/api"));
66
+ var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/schedule"));
67
+ var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/environment"));
68
+ var tsplus_module_27 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
69
+ var tsplus_module_28 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
70
+ var tsplus_module_29 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/FiberId/constructors"));
71
+ var tsplus_module_30 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interruptAs"));
72
+ var tsplus_module_31 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Cause/api"));
73
+ var tsplus_module_32 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/foreachConcurrent"));
74
+ var tsplus_module_33 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interruptFork"));
75
+ var tsplus_module_34 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/definition"));
76
+ var tsplus_module_35 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/scoped"));
77
+ var tsplus_module_36 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/set"));
78
+ var tsplus_module_37 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/joinAll"));
79
+ var tsplus_module_38 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/asyncInterrupt"));
73
80
  var _AtomicReference = /*#__PURE__*/require("@fncts/base/internal/AtomicReference");
74
81
  var _definition4 = /*#__PURE__*/require("./definition.cjs");
75
82
  var _internal = /*#__PURE__*/require("./internal.cjs");
@@ -77,6 +84,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
77
84
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
78
85
  var _a;
79
86
  const fileName_1 = "(@fncts/io) src/Push/api.ts";
87
+ const asyncInterrupt = asyncInterrupt_1;
88
+ exports.asyncInterrupt = asyncInterrupt;
80
89
  const combineLatest = combineLatest_1;
81
90
  exports.combineLatest = combineLatest;
82
91
  const flatMapConcurrentBounded = flatMapConcurrentBounded_1;
@@ -111,13 +120,35 @@ function as(b) {
111
120
  return map_1(b)(self);
112
121
  };
113
122
  }
123
+ /**
124
+ * @tsplus static fncts.io.PushOps asyncInterrupt
125
+ */
126
+ function asyncInterrupt_1(make) {
127
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(future => tsplus_module_4.flatMap(scope => tsplus_module_4.flatMap(runtime => {
128
+ const unsafeEmitter = {
129
+ emit: value => runtime.unsafeRunOrFork(tsplus_module_5.forkIn(scope, fileName_1 + ":35:76")(emitter.emit(value)), fileName_1 + ":35:49"),
130
+ failCause: cause => runtime.unsafeRunOrFork(tsplus_module_5.forkIn(scope, fileName_1 + ":36:102")(tsplus_module_6.fulfill(future, fileName_1 + ":36:87")(emitter.failCause(cause))), fileName_1 + ":36:54"),
131
+ end: () => runtime.unsafeRunOrFork(tsplus_module_4.zipRight(tsplus_module_1.succeed_(undefined, fileName_1 + ":37:72")(future), fileName_1 + ":37:57")(emitter.end), fileName_1 + ":37:43")
132
+ };
133
+ return tsplus_module_4.flatMap(eitherPush => tsplus_module_4.map(() => void 0, fileName_1 + ":40:8")(tsplus_module_3.match(canceller => tsplus_module_2.onInterrupt(() => canceller, fileName_1 + ":42:50")(tsplus_module_1.wait(future, fileName_1 + ":42:32")), push => push.run(emitter))(eitherPush)), fileName_1 + ":39:27")(tsplus_module_4.succeed(() => make(unsafeEmitter), fileName_1 + ":39:30"));
134
+ }, fileName_1 + ":33:24")(tsplus_module_7.runtime(fileName_1 + ":33:35")), fileName_1 + ":32:24")(tsplus_module_8.scope), fileName_1 + ":31:24")(tsplus_module_9.make(fileName_1 + ":31:36")));
135
+ }
136
+ /**
137
+ * @tsplus static fncts.io.PushOps async
138
+ */
139
+ function async(make) {
140
+ return asyncInterrupt_1(emitter => {
141
+ make(emitter);
142
+ return tsplus_module_11.left(tsplus_module_4.unit, fileName_1 + ":56:23");
143
+ });
144
+ }
114
145
  function combineLatest_1(streams) {
115
- return tsplus_module_2.makePush(emitter => (() => {
116
- const size = tsplus_module_5.size(streams);
117
- return tsplus_module_1.flatMap(ref => tsplus_module_1.flatMap(latch => {
118
- const emitIfReady = tsplus_module_1.flatMap(as => as.length === size ? emitter.emit(as) : tsplus_module_1.unit, fileName_1 + ":30:69")(tsplus_module_1.succeed(() => ref.filter(a => a != null), fileName_1 + ":30:31"));
119
- return tsplus_module_1.flatMap(() => tsplus_module_1.map(() => void 0, fileName_1 + ":46:8")(tsplus_module_1.zipRight(emitter.end, fileName_1 + ":46:22")(latch.await)), fileName_1 + ":33:8")(tsplus_module_1.foreachWithIndex(streams, (i, stream) => tsplus_module_3.forkScoped(stream.run(tsplus_module_2.makeEmitter(value => tsplus_module_1.zipRight(emitIfReady, fileName_1 + ":39:50")(tsplus_module_1.succeed(() => ref[i] = value, fileName_1 + ":39:30")), cause => emitter.failCause(cause), latch.countDown)), fileName_1 + ":43:14"), fileName_1 + ":34:28"));
120
- }, fileName_1 + ":29:30")(tsplus_module_4.make(size)), fileName_1 + ":28:30")(tsplus_module_1.succeed(() => Array(size), fileName_1 + ":28:33"));
146
+ return tsplus_module_10.makePush(emitter => (() => {
147
+ const size = tsplus_module_14.size(streams);
148
+ return tsplus_module_4.flatMap(ref => tsplus_module_4.flatMap(latch => {
149
+ const emitIfReady = tsplus_module_4.flatMap(as => as.length === size ? emitter.emit(as) : tsplus_module_4.unit, fileName_1 + ":73:69")(tsplus_module_4.succeed(() => ref.filter(a => a != null), fileName_1 + ":73:31"));
150
+ return tsplus_module_4.flatMap(() => tsplus_module_4.map(() => void 0, fileName_1 + ":89:8")(tsplus_module_4.zipRight(emitter.end, fileName_1 + ":89:22")(latch.await)), fileName_1 + ":76:8")(tsplus_module_4.foreachWithIndex(streams, (i, stream) => tsplus_module_12.forkScoped(stream.run(tsplus_module_10.makeEmitter(value => tsplus_module_4.zipRight(emitIfReady, fileName_1 + ":82:50")(tsplus_module_4.succeed(() => ref[i] = value, fileName_1 + ":82:30")), cause => emitter.failCause(cause), latch.countDown)), fileName_1 + ":86:14"), fileName_1 + ":77:28"));
151
+ }, fileName_1 + ":72:30")(tsplus_module_13.make(size)), fileName_1 + ":71:30")(tsplus_module_4.succeed(() => Array(size), fileName_1 + ":71:33"));
121
152
  })());
122
153
  }
123
154
  /**
@@ -133,21 +164,21 @@ function combineLatestWith(that, f) {
133
164
  */
134
165
  function debounce(duration) {
135
166
  return self => {
136
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(ref => tsplus_module_1.flatMap(latch => tsplus_module_1.flatMap(() => tsplus_module_1.map(() => void 0, fileName_1 + ":84:10")(tsplus_module_1.zipRight(emitter.end, fileName_1 + ":84:24")(latch.await)), fileName_1 + ":69:10")(self.run(tsplus_module_2.makeEmitter(value => tsplus_module_9.updateIO(previous => tsplus_module_1.flatMap(() => tsplus_module_3.forkScoped(tsplus_module_7.acquireRelease(() => tsplus_module_6.delay(duration)(emitter.emit(value)), () => latch.countDown, fileName_1 + ":76:47"), fileName_1 + ":76:107"), fileName_1 + ":75:22")(tsplus_module_1.defer(() => previous ? tsplus_module_8.interrupt(previous) : latch.increment, fileName_1 + ":75:31")), fileName_1 + ":73:29")(ref), cause => emitter.failCause(cause), latch.countDown))), fileName_1 + ":68:24")(tsplus_module_4.make(1)), fileName_1 + ":67:24")(tsplus_module_10.makeSynchronized(() => null, fileName_1 + ":67:46")));
167
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(ref => tsplus_module_4.flatMap(latch => tsplus_module_4.flatMap(() => tsplus_module_4.map(() => void 0, fileName_1 + ":127:10")(tsplus_module_4.zipRight(emitter.end, fileName_1 + ":127:24")(latch.await)), fileName_1 + ":112:10")(tsplus_module_12.forkScoped(self.run(tsplus_module_10.makeEmitter(value => tsplus_module_18.updateIO(previous => tsplus_module_4.flatMap(() => tsplus_module_12.forkScoped(tsplus_module_16.acquireRelease(() => tsplus_module_15.delay(duration)(emitter.emit(value)), () => latch.countDown, fileName_1 + ":119:47"), fileName_1 + ":119:107"), fileName_1 + ":118:22")(tsplus_module_4.defer(() => previous ? tsplus_module_17.interrupt(previous) : latch.increment, fileName_1 + ":118:31")), fileName_1 + ":116:29")(ref), cause => emitter.failCause(cause), latch.countDown)), fileName_1 + ":125:12")), fileName_1 + ":111:24")(tsplus_module_13.make(1)), fileName_1 + ":110:24")(tsplus_module_19.makeSynchronized(() => null, fileName_1 + ":110:46")));
137
168
  };
138
169
  }
139
170
  /**
140
171
  * @tsplus static fncts.io.PushOps defer
141
172
  */
142
173
  function defer(self) {
143
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(push => push.run(emitter), fileName_1 + ":94:44")(tsplus_module_1.succeed(self, fileName_1 + ":94:30")));
174
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(push => push.run(emitter), fileName_1 + ":137:44")(tsplus_module_4.succeed(self, fileName_1 + ":137:30")));
144
175
  }
145
176
  /**
146
177
  * @tsplus pipeable fncts.io.Push flatMapConcurrentBounded
147
178
  */
148
179
  function flatMapConcurrentBounded_1(f, concurrency) {
149
180
  return self => {
150
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(semaphore => tsplus_module_1.map(() => void 0, fileName_1 + ":105:10")(flatMapConcurrentUnbounded_1(a => transform_1(io => tsplus_module_11.withPermit(semaphore, fileName_1 + ":105:82")(io))(f(a)))(self).run(emitter)), fileName_1 + ":104:28")(tsplus_module_13.atomically(tsplus_module_12.make(concurrency, fileName_1 + ":104:39"), fileName_1 + ":104:52")));
181
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(semaphore => tsplus_module_4.map(() => void 0, fileName_1 + ":148:10")(flatMapConcurrentUnbounded_1(a => transform_1(io => semaphore.withPermit(io))(f(a)))(self).run(emitter)), fileName_1 + ":147:28")(tsplus_module_20.makeSemaphore(concurrency, fileName_1 + ":147:38")));
151
182
  };
152
183
  }
153
184
  /**
@@ -155,7 +186,7 @@ function flatMapConcurrentBounded_1(f, concurrency) {
155
186
  */
156
187
  function flatMapConcurrentUnbounded_1(f) {
157
188
  return self => {
158
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(latch => tsplus_module_1.flatMap(() => tsplus_module_1.map(() => void 0, fileName_1 + ":129:10")(tsplus_module_1.zipRight(emitter.end, fileName_1 + ":129:24")(latch.await)), fileName_1 + ":119:10")(self.run(tsplus_module_2.makeEmitter(value => tsplus_module_1.zipRight(tsplus_module_3.forkScoped(f(value).run(tsplus_module_2.makeEmitter(emitter.emit, emitter.failCause, latch.countDown)), fileName_1 + ":123:106"), fileName_1 + ":123:34")(latch.increment), emitter.failCause, latch.countDown))), fileName_1 + ":118:24")(tsplus_module_4.make(1)));
189
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(latch => tsplus_module_4.flatMap(() => tsplus_module_4.map(() => void 0, fileName_1 + ":172:10")(tsplus_module_4.zipRight(emitter.end, fileName_1 + ":172:24")(latch.await)), fileName_1 + ":162:10")(tsplus_module_12.forkScoped(self.run(tsplus_module_10.makeEmitter(value => tsplus_module_4.zipRight(tsplus_module_12.forkScoped(f(value).run(tsplus_module_10.makeEmitter(emitter.emit, emitter.failCause, latch.countDown)), fileName_1 + ":166:106"), fileName_1 + ":166:34")(latch.increment), emitter.failCause, latch.countDown)), fileName_1 + ":170:12")), fileName_1 + ":161:24")(tsplus_module_13.make(1)));
159
190
  };
160
191
  }
161
192
  /**
@@ -163,7 +194,7 @@ function flatMapConcurrentUnbounded_1(f) {
163
194
  */
164
195
  function flatMapConcurrent(f) {
165
196
  return self => {
166
- return unwrap_1(tsplus_module_1.map(concurrency => tsplus_module_14.match(() => flatMapConcurrentUnbounded_1(f)(self), n => flatMapConcurrentBounded_1(f, n)(self))(concurrency), fileName_1 + ":141:25")(tsplus_module_15.concurrency));
197
+ return unwrap_1(tsplus_module_4.map(concurrency => tsplus_module_21.match(() => flatMapConcurrentUnbounded_1(f)(self), n => flatMapConcurrentBounded_1(f, n)(self))(concurrency), fileName_1 + ":184:25")(tsplus_module_22.concurrency));
167
198
  };
168
199
  }
169
200
  /**
@@ -178,34 +209,34 @@ function flatMap_1(f) {
178
209
  * @tsplus getter fncts.io.Push flatten
179
210
  */
180
211
  function flatten_1(self) {
181
- return flatMap_1(tsplus_module_16.identity)(self);
212
+ return flatMap_1(tsplus_module_23.identity)(self);
182
213
  }
183
214
  /**
184
215
  * @tsplus static fncts.io.PushOps fromIO
185
216
  */
186
217
  function fromIO_1(io) {
187
- return tsplus_module_2.makePush(emitter => tsplus_module_1.zipRight(emitter.end, fileName_1 + ":176:10")(tsplus_module_1.matchCauseIO(cause => emitter.failCause(cause), value => emitter.emit(value), fileName_1 + ":173:32")(tsplus_module_1.defer(io, fileName_1 + ":173:15"))));
218
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.zipRight(emitter.end, fileName_1 + ":219:10")(tsplus_module_4.matchCauseIO(cause => emitter.failCause(cause), value => emitter.emit(value), fileName_1 + ":216:32")(tsplus_module_4.defer(io, fileName_1 + ":216:15"))));
188
219
  }
189
220
  /**
190
221
  * @tsplus static fncts.io.PushOps fromAsyncIterable
191
222
  */
192
223
  function fromAsyncIterable(iterable) {
193
- return tsplus_module_2.makePush(emitter => tsplus_module_1.defer(() => fromAsyncIterableLoop(iterable[Symbol.asyncIterator](), emitter, fileName_1 + ":184:58"), fileName_1 + ":184:36"));
224
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.defer(() => fromAsyncIterableLoop(iterable[Symbol.asyncIterator](), emitter, fileName_1 + ":227:58"), fileName_1 + ":227:36"));
194
225
  }
195
226
  function fromAsyncIterableLoop(iterator, emitter, __tsplusTrace) {
196
- return tsplus_module_1.matchCauseIO(cause => tsplus_module_1.zipRight(emitter.end, __tsplusTrace)(emitter.failCause(cause)), result => result.done ? emitter.end : tsplus_module_1.zipRight(fromAsyncIterableLoop(iterator, emitter, __tsplusTrace), __tsplusTrace)(emitter.emit(result.value)), __tsplusTrace)(tsplus_module_1.fromPromiseHalt(iterator.next, __tsplusTrace));
227
+ return tsplus_module_4.matchCauseIO(cause => tsplus_module_4.zipRight(emitter.end, __tsplusTrace)(emitter.failCause(cause)), result => result.done ? emitter.end : tsplus_module_4.zipRight(fromAsyncIterableLoop(iterator, emitter, __tsplusTrace), __tsplusTrace)(emitter.emit(result.value)), __tsplusTrace)(tsplus_module_4.fromPromiseHalt(iterator.next, __tsplusTrace));
197
228
  }
198
229
  /**
199
230
  * @tsplus static fncts.io.PushOps fromIterable
200
231
  */
201
232
  function fromIterable(iterable) {
202
- return tsplus_module_2.makePush(emitter => tsplus_module_1.defer(() => fromIterableLoop(iterable[Symbol.iterator](), emitter), fileName_1 + ":202:36"));
233
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.defer(() => fromIterableLoop(iterable[Symbol.iterator](), emitter), fileName_1 + ":245:36"));
203
234
  }
204
235
  function fromIterableLoop(iterator, emitter) {
205
- return tsplus_module_1.defer(() => {
236
+ return tsplus_module_4.defer(() => {
206
237
  const value = iterator.next();
207
- return value.done ? emitter.end : tsplus_module_1.zipRight(fromIterableLoop(iterator, emitter), fileName_1 + ":208:66")(emitter.emit(value.value));
208
- }, fileName_1 + ":206:18");
238
+ return value.done ? emitter.end : tsplus_module_4.zipRight(fromIterableLoop(iterator, emitter), fileName_1 + ":251:66")(emitter.emit(value.value));
239
+ }, fileName_1 + ":249:18");
209
240
  }
210
241
  /**
211
242
  * @tsplus getter fncts.io.Push multicast
@@ -220,44 +251,44 @@ class Multicast {
220
251
  this.observers = [];
221
252
  }
222
253
  run(emitter) {
223
- return tsplus_module_1.flatMap(environment => tsplus_module_1.flatMap(future => tsplus_module_1.flatMap(() => tsplus_module_17.wait(future, fileName_1 + ":253:22"), fileName_1 + ":240:8")(tsplus_module_1.defer(() => {
254
+ return tsplus_module_4.flatMap(environment => tsplus_module_4.flatMap(future => tsplus_module_4.flatMap(() => tsplus_module_1.wait(future, fileName_1 + ":296:22"), fileName_1 + ":283:8")(tsplus_module_4.defer(() => {
224
255
  this.observers.push({
225
256
  emitter,
226
257
  environment,
227
258
  future
228
259
  });
229
260
  if (this.fiber) {
230
- return tsplus_module_1.unit;
261
+ return tsplus_module_4.unit;
231
262
  } else {
232
- return tsplus_module_1.tap(fiber => tsplus_module_1.succeed(() => this.fiber = fiber, fileName_1 + ":249:44"), fileName_1 + ":249:30")(tsplus_module_3.forkScoped(tsplus_module_19.schedule(() => tsplus_module_18.asap, fileName_1 + ":248:24")(this.push.run(this)), fileName_1 + ":248:39"));
263
+ return tsplus_module_4.tap(fiber => tsplus_module_4.succeed(() => this.fiber = fiber, fileName_1 + ":292:44"), fileName_1 + ":292:30")(tsplus_module_12.forkScoped(tsplus_module_25.schedule(() => tsplus_module_24.asap, fileName_1 + ":291:24")(this.push.run(this)), fileName_1 + ":291:39"));
233
264
  }
234
- }, fileName_1 + ":241:17")), fileName_1 + ":239:28")(tsplus_module_20.make(fileName_1 + ":239:40")), fileName_1 + ":238:28")(tsplus_module_21.environment(fileName_1 + ":238:43"));
265
+ }, fileName_1 + ":284:17")), fileName_1 + ":282:28")(tsplus_module_9.make(fileName_1 + ":282:40")), fileName_1 + ":281:28")(tsplus_module_26.environment(fileName_1 + ":281:43"));
235
266
  }
236
267
  emit(value) {
237
- return tsplus_module_1.defer(() => tsplus_module_1.foreachDiscard(this.observers.slice(), observer => this.runEvent(value, observer), fileName_1 + ":258:38"), fileName_1 + ":258:20");
268
+ return tsplus_module_4.defer(() => tsplus_module_4.foreachDiscard(this.observers.slice(), observer => this.runEvent(value, observer), fileName_1 + ":301:38"), fileName_1 + ":301:20");
238
269
  }
239
270
  failCause(cause) {
240
- return tsplus_module_1.zipRight(tsplus_module_1.defer(() => this.cleanup(), fileName_1 + ":264:15"), fileName_1 + ":263:110")(tsplus_module_1.defer(() => tsplus_module_1.foreachDiscard(this.observers.slice(), observer => this.runFailCause(cause, observer), fileName_1 + ":263:33"), fileName_1 + ":263:15"));
271
+ return tsplus_module_4.zipRight(tsplus_module_4.defer(() => this.cleanup(), fileName_1 + ":307:15"), fileName_1 + ":306:110")(tsplus_module_4.defer(() => tsplus_module_4.foreachDiscard(this.observers.slice(), observer => this.runFailCause(cause, observer), fileName_1 + ":306:33"), fileName_1 + ":306:15"));
241
272
  }
242
273
  get end() {
243
- return tsplus_module_1.zipRight(tsplus_module_1.defer(() => this.cleanup(), fileName_1 + ":271:15"), fileName_1 + ":270:97")(tsplus_module_1.defer(() => tsplus_module_1.foreachDiscard(this.observers.slice(), observer => this.runEnd(observer), fileName_1 + ":270:33"), fileName_1 + ":270:15"));
274
+ return tsplus_module_4.zipRight(tsplus_module_4.defer(() => this.cleanup(), fileName_1 + ":314:15"), fileName_1 + ":313:97")(tsplus_module_4.defer(() => tsplus_module_4.foreachDiscard(this.observers.slice(), observer => this.runEnd(observer), fileName_1 + ":313:33"), fileName_1 + ":313:15"));
244
275
  }
245
276
  runEvent(value, observer) {
246
- return tsplus_module_21.provideEnvironment(observer.environment, fileName_1 + ":279:26")(tsplus_module_1.tapErrorCause(cause => this.runFailCause(cause, observer), fileName_1 + ":278:21")(observer.emitter.emit(value)));
277
+ return tsplus_module_26.provideEnvironment(observer.environment, fileName_1 + ":322:26")(tsplus_module_4.tapErrorCause(cause => this.runFailCause(cause, observer), fileName_1 + ":321:21")(observer.emitter.emit(value)));
247
278
  }
248
279
  runFailCause(cause, observer) {
249
280
  this.observers.splice(this.observers.indexOf(observer), 1);
250
- return tsplus_module_21.provideEnvironment(observer.environment, fileName_1 + ":284:89")(tsplus_module_22.fulfill(observer.future, fileName_1 + ":284:53")(observer.emitter.failCause(cause)));
281
+ return tsplus_module_26.provideEnvironment(observer.environment, fileName_1 + ":327:89")(tsplus_module_6.fulfill(observer.future, fileName_1 + ":327:53")(observer.emitter.failCause(cause)));
251
282
  }
252
283
  runEnd(observer) {
253
284
  this.observers.splice(this.observers.indexOf(observer), 1);
254
- return tsplus_module_21.provideEnvironment(observer.environment, fileName_1 + ":289:76")(tsplus_module_22.fulfill(observer.future, fileName_1 + ":289:40")(observer.emitter.end));
285
+ return tsplus_module_26.provideEnvironment(observer.environment, fileName_1 + ":332:76")(tsplus_module_6.fulfill(observer.future, fileName_1 + ":332:40")(observer.emitter.end));
255
286
  }
256
287
  cleanup() {
257
288
  if (this.fiber) {
258
- return tsplus_module_1.zipRight(tsplus_module_1.succeed(() => this.fiber = undefined, fileName_1 + ":294:39"), fileName_1 + ":294:36")(tsplus_module_8.interrupt(this.fiber));
289
+ return tsplus_module_4.zipRight(tsplus_module_4.succeed(() => this.fiber = undefined, fileName_1 + ":337:39"), fileName_1 + ":337:36")(tsplus_module_17.interrupt(this.fiber));
259
290
  }
260
- return tsplus_module_1.unit;
291
+ return tsplus_module_4.unit;
261
292
  }
262
293
  }
263
294
  exports.Multicast = Multicast;
@@ -272,60 +303,60 @@ class Hold extends Multicast {
272
303
  constructor(push) {
273
304
  super(push);
274
305
  this.push = push;
275
- this.value = new _AtomicReference.AtomicReference(tsplus_module_23.nothing(fileName_1 + ":308:47"));
306
+ this.value = new _AtomicReference.AtomicReference(tsplus_module_27.nothing(fileName_1 + ":351:47"));
276
307
  this.pendingEmitters = [];
277
308
  this.scheduledFiber = null;
278
309
  }
279
310
  run(emitter) {
280
311
  if (this.shouldScheduleFlush()) {
281
- return tsplus_module_1.flatMap(() => super.run(emitter), fileName_1 + ":318:49")(this.scheduleFlush(emitter));
312
+ return tsplus_module_4.flatMap(() => super.run(emitter), fileName_1 + ":361:49")(this.scheduleFlush(emitter));
282
313
  }
283
314
  const value = this.value.get;
284
- if (tsplus_module_24.isJust(value) && this.observers.length === 0) {
285
- return tsplus_module_1.flatMap(() => super.run(emitter), fileName_1 + ":323:47")(emitter.emit(value.value));
315
+ if (tsplus_module_28.isJust(value) && this.observers.length === 0) {
316
+ return tsplus_module_4.flatMap(() => super.run(emitter), fileName_1 + ":366:47")(emitter.emit(value.value));
286
317
  }
287
318
  return super.run(emitter);
288
319
  }
289
320
  emit(value) {
290
- return tsplus_module_1.defer(() => {
321
+ return tsplus_module_4.defer(() => {
291
322
  this.addValue(value);
292
- return tsplus_module_1.flatMap(() => super.emit(value), fileName_1 + ":332:41")(this.flushPending());
293
- }, fileName_1 + ":330:20");
323
+ return tsplus_module_4.flatMap(() => super.emit(value), fileName_1 + ":375:41")(this.flushPending());
324
+ }, fileName_1 + ":373:20");
294
325
  }
295
326
  failCause(cause) {
296
- return tsplus_module_1.defer(() => tsplus_module_1.flatMap(() => super.failCause(cause), fileName_1 + ":337:48")(this.flushPending()), fileName_1 + ":337:20");
327
+ return tsplus_module_4.defer(() => tsplus_module_4.flatMap(() => super.failCause(cause), fileName_1 + ":380:48")(this.flushPending()), fileName_1 + ":380:20");
297
328
  }
298
329
  get end() {
299
- return tsplus_module_1.defer(() => tsplus_module_1.flatMap(() => super.end, fileName_1 + ":341:48")(this.flushPending()), fileName_1 + ":341:20");
330
+ return tsplus_module_4.defer(() => tsplus_module_4.flatMap(() => super.end, fileName_1 + ":384:48")(this.flushPending()), fileName_1 + ":384:20");
300
331
  }
301
332
  shouldScheduleFlush() {
302
- return tsplus_module_24.isJust(this.value.get) && this.observers.length > 0;
333
+ return tsplus_module_28.isJust(this.value.get) && this.observers.length > 0;
303
334
  }
304
335
  scheduleFlush(observer) {
305
- this.pendingEmitters.push([observer, tsplus_module_14.match(() => [], a => [a])(this.value.get)]);
306
- const interrupt = this.scheduledFiber ? tsplus_module_26.interruptAsFork(this.scheduledFiber, tsplus_module_25.none) : tsplus_module_1.unit;
336
+ this.pendingEmitters.push([observer, tsplus_module_21.match(() => [], a => [a])(this.value.get)]);
337
+ const interrupt = this.scheduledFiber ? tsplus_module_30.interruptAsFork(this.scheduledFiber, tsplus_module_29.none) : tsplus_module_4.unit;
307
338
  this.scheduledFiber = null;
308
- return tsplus_module_1.tap(fiber => tsplus_module_1.succeed(() => this.scheduledFiber = fiber, fileName_1 + ":361:9"), fileName_1 + ":360:87")(tsplus_module_3.forkScoped(tsplus_module_1.zipRight(tsplus_module_1.flatMap(() => this.flushPending(), fileName_1 + ":360:44")(interrupt), fileName_1 + ":360:26")(tsplus_module_1.yieldNow), fileName_1 + ":360:72"));
339
+ return tsplus_module_4.tap(fiber => tsplus_module_4.succeed(() => this.scheduledFiber = fiber, fileName_1 + ":404:9"), fileName_1 + ":403:87")(tsplus_module_12.forkScoped(tsplus_module_4.zipRight(tsplus_module_4.flatMap(() => this.flushPending(), fileName_1 + ":403:44")(interrupt), fileName_1 + ":403:26")(tsplus_module_4.yieldNow), fileName_1 + ":403:72"));
309
340
  }
310
341
  flushPending() {
311
342
  if (this.pendingEmitters.length === 0) {
312
- return tsplus_module_1.unit;
343
+ return tsplus_module_4.unit;
313
344
  }
314
345
  const emitters = this.pendingEmitters;
315
346
  this.pendingEmitters = [];
316
- return tsplus_module_1.foreachDiscard(emitters, pendingEmitter => {
317
- return tsplus_module_1.defer(() => {
347
+ return tsplus_module_4.foreachDiscard(emitters, pendingEmitter => {
348
+ return tsplus_module_4.defer(() => {
318
349
  const [emitter, values] = pendingEmitter;
319
350
  const observer = this.observers.find(observer => observer.emitter === emitter);
320
351
  if (!observer) {
321
- return tsplus_module_1.unit;
352
+ return tsplus_module_4.unit;
322
353
  }
323
- return tsplus_module_1.foreachDiscard(values, value => this.runEvent(value, observer), fileName_1 + ":380:33");
324
- }, fileName_1 + ":374:22");
325
- }, fileName_1 + ":373:29");
354
+ return tsplus_module_4.foreachDiscard(values, value => this.runEvent(value, observer), fileName_1 + ":423:33");
355
+ }, fileName_1 + ":417:22");
356
+ }, fileName_1 + ":416:29");
326
357
  }
327
358
  addValue(value) {
328
- this.value.set(tsplus_module_23.just(value, fileName_1 + ":386:24"));
359
+ this.value.set(tsplus_module_27.just(value, fileName_1 + ":429:24"));
329
360
  this.pendingEmitters.forEach(([, values]) => {
330
361
  values.push(value);
331
362
  });
@@ -337,7 +368,7 @@ class Hold extends Multicast {
337
368
  exports.Hold = Hold;
338
369
  function map_1(f) {
339
370
  return self => {
340
- return mapIO_1(a => tsplus_module_1.succeedNow(f(a), fileName_1 + ":398:43"))(self);
371
+ return mapIO_1(a => tsplus_module_4.succeedNow(f(a), fileName_1 + ":441:43"))(self);
341
372
  };
342
373
  }
343
374
  /**
@@ -345,7 +376,7 @@ function map_1(f) {
345
376
  */
346
377
  function mapError(f) {
347
378
  return self => {
348
- return tsplus_module_2.makePush(emitter => self.run(tsplus_module_2.makeEmitter(value => emitter.emit(value), cause => emitter.failCause(tsplus_module_27.map(f)(cause)), emitter.end)));
379
+ return tsplus_module_10.makePush(emitter => self.run(tsplus_module_10.makeEmitter(value => emitter.emit(value), cause => emitter.failCause(tsplus_module_31.map(f)(cause)), emitter.end)));
349
380
  };
350
381
  }
351
382
  /**
@@ -353,14 +384,14 @@ function mapError(f) {
353
384
  */
354
385
  function mapErrorCause(f) {
355
386
  return self => {
356
- return tsplus_module_2.makePush(emitter => self.run(tsplus_module_2.makeEmitter(value => emitter.emit(value), cause => emitter.failCause(f(cause)), emitter.end)));
387
+ return tsplus_module_10.makePush(emitter => self.run(tsplus_module_10.makeEmitter(value => emitter.emit(value), cause => emitter.failCause(f(cause)), emitter.end)));
357
388
  };
358
389
  }
359
390
  /**
360
391
  * @tsplus pipeable fncts.io.Push mapIO
361
392
  */
362
393
  function mapIO_1(f) {
363
- return self => tsplus_module_2.makePush(emitter => self.run(tsplus_module_2.makeEmitter(value => tsplus_module_1.matchCauseIO(cause => emitter.failCause(cause), b => emitter.emit(b), fileName_1 + ":445:34")(f(value)), cause => emitter.failCause(cause), emitter.end)));
394
+ return self => tsplus_module_10.makePush(emitter => self.run(tsplus_module_10.makeEmitter(value => tsplus_module_4.matchCauseIO(cause => emitter.failCause(cause), b => emitter.emit(b), fileName_1 + ":488:34")(f(value)), cause => emitter.failCause(cause), emitter.end)));
364
395
  }
365
396
  /**
366
397
  * @tsplus pipeable fncts.io.Push merge
@@ -371,82 +402,90 @@ function merge(that) {
371
402
  };
372
403
  }
373
404
  function mergeAll_1(streams) {
374
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(latch => tsplus_module_1.flatMap(() => tsplus_module_1.map(() => void 0, fileName_1 + ":488:8")(tsplus_module_1.zipRight(emitter.end, fileName_1 + ":488:22")(latch.await)), fileName_1 + ":476:8")(tsplus_module_28.foreachConcurrent(streams, stream => tsplus_module_3.forkScoped(stream.run(tsplus_module_2.makeEmitter(value => emitter.emit(value), cause => emitter.failCause(cause), latch.countDown)), fileName_1 + ":485:14"), fileName_1 + ":477:37")), fileName_1 + ":475:22")(tsplus_module_4.make(tsplus_module_5.size(streams))));
405
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(latch => tsplus_module_4.flatMap(() => tsplus_module_4.map(() => void 0, fileName_1 + ":531:8")(tsplus_module_4.zipRight(emitter.end, fileName_1 + ":531:22")(latch.await)), fileName_1 + ":519:8")(tsplus_module_32.foreachConcurrent(streams, stream => tsplus_module_12.forkScoped(stream.run(tsplus_module_10.makeEmitter(value => emitter.emit(value), cause => emitter.failCause(cause), latch.countDown)), fileName_1 + ":528:14"), fileName_1 + ":520:37")), fileName_1 + ":518:22")(tsplus_module_13.make(tsplus_module_14.size(streams))));
406
+ }
407
+ /**
408
+ * @tsplus pipeable fncts.io.Push observe
409
+ */
410
+ function observe(f, __tsplusTrace) {
411
+ return self => {
412
+ return tsplus_module_4.flatMap(future => tsplus_module_4.flatMap(fiber => tsplus_module_4.flatMap(() => tsplus_module_4.map(() => void 0, __tsplusTrace)(tsplus_module_33.interruptFork(fiber, __tsplusTrace)), __tsplusTrace)(tsplus_module_1.wait(future, __tsplusTrace)), __tsplusTrace)(tsplus_module_12.forkScoped(self.run(tsplus_module_10.makeEmitter(a => tsplus_module_4.catchAllCause(cause => tsplus_module_1.failCause(cause, __tsplusTrace)(future), __tsplusTrace)(f(a)), cause => tsplus_module_1.failCause(cause, __tsplusTrace)(future), tsplus_module_1.succeed_(undefined, __tsplusTrace)(future))), __tsplusTrace)), __tsplusTrace)(tsplus_module_9.make(__tsplusTrace));
413
+ };
375
414
  }
376
415
  /**
377
416
  * @tsplus static fncts.io.PushOps repeatIOMaybe
378
417
  */
379
418
  function repeatIOMaybe(io, __tsplusTrace) {
380
- return unfoldIO_1(undefined, () => tsplus_module_1.catchAll(maybeError => tsplus_module_14.match(() => tsplus_module_1.succeedNow(tsplus_module_23.nothing(__tsplusTrace), __tsplusTrace), tsplus_module_1.failNow)(maybeError), __tsplusTrace)(tsplus_module_1.map(a => tsplus_module_23.just([a, undefined], __tsplusTrace), __tsplusTrace)(io)));
419
+ return unfoldIO_1(undefined, () => tsplus_module_4.catchAll(maybeError => tsplus_module_21.match(() => tsplus_module_4.succeedNow(tsplus_module_27.nothing(__tsplusTrace), __tsplusTrace), tsplus_module_4.failNow)(maybeError), __tsplusTrace)(tsplus_module_4.map(a => tsplus_module_27.just([a, undefined], __tsplusTrace), __tsplusTrace)(io)));
381
420
  }
382
421
  /**
383
422
  * @tsplus getter fncts.io.Push runCollect
384
423
  */
385
424
  function runCollect(self) {
386
- return tsplus_module_1.defer(() => {
425
+ return tsplus_module_4.defer(() => {
387
426
  const out = [];
388
- return tsplus_module_1.flatMap(future => tsplus_module_1.zipRight(tsplus_module_1.succeed(() => tsplus_module_29.fromArray(out), fileName_1 + ":520:11"), fileName_1 + ":519:23")(tsplus_module_1.zipRight(tsplus_module_17.wait(future, fileName_1 + ":519:15"), fileName_1 + ":518:12")(self.run(tsplus_module_2.makeEmitter(value => tsplus_module_1.succeed(() => out.push(value), fileName_1 + ":514:26"), cause => tsplus_module_17.failCause(cause, fileName_1 + ":515:40")(future), tsplus_module_17.succeed_(undefined, fileName_1 + ":516:27")(future))))), fileName_1 + ":510:42")(tsplus_module_20.make(fileName_1 + ":510:23"));
389
- }, fileName_1 + ":508:18");
427
+ return tsplus_module_4.flatMap(future => tsplus_module_4.zipRight(tsplus_module_4.succeed(() => tsplus_module_34.fromArray(out), fileName_1 + ":586:11"), fileName_1 + ":585:23")(tsplus_module_4.zipRight(tsplus_module_1.wait(future, fileName_1 + ":585:15"), fileName_1 + ":584:12")(self.run(tsplus_module_10.makeEmitter(value => tsplus_module_4.succeed(() => out.push(value), fileName_1 + ":580:26"), cause => tsplus_module_1.failCause(cause, fileName_1 + ":581:40")(future), tsplus_module_1.succeed_(undefined, fileName_1 + ":582:27")(future))))), fileName_1 + ":576:42")(tsplus_module_9.make(fileName_1 + ":576:23"));
428
+ }, fileName_1 + ":574:18");
390
429
  }
391
430
  /**
392
431
  * @tsplus getter fncts.io.Push runDrain
393
432
  */
394
433
  function runDrain(self) {
395
- return tsplus_module_1.flatMap(future => tsplus_module_1.zipRight(tsplus_module_17.wait(future, fileName_1 + ":537:17"), fileName_1 + ":537:10")(self.run(tsplus_module_2.makeEmitter(() => tsplus_module_1.unit, cause => tsplus_module_17.failCause(cause, fileName_1 + ":534:38")(future), tsplus_module_17.succeed_(undefined, fileName_1 + ":535:25")(future)))), fileName_1 + ":529:40")(tsplus_module_20.make(fileName_1 + ":529:21"));
434
+ return tsplus_module_4.flatMap(future => tsplus_module_4.zipRight(tsplus_module_1.wait(future, fileName_1 + ":603:17"), fileName_1 + ":603:10")(self.run(tsplus_module_10.makeEmitter(() => tsplus_module_4.unit, cause => tsplus_module_1.failCause(cause, fileName_1 + ":600:38")(future), tsplus_module_1.succeed_(undefined, fileName_1 + ":601:25")(future)))), fileName_1 + ":595:40")(tsplus_module_9.make(fileName_1 + ":595:21"));
396
435
  }
397
436
  /**
398
437
  * @tsplus static fncts.io.PushOps scoped
399
438
  */
400
439
  function scoped_1(io, __tsplusTrace) {
401
- return tsplus_module_2.makePush(emitter => tsplus_module_1.zipRight(emitter.end, __tsplusTrace)(tsplus_module_1.matchCauseIO(cause => emitter.failCause(cause), value => emitter.emit(value), __tsplusTrace)(tsplus_module_30.scoped(tsplus_module_1.defer(io, __tsplusTrace), __tsplusTrace))));
440
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.zipRight(emitter.end, __tsplusTrace)(tsplus_module_4.matchCauseIO(cause => emitter.failCause(cause), value => emitter.emit(value), __tsplusTrace)(tsplus_module_35.scoped(tsplus_module_4.defer(io, __tsplusTrace), __tsplusTrace))));
402
441
  }
403
442
  /**
404
443
  * @tsplus static fncts.io.PushOps succeed
405
444
  */
406
445
  function succeed(value) {
407
- return fromIO_1(() => tsplus_module_1.succeed(value, fileName_1 + ":558:32"));
446
+ return fromIO_1(() => tsplus_module_4.succeed(value, fileName_1 + ":624:32"));
408
447
  }
409
448
  /**
410
449
  * @tsplus pipeable fncts.io.PushOps switchMap
411
450
  */
412
451
  function switchMap(f) {
413
452
  return self => {
414
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(current => tsplus_module_1.flatMap(latch => {
415
- const innerEmitter = tsplus_module_2.makeEmitter(value => emitter.emit(value), cause => tsplus_module_1.zipRight(emitter.failCause(cause), fileName_1 + ":572:41")(tsplus_module_31.set(null, fileName_1 + ":572:33")(current)), latch.countDown);
416
- return tsplus_module_1.flatMap(() => tsplus_module_1.map(() => void 0, fileName_1 + ":587:10")(tsplus_module_1.zipRight(emitter.end, fileName_1 + ":587:24")(latch.await)), fileName_1 + ":575:10")(self.run(tsplus_module_2.makeEmitter(value => tsplus_module_9.updateIO(fiber => tsplus_module_1.zipRight(tsplus_module_3.forkScoped(f(value).run(innerEmitter), fileName_1 + ":580:98"), fileName_1 + ":580:71")(fiber ? tsplus_module_8.interrupt(fiber) : latch.increment), fileName_1 + ":579:33")(current), cause => emitter.failCause(cause), latch.countDown)));
417
- }, fileName_1 + ":569:31")(tsplus_module_4.make(1)), fileName_1 + ":568:31")(tsplus_module_10.makeSynchronized(() => null, fileName_1 + ":568:53")));
453
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(current => tsplus_module_4.flatMap(latch => {
454
+ const innerEmitter = tsplus_module_10.makeEmitter(value => emitter.emit(value), cause => tsplus_module_4.zipRight(emitter.failCause(cause), fileName_1 + ":638:41")(tsplus_module_36.set(null, fileName_1 + ":638:33")(current)), latch.countDown);
455
+ return tsplus_module_4.flatMap(() => tsplus_module_4.map(() => void 0, fileName_1 + ":653:10")(tsplus_module_4.zipRight(emitter.end, fileName_1 + ":653:24")(latch.await)), fileName_1 + ":641:10")(self.run(tsplus_module_10.makeEmitter(value => tsplus_module_18.updateIO(fiber => tsplus_module_4.zipRight(tsplus_module_12.forkScoped(f(value).run(innerEmitter), fileName_1 + ":646:98"), fileName_1 + ":646:71")(fiber ? tsplus_module_17.interrupt(fiber) : latch.increment), fileName_1 + ":645:33")(current), cause => emitter.failCause(cause), latch.countDown)));
456
+ }, fileName_1 + ":635:31")(tsplus_module_13.make(1)), fileName_1 + ":634:31")(tsplus_module_19.makeSynchronized(() => null, fileName_1 + ":634:53")));
418
457
  };
419
458
  }
420
459
  /**
421
460
  * @tsplus pipeable fncts.io.Push transform
422
461
  */
423
462
  function transform_1(f) {
424
- return self => tsplus_module_2.makePush(emitter => f(self.run(emitter)));
463
+ return self => tsplus_module_10.makePush(emitter => f(self.run(emitter)));
425
464
  }
426
465
  function unfoldLoop(s, f, emitter) {
427
- return tsplus_module_14.match(() => emitter.end, ([a, s]) => tsplus_module_1.zipRight(unfoldLoop(s, f, emitter), fileName_1 + ":607:34")(emitter.emit(a)))(f(s));
466
+ return tsplus_module_21.match(() => emitter.end, ([a, s]) => tsplus_module_4.zipRight(unfoldLoop(s, f, emitter), fileName_1 + ":673:34")(emitter.emit(a)))(f(s));
428
467
  }
429
468
  /**
430
469
  * @tsplus static fncts.io.PushOps unfold
431
470
  */
432
471
  function unfold(s, f) {
433
- return tsplus_module_2.makePush(emitter => unfoldLoop(s, f, emitter));
472
+ return tsplus_module_10.makePush(emitter => unfoldLoop(s, f, emitter));
434
473
  }
435
474
  function unfoldIOLoop(s, f, emitter) {
436
- return tsplus_module_1.catchAllCause(cause => emitter.failCause(cause), fileName_1 + ":630:19")(tsplus_module_1.flatMap(result => tsplus_module_14.match(() => emitter.end, ([a, s]) => tsplus_module_1.zipRight(unfoldIOLoop(s, f, emitter), fileName_1 + ":627:38")(emitter.emit(a)))(result), fileName_1 + ":624:13")(f(s)));
475
+ return tsplus_module_4.catchAllCause(cause => emitter.failCause(cause), fileName_1 + ":696:19")(tsplus_module_4.flatMap(result => tsplus_module_21.match(() => emitter.end, ([a, s]) => tsplus_module_4.zipRight(unfoldIOLoop(s, f, emitter), fileName_1 + ":693:38")(emitter.emit(a)))(result), fileName_1 + ":690:13")(f(s)));
437
476
  }
438
477
  /**
439
478
  * @tsplus static fncts.io.PushOps unfoldIO
440
479
  */
441
480
  function unfoldIO_1(s, f) {
442
- return tsplus_module_2.makePush(emitter => unfoldIOLoop(s, f, emitter));
481
+ return tsplus_module_10.makePush(emitter => unfoldIOLoop(s, f, emitter));
443
482
  }
444
483
  /**
445
484
  * @tsplus pipeable fncts.io.Push untilFuture
446
485
  */
447
486
  function untilFuture(future) {
448
487
  return self => {
449
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(futureFiber => tsplus_module_1.flatMap(streamFiber => tsplus_module_1.map(() => void 0, fileName_1 + ":656:10")(tsplus_module_1.via(tsplus_module_32.joinAll([futureFiber, streamFiber], fileName_1 + ":656:24"), (0, _internal.onEarlyExit)(emitter.end))), fileName_1 + ":655:30")(tsplus_module_3.forkScoped(self.run(emitter), fileName_1 + ":655:48")), fileName_1 + ":647:30")(tsplus_module_3.forkScoped(tsplus_module_1.zipRight(_internal.earlyExit, fileName_1 + ":653:22")(tsplus_module_1.matchCauseIO(cause => emitter.failCause(cause), () => tsplus_module_1.unit, fileName_1 + ":649:26")(tsplus_module_17.wait(future, fileName_1 + ":648:17"))), fileName_1 + ":653:33")));
488
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(futureFiber => tsplus_module_4.flatMap(streamFiber => tsplus_module_4.map(() => void 0, fileName_1 + ":722:10")(tsplus_module_4.via(tsplus_module_37.joinAll([futureFiber, streamFiber], fileName_1 + ":722:24"), (0, _internal.onEarlyExit)(emitter.end))), fileName_1 + ":721:30")(tsplus_module_12.forkScoped(self.run(emitter), fileName_1 + ":721:48")), fileName_1 + ":713:30")(tsplus_module_12.forkScoped(tsplus_module_4.zipRight(_internal.earlyExit, fileName_1 + ":719:22")(tsplus_module_4.matchCauseIO(cause => emitter.failCause(cause), () => tsplus_module_4.unit, fileName_1 + ":715:26")(tsplus_module_1.wait(future, fileName_1 + ":714:17"))), fileName_1 + ":719:33")));
450
489
  };
451
490
  }
452
491
  /**
@@ -454,7 +493,7 @@ function untilFuture(future) {
454
493
  */
455
494
  function untilPush(signal) {
456
495
  return self => {
457
- return tsplus_module_2.makePush(emitter => tsplus_module_1.flatMap(signalFiber => tsplus_module_1.flatMap(streamFiber => tsplus_module_1.map(() => void 0, fileName_1 + ":679:10")(tsplus_module_1.via(tsplus_module_32.joinAll([signalFiber, streamFiber], fileName_1 + ":679:24"), (0, _internal.onEarlyExit)(emitter.end))), fileName_1 + ":678:30")(tsplus_module_3.forkScoped(self.run(emitter), fileName_1 + ":678:48")), fileName_1 + ":669:30")(tsplus_module_3.forkScoped(signal.run(tsplus_module_2.makeEmitter(() => _internal.earlyExit, cause => emitter.failCause(cause), _internal.earlyExit)), fileName_1 + ":676:12")));
496
+ return tsplus_module_10.makePush(emitter => tsplus_module_4.flatMap(signalFiber => tsplus_module_4.flatMap(streamFiber => tsplus_module_4.map(() => void 0, fileName_1 + ":745:10")(tsplus_module_4.via(tsplus_module_37.joinAll([signalFiber, streamFiber], fileName_1 + ":745:24"), (0, _internal.onEarlyExit)(emitter.end))), fileName_1 + ":744:30")(tsplus_module_12.forkScoped(self.run(emitter), fileName_1 + ":744:48")), fileName_1 + ":735:30")(tsplus_module_12.forkScoped(signal.run(tsplus_module_10.makeEmitter(() => _internal.earlyExit, cause => emitter.failCause(cause), _internal.earlyExit)), fileName_1 + ":742:12")));
458
497
  };
459
498
  }
460
499
  /**
@@ -472,6 +511,6 @@ function unwrapScoped(self, __tsplusTrace) {
472
511
  /**
473
512
  * @tsplus static fncts.io.PushOps never
474
513
  */
475
- const never = /*#__PURE__*/fromIO_1(() => tsplus_module_33.never);
514
+ const never = /*#__PURE__*/fromIO_1(() => tsplus_module_38.never);
476
515
  exports.never = never;
477
516
  //# sourceMappingURL=api.cjs.map