@vielzeug/flux 2.3.3 → 3.0.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/README.md +13 -23
- package/dist/_iterator.cjs +1 -1
- package/dist/_iterator.cjs.map +1 -1
- package/dist/_iterator.d.ts +1 -1
- package/dist/_iterator.d.ts.map +1 -1
- package/dist/_iterator.js +35 -31
- package/dist/_iterator.js.map +1 -1
- package/dist/_link.cjs.map +1 -1
- package/dist/_link.d.ts +1 -1
- package/dist/_link.d.ts.map +1 -1
- package/dist/_link.js.map +1 -1
- package/dist/_numeric.cjs +1 -1
- package/dist/_numeric.cjs.map +1 -1
- package/dist/_numeric.js +1 -1
- package/dist/_numeric.js.map +1 -1
- package/dist/_subscription.cjs +1 -1
- package/dist/_subscription.cjs.map +1 -1
- package/dist/_subscription.d.ts +1 -1
- package/dist/_subscription.d.ts.map +1 -1
- package/dist/_subscription.js +1 -1
- package/dist/_subscription.js.map +1 -1
- package/dist/async.cjs.map +1 -1
- package/dist/async.d.ts +1 -1
- package/dist/async.d.ts.map +1 -1
- package/dist/async.js.map +1 -1
- package/dist/channel.cjs +1 -1
- package/dist/channel.cjs.map +1 -1
- package/dist/channel.d.ts +1 -1
- package/dist/channel.d.ts.map +1 -1
- package/dist/channel.js +14 -6
- package/dist/channel.js.map +1 -1
- package/dist/core.cjs +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +8 -1
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +30 -1
- package/dist/core.js.map +1 -1
- package/dist/errors.cjs +1 -1
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.ts +14 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +15 -2
- package/dist/errors.js.map +1 -1
- package/dist/flux.cjs +1 -1
- package/dist/flux.cjs.map +1 -1
- package/dist/flux.iife.js +1 -1
- package/dist/flux.iife.js.map +1 -1
- package/dist/flux.js +1 -1
- package/dist/flux.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +13 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -10
- package/dist/operators/combination.cjs +1 -1
- package/dist/operators/combination.cjs.map +1 -1
- package/dist/operators/combination.d.ts +1 -1
- package/dist/operators/combination.d.ts.map +1 -1
- package/dist/operators/combination.js +28 -13
- package/dist/operators/combination.js.map +1 -1
- package/dist/operators/creation.cjs +1 -1
- package/dist/operators/creation.cjs.map +1 -1
- package/dist/operators/creation.d.ts +2 -5
- package/dist/operators/creation.d.ts.map +1 -1
- package/dist/operators/creation.js +36 -30
- package/dist/operators/creation.js.map +1 -1
- package/dist/operators/filtering.cjs +1 -1
- package/dist/operators/filtering.cjs.map +1 -1
- package/dist/operators/filtering.d.ts +3 -9
- package/dist/operators/filtering.d.ts.map +1 -1
- package/dist/operators/filtering.js +32 -29
- package/dist/operators/filtering.js.map +1 -1
- package/dist/operators/transformation.cjs +1 -1
- package/dist/operators/transformation.cjs.map +1 -1
- package/dist/operators/transformation.d.ts +7 -4
- package/dist/operators/transformation.d.ts.map +1 -1
- package/dist/operators/transformation.js +82 -92
- package/dist/operators/transformation.js.map +1 -1
- package/dist/operators/utility.cjs +1 -1
- package/dist/operators/utility.cjs.map +1 -1
- package/dist/operators/utility.d.ts +6 -4
- package/dist/operators/utility.d.ts.map +1 -1
- package/dist/operators/utility.js +60 -53
- package/dist/operators/utility.js.map +1 -1
- package/dist/pipe.cjs.map +1 -1
- package/dist/pipe.d.ts +1 -1
- package/dist/pipe.d.ts.map +1 -1
- package/dist/pipe.js.map +1 -1
- package/dist/subjects.d.ts +2 -2
- package/dist/subjects.d.ts.map +1 -1
- package/package.json +10 -62
- package/dist/_dev.cjs +0 -2
- package/dist/_dev.cjs.map +0 -1
- package/dist/_dev.js +0 -6
- package/dist/_dev.js.map +0 -1
- package/dist/adapters/courier.cjs +0 -2
- package/dist/adapters/courier.cjs.map +0 -1
- package/dist/adapters/courier.d.ts +0 -31
- package/dist/adapters/courier.d.ts.map +0 -1
- package/dist/adapters/courier.js +0 -12
- package/dist/adapters/courier.js.map +0 -1
- package/dist/adapters/herald.cjs +0 -2
- package/dist/adapters/herald.cjs.map +0 -1
- package/dist/adapters/herald.d.ts +0 -5
- package/dist/adapters/herald.d.ts.map +0 -1
- package/dist/adapters/herald.js +0 -22
- package/dist/adapters/herald.js.map +0 -1
- package/dist/adapters/pulse.cjs +0 -2
- package/dist/adapters/pulse.cjs.map +0 -1
- package/dist/adapters/pulse.d.ts +0 -5
- package/dist/adapters/pulse.d.ts.map +0 -1
- package/dist/adapters/pulse.js +0 -18
- package/dist/adapters/pulse.js.map +0 -1
- package/dist/adapters/ripple.cjs +0 -2
- package/dist/adapters/ripple.cjs.map +0 -1
- package/dist/adapters/ripple.d.ts +0 -19
- package/dist/adapters/ripple.d.ts.map +0 -1
- package/dist/adapters/ripple.js +0 -43
- package/dist/adapters/ripple.js.map +0 -1
- package/dist/courier.cjs +0 -1
- package/dist/courier.d.ts +0 -2
- package/dist/courier.d.ts.map +0 -1
- package/dist/courier.js +0 -2
- package/dist/herald.cjs +0 -1
- package/dist/herald.d.ts +0 -2
- package/dist/herald.d.ts.map +0 -1
- package/dist/herald.js +0 -2
- package/dist/pulse.cjs +0 -1
- package/dist/pulse.d.ts +0 -2
- package/dist/pulse.d.ts.map +0 -1
- package/dist/pulse.js +0 -2
- package/dist/ripple.cjs +0 -1
- package/dist/ripple.d.ts +0 -3
- package/dist/ripple.d.ts.map +0 -1
- package/dist/ripple.js +0 -2
|
@@ -1,101 +1,108 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { defaultScheduler as
|
|
1
|
+
import { assertDuration as e, assertNonNegativeInteger as t } from "../_numeric.js";
|
|
2
|
+
import { FluxCapacityError as n, FluxEmptyError as r } from "../errors.js";
|
|
3
|
+
import { stream as i } from "../core.js";
|
|
4
|
+
import { link as a } from "../_link.js";
|
|
5
|
+
import { defaultScheduler as o } from "../_scheduler.js";
|
|
6
|
+
import { tryCall as s } from "../_safe.js";
|
|
7
|
+
import { abortError as c } from "@vielzeug/arsenal";
|
|
6
8
|
//#region src/operators/utility.ts
|
|
7
|
-
function
|
|
8
|
-
return
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
error(e) {
|
|
17
|
-
if (s === a.attempts) {
|
|
18
|
-
t.error(e);
|
|
9
|
+
function l(n) {
|
|
10
|
+
return t(n.attempts, "retry attempts"), (t) => i((r, i) => {
|
|
11
|
+
let c = 0, l, u, d = () => {
|
|
12
|
+
if (i.aborted) return;
|
|
13
|
+
let f = a(t, {
|
|
14
|
+
complete: r.complete,
|
|
15
|
+
error(t) {
|
|
16
|
+
if (c === n.attempts) {
|
|
17
|
+
r.error(t);
|
|
19
18
|
return;
|
|
20
19
|
}
|
|
21
|
-
let
|
|
22
|
-
if (
|
|
23
|
-
|
|
24
|
-
},
|
|
25
|
-
if (
|
|
26
|
-
|
|
20
|
+
let a = c++, l;
|
|
21
|
+
if (s(() => {
|
|
22
|
+
l = typeof n.delay == "function" ? n.delay(a) : n.delay;
|
|
23
|
+
}, r.error), !i.aborted) {
|
|
24
|
+
if (l !== void 0) try {
|
|
25
|
+
e(l, "Retry delay");
|
|
26
|
+
} catch (e) {
|
|
27
|
+
r.error(e);
|
|
27
28
|
return;
|
|
28
29
|
}
|
|
29
|
-
|
|
30
|
+
l === void 0 || l === 0 ? queueMicrotask(d) : u = o.delay(d, l);
|
|
30
31
|
}
|
|
31
32
|
},
|
|
32
|
-
next:
|
|
33
|
-
},
|
|
34
|
-
|
|
33
|
+
next: r.next
|
|
34
|
+
}, i);
|
|
35
|
+
f.closed || (l = f);
|
|
35
36
|
};
|
|
36
|
-
return
|
|
37
|
-
|
|
37
|
+
return d(), () => {
|
|
38
|
+
u?.(), l?.unsubscribe();
|
|
38
39
|
};
|
|
39
40
|
});
|
|
40
41
|
}
|
|
41
|
-
function
|
|
42
|
-
return new Promise((
|
|
42
|
+
function u(e, t) {
|
|
43
|
+
return new Promise((n, i) => {
|
|
43
44
|
let o = new AbortController(), s = () => {
|
|
44
|
-
o.abort(), i(
|
|
45
|
+
o.abort(), i(c(t?.signal, "Stream consumption aborted"));
|
|
45
46
|
};
|
|
46
47
|
if (t?.signal?.aborted) {
|
|
47
48
|
s();
|
|
48
49
|
return;
|
|
49
50
|
}
|
|
50
|
-
t?.signal?.addEventListener("abort", s, { once: !0 }),
|
|
51
|
+
t?.signal?.addEventListener("abort", s, { once: !0 }), a(e, {
|
|
52
|
+
complete() {
|
|
53
|
+
t?.signal?.removeEventListener("abort", s), "defaultValue" in (t ?? {}) ? n(t.defaultValue) : i(new r());
|
|
54
|
+
},
|
|
51
55
|
error(e) {
|
|
52
56
|
t?.signal?.removeEventListener("abort", s), i(e);
|
|
53
57
|
},
|
|
54
58
|
next(e) {
|
|
55
|
-
t?.signal?.removeEventListener("abort", s), o.abort(),
|
|
59
|
+
t?.signal?.removeEventListener("abort", s), o.abort(), n(e);
|
|
56
60
|
}
|
|
57
61
|
}, o.signal);
|
|
58
62
|
});
|
|
59
63
|
}
|
|
60
|
-
function
|
|
61
|
-
return new Promise((
|
|
62
|
-
let o = ()
|
|
64
|
+
function d(e, t) {
|
|
65
|
+
return new Promise((n, i) => {
|
|
66
|
+
let o = new AbortController(), s = () => {
|
|
67
|
+
o.abort(), i(c(t?.signal, "Stream consumption aborted"));
|
|
68
|
+
};
|
|
63
69
|
if (t?.signal?.aborted) {
|
|
64
|
-
|
|
70
|
+
s();
|
|
65
71
|
return;
|
|
66
72
|
}
|
|
67
|
-
|
|
73
|
+
let l = !1, u;
|
|
74
|
+
t?.signal?.addEventListener("abort", s, { once: !0 }), a(e, {
|
|
68
75
|
complete() {
|
|
69
|
-
t?.signal?.removeEventListener("abort",
|
|
76
|
+
t?.signal?.removeEventListener("abort", s), l ? n(u) : "defaultValue" in (t ?? {}) ? n(t.defaultValue) : i(new r());
|
|
70
77
|
},
|
|
71
78
|
error(e) {
|
|
72
|
-
t?.signal?.removeEventListener("abort",
|
|
79
|
+
t?.signal?.removeEventListener("abort", s), i(e);
|
|
73
80
|
},
|
|
74
81
|
next(e) {
|
|
75
|
-
|
|
82
|
+
l = !0, u = e;
|
|
76
83
|
}
|
|
77
|
-
},
|
|
84
|
+
}, o.signal);
|
|
78
85
|
});
|
|
79
86
|
}
|
|
80
|
-
function
|
|
81
|
-
return
|
|
82
|
-
let o = new AbortController(), s = [],
|
|
83
|
-
o.abort(), i(
|
|
87
|
+
function f(e, r) {
|
|
88
|
+
return t(r.maxItems, "toArray maxItems"), new Promise((t, i) => {
|
|
89
|
+
let o = new AbortController(), s = [], l = () => {
|
|
90
|
+
o.abort(), i(c(r?.signal, "Stream consumption aborted"));
|
|
84
91
|
};
|
|
85
92
|
if (r.signal?.aborted) {
|
|
86
|
-
|
|
93
|
+
l();
|
|
87
94
|
return;
|
|
88
95
|
}
|
|
89
|
-
r.signal?.addEventListener("abort",
|
|
96
|
+
r.signal?.addEventListener("abort", l, { once: !0 }), a(e, {
|
|
90
97
|
complete() {
|
|
91
|
-
r.signal?.removeEventListener("abort",
|
|
98
|
+
r.signal?.removeEventListener("abort", l), t(s);
|
|
92
99
|
},
|
|
93
100
|
error(e) {
|
|
94
|
-
r.signal?.removeEventListener("abort",
|
|
101
|
+
r.signal?.removeEventListener("abort", l), i(e);
|
|
95
102
|
},
|
|
96
103
|
next(e) {
|
|
97
104
|
if (s.length === r.maxItems) {
|
|
98
|
-
r.signal?.removeEventListener("abort",
|
|
105
|
+
r.signal?.removeEventListener("abort", l), o.abort(), i(new n(r.maxItems, "toArray maxItems exceeded"));
|
|
99
106
|
return;
|
|
100
107
|
}
|
|
101
108
|
s.push(e);
|
|
@@ -104,6 +111,6 @@ function l(t, r) {
|
|
|
104
111
|
});
|
|
105
112
|
}
|
|
106
113
|
//#endregion
|
|
107
|
-
export {
|
|
114
|
+
export { u as first, d as last, l as retry, f as toArray };
|
|
108
115
|
|
|
109
116
|
//# sourceMappingURL=utility.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.js","names":[],"sources":["../../src/operators/utility.ts"],"sourcesContent":["import { link } from '../_link';\nimport { assertNonNegativeInteger } from '../_numeric';\nimport { tryCall } from '../_safe';\nimport { defaultScheduler } from '../_scheduler';\nimport { stream } from '../core';\nimport type { Operator, Stream, Subscription } from '../types';\n\nexport type RetryOptions = {\n attempts: number;\n delay?: number | ((attempt: number) => number);\n};\n\nexport type ToArrayOptions = {\n maxItems: number;\n signal?: AbortSignal;\n};\n\nexport type ValueOptions = {\n signal?: AbortSignal;\n
|
|
1
|
+
{"version":3,"file":"utility.js","names":[],"sources":["../../src/operators/utility.ts"],"sourcesContent":["import { abortError } from '@vielzeug/arsenal';\n\nimport { link } from '../_link.js';\nimport { assertDuration, assertNonNegativeInteger } from '../_numeric.js';\nimport { tryCall } from '../_safe.js';\nimport { defaultScheduler } from '../_scheduler.js';\nimport { stream } from '../core.js';\nimport { FluxCapacityError, FluxEmptyError } from '../errors.js';\nimport type { Operator, Stream, Subscription } from '../types.js';\n\nexport type RetryOptions = {\n attempts: number;\n delay?: number | ((attempt: number) => number);\n};\n\nexport type ToArrayOptions = {\n maxItems: number;\n signal?: AbortSignal;\n};\n\nexport type ValueOptions<T> = {\n signal?: AbortSignal;\n /** Resolved when the source completes empty instead of rejecting with `FluxEmptyError`. */\n defaultValue?: T;\n};\n\nexport function retry<T>(options: RetryOptions): Operator<T, T> {\n assertNonNegativeInteger(options.attempts, 'retry attempts');\n\n return (source) =>\n stream((sink, signal) => {\n let attempts = 0;\n let current: Subscription | undefined;\n let cancelDelay: (() => void) | undefined;\n\n const start = (): void => {\n if (signal.aborted) return;\n\n const subscription = link(\n source,\n {\n complete: sink.complete,\n error(reason) {\n if (attempts === options.attempts) {\n sink.error(reason);\n\n return;\n }\n\n const attempt = attempts++;\n let delay: number | undefined;\n\n tryCall(() => {\n delay = typeof options.delay === 'function' ? options.delay(attempt) : options.delay;\n }, sink.error);\n\n if (signal.aborted) return;\n\n if (delay !== undefined) {\n try {\n assertDuration(delay, 'Retry delay');\n } catch (reason) {\n sink.error(reason);\n return;\n }\n }\n\n if (delay === undefined || delay === 0) {\n queueMicrotask(start);\n } else {\n cancelDelay = defaultScheduler.delay(start, delay);\n }\n },\n next: sink.next,\n },\n signal,\n );\n\n if (!subscription.closed) current = subscription;\n };\n\n start();\n\n return () => {\n cancelDelay?.();\n current?.unsubscribe();\n };\n });\n}\n\nexport function first<T>(source: Stream<T>, options?: ValueOptions<T>): Promise<T> {\n return new Promise<T>((resolve, reject) => {\n const controller = new AbortController();\n const abort = (): void => {\n controller.abort();\n reject(abortError(options?.signal, 'Stream consumption aborted'));\n };\n\n if (options?.signal?.aborted) {\n abort();\n\n return;\n }\n\n options?.signal?.addEventListener('abort', abort, { once: true });\n link(\n source,\n {\n complete() {\n options?.signal?.removeEventListener('abort', abort);\n\n if ('defaultValue' in (options ?? {})) resolve(options!.defaultValue as T);\n else reject(new FluxEmptyError());\n },\n error(reason) {\n options?.signal?.removeEventListener('abort', abort);\n reject(reason);\n },\n next(value) {\n options?.signal?.removeEventListener('abort', abort);\n controller.abort();\n resolve(value);\n },\n },\n controller.signal,\n );\n });\n}\n\nexport function last<T>(source: Stream<T>, options?: ValueOptions<T>): Promise<T> {\n return new Promise<T>((resolve, reject) => {\n const controller = new AbortController();\n const abort = (): void => {\n controller.abort();\n reject(abortError(options?.signal, 'Stream consumption aborted'));\n };\n\n if (options?.signal?.aborted) {\n abort();\n\n return;\n }\n\n let emitted = false;\n let latest: T | undefined;\n\n options?.signal?.addEventListener('abort', abort, { once: true });\n link(\n source,\n {\n complete() {\n options?.signal?.removeEventListener('abort', abort);\n\n if (emitted) resolve(latest as T);\n else if ('defaultValue' in (options ?? {})) resolve(options!.defaultValue as T);\n else reject(new FluxEmptyError());\n },\n error(reason) {\n options?.signal?.removeEventListener('abort', abort);\n reject(reason);\n },\n next(value) {\n emitted = true;\n latest = value;\n },\n },\n controller.signal,\n );\n });\n}\n\nexport function toArray<T>(source: Stream<T>, options: ToArrayOptions): Promise<T[]> {\n assertNonNegativeInteger(options.maxItems, 'toArray maxItems');\n\n return new Promise<T[]>((resolve, reject) => {\n const controller = new AbortController();\n const values: T[] = [];\n const abort = (): void => {\n controller.abort();\n reject(abortError(options?.signal, 'Stream consumption aborted'));\n };\n\n if (options.signal?.aborted) {\n abort();\n\n return;\n }\n\n options.signal?.addEventListener('abort', abort, { once: true });\n link(\n source,\n {\n complete() {\n options.signal?.removeEventListener('abort', abort);\n resolve(values);\n },\n error(reason) {\n options.signal?.removeEventListener('abort', abort);\n reject(reason);\n },\n next(value) {\n if (values.length === options.maxItems) {\n options.signal?.removeEventListener('abort', abort);\n controller.abort();\n reject(new FluxCapacityError(options.maxItems, 'toArray maxItems exceeded'));\n\n return;\n }\n\n values.push(value);\n },\n },\n controller.signal,\n );\n });\n}\n"],"mappings":"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"}
|
package/dist/pipe.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipe.cjs","names":[],"sources":["../src/pipe.ts"],"sourcesContent":["import type { Operator, PipedStream, Stream, ValidPipe } from './types';\n\n/** Standalone composition preserves contextual types for inline generic operators. */\nexport function pipe<Input>(source: Stream<Input>): Stream<Input>;\nexport function pipe<Input, A>(source: Stream<Input>, operator1: Operator<Input, A>): Stream<A>;\nexport function pipe<Input, A, B>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n): Stream<B>;\nexport function pipe<Input, A, B, C>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n): Stream<C>;\nexport function pipe<Input, A, B, C, D>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n): Stream<D>;\nexport function pipe<Input, A, B, C, D, E>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n): Stream<E>;\nexport function pipe<Input, A, B, C, D, E, F>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n): Stream<F>;\nexport function pipe<Input, A, B, C, D, E, F, G>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n): Stream<G>;\nexport function pipe<Input, A, B, C, D, E, F, G, H>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n): Stream<H>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n): Stream<I>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I, J>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n operator10: Operator<I, J>,\n): Stream<J>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators> {\n return operators.reduce(\n (current: Stream<unknown>, operator: Operator) => operator(current),\n source as Stream<unknown>,\n ) as PipedStream<Input, Operators>;\n}\n"],"mappings":"AA0FA,SAAgB,EACd,EACA,GAAG,EAC4B,CAC/B,OAAO,EAAU,QACd,EAA0B,IAAuB,EAAS,CAAO,EAClE,CACF,CACF"}
|
|
1
|
+
{"version":3,"file":"pipe.cjs","names":[],"sources":["../src/pipe.ts"],"sourcesContent":["import type { Operator, PipedStream, Stream, ValidPipe } from './types.js';\n\n/** Standalone composition preserves contextual types for inline generic operators. */\nexport function pipe<Input>(source: Stream<Input>): Stream<Input>;\nexport function pipe<Input, A>(source: Stream<Input>, operator1: Operator<Input, A>): Stream<A>;\nexport function pipe<Input, A, B>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n): Stream<B>;\nexport function pipe<Input, A, B, C>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n): Stream<C>;\nexport function pipe<Input, A, B, C, D>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n): Stream<D>;\nexport function pipe<Input, A, B, C, D, E>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n): Stream<E>;\nexport function pipe<Input, A, B, C, D, E, F>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n): Stream<F>;\nexport function pipe<Input, A, B, C, D, E, F, G>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n): Stream<G>;\nexport function pipe<Input, A, B, C, D, E, F, G, H>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n): Stream<H>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n): Stream<I>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I, J>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n operator10: Operator<I, J>,\n): Stream<J>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators> {\n return operators.reduce(\n (current: Stream<unknown>, operator: Operator) => operator(current),\n source as Stream<unknown>,\n ) as PipedStream<Input, Operators>;\n}\n"],"mappings":"AA0FA,SAAgB,EACd,EACA,GAAG,EAC4B,CAC/B,OAAO,EAAU,QACd,EAA0B,IAAuB,EAAS,CAAO,EAClE,CACF,CACF"}
|
package/dist/pipe.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Operator, PipedStream, Stream, ValidPipe } from './types';
|
|
1
|
+
import type { Operator, PipedStream, Stream, ValidPipe } from './types.js';
|
|
2
2
|
/** Standalone composition preserves contextual types for inline generic operators. */
|
|
3
3
|
export declare function pipe<Input>(source: Stream<Input>): Stream<Input>;
|
|
4
4
|
export declare function pipe<Input, A>(source: Stream<Input>, operator1: Operator<Input, A>): Stream<A>;
|
package/dist/pipe.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipe.d.ts","sourceRoot":"","sources":["../src/pipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"pipe.d.ts","sourceRoot":"","sources":["../src/pipe.ts"],"names":[],"mappings":"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"}
|
package/dist/pipe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipe.js","names":[],"sources":["../src/pipe.ts"],"sourcesContent":["import type { Operator, PipedStream, Stream, ValidPipe } from './types';\n\n/** Standalone composition preserves contextual types for inline generic operators. */\nexport function pipe<Input>(source: Stream<Input>): Stream<Input>;\nexport function pipe<Input, A>(source: Stream<Input>, operator1: Operator<Input, A>): Stream<A>;\nexport function pipe<Input, A, B>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n): Stream<B>;\nexport function pipe<Input, A, B, C>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n): Stream<C>;\nexport function pipe<Input, A, B, C, D>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n): Stream<D>;\nexport function pipe<Input, A, B, C, D, E>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n): Stream<E>;\nexport function pipe<Input, A, B, C, D, E, F>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n): Stream<F>;\nexport function pipe<Input, A, B, C, D, E, F, G>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n): Stream<G>;\nexport function pipe<Input, A, B, C, D, E, F, G, H>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n): Stream<H>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n): Stream<I>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I, J>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n operator10: Operator<I, J>,\n): Stream<J>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators> {\n return operators.reduce(\n (current: Stream<unknown>, operator: Operator) => operator(current),\n source as Stream<unknown>,\n ) as PipedStream<Input, Operators>;\n}\n"],"mappings":";AA0FA,SAAgB,EACd,GACA,GAAG,GAC4B;CAC/B,OAAO,EAAU,QACd,GAA0B,MAAuB,EAAS,CAAO,GAClE,CACF;AACF"}
|
|
1
|
+
{"version":3,"file":"pipe.js","names":[],"sources":["../src/pipe.ts"],"sourcesContent":["import type { Operator, PipedStream, Stream, ValidPipe } from './types.js';\n\n/** Standalone composition preserves contextual types for inline generic operators. */\nexport function pipe<Input>(source: Stream<Input>): Stream<Input>;\nexport function pipe<Input, A>(source: Stream<Input>, operator1: Operator<Input, A>): Stream<A>;\nexport function pipe<Input, A, B>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n): Stream<B>;\nexport function pipe<Input, A, B, C>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n): Stream<C>;\nexport function pipe<Input, A, B, C, D>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n): Stream<D>;\nexport function pipe<Input, A, B, C, D, E>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n): Stream<E>;\nexport function pipe<Input, A, B, C, D, E, F>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n): Stream<F>;\nexport function pipe<Input, A, B, C, D, E, F, G>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n): Stream<G>;\nexport function pipe<Input, A, B, C, D, E, F, G, H>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n): Stream<H>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n): Stream<I>;\nexport function pipe<Input, A, B, C, D, E, F, G, H, I, J>(\n source: Stream<Input>,\n operator1: Operator<Input, A>,\n operator2: Operator<A, B>,\n operator3: Operator<B, C>,\n operator4: Operator<C, D>,\n operator5: Operator<D, E>,\n operator6: Operator<E, F>,\n operator7: Operator<F, G>,\n operator8: Operator<G, H>,\n operator9: Operator<H, I>,\n operator10: Operator<I, J>,\n): Stream<J>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators>;\nexport function pipe<Input, const Operators extends readonly unknown[]>(\n source: Stream<Input>,\n ...operators: Operators & ValidPipe<Input, Operators>\n): PipedStream<Input, Operators> {\n return operators.reduce(\n (current: Stream<unknown>, operator: Operator) => operator(current),\n source as Stream<unknown>,\n ) as PipedStream<Input, Operators>;\n}\n"],"mappings":";AA0FA,SAAgB,EACd,GACA,GAAG,GAC4B;CAC/B,OAAO,EAAU,QACd,GAA0B,MAAuB,EAAS,CAAO,GAClE,CACF;AACF"}
|
package/dist/subjects.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export type { Channel, ChannelOptions } from './channel';
|
|
2
|
-
export { createChannel } from './channel';
|
|
1
|
+
export type { Channel, ChannelOptions } from './channel.js';
|
|
2
|
+
export { createChannel } from './channel.js';
|
|
3
3
|
//# sourceMappingURL=subjects.d.ts.map
|
package/dist/subjects.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subjects.d.ts","sourceRoot":"","sources":["../src/subjects.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"subjects.d.ts","sourceRoot":"","sources":["../src/subjects.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vielzeug/flux",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Minimal push streams with explicit ownership, buffering, and
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"description": "Minimal push streams with explicit ownership, bounded buffering, and structural bridges",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/helmuthdu/vielzeug",
|
|
@@ -28,26 +28,6 @@
|
|
|
28
28
|
"require": "./dist/async.cjs",
|
|
29
29
|
"types": "./dist/async.d.ts"
|
|
30
30
|
},
|
|
31
|
-
"./courier": {
|
|
32
|
-
"import": "./dist/courier.js",
|
|
33
|
-
"require": "./dist/courier.cjs",
|
|
34
|
-
"types": "./dist/courier.d.ts"
|
|
35
|
-
},
|
|
36
|
-
"./herald": {
|
|
37
|
-
"import": "./dist/herald.js",
|
|
38
|
-
"require": "./dist/herald.cjs",
|
|
39
|
-
"types": "./dist/herald.d.ts"
|
|
40
|
-
},
|
|
41
|
-
"./pulse": {
|
|
42
|
-
"import": "./dist/pulse.js",
|
|
43
|
-
"require": "./dist/pulse.cjs",
|
|
44
|
-
"types": "./dist/pulse.d.ts"
|
|
45
|
-
},
|
|
46
|
-
"./ripple": {
|
|
47
|
-
"import": "./dist/ripple.js",
|
|
48
|
-
"require": "./dist/ripple.cjs",
|
|
49
|
-
"types": "./dist/ripple.d.ts"
|
|
50
|
-
},
|
|
51
31
|
"./subjects": {
|
|
52
32
|
"import": "./dist/subjects.js",
|
|
53
33
|
"require": "./dist/subjects.cjs",
|
|
@@ -59,18 +39,6 @@
|
|
|
59
39
|
"async": [
|
|
60
40
|
"dist/async.d.ts"
|
|
61
41
|
],
|
|
62
|
-
"courier": [
|
|
63
|
-
"dist/courier.d.ts"
|
|
64
|
-
],
|
|
65
|
-
"herald": [
|
|
66
|
-
"dist/herald.d.ts"
|
|
67
|
-
],
|
|
68
|
-
"pulse": [
|
|
69
|
-
"dist/pulse.d.ts"
|
|
70
|
-
],
|
|
71
|
-
"ripple": [
|
|
72
|
-
"dist/ripple.d.ts"
|
|
73
|
-
],
|
|
74
42
|
"subjects": [
|
|
75
43
|
"dist/subjects.d.ts"
|
|
76
44
|
]
|
|
@@ -82,43 +50,23 @@
|
|
|
82
50
|
"registry": "https://registry.npmjs.org/"
|
|
83
51
|
},
|
|
84
52
|
"scripts": {
|
|
85
|
-
"build": "vite build && pnpm run build:bundle && pnpm run build:types && pnpm run verify:exports",
|
|
53
|
+
"build": "vite build && pnpm --silent run build:bundle && pnpm --silent run build:types && pnpm --silent run test:types && pnpm --silent run verify:exports",
|
|
86
54
|
"build:bundle": "vite build --config vite.bundle.config.ts",
|
|
87
55
|
"build:types": "tsc -p tsconfig.declarations.json",
|
|
88
56
|
"fix": "biome check --write src",
|
|
89
57
|
"lint": "biome ci src",
|
|
90
|
-
"prepublishOnly": "pnpm run build",
|
|
58
|
+
"prepublishOnly": "pnpm --silent run build",
|
|
91
59
|
"test": "vitest",
|
|
60
|
+
"test:types": "tsc -p tsconfig.type-tests.json",
|
|
92
61
|
"verify:exports": "node scripts/verify-exports.mjs && node scripts/verify-package-exports.mjs"
|
|
93
62
|
},
|
|
94
|
-
"
|
|
95
|
-
"@vielzeug/
|
|
96
|
-
"@vielzeug/herald": "2.2.0",
|
|
97
|
-
"@vielzeug/pulse": "2.3.0",
|
|
98
|
-
"@vielzeug/ripple": "2.2.4"
|
|
99
|
-
},
|
|
100
|
-
"peerDependenciesMeta": {
|
|
101
|
-
"@vielzeug/courier": {
|
|
102
|
-
"optional": true
|
|
103
|
-
},
|
|
104
|
-
"@vielzeug/herald": {
|
|
105
|
-
"optional": true
|
|
106
|
-
},
|
|
107
|
-
"@vielzeug/pulse": {
|
|
108
|
-
"optional": true
|
|
109
|
-
},
|
|
110
|
-
"@vielzeug/ripple": {
|
|
111
|
-
"optional": true
|
|
112
|
-
}
|
|
63
|
+
"dependencies": {
|
|
64
|
+
"@vielzeug/arsenal": "3.0.0"
|
|
113
65
|
},
|
|
114
66
|
"devDependencies": {
|
|
115
|
-
"@types/node": "^26.
|
|
116
|
-
"@vielzeug/courier": "2.3.0",
|
|
117
|
-
"@vielzeug/herald": "2.2.0",
|
|
118
|
-
"@vielzeug/pulse": "2.3.0",
|
|
119
|
-
"@vielzeug/ripple": "2.2.4",
|
|
67
|
+
"@types/node": "^26.4.1",
|
|
120
68
|
"typescript": "^6.0.3",
|
|
121
|
-
"vite": "^8.2.
|
|
122
|
-
"vitest": "^
|
|
69
|
+
"vite": "^8.2.2",
|
|
70
|
+
"vitest": "^5.0.0"
|
|
123
71
|
}
|
|
124
72
|
}
|
package/dist/_dev.cjs
DELETED
package/dist/_dev.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_dev.cjs","names":[],"sources":["../src/_dev.ts"],"sourcesContent":["/**\n * Set to `true` by the Vite `define` config in production builds so that all\n * dev-only `warn()` / `error()` calls are eliminated by the bundler.\n * When running tests or without a bundler the flag is absent and warnings fire.\n */\nconst isDev = !(globalThis as { __FLUX_PROD__?: boolean }).__FLUX_PROD__;\n\n/** @internal @security Messages may include user data. */\nexport function warn(msg: string): void {\n if (isDev) console.warn(`[@vielzeug/flux] ${msg}`);\n}\n\n/** @internal @security Messages and args may include user data. */\nexport function error(msg: string, ...args: unknown[]): void {\n if (isDev) console.error(`[@vielzeug/flux] ${msg}`, ...args);\n}\n"],"mappings":"AAaA,SAAgB,EAAM,EAAa,GAAG,EAAuB,CAE7D"}
|
package/dist/_dev.js
DELETED
package/dist/_dev.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_dev.js","names":[],"sources":["../src/_dev.ts"],"sourcesContent":["/**\n * Set to `true` by the Vite `define` config in production builds so that all\n * dev-only `warn()` / `error()` calls are eliminated by the bundler.\n * When running tests or without a bundler the flag is absent and warnings fire.\n */\nconst isDev = !(globalThis as { __FLUX_PROD__?: boolean }).__FLUX_PROD__;\n\n/** @internal @security Messages may include user data. */\nexport function warn(msg: string): void {\n if (isDev) console.warn(`[@vielzeug/flux] ${msg}`);\n}\n\n/** @internal @security Messages and args may include user data. */\nexport function error(msg: string, ...args: unknown[]): void {\n if (isDev) console.error(`[@vielzeug/flux] ${msg}`, ...args);\n}\n"],"mappings":";AAaA,SAAgB,EAAM,GAAa,GAAG,GAAuB,CAE7D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"courier.cjs","names":[],"sources":["../../src/adapters/courier.ts"],"sourcesContent":["import { stream } from '../core';\nimport type { Stream } from '../types';\n\ntype QueryCache = {\n getSnapshot<T>(key: readonly unknown[]): T | null;\n subscribe(key: readonly unknown[], onStoreChange: () => void): () => void;\n};\n\ntype QueryDefinition = {\n fetch: (...args: never[]) => Promise<unknown>;\n key: readonly unknown[];\n};\n\ntype QuerySnapshot<T> =\n | {\n readonly data: undefined;\n readonly error: null;\n readonly isFetching: boolean;\n readonly status: 'loading';\n readonly updatedAt: undefined;\n }\n | {\n readonly data: T;\n readonly error: null;\n readonly isFetching: boolean;\n readonly status: 'success';\n readonly updatedAt: number;\n }\n | {\n readonly data: T | undefined;\n readonly error: Error;\n readonly isFetching: false;\n readonly status: 'error';\n readonly updatedAt: number;\n };\n\nexport function fromQuery<T extends QueryDefinition>(\n cache: QueryCache,\n definition: T,\n): Stream<QuerySnapshot<Awaited<ReturnType<T['fetch']>>> | null> {\n return stream((sink) => {\n const snapshot = () => cache.getSnapshot<QuerySnapshot<Awaited<ReturnType<T['fetch']>>>>(definition.key);\n\n sink.next(snapshot());\n\n return cache.subscribe(definition.key, () => sink.next(snapshot()));\n });\n}\n"],"mappings":"+BAoCA,SAAgB,EACd,EACA,EAC+D,CAC/D,OAAO,EAAA,OAAQ,GAAS,CACtB,IAAM,MAAiB,EAAM,YAA4D,EAAW,GAAG,EAIvG,OAFA,EAAK,KAAK,EAAS,CAAC,EAEb,EAAM,UAAU,EAAW,QAAW,EAAK,KAAK,EAAS,CAAC,CAAC,CACpE,CAAC,CACH"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { Stream } from '../types';
|
|
2
|
-
type QueryCache = {
|
|
3
|
-
getSnapshot<T>(key: readonly unknown[]): T | null;
|
|
4
|
-
subscribe(key: readonly unknown[], onStoreChange: () => void): () => void;
|
|
5
|
-
};
|
|
6
|
-
type QueryDefinition = {
|
|
7
|
-
fetch: (...args: never[]) => Promise<unknown>;
|
|
8
|
-
key: readonly unknown[];
|
|
9
|
-
};
|
|
10
|
-
type QuerySnapshot<T> = {
|
|
11
|
-
readonly data: undefined;
|
|
12
|
-
readonly error: null;
|
|
13
|
-
readonly isFetching: boolean;
|
|
14
|
-
readonly status: 'loading';
|
|
15
|
-
readonly updatedAt: undefined;
|
|
16
|
-
} | {
|
|
17
|
-
readonly data: T;
|
|
18
|
-
readonly error: null;
|
|
19
|
-
readonly isFetching: boolean;
|
|
20
|
-
readonly status: 'success';
|
|
21
|
-
readonly updatedAt: number;
|
|
22
|
-
} | {
|
|
23
|
-
readonly data: T | undefined;
|
|
24
|
-
readonly error: Error;
|
|
25
|
-
readonly isFetching: false;
|
|
26
|
-
readonly status: 'error';
|
|
27
|
-
readonly updatedAt: number;
|
|
28
|
-
};
|
|
29
|
-
export declare function fromQuery<T extends QueryDefinition>(cache: QueryCache, definition: T): Stream<QuerySnapshot<Awaited<ReturnType<T['fetch']>>> | null>;
|
|
30
|
-
export {};
|
|
31
|
-
//# sourceMappingURL=courier.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"courier.d.ts","sourceRoot":"","sources":["../../src/adapters/courier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,KAAK,UAAU,GAAG;IAChB,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,OAAO,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAClD,SAAS,CAAC,GAAG,EAAE,SAAS,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CAC3E,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,GAAG,EAAE,SAAS,OAAO,EAAE,CAAC;CACzB,CAAC;AAEF,KAAK,aAAa,CAAC,CAAC,IAChB;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACjB,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEN,wBAAgB,SAAS,CAAC,CAAC,SAAS,eAAe,EACjD,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,CAAC,GACZ,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAQ/D"}
|
package/dist/adapters/courier.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { stream as e } from "../core.js";
|
|
2
|
-
//#region src/adapters/courier.ts
|
|
3
|
-
function t(t, n) {
|
|
4
|
-
return e((e) => {
|
|
5
|
-
let r = () => t.getSnapshot(n.key);
|
|
6
|
-
return e.next(r()), t.subscribe(n.key, () => e.next(r()));
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
//#endregion
|
|
10
|
-
export { t as fromQuery };
|
|
11
|
-
|
|
12
|
-
//# sourceMappingURL=courier.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"courier.js","names":[],"sources":["../../src/adapters/courier.ts"],"sourcesContent":["import { stream } from '../core';\nimport type { Stream } from '../types';\n\ntype QueryCache = {\n getSnapshot<T>(key: readonly unknown[]): T | null;\n subscribe(key: readonly unknown[], onStoreChange: () => void): () => void;\n};\n\ntype QueryDefinition = {\n fetch: (...args: never[]) => Promise<unknown>;\n key: readonly unknown[];\n};\n\ntype QuerySnapshot<T> =\n | {\n readonly data: undefined;\n readonly error: null;\n readonly isFetching: boolean;\n readonly status: 'loading';\n readonly updatedAt: undefined;\n }\n | {\n readonly data: T;\n readonly error: null;\n readonly isFetching: boolean;\n readonly status: 'success';\n readonly updatedAt: number;\n }\n | {\n readonly data: T | undefined;\n readonly error: Error;\n readonly isFetching: false;\n readonly status: 'error';\n readonly updatedAt: number;\n };\n\nexport function fromQuery<T extends QueryDefinition>(\n cache: QueryCache,\n definition: T,\n): Stream<QuerySnapshot<Awaited<ReturnType<T['fetch']>>> | null> {\n return stream((sink) => {\n const snapshot = () => cache.getSnapshot<QuerySnapshot<Awaited<ReturnType<T['fetch']>>>>(definition.key);\n\n sink.next(snapshot());\n\n return cache.subscribe(definition.key, () => sink.next(snapshot()));\n });\n}\n"],"mappings":";;AAoCA,SAAgB,EACd,GACA,GAC+D;CAC/D,OAAO,GAAQ,MAAS;EACtB,IAAM,UAAiB,EAAM,YAA4D,EAAW,GAAG;EAIvG,OAFA,EAAK,KAAK,EAAS,CAAC,GAEb,EAAM,UAAU,EAAW,WAAW,EAAK,KAAK,EAAS,CAAC,CAAC;CACpE,CAAC;AACH"}
|
package/dist/adapters/herald.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require("../core.cjs"),t=require("../_link.cjs"),n=require("../_safe.cjs");function r(t,n){return e.stream(e=>t.on(n,t=>e.next(t)))}function i(r,i){return a=>e.stream((e,o)=>t.link(a,{complete:e.complete,error:e.error,next(t){n.tryCall(()=>{r.emit(i,...t===void 0?[]:[t]),e.next(t)},e.error)}},o).unsubscribe)}exports.fromBus=r,exports.toBus=i;
|
|
2
|
-
//# sourceMappingURL=herald.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"herald.cjs","names":[],"sources":["../../src/adapters/herald.ts"],"sourcesContent":["import type { Bus, EventKey, EventMap } from '@vielzeug/herald';\nimport { link } from '../_link';\nimport { tryCall } from '../_safe';\nimport { stream } from '../core';\nimport type { Operator, Stream } from '../types';\n\nexport function fromBus<T extends EventMap, K extends EventKey<T>>(bus: Bus<T>, event: K): Stream<T[K]> {\n return stream((sink) => bus.on(event, (payload) => sink.next(payload)));\n}\n\nexport function toBus<T extends EventMap, K extends EventKey<T>>(bus: Bus<T>, event: K): Operator<T[K], T[K]> {\n return (source) =>\n stream(\n (sink, signal) =>\n link(\n source,\n {\n complete: sink.complete,\n error: sink.error,\n next(value) {\n tryCall(() => {\n bus.emit(event, ...((value === undefined ? [] : [value]) as T[K] extends void ? [] : [T[K]]));\n sink.next(value);\n }, sink.error);\n },\n },\n signal,\n ).unsubscribe,\n );\n}\n"],"mappings":"mFAMA,SAAgB,EAAmD,EAAa,EAAwB,CACtG,OAAO,EAAA,OAAQ,GAAS,EAAI,GAAG,EAAQ,GAAY,EAAK,KAAK,CAAO,CAAC,CAAC,CACxE,CAEA,SAAgB,EAAiD,EAAa,EAAgC,CAC5G,MAAQ,IACN,EAAA,QACG,EAAM,IACL,EAAA,KACE,EACA,CACE,SAAU,EAAK,SACf,MAAO,EAAK,MACZ,KAAK,EAAO,CACV,EAAA,YAAc,CACZ,EAAI,KAAK,EAAO,GAAK,IAAU,IAAA,GAAY,CAAC,EAAI,CAAC,CAAK,CAAsC,EAC5F,EAAK,KAAK,CAAK,CACjB,EAAG,EAAK,KAAK,CACf,CACF,EACA,CACF,CAAC,CAAC,WACN,CACJ"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { Bus, EventKey, EventMap } from '@vielzeug/herald';
|
|
2
|
-
import type { Operator, Stream } from '../types';
|
|
3
|
-
export declare function fromBus<T extends EventMap, K extends EventKey<T>>(bus: Bus<T>, event: K): Stream<T[K]>;
|
|
4
|
-
export declare function toBus<T extends EventMap, K extends EventKey<T>>(bus: Bus<T>, event: K): Operator<T[K], T[K]>;
|
|
5
|
-
//# sourceMappingURL=herald.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"herald.d.ts","sourceRoot":"","sources":["../../src/adapters/herald.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIhE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEjD,wBAAgB,OAAO,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAEtG;AAED,wBAAgB,KAAK,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAmB5G"}
|
package/dist/adapters/herald.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { stream as e } from "../core.js";
|
|
2
|
-
import { link as t } from "../_link.js";
|
|
3
|
-
import { tryCall as n } from "../_safe.js";
|
|
4
|
-
//#region src/adapters/herald.ts
|
|
5
|
-
function r(t, n) {
|
|
6
|
-
return e((e) => t.on(n, (t) => e.next(t)));
|
|
7
|
-
}
|
|
8
|
-
function i(r, i) {
|
|
9
|
-
return (a) => e((e, o) => t(a, {
|
|
10
|
-
complete: e.complete,
|
|
11
|
-
error: e.error,
|
|
12
|
-
next(t) {
|
|
13
|
-
n(() => {
|
|
14
|
-
r.emit(i, ...t === void 0 ? [] : [t]), e.next(t);
|
|
15
|
-
}, e.error);
|
|
16
|
-
}
|
|
17
|
-
}, o).unsubscribe);
|
|
18
|
-
}
|
|
19
|
-
//#endregion
|
|
20
|
-
export { r as fromBus, i as toBus };
|
|
21
|
-
|
|
22
|
-
//# sourceMappingURL=herald.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"herald.js","names":[],"sources":["../../src/adapters/herald.ts"],"sourcesContent":["import type { Bus, EventKey, EventMap } from '@vielzeug/herald';\nimport { link } from '../_link';\nimport { tryCall } from '../_safe';\nimport { stream } from '../core';\nimport type { Operator, Stream } from '../types';\n\nexport function fromBus<T extends EventMap, K extends EventKey<T>>(bus: Bus<T>, event: K): Stream<T[K]> {\n return stream((sink) => bus.on(event, (payload) => sink.next(payload)));\n}\n\nexport function toBus<T extends EventMap, K extends EventKey<T>>(bus: Bus<T>, event: K): Operator<T[K], T[K]> {\n return (source) =>\n stream(\n (sink, signal) =>\n link(\n source,\n {\n complete: sink.complete,\n error: sink.error,\n next(value) {\n tryCall(() => {\n bus.emit(event, ...((value === undefined ? [] : [value]) as T[K] extends void ? [] : [T[K]]));\n sink.next(value);\n }, sink.error);\n },\n },\n signal,\n ).unsubscribe,\n );\n}\n"],"mappings":";;;;AAMA,SAAgB,EAAmD,GAAa,GAAwB;CACtG,OAAO,GAAQ,MAAS,EAAI,GAAG,IAAQ,MAAY,EAAK,KAAK,CAAO,CAAC,CAAC;AACxE;AAEA,SAAgB,EAAiD,GAAa,GAAgC;CAC5G,QAAQ,MACN,GACG,GAAM,MACL,EACE,GACA;EACE,UAAU,EAAK;EACf,OAAO,EAAK;EACZ,KAAK,GAAO;GACV,QAAc;IAEZ,AADA,EAAI,KAAK,GAAO,GAAK,MAAU,KAAA,IAAY,CAAC,IAAI,CAAC,CAAK,CAAsC,GAC5F,EAAK,KAAK,CAAK;GACjB,GAAG,EAAK,KAAK;EACf;CACF,GACA,CACF,CAAC,CAAC,WACN;AACJ"}
|
package/dist/adapters/pulse.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require("../core.cjs");function t(t,n){return e.stream(e=>t.on(n,t=>e.next(t)))}function n(t){return e.stream(e=>{e.next(t.presence.value);let n=t.onJoin(()=>e.next(t.presence.value)),r=t.onLeave(()=>e.next(t.presence.value));return()=>{n(),r()}})}exports.fromPulse=t,exports.fromRoomPresence=n;
|
|
2
|
-
//# sourceMappingURL=pulse.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pulse.cjs","names":[],"sources":["../../src/adapters/pulse.ts"],"sourcesContent":["import type { EventKey, PresenceRoomScope, Pulse, PulseSchema, ServerEvents } from '@vielzeug/pulse';\nimport { stream } from '../core';\nimport type { Stream } from '../types';\n\nexport function fromPulse<S extends PulseSchema, K extends EventKey<ServerEvents<S>>>(\n pulse: Pulse<S>,\n event: K,\n): Stream<ServerEvents<S>[K]> {\n return stream((sink) => pulse.on(event, (payload) => sink.next(payload)));\n}\n\nexport function fromRoomPresence<T>(room: PresenceRoomScope<T>): Stream<ReadonlyMap<string, T>> {\n return stream((sink) => {\n sink.next(room.presence.value);\n\n const stopJoin = room.onJoin(() => sink.next(room.presence.value));\n const stopLeave = room.onLeave(() => sink.next(room.presence.value));\n\n return () => {\n stopJoin();\n stopLeave();\n };\n });\n}\n"],"mappings":"+BAIA,SAAgB,EACd,EACA,EAC4B,CAC5B,OAAO,EAAA,OAAQ,GAAS,EAAM,GAAG,EAAQ,GAAY,EAAK,KAAK,CAAO,CAAC,CAAC,CAC1E,CAEA,SAAgB,EAAoB,EAA4D,CAC9F,OAAO,EAAA,OAAQ,GAAS,CACtB,EAAK,KAAK,EAAK,SAAS,KAAK,EAE7B,IAAM,EAAW,EAAK,WAAa,EAAK,KAAK,EAAK,SAAS,KAAK,CAAC,EAC3D,EAAY,EAAK,YAAc,EAAK,KAAK,EAAK,SAAS,KAAK,CAAC,EAEnE,UAAa,CACX,EAAS,EACT,EAAU,CACZ,CACF,CAAC,CACH"}
|
package/dist/adapters/pulse.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { EventKey, PresenceRoomScope, Pulse, PulseSchema, ServerEvents } from '@vielzeug/pulse';
|
|
2
|
-
import type { Stream } from '../types';
|
|
3
|
-
export declare function fromPulse<S extends PulseSchema, K extends EventKey<ServerEvents<S>>>(pulse: Pulse<S>, event: K): Stream<ServerEvents<S>[K]>;
|
|
4
|
-
export declare function fromRoomPresence<T>(room: PresenceRoomScope<T>): Stream<ReadonlyMap<string, T>>;
|
|
5
|
-
//# sourceMappingURL=pulse.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pulse.d.ts","sourceRoot":"","sources":["../../src/adapters/pulse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAErG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,wBAAgB,SAAS,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAClF,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EACf,KAAK,EAAE,CAAC,GACP,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAE5B;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAY9F"}
|
package/dist/adapters/pulse.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { stream as e } from "../core.js";
|
|
2
|
-
//#region src/adapters/pulse.ts
|
|
3
|
-
function t(t, n) {
|
|
4
|
-
return e((e) => t.on(n, (t) => e.next(t)));
|
|
5
|
-
}
|
|
6
|
-
function n(t) {
|
|
7
|
-
return e((e) => {
|
|
8
|
-
e.next(t.presence.value);
|
|
9
|
-
let n = t.onJoin(() => e.next(t.presence.value)), r = t.onLeave(() => e.next(t.presence.value));
|
|
10
|
-
return () => {
|
|
11
|
-
n(), r();
|
|
12
|
-
};
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
//#endregion
|
|
16
|
-
export { t as fromPulse, n as fromRoomPresence };
|
|
17
|
-
|
|
18
|
-
//# sourceMappingURL=pulse.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pulse.js","names":[],"sources":["../../src/adapters/pulse.ts"],"sourcesContent":["import type { EventKey, PresenceRoomScope, Pulse, PulseSchema, ServerEvents } from '@vielzeug/pulse';\nimport { stream } from '../core';\nimport type { Stream } from '../types';\n\nexport function fromPulse<S extends PulseSchema, K extends EventKey<ServerEvents<S>>>(\n pulse: Pulse<S>,\n event: K,\n): Stream<ServerEvents<S>[K]> {\n return stream((sink) => pulse.on(event, (payload) => sink.next(payload)));\n}\n\nexport function fromRoomPresence<T>(room: PresenceRoomScope<T>): Stream<ReadonlyMap<string, T>> {\n return stream((sink) => {\n sink.next(room.presence.value);\n\n const stopJoin = room.onJoin(() => sink.next(room.presence.value));\n const stopLeave = room.onLeave(() => sink.next(room.presence.value));\n\n return () => {\n stopJoin();\n stopLeave();\n };\n });\n}\n"],"mappings":";;AAIA,SAAgB,EACd,GACA,GAC4B;CAC5B,OAAO,GAAQ,MAAS,EAAM,GAAG,IAAQ,MAAY,EAAK,KAAK,CAAO,CAAC,CAAC;AAC1E;AAEA,SAAgB,EAAoB,GAA4D;CAC9F,OAAO,GAAQ,MAAS;EACtB,EAAK,KAAK,EAAK,SAAS,KAAK;EAE7B,IAAM,IAAW,EAAK,aAAa,EAAK,KAAK,EAAK,SAAS,KAAK,CAAC,GAC3D,IAAY,EAAK,cAAc,EAAK,KAAK,EAAK,SAAS,KAAK,CAAC;EAEnE,aAAa;GAEX,AADA,EAAS,GACT,EAAU;EACZ;CACF,CAAC;AACH"}
|
package/dist/adapters/ripple.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require("../core.cjs");require("../_dev.cjs");let t=require("@vielzeug/ripple");function n(t){return e.stream(e=>(e.next(t.value),t.subscribe(()=>e.next(t.value))))}function r(e,n){let r=(0,t.signal)(n.initial),i=new AbortController,a={},o=()=>{i.signal.aborted||(i.abort(),n.signal?.removeEventListener(`abort`,o),a.current?.unsubscribe())};return n.signal?.aborted&&i.abort(),a.current=e.subscribe({complete:o,error(e){if(n.onError)try{n.onError(e)}catch{}o()},next(e){r.value=e}},{signal:i.signal}),i.signal.aborted||n.signal?.addEventListener(`abort`,o,{once:!0}),{get disposalSignal(){return i.signal},dispose:o,get disposed(){return i.signal.aborted},get signal(){return r},[Symbol.dispose]:o,get value(){return r.value}}}exports.fromSignal=n,exports.toSignal=r;
|
|
2
|
-
//# sourceMappingURL=ripple.cjs.map
|