@fncts/io 0.0.34 → 0.0.36
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.
- package/Fiber/FiberRuntime.d.ts +7 -7
- package/Fiber/constructors.d.ts +5 -0
- package/IO/api/all.d.ts +41 -0
- package/IO/api/concurrency.d.ts +11 -0
- package/IO/api/interrupt.d.ts +1 -1
- package/IO/api/raceWith.d.ts +2 -1
- package/IO/api.d.ts +7 -2
- package/IO/definition.d.ts +103 -127
- package/IO.d.ts +1 -0
- package/Push/api.d.ts +86 -36
- package/Push/definition.d.ts +28 -13
- package/Push/internal.d.ts +7 -11
- package/RefSubject/Atomic.d.ts +8 -11
- package/RefSubject/Synchronized/definition.d.ts +4 -6
- package/RefSubject/api.d.ts +0 -1
- package/RefSubject/definition.d.ts +6 -8
- package/STM/definition.d.ts +19 -2
- package/Sink/api.d.ts +24 -24
- package/Subject/Atomic.d.ts +4 -6
- package/Subject/definition.d.ts +2 -2
- package/_cjs/Channel/api/runScoped.cjs +1 -1
- package/_cjs/Channel/api/runScoped.cjs.map +1 -1
- package/_cjs/Channel/api.cjs +2 -2
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Fiber/FiberRuntime.cjs +110 -98
- package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
- package/_cjs/Fiber/constructors.cjs +10 -2
- package/_cjs/Fiber/constructors.cjs.map +1 -1
- package/_cjs/Future/api.cjs +1 -1
- package/_cjs/Future/api.cjs.map +1 -1
- package/_cjs/IO/api/all.cjs +33 -0
- package/_cjs/IO/api/all.cjs.map +1 -0
- package/_cjs/IO/api/asyncIO.cjs +1 -1
- package/_cjs/IO/api/asyncIO.cjs.map +1 -1
- package/_cjs/IO/api/bracketExit.cjs +1 -1
- package/_cjs/IO/api/bracketExit.cjs.map +1 -1
- package/_cjs/IO/api/concurrency.cjs +25 -4
- package/_cjs/IO/api/concurrency.cjs.map +1 -1
- package/_cjs/IO/api/disconnect.cjs +1 -1
- package/_cjs/IO/api/disconnect.cjs.map +1 -1
- package/_cjs/IO/api/foreachConcurrent.cjs +1 -1
- package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -1
- package/_cjs/IO/api/foreachExec.cjs +1 -1
- package/_cjs/IO/api/foreachExec.cjs.map +1 -1
- package/_cjs/IO/api/forkIn.cjs +1 -1
- package/_cjs/IO/api/forkIn.cjs.map +1 -1
- package/_cjs/IO/api/forkScoped.cjs +1 -1
- package/_cjs/IO/api/forkScoped.cjs.map +1 -1
- package/_cjs/IO/api/fulfill.cjs +1 -1
- package/_cjs/IO/api/fulfill.cjs.map +1 -1
- package/_cjs/IO/api/interrupt.cjs +18 -6
- package/_cjs/IO/api/interrupt.cjs.map +1 -1
- package/_cjs/IO/api/raceWith.cjs +4 -4
- package/_cjs/IO/api/raceWith.cjs.map +1 -1
- package/_cjs/IO/api/timeout.cjs +8 -5
- package/_cjs/IO/api/timeout.cjs.map +1 -1
- package/_cjs/IO/api/zipConcurrent.cjs +1 -1
- package/_cjs/IO/api/zipConcurrent.cjs.map +1 -1
- package/_cjs/IO/api.cjs +78 -20
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO/definition.cjs +14 -191
- package/_cjs/IO/definition.cjs.map +1 -1
- package/_cjs/IO.cjs +11 -0
- package/_cjs/IO.cjs.map +1 -1
- package/_cjs/Layer/MemoMap.cjs +1 -1
- package/_cjs/Layer/MemoMap.cjs.map +1 -1
- package/_cjs/Layer/api.cjs.map +1 -1
- package/_cjs/Push/api.cjs +238 -168
- package/_cjs/Push/api.cjs.map +1 -1
- package/_cjs/Push/definition.cjs +12 -13
- package/_cjs/Push/definition.cjs.map +1 -1
- package/_cjs/Push/internal.cjs +37 -29
- package/_cjs/Push/internal.cjs.map +1 -1
- package/_cjs/RefSubject/Atomic.cjs +15 -19
- package/_cjs/RefSubject/Atomic.cjs.map +1 -1
- package/_cjs/RefSubject/Synchronized/definition.cjs +9 -10
- package/_cjs/RefSubject/Synchronized/definition.cjs.map +1 -1
- package/_cjs/RefSubject/api.cjs +5 -6
- package/_cjs/RefSubject/api.cjs.map +1 -1
- package/_cjs/RefSubject/definition.cjs.map +1 -1
- package/_cjs/STM/api/atomically.cjs +1 -1
- package/_cjs/STM/api/atomically.cjs.map +1 -1
- package/_cjs/STM/api.cjs +2 -2
- package/_cjs/STM/api.cjs.map +1 -1
- package/_cjs/STM/definition.cjs +1 -1
- package/_cjs/STM/definition.cjs.map +1 -1
- package/_cjs/ScopedRef/api.cjs +2 -2
- package/_cjs/ScopedRef/api.cjs.map +1 -1
- package/_cjs/Semaphore.cjs +1 -1
- package/_cjs/Semaphore.cjs.map +1 -1
- package/_cjs/Sink/api.cjs +13 -13
- package/_cjs/Sink/api.cjs.map +1 -1
- package/_cjs/Subject/Atomic.cjs +4 -5
- package/_cjs/Subject/Atomic.cjs.map +1 -1
- package/_cjs/TReentrantLock/api.cjs +2 -2
- package/_cjs/TReentrantLock/api.cjs.map +1 -1
- package/_cjs/TSemaphore/api.cjs +1 -1
- package/_cjs/TSemaphore/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +12 -17
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +12 -17
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/filterIO.cjs +2 -12
- package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/mapIO.cjs +3 -9
- package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +11 -27
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
- package/_mjs/Channel/api/runScoped.mjs +1 -1
- package/_mjs/Channel/api/runScoped.mjs.map +1 -1
- package/_mjs/Channel/api.mjs +2 -2
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Fiber/FiberRuntime.mjs +111 -100
- package/_mjs/Fiber/FiberRuntime.mjs.map +1 -1
- package/_mjs/Fiber/constructors.mjs +7 -1
- package/_mjs/Fiber/constructors.mjs.map +1 -1
- package/_mjs/Future/api.mjs +1 -1
- package/_mjs/Future/api.mjs.map +1 -1
- package/_mjs/IO/api/all.mjs +24 -0
- package/_mjs/IO/api/all.mjs.map +1 -0
- package/_mjs/IO/api/asyncIO.mjs +1 -1
- package/_mjs/IO/api/asyncIO.mjs.map +1 -1
- package/_mjs/IO/api/bracketExit.mjs +1 -1
- package/_mjs/IO/api/bracketExit.mjs.map +1 -1
- package/_mjs/IO/api/concurrency.mjs +19 -2
- package/_mjs/IO/api/concurrency.mjs.map +1 -1
- package/_mjs/IO/api/disconnect.mjs +1 -1
- package/_mjs/IO/api/disconnect.mjs.map +1 -1
- package/_mjs/IO/api/foreachConcurrent.mjs +1 -1
- package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -1
- package/_mjs/IO/api/foreachExec.mjs +1 -1
- package/_mjs/IO/api/foreachExec.mjs.map +1 -1
- package/_mjs/IO/api/forkIn.mjs +1 -1
- package/_mjs/IO/api/forkIn.mjs.map +1 -1
- package/_mjs/IO/api/forkScoped.mjs +1 -1
- package/_mjs/IO/api/forkScoped.mjs.map +1 -1
- package/_mjs/IO/api/fulfill.mjs +1 -1
- package/_mjs/IO/api/fulfill.mjs.map +1 -1
- package/_mjs/IO/api/interrupt.mjs +19 -7
- package/_mjs/IO/api/interrupt.mjs.map +1 -1
- package/_mjs/IO/api/raceWith.mjs +4 -4
- package/_mjs/IO/api/raceWith.mjs.map +1 -1
- package/_mjs/IO/api/timeout.mjs +8 -5
- package/_mjs/IO/api/timeout.mjs.map +1 -1
- package/_mjs/IO/api/zipConcurrent.mjs +1 -1
- package/_mjs/IO/api/zipConcurrent.mjs.map +1 -1
- package/_mjs/IO/api.mjs +78 -23
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO/definition.mjs +12 -181
- package/_mjs/IO/definition.mjs.map +1 -1
- package/_mjs/IO.mjs +1 -0
- package/_mjs/IO.mjs.map +1 -1
- package/_mjs/Layer/MemoMap.mjs +1 -1
- package/_mjs/Layer/MemoMap.mjs.map +1 -1
- package/_mjs/Layer/api.mjs.map +1 -1
- package/_mjs/Push/api.mjs +223 -166
- package/_mjs/Push/api.mjs.map +1 -1
- package/_mjs/Push/definition.mjs +9 -10
- package/_mjs/Push/definition.mjs.map +1 -1
- package/_mjs/Push/internal.mjs +33 -22
- package/_mjs/Push/internal.mjs.map +1 -1
- package/_mjs/RefSubject/Atomic.mjs +15 -19
- package/_mjs/RefSubject/Atomic.mjs.map +1 -1
- package/_mjs/RefSubject/Synchronized/definition.mjs +9 -10
- package/_mjs/RefSubject/Synchronized/definition.mjs.map +1 -1
- package/_mjs/RefSubject/api.mjs +6 -7
- package/_mjs/RefSubject/api.mjs.map +1 -1
- package/_mjs/RefSubject/definition.mjs.map +1 -1
- package/_mjs/STM/api/atomically.mjs +1 -1
- package/_mjs/STM/api/atomically.mjs.map +1 -1
- package/_mjs/STM/api.mjs +2 -2
- package/_mjs/STM/api.mjs.map +1 -1
- package/_mjs/STM/definition.mjs +1 -1
- package/_mjs/STM/definition.mjs.map +1 -1
- package/_mjs/ScopedRef/api.mjs +2 -2
- package/_mjs/ScopedRef/api.mjs.map +1 -1
- package/_mjs/Semaphore.mjs +1 -1
- package/_mjs/Semaphore.mjs.map +1 -1
- package/_mjs/Sink/api.mjs +10 -10
- package/_mjs/Sink/api.mjs.map +1 -1
- package/_mjs/Subject/Atomic.mjs +4 -5
- package/_mjs/Subject/Atomic.mjs.map +1 -1
- package/_mjs/TReentrantLock/api.mjs +2 -2
- package/_mjs/TReentrantLock/api.mjs.map +1 -1
- package/_mjs/TSemaphore/api.mjs +1 -1
- package/_mjs/TSemaphore/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +12 -17
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +12 -17
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/filterIO.mjs +2 -12
- package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/mapIO.mjs +3 -9
- package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +11 -27
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
- package/_src/Channel/api.ts +3 -3
- package/_src/Fiber/FiberRuntime.ts +76 -75
- package/_src/Fiber/constructors.ts +5 -0
- package/_src/IO/api/all.ts +64 -0
- package/_src/IO/api/concurrency.ts +33 -0
- package/_src/IO/api/foreachExec.ts +2 -2
- package/_src/IO/api/interrupt.ts +20 -7
- package/_src/IO/api/raceWith.ts +4 -2
- package/_src/IO/api/timeout.ts +21 -1
- package/_src/IO/api.ts +79 -27
- package/_src/IO/definition.ts +155 -200
- package/_src/IO.ts +1 -0
- package/_src/Layer/api.ts +0 -1
- package/_src/Push/api.ts +305 -304
- package/_src/Push/definition.ts +19 -17
- package/_src/Push/internal.ts +63 -31
- package/_src/RefSubject/Atomic.ts +16 -22
- package/_src/RefSubject/Synchronized/definition.ts +6 -9
- package/_src/RefSubject/api.ts +9 -12
- package/_src/RefSubject/definition.ts +6 -8
- package/_src/STM/api.ts +0 -5
- package/_src/STM/definition.ts +8 -2
- package/_src/Sink/api.ts +9 -9
- package/_src/Subject/Atomic.ts +6 -8
- package/_src/Subject/definition.ts +2 -2
- package/_src/collection/immutable/Conc/dropUntilIO.ts +18 -15
- package/_src/collection/immutable/Conc/dropWhileIO.ts +18 -17
- package/_src/collection/immutable/Conc/filterIO.ts +1 -11
- package/_src/collection/immutable/Conc/mapIO.ts +2 -9
- package/_src/collection/immutable/Conc/takeWhileIO.ts +19 -28
- package/collection/immutable/Conc/filterIO.d.ts +1 -1
- package/collection/immutable/Conc/mapIO.d.ts +1 -1
- package/collection/immutable/Conc/takeWhileIO.d.ts +1 -1
- package/package.json +2 -2
package/_cjs/Push/api.cjs
CHANGED
|
@@ -5,10 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.Multicast = exports.Hold = void 0;
|
|
7
7
|
exports.as = as;
|
|
8
|
-
exports.
|
|
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;
|
|
13
|
+
exports.exhaustMap = void 0;
|
|
14
|
+
exports.exhaustMapIO = exhaustMapIO;
|
|
15
|
+
exports.filter = filter;
|
|
16
|
+
exports.filterIO = filterIO;
|
|
17
|
+
exports.filterMap = filterMap;
|
|
18
|
+
exports.filterMapIO = filterMapIO;
|
|
12
19
|
exports.flatMap = void 0;
|
|
13
20
|
exports.flatMapConcurrent = flatMapConcurrent;
|
|
14
21
|
exports.flatten = exports.flatMapConcurrentUnbounded = exports.flatMapConcurrentBounded = void 0;
|
|
@@ -23,13 +30,14 @@ exports.mapIO = void 0;
|
|
|
23
30
|
exports.merge = merge;
|
|
24
31
|
exports.mergeAll = void 0;
|
|
25
32
|
exports.multicast = multicast;
|
|
26
|
-
exports.never = void 0;
|
|
33
|
+
exports.observe = exports.never = void 0;
|
|
27
34
|
exports.repeatIOMaybe = repeatIOMaybe;
|
|
28
35
|
exports.runCollect = runCollect;
|
|
29
36
|
exports.runDrain = runDrain;
|
|
30
37
|
exports.scoped = void 0;
|
|
31
38
|
exports.succeed = succeed;
|
|
32
|
-
exports.switchMap =
|
|
39
|
+
exports.switchMapIO = exports.switchMap = void 0;
|
|
40
|
+
exports.tap = tap;
|
|
33
41
|
exports.transform = void 0;
|
|
34
42
|
exports.unfold = unfold;
|
|
35
43
|
exports.unfoldIO = void 0;
|
|
@@ -37,48 +45,53 @@ exports.untilFuture = untilFuture;
|
|
|
37
45
|
exports.untilPush = untilPush;
|
|
38
46
|
exports.unwrap = void 0;
|
|
39
47
|
exports.unwrapScoped = unwrapScoped;
|
|
40
|
-
var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
41
|
-
var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
42
|
-
var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
43
|
-
var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
44
|
-
var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
45
|
-
var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/
|
|
46
|
-
var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/
|
|
47
|
-
var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
48
|
-
var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
49
|
-
var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
50
|
-
var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
51
|
-
var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
52
|
-
var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
53
|
-
var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
54
|
-
var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/
|
|
55
|
-
var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/
|
|
56
|
-
var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
57
|
-
var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
58
|
-
var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
59
|
-
var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
60
|
-
var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/
|
|
61
|
-
var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
62
|
-
var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
63
|
-
var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
64
|
-
var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/
|
|
65
|
-
var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
48
|
+
var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
|
|
49
|
+
var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/interrupt"));
|
|
50
|
+
var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/destructors"));
|
|
51
|
+
var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
|
|
52
|
+
var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/forkIn"));
|
|
53
|
+
var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fulfill"));
|
|
54
|
+
var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/runtime"));
|
|
55
|
+
var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/scope"));
|
|
56
|
+
var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/constructors"));
|
|
57
|
+
var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/scoped"));
|
|
58
|
+
var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Push/definition"));
|
|
59
|
+
var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
|
|
60
|
+
var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/Iterable/api"));
|
|
61
|
+
var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/foreachConcurrent"));
|
|
62
|
+
var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/delay"));
|
|
63
|
+
var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
|
|
64
|
+
var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Semaphore"));
|
|
65
|
+
var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/concurrency"));
|
|
66
|
+
var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/function/api"));
|
|
67
|
+
var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/asyncIO"));
|
|
68
|
+
var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/forkDaemon"));
|
|
69
|
+
var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/await"));
|
|
70
|
+
var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/environment"));
|
|
71
|
+
var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interrupt"));
|
|
72
|
+
var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
|
|
73
|
+
var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
|
|
66
74
|
var tsplus_module_27 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Cause/api"));
|
|
67
|
-
var tsplus_module_28 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
68
|
-
var tsplus_module_29 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
69
|
-
var tsplus_module_30 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
70
|
-
var tsplus_module_31 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
71
|
-
var tsplus_module_32 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
75
|
+
var tsplus_module_28 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interruptFork"));
|
|
76
|
+
var tsplus_module_29 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/forkScoped"));
|
|
77
|
+
var tsplus_module_30 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/definition"));
|
|
78
|
+
var tsplus_module_31 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/joinAll"));
|
|
79
|
+
var tsplus_module_32 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fork"));
|
|
72
80
|
var tsplus_module_33 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/asyncInterrupt"));
|
|
73
81
|
var _AtomicReference = /*#__PURE__*/require("@fncts/base/internal/AtomicReference");
|
|
82
|
+
var _IO = /*#__PURE__*/require("@fncts/io/IO");
|
|
83
|
+
var _internal = /*#__PURE__*/require("@fncts/io/Push/internal");
|
|
74
84
|
var _definition4 = /*#__PURE__*/require("./definition.cjs");
|
|
75
|
-
var _internal = /*#__PURE__*/require("./internal.cjs");
|
|
76
85
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
77
86
|
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
87
|
var _a;
|
|
79
88
|
const fileName_1 = "(@fncts/io) src/Push/api.ts";
|
|
89
|
+
const asyncInterrupt = asyncInterrupt_1;
|
|
90
|
+
exports.asyncInterrupt = asyncInterrupt;
|
|
80
91
|
const combineLatest = combineLatest_1;
|
|
81
92
|
exports.combineLatest = combineLatest;
|
|
93
|
+
const exhaustMap = exhaustMap_1;
|
|
94
|
+
exports.exhaustMap = exhaustMap;
|
|
82
95
|
const flatMapConcurrentBounded = flatMapConcurrentBounded_1;
|
|
83
96
|
exports.flatMapConcurrentBounded = flatMapConcurrentBounded;
|
|
84
97
|
const flatMapConcurrentUnbounded = flatMapConcurrentUnbounded_1;
|
|
@@ -95,8 +108,14 @@ const mapIO = mapIO_1;
|
|
|
95
108
|
exports.mapIO = mapIO;
|
|
96
109
|
const mergeAll = mergeAll_1;
|
|
97
110
|
exports.mergeAll = mergeAll;
|
|
111
|
+
const observe = observe_1;
|
|
112
|
+
exports.observe = observe;
|
|
98
113
|
const scoped = scoped_1;
|
|
99
114
|
exports.scoped = scoped;
|
|
115
|
+
const switchMap = switchMap_1;
|
|
116
|
+
exports.switchMap = switchMap;
|
|
117
|
+
const switchMapIO = switchMapIO_1;
|
|
118
|
+
exports.switchMapIO = switchMapIO;
|
|
100
119
|
const transform = transform_1;
|
|
101
120
|
exports.transform = transform;
|
|
102
121
|
const unfoldIO = unfoldIO_1;
|
|
@@ -111,13 +130,34 @@ function as(b) {
|
|
|
111
130
|
return map_1(b)(self);
|
|
112
131
|
};
|
|
113
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* @tsplus static fncts.io.PushOps asyncInterrupt
|
|
135
|
+
*/
|
|
136
|
+
function asyncInterrupt_1(make) {
|
|
137
|
+
return tsplus_module_11.makePush(sink => tsplus_module_10.scoped(tsplus_module_4.flatMap(future => tsplus_module_4.flatMap(scope => tsplus_module_4.flatMap(runtime => {
|
|
138
|
+
const unsafeSink = {
|
|
139
|
+
event: value => runtime.unsafeRunOrFork(tsplus_module_5.forkIn(scope, fileName_1 + ":34:77")(sink.event(value)), fileName_1 + ":34:52"),
|
|
140
|
+
error: cause => runtime.unsafeRunOrFork(tsplus_module_5.forkIn(scope, fileName_1 + ":35:93")(tsplus_module_6.fulfill(future, fileName_1 + ":35:78")(sink.error(cause))), fileName_1 + ":35:52")
|
|
141
|
+
};
|
|
142
|
+
return tsplus_module_4.flatMap(eitherPush => tsplus_module_4.map(() => void 0, fileName_1 + ":38:10")(tsplus_module_3.match(canceller => tsplus_module_2.onInterrupt(() => canceller, fileName_1 + ":40:52")(tsplus_module_1.wait(future, fileName_1 + ":40:34")), push => push.run(sink))(eitherPush)), fileName_1 + ":37:29")(tsplus_module_4.succeed(() => make(unsafeSink), fileName_1 + ":37:32"));
|
|
143
|
+
}, fileName_1 + ":32:26")(tsplus_module_7.runtime(fileName_1 + ":32:37")), fileName_1 + ":31:26")(tsplus_module_8.scope), fileName_1 + ":30:26")(tsplus_module_9.make(fileName_1 + ":30:38")), fileName_1 + ":44:9"));
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* @tsplus static fncts.io.PushOps async
|
|
147
|
+
*/
|
|
148
|
+
function async(make) {
|
|
149
|
+
return asyncInterrupt_1(sink => {
|
|
150
|
+
make(sink);
|
|
151
|
+
return tsplus_module_12.left(tsplus_module_4.unit, fileName_1 + ":54:23");
|
|
152
|
+
});
|
|
153
|
+
}
|
|
114
154
|
function combineLatest_1(streams) {
|
|
115
|
-
return
|
|
116
|
-
const size =
|
|
117
|
-
return
|
|
118
|
-
const emitIfReady =
|
|
119
|
-
return
|
|
120
|
-
}, fileName_1 + ":
|
|
155
|
+
return tsplus_module_11.makePush(emitter => (() => {
|
|
156
|
+
const size = tsplus_module_13.size(streams);
|
|
157
|
+
return tsplus_module_4.flatMap(ref => {
|
|
158
|
+
const emitIfReady = tsplus_module_4.flatMap(as => as.length === size ? emitter.event(as) : tsplus_module_4.unit, fileName_1 + ":70:69")(tsplus_module_4.succeed(() => ref.filter(a => a != null), fileName_1 + ":70:31"));
|
|
159
|
+
return tsplus_module_4.map(() => void 0, fileName_1 + ":73:8")(tsplus_module_14.foreachConcurrent(tsplus_module_13.zipWithIndex(streams), ([i, stream]) => stream.run(tsplus_module_11.makeSink(value => tsplus_module_4.zipRight(emitIfReady, fileName_1 + ":77:48")(tsplus_module_4.succeed(() => ref[i] = value, fileName_1 + ":77:28")), cause => emitter.error(cause))), fileName_1 + ":74:29"));
|
|
160
|
+
}, fileName_1 + ":69:30")(tsplus_module_4.succeed(() => Array(size), fileName_1 + ":69:33"));
|
|
121
161
|
})());
|
|
122
162
|
}
|
|
123
163
|
/**
|
|
@@ -133,21 +173,66 @@ function combineLatestWith(that, f) {
|
|
|
133
173
|
*/
|
|
134
174
|
function debounce(duration) {
|
|
135
175
|
return self => {
|
|
136
|
-
return
|
|
176
|
+
return switchMapIO_1(a => tsplus_module_15.delay(duration)(tsplus_module_4.succeedNow(a, fileName_1 + ":101:49")))(self);
|
|
137
177
|
};
|
|
138
178
|
}
|
|
139
179
|
/**
|
|
140
180
|
* @tsplus static fncts.io.PushOps defer
|
|
141
181
|
*/
|
|
142
182
|
function defer(self) {
|
|
143
|
-
return
|
|
183
|
+
return tsplus_module_11.makePush(emitter => tsplus_module_4.flatMap(push => push.run(emitter), fileName_1 + ":109:44")(tsplus_module_4.succeed(self, fileName_1 + ":109:30")));
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* @tsplus pipeable fncts.io.Push exhaustMap
|
|
187
|
+
*/
|
|
188
|
+
function exhaustMap_1(f) {
|
|
189
|
+
return self => {
|
|
190
|
+
return tsplus_module_11.makePush(sink => (0, _internal.withExhaust)(fork => self.run(tsplus_module_11.makeSink(a => fork(f(a).run(sink)), sink.error))));
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* @tsplus pipeable fncts.io.Push exhaustMapIO
|
|
195
|
+
*/
|
|
196
|
+
function exhaustMapIO(f) {
|
|
197
|
+
return self => {
|
|
198
|
+
return exhaustMap_1(a => fromIO_1(() => f(a)))(self);
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* @tsplus pipeable fncts.io.Push filterIO
|
|
203
|
+
*/
|
|
204
|
+
function filterIO(predicate) {
|
|
205
|
+
return self => {
|
|
206
|
+
return tsplus_module_11.makePush(sink => self.run(tsplus_module_11.makeSink(a => tsplus_module_4.catchAllCause(sink.error, fileName_1 + ":141:29")(tsplus_module_4.flatMap(b => b ? sink.event(a) : tsplus_module_4.unit, fileName_1 + ":140:23")(predicate(a))), sink.error)));
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* @tsplus pipeable fncts.io.Push filterMapIO
|
|
211
|
+
*/
|
|
212
|
+
function filterMapIO(f) {
|
|
213
|
+
return self => {
|
|
214
|
+
return tsplus_module_11.makePush(sink => self.run(tsplus_module_11.makeSink(a => tsplus_module_4.catchAllCause(sink.error, fileName_1 + ":160:29")(tsplus_module_4.flatMap(mb => tsplus_module_16.match(() => tsplus_module_4.unit, sink.event)(mb), fileName_1 + ":159:23")(f(a))), sink.error)));
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
function filter(predicate) {
|
|
218
|
+
return self => {
|
|
219
|
+
return tsplus_module_11.makePush(sink => self.run(tsplus_module_11.makeSink(a => predicate(a) ? sink.event(a) : tsplus_module_4.unit, sink.error)));
|
|
220
|
+
};
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* @tsplus pipeable fncts.io.Push filterMap
|
|
224
|
+
*/
|
|
225
|
+
function filterMap(f) {
|
|
226
|
+
return self => {
|
|
227
|
+
return tsplus_module_11.makePush(sink => self.run(tsplus_module_11.makeSink(a => tsplus_module_16.match(() => tsplus_module_4.unit, sink.event)(f(a)), sink.error)));
|
|
228
|
+
};
|
|
144
229
|
}
|
|
145
230
|
/**
|
|
146
231
|
* @tsplus pipeable fncts.io.Push flatMapConcurrentBounded
|
|
147
232
|
*/
|
|
148
233
|
function flatMapConcurrentBounded_1(f, concurrency) {
|
|
149
234
|
return self => {
|
|
150
|
-
return
|
|
235
|
+
return tsplus_module_11.makePush(emitter => tsplus_module_4.flatMap(semaphore => tsplus_module_4.map(() => void 0, fileName_1 + ":196:10")(flatMapConcurrentUnbounded_1(a => transform_1(io => semaphore.withPermit(io))(f(a)))(self).run(emitter)), fileName_1 + ":195:28")(tsplus_module_17.makeSemaphore(concurrency, fileName_1 + ":195:38")));
|
|
151
236
|
};
|
|
152
237
|
}
|
|
153
238
|
/**
|
|
@@ -155,7 +240,7 @@ function flatMapConcurrentBounded_1(f, concurrency) {
|
|
|
155
240
|
*/
|
|
156
241
|
function flatMapConcurrentUnbounded_1(f) {
|
|
157
242
|
return self => {
|
|
158
|
-
return
|
|
243
|
+
return tsplus_module_11.makePush(sink => (0, _internal.withUnboundedConcurrency)(fork => self.run(tsplus_module_11.makeSink(a => fork(f(a).run(sink)), sink.error))));
|
|
159
244
|
};
|
|
160
245
|
}
|
|
161
246
|
/**
|
|
@@ -163,7 +248,7 @@ function flatMapConcurrentUnbounded_1(f) {
|
|
|
163
248
|
*/
|
|
164
249
|
function flatMapConcurrent(f) {
|
|
165
250
|
return self => {
|
|
166
|
-
return unwrap_1(
|
|
251
|
+
return unwrap_1(tsplus_module_4.map(concurrency => tsplus_module_16.match(() => flatMapConcurrentUnbounded_1(f)(self), n => flatMapConcurrentBounded_1(f, n)(self))(concurrency), fileName_1 + ":217:25")(tsplus_module_18.concurrency));
|
|
167
252
|
};
|
|
168
253
|
}
|
|
169
254
|
/**
|
|
@@ -178,34 +263,34 @@ function flatMap_1(f) {
|
|
|
178
263
|
* @tsplus getter fncts.io.Push flatten
|
|
179
264
|
*/
|
|
180
265
|
function flatten_1(self) {
|
|
181
|
-
return flatMap_1(
|
|
266
|
+
return flatMap_1(tsplus_module_19.identity)(self);
|
|
182
267
|
}
|
|
183
268
|
/**
|
|
184
269
|
* @tsplus static fncts.io.PushOps fromIO
|
|
185
270
|
*/
|
|
186
271
|
function fromIO_1(io) {
|
|
187
|
-
return
|
|
272
|
+
return tsplus_module_11.makePush(emitter => tsplus_module_4.matchCauseIO(cause => emitter.error(cause), value => emitter.event(value), fileName_1 + ":248:30")(tsplus_module_4.defer(io, fileName_1 + ":248:13")));
|
|
188
273
|
}
|
|
189
274
|
/**
|
|
190
275
|
* @tsplus static fncts.io.PushOps fromAsyncIterable
|
|
191
276
|
*/
|
|
192
277
|
function fromAsyncIterable(iterable) {
|
|
193
|
-
return
|
|
278
|
+
return tsplus_module_11.makePush(sink => tsplus_module_20.asyncIO(cb => tsplus_module_4.defer(() => fromAsyncIterableLoop(iterable[Symbol.asyncIterator](), sink, cb, fileName_1 + ":260:70"), fileName_1 + ":260:48"), fileName_1 + ":260:15"));
|
|
194
279
|
}
|
|
195
|
-
function fromAsyncIterableLoop(iterator,
|
|
196
|
-
return
|
|
280
|
+
function fromAsyncIterableLoop(iterator, sink, cb, __tsplusTrace) {
|
|
281
|
+
return tsplus_module_4.matchCauseIO(cause => sink.error(cause), result => result.done ? tsplus_module_4.succeed(() => cb(tsplus_module_4.unit), __tsplusTrace) : tsplus_module_4.zipRight(fromAsyncIterableLoop(iterator, sink, cb, __tsplusTrace), __tsplusTrace)(sink.event(result.value)), __tsplusTrace)(tsplus_module_4.fromPromiseHalt(iterator.next, __tsplusTrace));
|
|
197
282
|
}
|
|
198
283
|
/**
|
|
199
284
|
* @tsplus static fncts.io.PushOps fromIterable
|
|
200
285
|
*/
|
|
201
286
|
function fromIterable(iterable) {
|
|
202
|
-
return
|
|
287
|
+
return tsplus_module_11.makePush(sink => tsplus_module_20.asyncIO(cb => tsplus_module_4.defer(() => fromIterableLoop(iterable[Symbol.iterator](), sink, cb), fileName_1 + ":281:48"), fileName_1 + ":281:15"));
|
|
203
288
|
}
|
|
204
|
-
function fromIterableLoop(iterator,
|
|
205
|
-
return
|
|
289
|
+
function fromIterableLoop(iterator, sink, cb) {
|
|
290
|
+
return tsplus_module_4.defer(() => {
|
|
206
291
|
const value = iterator.next();
|
|
207
|
-
return value.done ?
|
|
208
|
-
}, fileName_1 + ":
|
|
292
|
+
return value.done ? tsplus_module_4.succeed(() => cb(tsplus_module_4.unit), fileName_1 + ":292:27") : tsplus_module_4.zipRight(fromIterableLoop(iterator, sink, cb), fileName_1 + ":292:68")(sink.event(value.value));
|
|
293
|
+
}, fileName_1 + ":290:18");
|
|
209
294
|
}
|
|
210
295
|
/**
|
|
211
296
|
* @tsplus getter fncts.io.Push multicast
|
|
@@ -219,45 +304,46 @@ class Multicast {
|
|
|
219
304
|
this[_a] = _definition4.PushTypeId;
|
|
220
305
|
this.observers = [];
|
|
221
306
|
}
|
|
222
|
-
run(
|
|
223
|
-
return
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
})
|
|
229
|
-
|
|
230
|
-
return tsplus_module_1.unit;
|
|
231
|
-
} 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"));
|
|
307
|
+
run(sink) {
|
|
308
|
+
return tsplus_module_4.flatMap(environment => tsplus_module_4.map(() => void 0, fileName_1 + ":322:8")(tsplus_module_4.defer(() => {
|
|
309
|
+
let io = tsplus_module_4.unit;
|
|
310
|
+
if (this.observers.push({
|
|
311
|
+
sink: sink,
|
|
312
|
+
environment
|
|
313
|
+
}) === 1) {
|
|
314
|
+
io = tsplus_module_4.flatMap(fiber => tsplus_module_4.succeed(() => this.fiber = fiber, fileName_1 + ":326:70"), fileName_1 + ":326:56")(tsplus_module_21.forkDaemon(this.push.run(this), fileName_1 + ":326:37"));
|
|
233
315
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
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");
|
|
238
|
-
}
|
|
239
|
-
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"));
|
|
316
|
+
return tsplus_module_4.zipRight(tsplus_module_2.ensuring(this.removeSink(sink), fileName_1 + ":328:49")(tsplus_module_22.wait(this.fiber, fileName_1 + ":328:34")), fileName_1 + ":328:22")(io);
|
|
317
|
+
}, fileName_1 + ":323:17")), fileName_1 + ":321:28")(tsplus_module_23.environment(fileName_1 + ":321:43"));
|
|
241
318
|
}
|
|
242
|
-
|
|
243
|
-
return
|
|
319
|
+
event(value) {
|
|
320
|
+
return tsplus_module_4.defer(() => tsplus_module_4.foreachDiscard(this.observers.slice(), observer => this.runValue(value, observer), fileName_1 + ":335:38"), fileName_1 + ":335:20");
|
|
244
321
|
}
|
|
245
|
-
|
|
246
|
-
return
|
|
322
|
+
error(cause) {
|
|
323
|
+
return tsplus_module_4.defer(() => tsplus_module_4.foreachDiscard(this.observers.slice(), observer => this.runError(cause, observer), fileName_1 + ":339:38"), fileName_1 + ":339:20");
|
|
247
324
|
}
|
|
248
|
-
|
|
249
|
-
|
|
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)));
|
|
325
|
+
runValue(value, observer) {
|
|
326
|
+
return tsplus_module_4.catchAllCause(() => this.removeSink(observer.sink), fileName_1 + ":346:21")(tsplus_module_23.provideEnvironment(observer.environment, fileName_1 + ":345:26")(observer.sink.event(value)));
|
|
251
327
|
}
|
|
252
|
-
|
|
253
|
-
|
|
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));
|
|
328
|
+
runError(cause, observer) {
|
|
329
|
+
return tsplus_module_4.catchAllCause(() => this.removeSink(observer.sink), fileName_1 + ":353:21")(tsplus_module_23.provideEnvironment(observer.environment, fileName_1 + ":352:26")(observer.sink.error(cause)));
|
|
255
330
|
}
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
331
|
+
removeSink(sink) {
|
|
332
|
+
return tsplus_module_4.defer(() => {
|
|
333
|
+
if (this.observers.length === 0) {
|
|
334
|
+
return tsplus_module_4.unit;
|
|
335
|
+
}
|
|
336
|
+
const index = this.observers.findIndex(observer => observer.sink === sink);
|
|
337
|
+
if (index > -1) {
|
|
338
|
+
this.observers.splice(index, 1);
|
|
339
|
+
if (this.observers.length === 0) {
|
|
340
|
+
const interrupt = tsplus_module_24.interrupt(this.fiber);
|
|
341
|
+
this.fiber = undefined;
|
|
342
|
+
return interrupt;
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
return tsplus_module_4.unit;
|
|
346
|
+
}, fileName_1 + ":357:20");
|
|
261
347
|
}
|
|
262
348
|
}
|
|
263
349
|
exports.Multicast = Multicast;
|
|
@@ -272,63 +358,20 @@ class Hold extends Multicast {
|
|
|
272
358
|
constructor(push) {
|
|
273
359
|
super(push);
|
|
274
360
|
this.push = push;
|
|
275
|
-
this.
|
|
276
|
-
this.pendingEmitters = [];
|
|
277
|
-
this.scheduledFiber = null;
|
|
361
|
+
this.current = new _AtomicReference.AtomicReference(tsplus_module_25.nothing(fileName_1 + ":383:49"));
|
|
278
362
|
}
|
|
279
|
-
run(
|
|
280
|
-
|
|
281
|
-
|
|
363
|
+
run(sink) {
|
|
364
|
+
const current = this.current.get;
|
|
365
|
+
if (tsplus_module_26.isJust(current)) {
|
|
366
|
+
return tsplus_module_4.zipRight(super.run(sink), fileName_1 + ":393:41")(sink.event(current.value));
|
|
282
367
|
}
|
|
283
|
-
|
|
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));
|
|
286
|
-
}
|
|
287
|
-
return super.run(emitter);
|
|
288
|
-
}
|
|
289
|
-
emit(value) {
|
|
290
|
-
return tsplus_module_1.defer(() => {
|
|
291
|
-
this.addValue(value);
|
|
292
|
-
return tsplus_module_1.flatMap(() => super.emit(value), fileName_1 + ":332:41")(this.flushPending());
|
|
293
|
-
}, fileName_1 + ":330:20");
|
|
294
|
-
}
|
|
295
|
-
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");
|
|
297
|
-
}
|
|
298
|
-
get end() {
|
|
299
|
-
return tsplus_module_1.defer(() => tsplus_module_1.flatMap(() => super.end, fileName_1 + ":341:48")(this.flushPending()), fileName_1 + ":341:20");
|
|
368
|
+
return super.run(sink);
|
|
300
369
|
}
|
|
301
|
-
|
|
302
|
-
return
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
const interrupt = this.scheduledFiber ? tsplus_module_26.interruptAsFork(this.scheduledFiber, tsplus_module_25.none) : tsplus_module_1.unit;
|
|
307
|
-
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"));
|
|
309
|
-
}
|
|
310
|
-
flushPending() {
|
|
311
|
-
if (this.pendingEmitters.length === 0) {
|
|
312
|
-
return tsplus_module_1.unit;
|
|
313
|
-
}
|
|
314
|
-
const emitters = this.pendingEmitters;
|
|
315
|
-
this.pendingEmitters = [];
|
|
316
|
-
return tsplus_module_1.foreachDiscard(emitters, pendingEmitter => {
|
|
317
|
-
return tsplus_module_1.defer(() => {
|
|
318
|
-
const [emitter, values] = pendingEmitter;
|
|
319
|
-
const observer = this.observers.find(observer => observer.emitter === emitter);
|
|
320
|
-
if (!observer) {
|
|
321
|
-
return tsplus_module_1.unit;
|
|
322
|
-
}
|
|
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");
|
|
326
|
-
}
|
|
327
|
-
addValue(value) {
|
|
328
|
-
this.value.set(tsplus_module_23.just(value, fileName_1 + ":386:24"));
|
|
329
|
-
this.pendingEmitters.forEach(([, values]) => {
|
|
330
|
-
values.push(value);
|
|
331
|
-
});
|
|
370
|
+
event(value) {
|
|
371
|
+
return tsplus_module_4.defer(() => {
|
|
372
|
+
this.current.set(tsplus_module_25.just(value, fileName_1 + ":401:28"));
|
|
373
|
+
return super.event(value);
|
|
374
|
+
}, fileName_1 + ":400:20");
|
|
332
375
|
}
|
|
333
376
|
}
|
|
334
377
|
/**
|
|
@@ -337,7 +380,7 @@ class Hold extends Multicast {
|
|
|
337
380
|
exports.Hold = Hold;
|
|
338
381
|
function map_1(f) {
|
|
339
382
|
return self => {
|
|
340
|
-
return mapIO_1(a =>
|
|
383
|
+
return mapIO_1(a => tsplus_module_4.succeedNow(f(a), fileName_1 + ":412:43"))(self);
|
|
341
384
|
};
|
|
342
385
|
}
|
|
343
386
|
/**
|
|
@@ -345,7 +388,7 @@ function map_1(f) {
|
|
|
345
388
|
*/
|
|
346
389
|
function mapError(f) {
|
|
347
390
|
return self => {
|
|
348
|
-
return
|
|
391
|
+
return tsplus_module_11.makePush(emitter => self.run(tsplus_module_11.makeSink(value => emitter.event(value), cause => emitter.error(tsplus_module_27.map(f)(cause)))));
|
|
349
392
|
};
|
|
350
393
|
}
|
|
351
394
|
/**
|
|
@@ -353,14 +396,14 @@ function mapError(f) {
|
|
|
353
396
|
*/
|
|
354
397
|
function mapErrorCause(f) {
|
|
355
398
|
return self => {
|
|
356
|
-
return
|
|
399
|
+
return tsplus_module_11.makePush(emitter => self.run(tsplus_module_11.makeSink(value => emitter.event(value), cause => emitter.error(f(cause)))));
|
|
357
400
|
};
|
|
358
401
|
}
|
|
359
402
|
/**
|
|
360
403
|
* @tsplus pipeable fncts.io.Push mapIO
|
|
361
404
|
*/
|
|
362
405
|
function mapIO_1(f) {
|
|
363
|
-
return self =>
|
|
406
|
+
return self => tsplus_module_11.makePush(emitter => self.run(tsplus_module_11.makeSink(value => tsplus_module_4.matchCauseIO(cause => emitter.error(cause), b => emitter.event(b), fileName_1 + ":457:34")(f(value)), cause => emitter.error(cause))));
|
|
364
407
|
}
|
|
365
408
|
/**
|
|
366
409
|
* @tsplus pipeable fncts.io.Push merge
|
|
@@ -371,82 +414,106 @@ function merge(that) {
|
|
|
371
414
|
};
|
|
372
415
|
}
|
|
373
416
|
function mergeAll_1(streams) {
|
|
374
|
-
return
|
|
417
|
+
return tsplus_module_11.makePush(sink => tsplus_module_14.foreachConcurrentDiscard(streams, stream => stream.run(tsplus_module_11.makeSink(sink.event, cause => tsplus_module_27.isInterruptedOnly(cause) ? tsplus_module_4.unit : sink.error(cause))), fileName_1 + ":485:32"));
|
|
418
|
+
}
|
|
419
|
+
/**
|
|
420
|
+
* @tsplus pipeable fncts.io.Push observe
|
|
421
|
+
*/
|
|
422
|
+
function observe_1(f, __tsplusTrace) {
|
|
423
|
+
return self => {
|
|
424
|
+
return tsplus_module_4.flatMap(future => tsplus_module_4.flatMap(fiber => tsplus_module_4.flatMap(() => tsplus_module_4.map(() => void 0, __tsplusTrace)(tsplus_module_28.interruptFork(fiber, __tsplusTrace)), __tsplusTrace)(tsplus_module_1.wait(future, __tsplusTrace)), __tsplusTrace)(tsplus_module_29.forkScoped(tsplus_module_4.flatMap(() => tsplus_module_1.succeed_(undefined, __tsplusTrace)(future), __tsplusTrace)(self.run(tsplus_module_11.makeSink(a => tsplus_module_4.catchAllCause(cause => tsplus_module_1.failCause(cause, __tsplusTrace)(future), __tsplusTrace)(f(a)), cause => tsplus_module_1.failCause(cause, __tsplusTrace)(future)))), __tsplusTrace)), __tsplusTrace)(tsplus_module_9.make(__tsplusTrace));
|
|
425
|
+
};
|
|
375
426
|
}
|
|
376
427
|
/**
|
|
377
428
|
* @tsplus static fncts.io.PushOps repeatIOMaybe
|
|
378
429
|
*/
|
|
379
430
|
function repeatIOMaybe(io, __tsplusTrace) {
|
|
380
|
-
return unfoldIO_1(undefined, () =>
|
|
431
|
+
return unfoldIO_1(undefined, () => tsplus_module_4.catchAll(maybeError => tsplus_module_16.match(() => tsplus_module_4.succeedNow(tsplus_module_25.nothing(__tsplusTrace), __tsplusTrace), tsplus_module_4.failNow)(maybeError), __tsplusTrace)(tsplus_module_4.map(a => tsplus_module_25.just([a, undefined], __tsplusTrace), __tsplusTrace)(io)));
|
|
381
432
|
}
|
|
382
433
|
/**
|
|
383
434
|
* @tsplus getter fncts.io.Push runCollect
|
|
384
435
|
*/
|
|
385
436
|
function runCollect(self) {
|
|
386
|
-
return
|
|
437
|
+
return tsplus_module_4.defer(() => {
|
|
387
438
|
const out = [];
|
|
388
|
-
return
|
|
389
|
-
}, fileName_1 + ":
|
|
439
|
+
return tsplus_module_4.as(() => tsplus_module_30.fromArray(out), fileName_1 + ":532:51")(observe_1(a => tsplus_module_4.succeed(() => out.push(a), fileName_1 + ":532:34"), fileName_1 + ":532:24")(self));
|
|
440
|
+
}, fileName_1 + ":530:18");
|
|
390
441
|
}
|
|
391
442
|
/**
|
|
392
443
|
* @tsplus getter fncts.io.Push runDrain
|
|
393
444
|
*/
|
|
394
445
|
function runDrain(self) {
|
|
395
|
-
return
|
|
446
|
+
return observe_1(() => tsplus_module_4.unit, fileName_1 + ":540:22")(self);
|
|
396
447
|
}
|
|
397
448
|
/**
|
|
398
449
|
* @tsplus static fncts.io.PushOps scoped
|
|
399
450
|
*/
|
|
400
451
|
function scoped_1(io, __tsplusTrace) {
|
|
401
|
-
return
|
|
452
|
+
return tsplus_module_11.makePush(emitter => tsplus_module_4.matchCauseIO(cause => emitter.error(cause), value => emitter.event(value), __tsplusTrace)(tsplus_module_10.scoped(tsplus_module_4.defer(io, __tsplusTrace), __tsplusTrace)));
|
|
402
453
|
}
|
|
403
454
|
/**
|
|
404
455
|
* @tsplus static fncts.io.PushOps succeed
|
|
405
456
|
*/
|
|
406
457
|
function succeed(value) {
|
|
407
|
-
return fromIO_1(() =>
|
|
458
|
+
return fromIO_1(() => tsplus_module_4.succeed(value, fileName_1 + ":559:32"));
|
|
459
|
+
}
|
|
460
|
+
/**
|
|
461
|
+
* @tsplus pipeable fncts.io.Push switchMap
|
|
462
|
+
*/
|
|
463
|
+
function switchMap_1(f) {
|
|
464
|
+
return self => {
|
|
465
|
+
return tsplus_module_11.makePush(sink => (0, _internal.withSwitch)(fork => self.run(tsplus_module_11.makeSink(a => fork(f(a).run(sink)), sink.error))));
|
|
466
|
+
};
|
|
467
|
+
}
|
|
468
|
+
/**
|
|
469
|
+
* @tsplus pipeable fncts.io.Push switchMapIO
|
|
470
|
+
*/
|
|
471
|
+
function switchMapIO_1(f) {
|
|
472
|
+
return self => {
|
|
473
|
+
return switchMap_1(a => fromIO_1(() => f(a)))(self);
|
|
474
|
+
};
|
|
408
475
|
}
|
|
409
476
|
/**
|
|
410
|
-
* @tsplus pipeable fncts.io.
|
|
477
|
+
* @tsplus pipeable fncts.io.Push tap
|
|
411
478
|
*/
|
|
412
|
-
function
|
|
479
|
+
function tap(f) {
|
|
413
480
|
return self => {
|
|
414
|
-
return
|
|
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")));
|
|
481
|
+
return tsplus_module_11.makePush(sink => self.run(tsplus_module_11.makeSink(a => tsplus_module_4.matchCauseIO(sink.error, () => sink.event(a), fileName_1 + ":585:65")(f(a)), sink.error)));
|
|
418
482
|
};
|
|
419
483
|
}
|
|
420
484
|
/**
|
|
421
485
|
* @tsplus pipeable fncts.io.Push transform
|
|
422
486
|
*/
|
|
423
487
|
function transform_1(f) {
|
|
424
|
-
return self =>
|
|
488
|
+
return self => tsplus_module_11.makePush(emitter => f(self.run(emitter)));
|
|
425
489
|
}
|
|
426
490
|
function unfoldLoop(s, f, emitter) {
|
|
427
|
-
return
|
|
491
|
+
return tsplus_module_16.match(() => tsplus_module_4.unit, ([a, s]) => tsplus_module_4.zipRight(unfoldLoop(s, f, emitter), fileName_1 + ":603:35")(emitter.event(a)))(f(s));
|
|
428
492
|
}
|
|
429
493
|
/**
|
|
430
494
|
* @tsplus static fncts.io.PushOps unfold
|
|
431
495
|
*/
|
|
432
496
|
function unfold(s, f) {
|
|
433
|
-
return
|
|
497
|
+
return tsplus_module_11.makePush(emitter => unfoldLoop(s, f, emitter));
|
|
434
498
|
}
|
|
435
499
|
function unfoldIOLoop(s, f, emitter) {
|
|
436
|
-
return
|
|
500
|
+
return tsplus_module_4.catchAllCause(cause => emitter.error(cause), fileName_1 + ":626:19")(tsplus_module_4.flatMap(result => tsplus_module_16.match(() => tsplus_module_4.unit, ([a, s]) => tsplus_module_4.zipRight(unfoldIOLoop(s, f, emitter), fileName_1 + ":623:39")(emitter.event(a)))(result), fileName_1 + ":620:13")(f(s)));
|
|
437
501
|
}
|
|
438
502
|
/**
|
|
439
503
|
* @tsplus static fncts.io.PushOps unfoldIO
|
|
440
504
|
*/
|
|
441
505
|
function unfoldIO_1(s, f) {
|
|
442
|
-
return
|
|
506
|
+
return tsplus_module_11.makePush(emitter => unfoldIOLoop(s, f, emitter));
|
|
443
507
|
}
|
|
444
508
|
/**
|
|
445
509
|
* @tsplus pipeable fncts.io.Push untilFuture
|
|
446
510
|
*/
|
|
447
511
|
function untilFuture(future) {
|
|
448
512
|
return self => {
|
|
449
|
-
return
|
|
513
|
+
return tsplus_module_11.makePush(sink => tsplus_module_20.asyncIO(cb => {
|
|
514
|
+
const exit = tsplus_module_4.succeed(() => cb(tsplus_module_4.unit), fileName_1 + ":643:24");
|
|
515
|
+
return tsplus_module_4.flatMap(streamFiber => tsplus_module_4.flatMap(futureFiber => tsplus_module_4.map(() => void 0, fileName_1 + ":654:12")(tsplus_module_31.joinAll([streamFiber, futureFiber], fileName_1 + ":654:26")), fileName_1 + ":646:32")(tsplus_module_32.fork(tsplus_module_4.zipRight(exit, fileName_1 + ":652:24")(tsplus_module_4.matchCauseIO(cause => sink.error(cause), () => tsplus_module_4.unit, fileName_1 + ":648:28")(tsplus_module_1.wait(future, fileName_1 + ":647:19"))), fileName_1 + ":652:30")), fileName_1 + ":645:32")(tsplus_module_32.fork(self.run(sink), fileName_1 + ":645:47"));
|
|
516
|
+
}, fileName_1 + ":642:17"));
|
|
450
517
|
};
|
|
451
518
|
}
|
|
452
519
|
/**
|
|
@@ -454,7 +521,10 @@ function untilFuture(future) {
|
|
|
454
521
|
*/
|
|
455
522
|
function untilPush(signal) {
|
|
456
523
|
return self => {
|
|
457
|
-
return
|
|
524
|
+
return tsplus_module_11.makePush(sink => tsplus_module_20.asyncIO(cb => {
|
|
525
|
+
const exit = tsplus_module_4.succeed(() => cb(tsplus_module_4.unit), fileName_1 + ":668:24");
|
|
526
|
+
return tsplus_module_4.flatMap(signalFiber => tsplus_module_4.flatMap(streamFiber => tsplus_module_4.map(() => void 0, fileName_1 + ":679:12")(tsplus_module_31.joinAll([signalFiber, streamFiber], fileName_1 + ":679:26")), fileName_1 + ":678:32")(tsplus_module_32.fork(self.run(sink), fileName_1 + ":678:47")), fileName_1 + ":670:32")(tsplus_module_32.fork(signal.run(tsplus_module_11.makeSink(() => exit, cause => sink.error(cause))), fileName_1 + ":676:14"));
|
|
527
|
+
}, fileName_1 + ":667:17"));
|
|
458
528
|
};
|
|
459
529
|
}
|
|
460
530
|
/**
|