@typed/fx 1.22.2 → 1.24.0
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/dist/cjs/AsyncData.js.map +1 -1
- package/dist/cjs/Form.js.map +1 -1
- package/dist/cjs/FormEntry.js.map +1 -1
- package/dist/cjs/Fx.js +1 -1
- package/dist/cjs/Fx.js.map +1 -1
- package/dist/cjs/Idle.js.map +1 -1
- package/dist/cjs/Match.js.map +1 -1
- package/dist/cjs/Pull.js +5 -3
- package/dist/cjs/Pull.js.map +1 -1
- package/dist/cjs/RefArray.js.map +1 -1
- package/dist/cjs/RefChunk.js.map +1 -1
- package/dist/cjs/RefHashSet.js.map +1 -1
- package/dist/cjs/RefSubject.js +3 -2
- package/dist/cjs/RefSubject.js.map +1 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/Subject.js.map +1 -1
- package/dist/cjs/Versioned.js.map +1 -1
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/helpers.js.map +1 -1
- package/dist/cjs/internal/keyed.js +1 -1
- package/dist/cjs/internal/keyed.js.map +1 -1
- package/dist/cjs/internal/provide.js.map +1 -1
- package/dist/cjs/internal/share.js.map +1 -1
- package/dist/cjs/internal/sync-producer.js.map +1 -1
- package/dist/dts/AsyncData.d.ts +53 -53
- package/dist/dts/AsyncData.d.ts.map +1 -1
- package/dist/dts/Emitter.d.ts +7 -7
- package/dist/dts/Emitter.d.ts.map +1 -1
- package/dist/dts/Form.d.ts +14 -14
- package/dist/dts/Form.d.ts.map +1 -1
- package/dist/dts/FormEntry.d.ts +11 -11
- package/dist/dts/FormEntry.d.ts.map +1 -1
- package/dist/dts/Fx.d.ts +417 -417
- package/dist/dts/Fx.d.ts.map +1 -1
- package/dist/dts/Guard.d.ts +21 -21
- package/dist/dts/Guard.d.ts.map +1 -1
- package/dist/dts/Idle.d.ts +12 -12
- package/dist/dts/Idle.d.ts.map +1 -1
- package/dist/dts/Match.d.ts +16 -16
- package/dist/dts/Match.d.ts.map +1 -1
- package/dist/dts/Pull.d.ts +5 -5
- package/dist/dts/Pull.d.ts.map +1 -1
- package/dist/dts/Push.d.ts +40 -40
- package/dist/dts/Push.d.ts.map +1 -1
- package/dist/dts/RefArray.d.ts +59 -59
- package/dist/dts/RefArray.d.ts.map +1 -1
- package/dist/dts/RefChunk.d.ts +45 -45
- package/dist/dts/RefChunk.d.ts.map +1 -1
- package/dist/dts/RefHashMap.d.ts +35 -35
- package/dist/dts/RefHashMap.d.ts.map +1 -1
- package/dist/dts/RefHashSet.d.ts +17 -17
- package/dist/dts/RefHashSet.d.ts.map +1 -1
- package/dist/dts/RefSubject.d.ts +136 -136
- package/dist/dts/RefSubject.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +63 -63
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +11 -11
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/Subject.d.ts +13 -13
- package/dist/dts/Subject.d.ts.map +1 -1
- package/dist/dts/Typeclass.d.ts +1 -1
- package/dist/dts/Typeclass.d.ts.map +1 -1
- package/dist/dts/Versioned.d.ts +33 -33
- package/dist/dts/Versioned.d.ts.map +1 -1
- package/dist/dts/index.d.ts +1 -1
- package/dist/dts/internal/DeferredRef.d.ts +8 -8
- package/dist/dts/internal/DeferredRef.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts +191 -191
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/effect-loop-operator.d.ts +6 -6
- package/dist/dts/internal/effect-loop-operator.d.ts.map +1 -1
- package/dist/dts/internal/effect-operator.d.ts +16 -16
- package/dist/dts/internal/effect-operator.d.ts.map +1 -1
- package/dist/dts/internal/effect-producer.d.ts +13 -13
- package/dist/dts/internal/effect-producer.d.ts.map +1 -1
- package/dist/dts/internal/helpers.d.ts +26 -26
- package/dist/dts/internal/helpers.d.ts.map +1 -1
- package/dist/dts/internal/keyed.d.ts +1 -1
- package/dist/dts/internal/keyed.d.ts.map +1 -1
- package/dist/dts/internal/loop-operator.d.ts +2 -2
- package/dist/dts/internal/loop-operator.d.ts.map +1 -1
- package/dist/dts/internal/operator.d.ts +2 -2
- package/dist/dts/internal/operator.d.ts.map +1 -1
- package/dist/dts/internal/protos.d.ts +12 -12
- package/dist/dts/internal/protos.d.ts.map +1 -1
- package/dist/dts/internal/provide.d.ts +15 -15
- package/dist/dts/internal/provide.d.ts.map +1 -1
- package/dist/dts/internal/share.d.ts +11 -11
- package/dist/dts/internal/share.d.ts.map +1 -1
- package/dist/dts/internal/sync-operator.d.ts +2 -2
- package/dist/dts/internal/sync-operator.d.ts.map +1 -1
- package/dist/dts/internal/sync-producer.d.ts +6 -6
- package/dist/dts/internal/sync-producer.d.ts.map +1 -1
- package/dist/dts/internal/withKey.d.ts +1 -1
- package/dist/dts/internal/withKey.d.ts.map +1 -1
- package/dist/esm/AsyncData.js.map +1 -1
- package/dist/esm/Form.js.map +1 -1
- package/dist/esm/FormEntry.js.map +1 -1
- package/dist/esm/Fx.js +1 -1
- package/dist/esm/Fx.js.map +1 -1
- package/dist/esm/Idle.js.map +1 -1
- package/dist/esm/Match.js.map +1 -1
- package/dist/esm/Pull.js +3 -3
- package/dist/esm/Pull.js.map +1 -1
- package/dist/esm/RefArray.js.map +1 -1
- package/dist/esm/RefChunk.js.map +1 -1
- package/dist/esm/RefHashSet.js.map +1 -1
- package/dist/esm/RefSubject.js +3 -1
- package/dist/esm/RefSubject.js.map +1 -1
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/Subject.js.map +1 -1
- package/dist/esm/Versioned.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/helpers.js.map +1 -1
- package/dist/esm/internal/keyed.js +1 -1
- package/dist/esm/internal/keyed.js.map +1 -1
- package/dist/esm/internal/provide.js.map +1 -1
- package/dist/esm/internal/share.js.map +1 -1
- package/dist/esm/internal/sync-producer.js.map +1 -1
- package/package.json +6 -6
- package/src/AsyncData.ts +142 -144
- package/src/Emitter.ts +13 -13
- package/src/Form.ts +55 -55
- package/src/FormEntry.ts +39 -39
- package/src/Fx.ts +788 -789
- package/src/Guard.ts +43 -43
- package/src/Idle.ts +26 -26
- package/src/Match.ts +60 -61
- package/src/Pull.ts +42 -43
- package/src/Push.ts +195 -195
- package/src/RefArray.ts +121 -119
- package/src/RefChunk.ts +98 -97
- package/src/RefHashMap.ts +79 -79
- package/src/RefHashSet.ts +40 -39
- package/src/RefSubject.ts +574 -565
- package/src/Sink.ts +303 -303
- package/src/Stream.ts +27 -27
- package/src/Subject.ts +48 -46
- package/src/Typeclass.ts +2 -2
- package/src/Versioned.ts +97 -97
- package/src/index.ts +1 -1
- package/src/internal/DeferredRef.ts +7 -7
- package/src/internal/core.ts +768 -781
- package/src/internal/effect-loop-operator.ts +7 -7
- package/src/internal/effect-operator.ts +23 -23
- package/src/internal/effect-producer.ts +38 -38
- package/src/internal/helpers.ts +51 -51
- package/src/internal/keyed.ts +21 -21
- package/src/internal/loop-operator.ts +2 -2
- package/src/internal/operator.ts +2 -2
- package/src/internal/protos.ts +15 -15
- package/src/internal/provide.ts +27 -27
- package/src/internal/share.ts +25 -25
- package/src/internal/sync-operator.ts +4 -4
- package/src/internal/sync-producer.ts +15 -15
- package/src/internal/withKey.ts +13 -13
package/src/Pull.ts
CHANGED
|
@@ -19,28 +19,27 @@ import type { Sink } from "./Sink.js"
|
|
|
19
19
|
* An Effect which can be used to pull values of a Stream.
|
|
20
20
|
* @since 1.18.0
|
|
21
21
|
*/
|
|
22
|
-
export interface Pull<out
|
|
22
|
+
export interface Pull<out A, out E = never, out R = never> extends Effect.Effect<Chunk.Chunk<A>, Option.Option<E>, R> {}
|
|
23
23
|
|
|
24
|
-
function schedulePull<
|
|
25
|
-
pull: Pull<
|
|
26
|
-
f: (effect: Effect.Effect<R | R3
|
|
27
|
-
sink: Sink<
|
|
28
|
-
): Effect.Effect<
|
|
29
|
-
return Effect.asyncEffect((resume) =>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}),
|
|
24
|
+
function schedulePull<A, E, R, R2, R3>(
|
|
25
|
+
pull: Pull<A, E, R>,
|
|
26
|
+
f: (effect: Effect.Effect<unknown, never, R | R3>) => Effect.Effect<unknown, never, R2>,
|
|
27
|
+
sink: Sink<A, E, R3>
|
|
28
|
+
): Effect.Effect<void, never, R2> {
|
|
29
|
+
return Effect.asyncEffect<void, never, never, void, never, R2>((resume) =>
|
|
30
|
+
Effect.matchCauseEffect(pull, {
|
|
31
|
+
onFailure: (cause: Cause.Cause<Option.Option<E>>) =>
|
|
32
|
+
Cause.failureOrCause(cause).pipe(
|
|
33
|
+
Either.match({
|
|
34
|
+
onLeft: Option.match({
|
|
35
|
+
onNone: () => Effect.sync(() => resume(Effect.unit)),
|
|
36
|
+
onSome: (e: E) => sink.onFailure(Cause.fail(e))
|
|
37
|
+
}),
|
|
38
|
+
onRight: sink.onFailure
|
|
39
|
+
})
|
|
40
|
+
),
|
|
41
|
+
onSuccess: (chunk: Chunk.Chunk<A>) => Effect.forEach(chunk, sink.onSuccess, { discard: true })
|
|
42
|
+
}).pipe(
|
|
44
43
|
f,
|
|
45
44
|
Effect.flatMap(() => Effect.sync(() => resume(Effect.unit)))
|
|
46
45
|
)
|
|
@@ -53,21 +52,21 @@ function schedulePull<R, E, A, R2, R3>(
|
|
|
53
52
|
* @since 1.18.0
|
|
54
53
|
*/
|
|
55
54
|
export const schedule: {
|
|
56
|
-
<R2,
|
|
55
|
+
<R2, A, E, R3>(
|
|
57
56
|
schedule: Schedule.Schedule<R2, unknown, unknown>,
|
|
58
|
-
sink: Sink<
|
|
59
|
-
): <R>(pull: Pull<
|
|
57
|
+
sink: Sink<A, E, R3>
|
|
58
|
+
): <R>(pull: Pull<A, E, R>) => Effect.Effect<unknown, never, R | R2 | R3>
|
|
60
59
|
|
|
61
|
-
<
|
|
62
|
-
pull: Pull<
|
|
60
|
+
<A, E, R, R2, R3>(
|
|
61
|
+
pull: Pull<A, E, R>,
|
|
63
62
|
schedule: Schedule.Schedule<R2, unknown, unknown>,
|
|
64
|
-
sink: Sink<
|
|
65
|
-
): Effect.Effect<R | R2 | R3
|
|
66
|
-
} = dual(3, function schedule<
|
|
67
|
-
pull: Pull<
|
|
63
|
+
sink: Sink<A, E, R3>
|
|
64
|
+
): Effect.Effect<unknown, never, R | R2 | R3>
|
|
65
|
+
} = dual(3, function schedule<A, E, R, R2, R3>(
|
|
66
|
+
pull: Pull<A, E, R>,
|
|
68
67
|
schedule: Schedule.Schedule<R2, unknown, unknown>,
|
|
69
|
-
sink: Sink<
|
|
70
|
-
): Effect.Effect<R | R2 | R3
|
|
68
|
+
sink: Sink<A, E, R3>
|
|
69
|
+
): Effect.Effect<void, never, R | R2 | R3> {
|
|
71
70
|
return schedulePull(pull, Effect.schedule(schedule), sink)
|
|
72
71
|
})
|
|
73
72
|
|
|
@@ -77,20 +76,20 @@ export const schedule: {
|
|
|
77
76
|
* @since 1.18.0
|
|
78
77
|
*/
|
|
79
78
|
export const repeat: {
|
|
80
|
-
<R2,
|
|
79
|
+
<R2, A, E, R3>(
|
|
81
80
|
schedule: Schedule.Schedule<R2, unknown, unknown>,
|
|
82
|
-
sink: Sink<
|
|
83
|
-
): <R>(pull: Pull<
|
|
81
|
+
sink: Sink<A, E, R3>
|
|
82
|
+
): <R>(pull: Pull<A, E, R>) => Effect.Effect<unknown, never, R | R2 | R3>
|
|
84
83
|
|
|
85
|
-
<
|
|
86
|
-
pull: Pull<
|
|
84
|
+
<A, E, R, R2, R3>(
|
|
85
|
+
pull: Pull<A, E, R>,
|
|
87
86
|
schedule: Schedule.Schedule<R2, unknown, unknown>,
|
|
88
|
-
sink: Sink<
|
|
89
|
-
): Effect.Effect<R | R2 | R3
|
|
90
|
-
} = dual(3, function repeat<
|
|
91
|
-
pull: Pull<
|
|
87
|
+
sink: Sink<A, E, R3>
|
|
88
|
+
): Effect.Effect<unknown, never, R | R2 | R3>
|
|
89
|
+
} = dual(3, function repeat<A, E, R, R2, R3>(
|
|
90
|
+
pull: Pull<A, E, R>,
|
|
92
91
|
schedule: Schedule.Schedule<R2, unknown, unknown>,
|
|
93
|
-
sink: Sink<
|
|
94
|
-
): Effect.Effect<R | R2 | R3
|
|
92
|
+
sink: Sink<A, E, R3>
|
|
93
|
+
): Effect.Effect<void, never, R | R2 | R3> {
|
|
95
94
|
return schedulePull(pull, Effect.repeat(schedule), sink)
|
|
96
95
|
})
|