synstate 3.0.5 → 3.1.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 +1 -1
- package/dist/core/base/create-observable-base.d.mts +53 -8
- package/dist/core/base/create-observable-base.d.mts.map +1 -1
- package/dist/core/base/create-observable-base.mjs +48 -17
- package/dist/core/base/create-observable-base.mjs.map +1 -1
- package/dist/core/base/create-root-observable.d.mts +1 -1
- package/dist/core/base/create-root-observable.d.mts.map +1 -1
- package/dist/core/combine/combine.d.mts +2 -2
- package/dist/core/combine/combine.d.mts.map +1 -1
- package/dist/core/combine/merge.d.mts +2 -2
- package/dist/core/combine/merge.d.mts.map +1 -1
- package/dist/core/combine/zip.d.mts +2 -2
- package/dist/core/combine/zip.d.mts.map +1 -1
- package/dist/core/create/counter.d.mts +1 -1
- package/dist/core/create/counter.d.mts.map +1 -1
- package/dist/core/create/from-abortable-promise.d.mts +1 -1
- package/dist/core/create/from-abortable-promise.d.mts.map +1 -1
- package/dist/core/create/from-promise.d.mts +1 -1
- package/dist/core/create/from-promise.d.mts.map +1 -1
- package/dist/core/create/from-subscribable.d.mts +1 -1
- package/dist/core/create/from-subscribable.d.mts.map +1 -1
- package/dist/core/create/just.d.mts +1 -1
- package/dist/core/create/just.d.mts.map +1 -1
- package/dist/core/create/source.d.mts +1 -1
- package/dist/core/create/source.d.mts.map +1 -1
- package/dist/core/create/timer.d.mts +1 -1
- package/dist/core/create/timer.d.mts.map +1 -1
- package/dist/core/operators/audit.d.mts +1 -1
- package/dist/core/operators/audit.d.mts.map +1 -1
- package/dist/core/operators/debounce.d.mts +1 -1
- package/dist/core/operators/debounce.d.mts.map +1 -1
- package/dist/core/operators/filter.d.mts +1 -1
- package/dist/core/operators/filter.d.mts.map +1 -1
- package/dist/core/operators/map.d.mts +1 -1
- package/dist/core/operators/map.d.mts.map +1 -1
- package/dist/core/operators/merge-map.d.mts +1 -1
- package/dist/core/operators/merge-map.d.mts.map +1 -1
- package/dist/core/operators/pairwise.d.mts +2 -2
- package/dist/core/operators/pairwise.d.mts.map +1 -1
- package/dist/core/operators/scan.d.mts +1 -1
- package/dist/core/operators/scan.d.mts.map +1 -1
- package/dist/core/operators/skip-if-no-change.d.mts +1 -1
- package/dist/core/operators/skip-if-no-change.d.mts.map +1 -1
- package/dist/core/operators/skip-until.d.mts +1 -1
- package/dist/core/operators/skip-until.d.mts.map +1 -1
- package/dist/core/operators/skip-while.d.mts +1 -1
- package/dist/core/operators/skip-while.d.mts.map +1 -1
- package/dist/core/operators/switch-map.d.mts +1 -1
- package/dist/core/operators/switch-map.d.mts.map +1 -1
- package/dist/core/operators/take-until.d.mts +1 -1
- package/dist/core/operators/take-until.d.mts.map +1 -1
- package/dist/core/operators/take-while.d.mts +1 -1
- package/dist/core/operators/take-while.d.mts.map +1 -1
- package/dist/core/operators/throttle.d.mts +1 -1
- package/dist/core/operators/throttle.d.mts.map +1 -1
- package/dist/core/operators/with-buffered-from.d.mts +1 -1
- package/dist/core/operators/with-buffered-from.d.mts.map +1 -1
- package/dist/core/operators/with-current-value-from.d.mts +1 -1
- package/dist/core/operators/with-current-value-from.d.mts.map +1 -1
- package/dist/core/operators/with-initial-value.d.mts +1 -1
- package/dist/core/operators/with-initial-value.d.mts.map +1 -1
- package/dist/core/predefined/operators/attach-index.d.mts +2 -2
- package/dist/core/predefined/operators/attach-index.d.mts.map +1 -1
- package/dist/core/predefined/operators/map-optional.d.mts +1 -1
- package/dist/core/predefined/operators/map-optional.d.mts.map +1 -1
- package/dist/core/predefined/operators/map-result-err.d.mts +1 -1
- package/dist/core/predefined/operators/map-result-err.d.mts.map +1 -1
- package/dist/core/predefined/operators/map-result-ok.d.mts +1 -1
- package/dist/core/predefined/operators/map-result-ok.d.mts.map +1 -1
- package/dist/core/predefined/operators/map-to.d.mts +1 -1
- package/dist/core/predefined/operators/map-to.d.mts.map +1 -1
- package/dist/core/predefined/operators/pluck.d.mts +1 -1
- package/dist/core/predefined/operators/pluck.d.mts.map +1 -1
- package/dist/core/predefined/operators/skip.d.mts +2 -2
- package/dist/core/predefined/operators/skip.d.mts.map +1 -1
- package/dist/core/predefined/operators/take.d.mts +2 -2
- package/dist/core/predefined/operators/take.d.mts.map +1 -1
- package/dist/core/predefined/operators/unwrap-optional.d.mts +1 -1
- package/dist/core/predefined/operators/unwrap-optional.d.mts.map +1 -1
- package/dist/core/predefined/operators/unwrap-result-err.d.mts +1 -1
- package/dist/core/predefined/operators/unwrap-result-err.d.mts.map +1 -1
- package/dist/core/predefined/operators/unwrap-result-ok.d.mts +1 -1
- package/dist/core/predefined/operators/unwrap-result-ok.d.mts.map +1 -1
- package/dist/core/types/id.d.mts +1 -1
- package/dist/core/types/id.d.mts.map +1 -1
- package/dist/core/types/observable-family.d.mts +3 -3
- package/dist/core/types/observable-family.d.mts.map +1 -1
- package/dist/core/types/observable-kind.d.mts +1 -1
- package/dist/core/types/observable-kind.d.mts.map +1 -1
- package/dist/core/types/observable.d.mts +4 -4
- package/dist/core/types/observable.d.mts.map +1 -1
- package/dist/core/types/types.d.mts +1 -1
- package/dist/core/types/types.d.mts.map +1 -1
- package/dist/core/utils/id-maker.d.mts +1 -1
- package/dist/core/utils/id-maker.d.mts.map +1 -1
- package/dist/core/utils/max-depth.d.mts +1 -1
- package/dist/core/utils/max-depth.d.mts.map +1 -1
- package/dist/core/utils/observable-utils.d.mts +1 -1
- package/dist/core/utils/observable-utils.d.mts.map +1 -1
- package/dist/core/utils/utils.d.mts +1 -1
- package/dist/core/utils/utils.d.mts.map +1 -1
- package/dist/utils/collect-to-array.d.mts +1 -1
- package/dist/utils/collect-to-array.d.mts.map +1 -1
- package/dist/utils/create-boolean-state.d.mts +17 -14
- package/dist/utils/create-boolean-state.d.mts.map +1 -1
- package/dist/utils/create-boolean-state.mjs +4 -2
- package/dist/utils/create-boolean-state.mjs.map +1 -1
- package/dist/utils/create-reducer.d.mts +49 -2
- package/dist/utils/create-reducer.d.mts.map +1 -1
- package/dist/utils/create-reducer.mjs +31 -2
- package/dist/utils/create-reducer.mjs.map +1 -1
- package/dist/utils/create-state.d.mts +37 -2
- package/dist/utils/create-state.d.mts.map +1 -1
- package/dist/utils/create-state.mjs +36 -2
- package/dist/utils/create-state.mjs.map +1 -1
- package/package.json +11 -11
- package/src/core/base/create-child-observable.mts +1 -1
- package/src/core/base/create-observable-base.mts +131 -44
- package/src/core/base/create-root-observable.mts +1 -1
- package/src/core/base/observable-base.test.mts +7 -7
- package/src/core/combine/combine.mts +10 -10
- package/src/core/combine/merge.mts +8 -8
- package/src/core/combine/zip.mts +11 -11
- package/src/core/create/counter.mts +1 -1
- package/src/core/create/from-abortable-promise.mts +1 -1
- package/src/core/create/from-promise.mts +1 -1
- package/src/core/create/from-subscribable.mts +3 -3
- package/src/core/create/just.mts +1 -1
- package/src/core/create/source.mts +3 -3
- package/src/core/create/timer.mts +1 -1
- package/src/core/operators/audit.mts +5 -5
- package/src/core/operators/debounce.mts +5 -5
- package/src/core/operators/filter.mts +5 -5
- package/src/core/operators/map.mts +5 -5
- package/src/core/operators/merge-map.mts +5 -5
- package/src/core/operators/pairwise.mts +5 -5
- package/src/core/operators/scan.mts +4 -4
- package/src/core/operators/skip-if-no-change.mts +4 -4
- package/src/core/operators/skip-until.mts +4 -4
- package/src/core/operators/skip-while.mts +4 -4
- package/src/core/operators/switch-map.mts +5 -5
- package/src/core/operators/take-until.mts +4 -4
- package/src/core/operators/take-while.mts +5 -5
- package/src/core/operators/throttle.mts +5 -5
- package/src/core/operators/with-buffered-from.mts +4 -4
- package/src/core/operators/with-current-value-from.mts +4 -4
- package/src/core/operators/with-initial-value.mts +5 -5
- package/src/core/predefined/operators/attach-index.mts +2 -2
- package/src/core/predefined/operators/map-optional.mts +1 -1
- package/src/core/predefined/operators/map-result-err.mts +1 -1
- package/src/core/predefined/operators/map-result-ok.mts +1 -1
- package/src/core/predefined/operators/map-to.mts +1 -1
- package/src/core/predefined/operators/pluck.mts +1 -1
- package/src/core/predefined/operators/skip.mts +2 -2
- package/src/core/predefined/operators/take.mts +2 -2
- package/src/core/predefined/operators/unwrap-optional.mts +2 -2
- package/src/core/predefined/operators/unwrap-result-err.mts +2 -2
- package/src/core/predefined/operators/unwrap-result-ok.mts +2 -2
- package/src/core/types/id.mts +1 -1
- package/src/core/types/observable-family.mts +15 -15
- package/src/core/types/observable-kind.mts +1 -1
- package/src/core/types/observable.mts +4 -4
- package/src/core/types/types.mts +1 -1
- package/src/core/utils/id-maker.mts +4 -4
- package/src/core/utils/max-depth.mts +1 -1
- package/src/core/utils/observable-utils.mts +1 -1
- package/src/core/utils/utils.mts +1 -1
- package/src/utils/collect-to-array.mts +1 -1
- package/src/utils/create-boolean-state.mts +18 -14
- package/src/utils/create-boolean-state.test.mts +23 -0
- package/src/utils/create-reducer.mts +59 -2
- package/src/utils/create-reducer.test.mts +87 -0
- package/src/utils/create-state.mts +38 -2
- package/src/utils/create-state.test.mts +72 -0
package/README.md
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
- 🎯 **Simple State Management**: Easy-to-use `createState` and `createReducer` similar to React useState/useReducer for global state
|
|
25
25
|
- ⚡ **High Performance**: Optimized for fast state updates and minimal re-renders
|
|
26
26
|
- 🎨 **Type-Safe**: Full TypeScript support with precise type inference
|
|
27
|
-
- 🚀 **Lightweight**: <!-- bundle-size:synstate -->~4.
|
|
27
|
+
- 🚀 **Lightweight**: <!-- bundle-size:synstate -->~4.7 kB min+gzip<!-- /bundle-size:synstate --> with two external runtime dependencies ([ts-data-forge](https://www.npmjs.com/package/ts-data-forge) and [ts-std-forge](https://www.npmjs.com/package/ts-std-forge), and the first depends on the second)
|
|
28
28
|
- 🌐 **Framework Agnostic**: Works with React, Vue, Svelte, or vanilla JavaScript
|
|
29
29
|
- 🔄 **Reactive Updates**: Automatic propagation of state changes to all subscribers
|
|
30
30
|
- 📡 **Event System**: Built-in `createValueEmitter`, `createEventEmitter` for event-driven architecture
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Optional } from 'ts-data-forge';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import type { ReadonlyRecord } from 'ts-type-forge';
|
|
3
|
+
import type { ChildObservable, ObservableBase, ObservableId, ObservableKind, Subscription, UpdateToken } from '../types/index.mjs';
|
|
4
4
|
/**
|
|
5
5
|
* The mutable core shared by every observable, expressed as closures instead of
|
|
6
6
|
* a base class.
|
|
@@ -15,12 +15,42 @@ import { type ChildObservable, type ObservableBase, type ObservableId, type Obse
|
|
|
15
15
|
*/
|
|
16
16
|
export type ObservableBaseHandle<A> = Readonly<{
|
|
17
17
|
id: ObservableId;
|
|
18
|
+
/**
|
|
19
|
+
* Registers the public object {@link assembleObservable} built from this
|
|
20
|
+
* handle, so that its four state flags (`isCompleted`, `updateToken`,
|
|
21
|
+
* `hasSubscriber`, `hasChild`) can be mirrored onto it as plain data
|
|
22
|
+
* properties.
|
|
23
|
+
*
|
|
24
|
+
* They used to be getters delegating to this handle's closures, and that
|
|
25
|
+
* costs more than it looks. Reading one was an accessor call plus a closure
|
|
26
|
+
* call where a field read would do — `updateToken` is read once per child
|
|
27
|
+
* per update, so the propagation path paid it on every step — and an object
|
|
28
|
+
* literal carrying accessors is far more expensive to create than one
|
|
29
|
+
* carrying data, which is most of what building a graph costs. Measured on
|
|
30
|
+
* one machine with `pnpm run benchmark`: the derived chain's 100,000 updates
|
|
31
|
+
* 16.7 ms -> 13.6 ms, and the cascaded diamond at N=20, whose measurement is
|
|
32
|
+
* dominated by graph construction, 587 ms -> 362 ms.
|
|
33
|
+
*
|
|
34
|
+
* Every write below therefore has to keep the mirror in step; that is the
|
|
35
|
+
* price of not reading through a closure on the hot path. It is paid in
|
|
36
|
+
* clarity too, and on purpose: `hasSubscriber` and `hasChild` are derived
|
|
37
|
+
* from `mut_subscribers` and `mut_children`, which a getter stated once and
|
|
38
|
+
* declaratively, whereas the mirror restates it at every write.
|
|
39
|
+
*
|
|
40
|
+
* Nor can the rarely read flags alone go back to getters while `updateToken`
|
|
41
|
+
* stays data. A single accessor in the literal is enough to lose nearly all
|
|
42
|
+
* of the gain: measured on Node 26 with the `...extra` spread followed by
|
|
43
|
+
* these properties, one getter among data properties made the literal about
|
|
44
|
+
* 10x slower to create than all data (four getters: about 15x) and gave
|
|
45
|
+
* every instance its own hidden class (`%HaveSameMap` false). Keep all four
|
|
46
|
+
* as data, or measure again before changing that.
|
|
47
|
+
*/
|
|
48
|
+
attach: (writers: ObservableStateWriters) => void;
|
|
18
49
|
addChild: <B>(child: ChildObservable<B>) => void;
|
|
19
50
|
getSnapshot: () => Optional<A>;
|
|
20
51
|
isCompleted: () => boolean;
|
|
21
52
|
updateToken: () => UpdateToken;
|
|
22
53
|
hasSubscriber: () => boolean;
|
|
23
|
-
hasChild: () => boolean;
|
|
24
54
|
hasActiveChild: () => boolean;
|
|
25
55
|
subscribe: (onNext: (v: A) => void, onComplete?: () => void) => Subscription;
|
|
26
56
|
/** Stores `nextValue` as the current value and notifies subscribers. */
|
|
@@ -33,6 +63,19 @@ export type ObservableBaseHandle<A> = Readonly<{
|
|
|
33
63
|
*/
|
|
34
64
|
completeBase: () => void;
|
|
35
65
|
}>;
|
|
66
|
+
/**
|
|
67
|
+
* How the handle writes the four state flags onto the public object. The
|
|
68
|
+
* writers are closures over that object rather than the object itself, because
|
|
69
|
+
* a parameter this side could mutate has to be a mutable type, which
|
|
70
|
+
* `@typescript-eslint/prefer-readonly-parameter-types` rejects — and the object
|
|
71
|
+
* is `Readonly` to everyone else.
|
|
72
|
+
*/
|
|
73
|
+
type ObservableStateWriters = Readonly<{
|
|
74
|
+
setIsCompleted: (value: boolean) => void;
|
|
75
|
+
setUpdateToken: (value: UpdateToken) => void;
|
|
76
|
+
setHasSubscriber: (value: boolean) => void;
|
|
77
|
+
setHasChild: (value: boolean) => void;
|
|
78
|
+
}>;
|
|
36
79
|
export declare const createObservableBaseHandle: <A>(initialValue: Optional<A>) => ObservableBaseHandle<A>;
|
|
37
80
|
/**
|
|
38
81
|
* The extra members every manager observable — a root or an async child — owns:
|
|
@@ -63,17 +106,19 @@ type AssembleObservableArgs<A, Kind extends ObservableKind, Extra extends Readon
|
|
|
63
106
|
/**
|
|
64
107
|
* Kind-specific public members (`parents`, `addDescendant`) and leaf
|
|
65
108
|
* extensions (`next`, `start`). They are merged here, in the one place the
|
|
66
|
-
* final object literal is created, because the
|
|
67
|
-
*
|
|
109
|
+
* final object literal is created, because the handle keeps the state flags
|
|
110
|
+
* up to date on that object alone: a copy made by spreading it afterwards
|
|
111
|
+
* would freeze their current values.
|
|
68
112
|
*/
|
|
69
113
|
extra: Extra;
|
|
70
114
|
}>;
|
|
71
115
|
/**
|
|
72
116
|
* Builds the public observable object from a base handle. This replaces the
|
|
73
117
|
* implicit assembly a `class` performs: state stays in the handle's closures,
|
|
74
|
-
* `isCompleted` / `updateToken` / `hasSubscriber` / `hasChild` become
|
|
75
|
-
*
|
|
76
|
-
* `tryComplete`, `complete`) is passed in already
|
|
118
|
+
* `isCompleted` / `updateToken` / `hasSubscriber` / `hasChild` become data
|
|
119
|
+
* properties the handle keeps in step through `attach`, and the kind-specific
|
|
120
|
+
* behavior (`tryUpdate`, `tryComplete`, `complete`) is passed in already
|
|
121
|
+
* composed.
|
|
77
122
|
*/
|
|
78
123
|
export declare const assembleObservable: <A, Kind extends ObservableKind, Extra extends ReadonlyRecord<string, unknown>>({ kind, depth, handle, tryUpdate, tryComplete, complete, extra, }: AssembleObservableArgs<A, Kind, Extra>) => Extra & ObservableBase<A> & Readonly<{
|
|
79
124
|
kind: Kind;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-observable-base.d.mts","sourceRoot":"","sources":["../../../src/core/base/create-observable-base.mts"],"names":[],"mappings":"AAAA,OAAO,EAAO,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,
|
|
1
|
+
{"version":3,"file":"create-observable-base.d.mts","sourceRoot":"","sources":["../../../src/core/base/create-observable-base.mts"],"names":[],"mappings":"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"}
|
|
@@ -8,26 +8,43 @@ export const createObservableBaseHandle = (initialValue) => {
|
|
|
8
8
|
let mut_currentValue = initialValue;
|
|
9
9
|
let mut_isCompleted = false;
|
|
10
10
|
let mut_updateToken = issueUpdateToken();
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
let mut_writers;
|
|
18
|
+
const attach = (writers) => {
|
|
19
|
+
mut_writers = writers;
|
|
20
|
+
writers.setIsCompleted(mut_isCompleted);
|
|
21
|
+
writers.setUpdateToken(mut_updateToken);
|
|
22
|
+
writers.setHasSubscriber(mut_subscribers.size > 0);
|
|
23
|
+
writers.setHasChild(Arr.isNonEmpty(mut_children));
|
|
24
|
+
};
|
|
11
25
|
const addSubscriber = (s) => {
|
|
12
26
|
|
|
13
27
|
const subscriberId = issueSubscriberId();
|
|
14
28
|
mut_subscribers.set(subscriberId, s);
|
|
29
|
+
mut_writers?.setHasSubscriber(true);
|
|
15
30
|
return subscriberId;
|
|
16
31
|
};
|
|
17
32
|
const removeSubscriber = (subscriberId) => {
|
|
18
33
|
mut_subscribers.delete(subscriberId);
|
|
34
|
+
mut_writers?.setHasSubscriber(mut_subscribers.size > 0);
|
|
19
35
|
};
|
|
20
36
|
const addChild = (child) => {
|
|
21
37
|
mut_children = Arr.toPushed(mut_children, child);
|
|
38
|
+
mut_writers?.setHasChild(true);
|
|
22
39
|
};
|
|
23
40
|
const getSnapshot = () => mut_currentValue;
|
|
24
41
|
const isCompleted = () => mut_isCompleted;
|
|
25
42
|
const updateToken = () => mut_updateToken;
|
|
26
43
|
const hasSubscriber = () => mut_subscribers.size > 0;
|
|
27
|
-
const hasChild = () => Arr.isNonEmpty(mut_children);
|
|
28
44
|
const hasActiveChild = () => mut_children.some((c) => !c.isCompleted);
|
|
29
45
|
const setNext = (nextValue, nextUpdateToken) => {
|
|
30
46
|
mut_updateToken = nextUpdateToken;
|
|
47
|
+
mut_writers?.setUpdateToken(nextUpdateToken);
|
|
31
48
|
mut_currentValue = Optional.some(nextValue);
|
|
32
49
|
for (const s of mut_subscribers.values()) {
|
|
33
50
|
s.onNext(nextValue);
|
|
@@ -39,12 +56,14 @@ export const createObservableBaseHandle = (initialValue) => {
|
|
|
39
56
|
}
|
|
40
57
|
|
|
41
58
|
mut_isCompleted = true;
|
|
59
|
+
mut_writers?.setIsCompleted(true);
|
|
42
60
|
|
|
43
61
|
for (const s of mut_subscribers.values()) {
|
|
44
62
|
s.onComplete();
|
|
45
63
|
}
|
|
46
64
|
|
|
47
65
|
mut_subscribers.clear();
|
|
66
|
+
mut_writers?.setHasSubscriber(false);
|
|
48
67
|
|
|
49
68
|
for (const o of mut_children) {
|
|
50
69
|
o.tryComplete();
|
|
@@ -71,12 +90,12 @@ export const createObservableBaseHandle = (initialValue) => {
|
|
|
71
90
|
};
|
|
72
91
|
return {
|
|
73
92
|
id,
|
|
93
|
+
attach,
|
|
74
94
|
addChild,
|
|
75
95
|
getSnapshot,
|
|
76
96
|
isCompleted,
|
|
77
97
|
updateToken,
|
|
78
98
|
hasSubscriber,
|
|
79
|
-
hasChild,
|
|
80
99
|
hasActiveChild,
|
|
81
100
|
subscribe,
|
|
82
101
|
setNext,
|
|
@@ -128,32 +147,30 @@ const tryUpdateNotImplemented = (_updateToken) => {
|
|
|
128
147
|
|
|
129
148
|
|
|
130
149
|
|
|
150
|
+
|
|
131
151
|
export const assembleObservable = ({ kind, depth, handle, tryUpdate, tryComplete, complete, extra, }) => {
|
|
132
152
|
function pipe(operator) {
|
|
133
153
|
return operator(
|
|
134
154
|
|
|
135
155
|
|
|
136
|
-
|
|
156
|
+
mut_observable);
|
|
137
157
|
}
|
|
138
|
-
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
const mut_observable = {
|
|
139
164
|
...extra,
|
|
140
165
|
id: handle.id,
|
|
141
166
|
kind,
|
|
142
167
|
depth,
|
|
143
168
|
addChild: handle.addChild,
|
|
144
169
|
getSnapshot: handle.getSnapshot,
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
return handle.updateToken();
|
|
150
|
-
},
|
|
151
|
-
get hasSubscriber() {
|
|
152
|
-
return handle.hasSubscriber();
|
|
153
|
-
},
|
|
154
|
-
get hasChild() {
|
|
155
|
-
return handle.hasChild();
|
|
156
|
-
},
|
|
170
|
+
isCompleted: false,
|
|
171
|
+
updateToken: handle.updateToken(),
|
|
172
|
+
hasSubscriber: false,
|
|
173
|
+
hasChild: false,
|
|
157
174
|
hasActiveChild: handle.hasActiveChild,
|
|
158
175
|
tryUpdate,
|
|
159
176
|
tryComplete,
|
|
@@ -161,6 +178,20 @@ export const assembleObservable = ({ kind, depth, handle, tryUpdate, tryComplete
|
|
|
161
178
|
subscribe: handle.subscribe,
|
|
162
179
|
pipe,
|
|
163
180
|
};
|
|
164
|
-
|
|
181
|
+
handle.attach({
|
|
182
|
+
setIsCompleted: (value) => {
|
|
183
|
+
mut_observable.isCompleted = value;
|
|
184
|
+
},
|
|
185
|
+
setUpdateToken: (value) => {
|
|
186
|
+
mut_observable.updateToken = value;
|
|
187
|
+
},
|
|
188
|
+
setHasSubscriber: (value) => {
|
|
189
|
+
mut_observable.hasSubscriber = value;
|
|
190
|
+
},
|
|
191
|
+
setHasChild: (value) => {
|
|
192
|
+
mut_observable.hasChild = value;
|
|
193
|
+
},
|
|
194
|
+
});
|
|
195
|
+
return mut_observable;
|
|
165
196
|
};
|
|
166
197
|
//# sourceMappingURL=create-observable-base.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-observable-base.mjs","sourceRoot":"","sources":["../../../src/core/base/create-observable-base.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"create-observable-base.mjs","sourceRoot":"","sources":["../../../src/core/base/create-observable-base.mts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Optional } from 'ts-data-forge';
|
|
2
|
-
import {
|
|
2
|
+
import type { ReadonlyRecord } from 'ts-type-forge';
|
|
3
3
|
import { type RootObservable } from '../types/index.mjs';
|
|
4
4
|
/**
|
|
5
5
|
* The internal tools a root leaf factory (`source`, `timer`, `fromPromise`, …)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-root-observable.d.mts","sourceRoot":"","sources":["../../../src/core/base/create-root-observable.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"create-root-observable.d.mts","sourceRoot":"","sources":["../../../src/core/base/create-root-observable.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQ3E;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,QAAQ,CAAC;IAC5C,sEAAsE;IACtE,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,IAAI,CAAC;IAEpC,WAAW,EAAE,MAAM,OAAO,CAAC;IAE3B,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,QAAQ,CAAC;IAC7C,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE1B;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,GAC/B,CAAC,EAGD,SAAS,SAAS,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,cAAc,CAChE,KAAK,EACL,KAAK,CACN,gCAE6B,oBAAoB,CAAC,CAAC,CAAC,QAC/C,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,SAAS,KACjD,SAAS,GAAG,cAAc,CAAC,CAAC,CAmC9B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { NonEmptyTuple } from 'ts-type-forge';
|
|
2
|
+
import type { CombineObservableRefined, Observable } from '../types/index.mjs';
|
|
3
3
|
/**
|
|
4
4
|
* Combines multiple observables into a single observable that emits an array of their latest values.
|
|
5
5
|
* Emits whenever any of the source observables emit, but only after all sources have emitted at least once.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combine.d.mts","sourceRoot":"","sources":["../../../src/core/combine/combine.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"combine.d.mts","sourceRoot":"","sources":["../../../src/core/combine/combine.mts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAS,MAAM,eAAe,CAAC;AAI1D,OAAO,KAAK,EAEV,wBAAwB,EAIxB,UAAU,EAGX,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,eAAO,MAAM,OAAO,GAAI,KAAK,CAAC,EAAE,SAAS,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,WAChE,EAAE,KACV,wBAAwB,CAAC,EAAE,CAG+C,CAAC;AAE9E;;;GAGG;AACH,eAAO,MAAM,aAAa,gBAAU,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { NonEmptyTuple } from 'ts-type-forge';
|
|
2
|
+
import type { MergeObservableRefined, Observable } from '../types/index.mjs';
|
|
3
3
|
/**
|
|
4
4
|
* Merges multiple observables into a single observable that emits all values from all sources.
|
|
5
5
|
* Emits whenever any source observable emits a value.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge.d.mts","sourceRoot":"","sources":["../../../src/core/combine/merge.mts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"merge.d.mts","sourceRoot":"","sources":["../../../src/core/combine/merge.mts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,aAAa,EAAE,MAAM,eAAe,CAAC;AAGjE,OAAO,KAAK,EAEV,sBAAsB,EAEtB,UAAU,EAGX,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,EAAE,SAAS,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,WAC9D,EAAE,KACV,sBAAsB,CAAC,EAAE,CAGkC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { NonEmptyTuple } from 'ts-type-forge';
|
|
2
|
+
import type { Observable, ZipObservableRefined } from '../types/index.mjs';
|
|
3
3
|
/**
|
|
4
4
|
* Combines multiple observables by pairing their emissions by index.
|
|
5
5
|
* Waits for all sources to emit their nth value before emitting the nth tuple.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip.d.mts","sourceRoot":"","sources":["../../../src/core/combine/zip.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"zip.d.mts","sourceRoot":"","sources":["../../../src/core/combine/zip.mts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAS,MAAM,eAAe,CAAC;AAI1D,OAAO,KAAK,EAIV,UAAU,EAKV,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,eAAO,MAAM,GAAG,GAAI,KAAK,CAAC,EAAE,SAAS,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,WAC5D,EAAE,KACV,oBAAoB,CAAC,EAAE,CAG2C,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { CounterObservable } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Creates an observable that emits incremental numbers at a specified interval.
|
|
4
4
|
* Starts with 0 immediately after subscription, then emits 1, 2, 3, ... every interval.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"counter.d.mts","sourceRoot":"","sources":["../../../src/core/create/counter.mts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"counter.d.mts","sourceRoot":"","sources":["../../../src/core/create/counter.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAW,MAAM,oBAAoB,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,eAAO,MAAM,OAAO,yBACI,MAAM,YAClB,QAAQ,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC,KACD,iBA0DF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FromPromiseObservable } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Creates an observable from a Promise factory that receives an `AbortSignal`.
|
|
4
4
|
* When the observable is completed (e.g., by `switchMap` switching to a new
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"from-abortable-promise.d.mts","sourceRoot":"","sources":["../../../src/core/create/from-abortable-promise.mts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"from-abortable-promise.d.mts","sourceRoot":"","sources":["../../../src/core/create/from-abortable-promise.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,EAAE,CAAC,GAAG,OAAO,WAGxC,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,KAC3C,qBAAqB,CAAC,CAAC,EAAE,CAAC,CA+C5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"from-promise.d.mts","sourceRoot":"","sources":["../../../src/core/create/from-promise.mts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"from-promise.d.mts","sourceRoot":"","sources":["../../../src/core/create/from-promise.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,CAAC,GAAG,OAAO,WAC/B,OAAO,CAAC,CAAC,CAAC,KAClB,qBAAqB,CAAC,CAAC,EAAE,CAAC,CA+B1B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FromSubscribableObservable, Subscribable } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Converts any subscribable object into a SynState Observable.
|
|
4
4
|
* Works with objects that have a subscribe(onNext, onError, onComplete) method.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"from-subscribable.d.mts","sourceRoot":"","sources":["../../../src/core/create/from-subscribable.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"from-subscribable.d.mts","sourceRoot":"","sources":["../../../src/core/create/from-subscribable.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,0BAA0B,EAC1B,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAE,CAAC,GAAG,OAAO,gBAC/B,YAAY,CAAC,CAAC,CAAC,KAC5B,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAwB/B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { InitializedRootObservable } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Creates an Observable that holds a single static value and immediately
|
|
4
4
|
* completes. Useful inside `switchMap` to emit a fallback value when no
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"just.d.mts","sourceRoot":"","sources":["../../../src/core/create/just.mts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"just.d.mts","sourceRoot":"","sources":["../../../src/core/create/just.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,IAAI,GAAI,KAAK,CAAC,CAAC,SAAU,CAAC,KAAG,yBAAyB,CAAC,CAAC,CAWpE,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { InitializedSourceObservable, SourceObservable } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Creates a new Observable source that can manually emit values.
|
|
4
4
|
* This is the primary way to create root observables that start reactive chains.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.d.mts","sourceRoot":"","sources":["../../../src/core/create/source.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"source.d.mts","sourceRoot":"","sources":["../../../src/core/create/source.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,2BAA2B,EAC3B,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,MAAM,CAAC,KAAK,CAAC,CAAC,EAC5B,YAAY,EAAE,CAAC,GACd,2BAA2B,CAAC,CAAC,CAAC,CAAC;AAElC,wBAAgB,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timer.d.mts","sourceRoot":"","sources":["../../../src/core/create/timer.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"timer.d.mts","sourceRoot":"","sources":["../../../src/core/create/timer.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAW,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,KAAK,iBACF,MAAM,YACV,QAAQ,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC,KACD,eA2CF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { KeepInitialValueOperator } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Ignores source values for duration milliseconds, then emits the most recent value from the source Observable, then repeats this process.
|
|
4
4
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.d.mts","sourceRoot":"","sources":["../../../src/core/operators/audit.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"audit.d.mts","sourceRoot":"","sources":["../../../src/core/operators/audit.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6FG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,gBACP,MAAM,KACnB,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAOQ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { KeepInitialValueOperator } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Delays emissions from the source observable until a specified time has passed without another emission.
|
|
4
4
|
* Useful for handling user input events like typing or scrolling.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debounce.d.mts","sourceRoot":"","sources":["../../../src/core/operators/debounce.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"debounce.d.mts","sourceRoot":"","sources":["../../../src/core/operators/debounce.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoFG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,gBACV,MAAM,KACnB,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAOQ,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SafeUint } from 'ts-data-forge';
|
|
2
|
-
import {
|
|
2
|
+
import type { DropInitialValueOperator } from '../types/index.mjs';
|
|
3
3
|
/**
|
|
4
4
|
* Filters values emitted by the source observable based on a predicate function.
|
|
5
5
|
* Only values that satisfy the predicate will be emitted by the resulting observable.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.d.mts","sourceRoot":"","sources":["../../../src/core/operators/filter.mts"],"names":[],"mappings":"AAAA,OAAO,EAKL,QAAQ,EACT,MAAM,eAAe,CAAC;AAGvB,OAAO,
|
|
1
|
+
{"version":3,"file":"filter.d.mts","sourceRoot":"","sources":["../../../src/core/operators/filter.mts"],"names":[],"mappings":"AAAA,OAAO,EAKL,QAAQ,EACT,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EACV,wBAAwB,EAIzB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EACnC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,GACxD,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAElC,wBAAgB,MAAM,CAAC,CAAC,EACtB,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,OAAO,GACrD,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SafeUint } from 'ts-data-forge';
|
|
2
|
-
import {
|
|
2
|
+
import type { KeepInitialValueOperator } from '../types/index.mjs';
|
|
3
3
|
/**
|
|
4
4
|
* Transforms each value emitted by the source using a mapping function that also receives the emission index.
|
|
5
5
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.d.mts","sourceRoot":"","sources":["../../../src/core/operators/map.mts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAA0B,MAAM,eAAe,CAAC;AAG3E,OAAO,
|
|
1
|
+
{"version":3,"file":"map.d.mts","sourceRoot":"","sources":["../../../src/core/operators/map.mts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAA0B,MAAM,eAAe,CAAC;AAG3E,OAAO,KAAK,EAEV,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,CAAC,SACf,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,KACvC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAO7B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DropInitialValueOperator, Observable } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Projects each source value to an observable and merges all inner observables.
|
|
4
4
|
* Unlike `switchMap`, does not cancel previous inner observables.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-map.d.mts","sourceRoot":"","sources":["../../../src/core/operators/merge-map.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"merge-map.d.mts","sourceRoot":"","sources":["../../../src/core/operators/merge-map.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,wBAAwB,EAExB,UAAU,EAEX,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8FG;AACH,eAAO,MAAM,QAAQ,GAClB,CAAC,EAAE,CAAC,mBACc,CAAC,IAAI,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,KAC1C,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAE6B,CAAC;AAEhE;;;GAGG;AACH,eAAO,MAAM,OAAO,iBAAW,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { FixedLengthTuple } from 'ts-type-forge';
|
|
2
|
+
import type { DropInitialValueOperator } from '../types/index.mjs';
|
|
3
3
|
/**
|
|
4
4
|
* Emits the previous and current values as a pair.
|
|
5
5
|
* Does not emit until the source has emitted at least twice.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pairwise.d.mts","sourceRoot":"","sources":["../../../src/core/operators/pairwise.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"pairwise.d.mts","sourceRoot":"","sources":["../../../src/core/operators/pairwise.mts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EACV,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,OAAM,wBAAwB,CACtD,CAAC,EACD,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAClB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { WithInitialValueOperator } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Applies an accumulator function over the source observable and emits each intermediate result.
|
|
4
4
|
* Similar to Array.reduce but emits accumulated value after each source emission.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scan.d.mts","sourceRoot":"","sources":["../../../src/core/operators/scan.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"scan.d.mts","sourceRoot":"","sources":["../../../src/core/operators/scan.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAGV,wBAAwB,EACzB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,eAAO,MAAM,IAAI,GACd,CAAC,EAAE,CAAC,WACM,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,gBACjB,CAAC,KACd,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAE+B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { KeepInitialValueOperator } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Skips emissions if the value hasn't changed from the previous emission.
|
|
4
4
|
* Uses a custom equality function or Object.is by default.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skip-if-no-change.d.mts","sourceRoot":"","sources":["../../../src/core/operators/skip-if-no-change.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"skip-if-no-change.d.mts","sourceRoot":"","sources":["../../../src/core/operators/skip-if-no-change.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,OAC1B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,KAC1B,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAOQ,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,oBAAoB,uBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skip-until.d.mts","sourceRoot":"","sources":["../../../src/core/operators/skip-until.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"skip-until.d.mts","sourceRoot":"","sources":["../../../src/core/operators/skip-until.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,wBAAwB,EACxB,UAAU,EAEX,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,eAAO,MAAM,SAAS,GACnB,CAAC,YAAa,UAAU,CAAC,OAAO,CAAC,KAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAEX,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SafeUint } from 'ts-data-forge';
|
|
2
|
-
import {
|
|
2
|
+
import type { DropInitialValueOperator } from '../types/index.mjs';
|
|
3
3
|
/**
|
|
4
4
|
* Skips values from the source observable while the predicate returns true.
|
|
5
5
|
* Once the predicate returns false, all subsequent values pass through.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skip-while.d.mts","sourceRoot":"","sources":["../../../src/core/operators/skip-while.mts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAoB,MAAM,eAAe,CAAC;AAErE,OAAO,
|
|
1
|
+
{"version":3,"file":"skip-while.d.mts","sourceRoot":"","sources":["../../../src/core/operators/skip-while.mts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAoB,MAAM,eAAe,CAAC;AAErE,OAAO,KAAK,EACV,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,eAAO,MAAM,SAAS,GACnB,CAAC,aACW,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,OAAO,KACrD,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAEwB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DropInitialValueOperator, Observable } from '../types/index.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Projects each source value to an observable, subscribes to it, and emits its values.
|
|
4
4
|
* When a new value arrives from the source, the previous inner observable is unsubscribed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch-map.d.mts","sourceRoot":"","sources":["../../../src/core/operators/switch-map.mts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"switch-map.d.mts","sourceRoot":"","sources":["../../../src/core/operators/switch-map.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,wBAAwB,EACxB,UAAU,EAGX,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4FG;AACH,eAAO,MAAM,SAAS,GACnB,CAAC,EAAE,CAAC,mBACc,CAAC,IAAI,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,KAC1C,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAE8B,CAAC"}
|