@fluixi/reactive 1.0.0-alpha.83 → 1.0.0-alpha.84
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/reactive.cjs +2673 -1
- package/dist/cdn/reactive.global.js +2 -1
- package/dist/cdn/reactive.mjs +2657 -1
- package/dist/cdn/signal.cjs +299 -1
- package/dist/cdn/signal.d.ts +1 -1
- package/dist/cdn/signal.global.js +2 -1
- package/dist/cdn/signal.js +1 -1
- package/dist/cdn/signal.mjs +276 -1
- package/dist/index.cjs +2673 -1
- package/dist/index.mjs +2657 -1
- package/dist/lib/index.cjs +2674 -1
- package/dist/lib/index.js +1 -1
- package/dist/lib/index.mjs +2659 -1
- package/dist/lib/observable/index.cjs +386 -1
- package/dist/lib/observable/index.mjs +364 -1
- package/dist/lib/observable/observable.cjs +384 -1
- package/dist/lib/observable/observable.d.ts +0 -137
- package/dist/lib/observable/observable.d.ts.map +1 -1
- package/dist/lib/observable/observable.js +0 -71
- package/dist/lib/observable/observable.mjs +361 -1
- package/dist/lib/observable/subscription.cjs +180 -1
- package/dist/lib/observable/subscription.d.ts +0 -12
- package/dist/lib/observable/subscription.d.ts.map +1 -1
- package/dist/lib/observable/subscription.js +0 -12
- package/dist/lib/observable/subscription.mjs +157 -1
- package/dist/lib/observable/types.cjs +18 -1
- package/dist/lib/observable/types.d.ts.map +1 -1
- package/dist/lib/predicates.cjs +44 -1
- package/dist/lib/predicates.d.ts +2 -2
- package/dist/lib/predicates.js +2 -2
- package/dist/lib/predicates.mjs +23 -1
- package/dist/lib/signal/api.cjs +571 -1
- package/dist/lib/signal/api.d.ts +211 -1
- package/dist/lib/signal/api.d.ts.map +1 -1
- package/dist/lib/signal/api.js +207 -12
- package/dist/lib/signal/api.mjs +548 -1
- package/dist/lib/signal/cached-resource.cjs +672 -1
- package/dist/lib/signal/cached-resource.d.ts +28 -16
- package/dist/lib/signal/cached-resource.d.ts.map +1 -1
- package/dist/lib/signal/cached-resource.js +35 -29
- package/dist/lib/signal/cached-resource.mjs +650 -1
- package/dist/lib/signal/graph/children.cjs +325 -1
- package/dist/lib/signal/graph/children.js +1 -1
- package/dist/lib/signal/graph/children.mjs +302 -1
- package/dist/lib/signal/graph/compat.cjs +578 -1
- package/dist/lib/signal/graph/compat.d.ts +13 -13
- package/dist/lib/signal/graph/compat.d.ts.map +1 -1
- package/dist/lib/signal/graph/compat.js +33 -31
- package/dist/lib/signal/graph/compat.mjs +556 -1
- package/dist/lib/signal/graph/core.cjs +295 -1
- package/dist/lib/signal/graph/core.d.ts +28 -24
- package/dist/lib/signal/graph/core.d.ts.map +1 -1
- package/dist/lib/signal/graph/core.js +38 -31
- package/dist/lib/signal/graph/core.mjs +273 -1
- package/dist/lib/signal/graph/debounced.cjs +668 -1
- package/dist/lib/signal/graph/debounced.d.ts +5 -5
- package/dist/lib/signal/graph/debounced.d.ts.map +1 -1
- package/dist/lib/signal/graph/debounced.js +5 -5
- package/dist/lib/signal/graph/debounced.mjs +645 -1
- package/dist/lib/signal/graph/derived.cjs +496 -1
- package/dist/lib/signal/graph/derived.d.ts +1 -1
- package/dist/lib/signal/graph/derived.js +1 -1
- package/dist/lib/signal/graph/derived.mjs +473 -1
- package/dist/lib/signal/graph/detect.cjs +66 -1
- package/dist/lib/signal/graph/detect.mjs +45 -1
- package/dist/lib/signal/graph/error-boundary.cjs +301 -1
- package/dist/lib/signal/graph/error-boundary.js +3 -3
- package/dist/lib/signal/graph/error-boundary.mjs +278 -1
- package/dist/lib/signal/graph/index.cjs +305 -1
- package/dist/lib/signal/graph/index.d.ts +7 -6
- package/dist/lib/signal/graph/index.d.ts.map +1 -1
- package/dist/lib/signal/graph/index.js +7 -6
- package/dist/lib/signal/graph/index.mjs +283 -1
- package/dist/lib/signal/graph/observe.cjs +163 -1
- package/dist/lib/signal/graph/observe.d.ts +8 -8
- package/dist/lib/signal/graph/observe.js +5 -5
- package/dist/lib/signal/graph/observe.mjs +140 -1
- package/dist/lib/signal/graph/resource.cjs +620 -1
- package/dist/lib/signal/graph/resource.d.ts +1 -1
- package/dist/lib/signal/graph/resource.js +7 -8
- package/dist/lib/signal/graph/resource.mjs +597 -1
- package/dist/lib/signal/graph/runtime.cjs +501 -1
- package/dist/lib/signal/graph/runtime.d.ts +7 -7
- package/dist/lib/signal/graph/runtime.d.ts.map +1 -1
- package/dist/lib/signal/graph/runtime.js +34 -30
- package/dist/lib/signal/graph/runtime.mjs +478 -1
- package/dist/lib/signal/graph/signal-next.cjs +1208 -1
- package/dist/lib/signal/graph/signal-next.d.ts +5 -5
- package/dist/lib/signal/graph/signal-next.d.ts.map +1 -1
- package/dist/lib/signal/graph/signal-next.js +14 -12
- package/dist/lib/signal/graph/signal-next.mjs +1186 -1
- package/dist/lib/signal/graph/ssr-hooks.cjs +60 -1
- package/dist/lib/signal/graph/ssr-hooks.d.ts +6 -7
- package/dist/lib/signal/graph/ssr-hooks.d.ts.map +1 -1
- package/dist/lib/signal/graph/ssr-hooks.js +6 -7
- package/dist/lib/signal/graph/ssr-hooks.mjs +39 -1
- package/dist/lib/signal/graph/state.cjs +72 -1
- package/dist/lib/signal/graph/state.d.ts +41 -10
- package/dist/lib/signal/graph/state.d.ts.map +1 -1
- package/dist/lib/signal/graph/state.js +83 -22
- package/dist/lib/signal/graph/state.mjs +49 -1
- package/dist/lib/signal/graph/suspense.cjs +301 -1
- package/dist/lib/signal/graph/suspense.js +4 -4
- package/dist/lib/signal/graph/suspense.mjs +278 -1
- package/dist/lib/signal/index-legacy.cjs +2540 -1
- package/dist/lib/signal/index-legacy.d.ts +1 -1
- package/dist/lib/signal/index-legacy.js +1 -1
- package/dist/lib/signal/index-legacy.mjs +2518 -1
- package/dist/lib/signal/index.cjs +1275 -1
- package/dist/lib/signal/index.d.ts +3 -2
- package/dist/lib/signal/index.d.ts.map +1 -1
- package/dist/lib/signal/index.js +7 -4
- package/dist/lib/signal/index.mjs +1253 -1
- package/dist/lib/signal/list.cjs +549 -1
- package/dist/lib/signal/list.d.ts +5 -5
- package/dist/lib/signal/list.js +5 -5
- package/dist/lib/signal/list.mjs +526 -1
- package/dist/lib/signal/resource-api.cjs +626 -1
- package/dist/lib/signal/resource-api.d.ts +5 -5
- package/dist/lib/signal/resource-api.js +5 -5
- package/dist/lib/signal/resource-api.mjs +603 -1
- package/dist/lib/signal/signal.cjs +2023 -1
- package/dist/lib/signal/signal.d.ts +4 -4
- package/dist/lib/signal/signal.d.ts.map +1 -1
- package/dist/lib/signal/signal.js +22 -23
- package/dist/lib/signal/signal.mjs +2000 -1
- package/dist/lib/signal/types.cjs +38 -1
- package/dist/lib/signal/types.d.ts.map +1 -1
- package/dist/lib/signal/types.js +2 -2
- package/dist/lib/signal/types.mjs +17 -1
- package/dist/lib/signal/utilities.cjs +1012 -1
- package/dist/lib/signal/utilities.d.ts +0 -108
- package/dist/lib/signal/utilities.d.ts.map +1 -1
- package/dist/lib/signal/utilities.js +0 -158
- package/dist/lib/signal/utilities.mjs +990 -1
- package/dist/lib/store/api.cjs +612 -1
- package/dist/lib/store/api.d.ts +33 -0
- package/dist/lib/store/api.d.ts.map +1 -1
- package/dist/lib/store/api.js +41 -8
- package/dist/lib/store/api.mjs +596 -1
- package/dist/lib/store/index.cjs +691 -1
- package/dist/lib/store/index.js +1 -1
- package/dist/lib/store/index.mjs +676 -1
- package/dist/lib/store/setter.types.cjs +18 -1
- package/dist/lib/store/setter.types.d.ts +43 -3
- package/dist/lib/store/setter.types.d.ts.map +1 -1
- package/dist/lib/store/store.cjs +658 -1
- package/dist/lib/store/store.d.ts +72 -0
- package/dist/lib/store/store.d.ts.map +1 -1
- package/dist/lib/store/store.js +148 -5
- package/dist/lib/store/store.mjs +644 -1
- package/dist/lib/store/types.cjs +18 -1
- package/dist/lib/store/types.d.ts +1 -1
- package/dist/lib/store/types.d.ts.map +1 -1
- package/dist/lib/store/utils.cjs +43 -1
- package/dist/lib/store/utils.d.ts +1 -1
- package/dist/lib/store/utils.js +1 -1
- package/dist/lib/store/utils.mjs +22 -1
- package/dist/lib/subject.cjs +450 -1
- package/dist/lib/subject.js +3 -91
- package/dist/lib/subject.mjs +427 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/dist/version.generated.cjs +27 -1
- package/dist/version.generated.d.ts +1 -1
- package/dist/version.generated.js +2 -2
- package/dist/version.generated.mjs +7 -1
- package/package.json +5 -4
|
@@ -1 +1,384 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/lib/observable/observable.ts
|
|
21
|
+
var observable_exports = {};
|
|
22
|
+
__export(observable_exports, {
|
|
23
|
+
Observable: () => Observable,
|
|
24
|
+
SafeSubscriber: () => SafeSubscriber,
|
|
25
|
+
Subscriber: () => Subscriber,
|
|
26
|
+
operate: () => operate
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(observable_exports);
|
|
29
|
+
|
|
30
|
+
// src/lib/predicates.ts
|
|
31
|
+
function isFunction(value) {
|
|
32
|
+
return typeof value === "function" && !/^class\s/.test(Function.prototype.toString.call(value));
|
|
33
|
+
}
|
|
34
|
+
function isObject(value) {
|
|
35
|
+
if (value == null) return false;
|
|
36
|
+
if (Array.isArray(value)) return false;
|
|
37
|
+
if (typeof value === "function") return false;
|
|
38
|
+
if (value instanceof Date) return false;
|
|
39
|
+
if (value instanceof RegExp) return false;
|
|
40
|
+
if (value instanceof Map) return false;
|
|
41
|
+
if (value instanceof Set) return false;
|
|
42
|
+
if (value instanceof Error) return false;
|
|
43
|
+
return typeof value === "object";
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// src/lib/observable/subscription.ts
|
|
47
|
+
var Subscription = class _Subscription {
|
|
48
|
+
/**
|
|
49
|
+
* Creates a new Subscription.
|
|
50
|
+
*/
|
|
51
|
+
constructor(unsubscribe) {
|
|
52
|
+
/** @private */
|
|
53
|
+
this._closed = false;
|
|
54
|
+
/** @private */
|
|
55
|
+
this._parentOrParents = null;
|
|
56
|
+
/** @private */
|
|
57
|
+
this._subscriptions = null;
|
|
58
|
+
if (unsubscribe) {
|
|
59
|
+
this._subscriptions = [unsubscribe];
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Whether the subscription is closed.
|
|
64
|
+
*/
|
|
65
|
+
get closed() {
|
|
66
|
+
return this._closed;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Disposes the resources held by the subscription.
|
|
70
|
+
* May be called multiple times (idempotent).
|
|
71
|
+
*/
|
|
72
|
+
unsubscribe() {
|
|
73
|
+
if (this._closed) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
this._closed = true;
|
|
77
|
+
const { _parentOrParents, _subscriptions } = this;
|
|
78
|
+
if (_parentOrParents instanceof _Subscription) {
|
|
79
|
+
_parentOrParents.remove(this);
|
|
80
|
+
} else if (_parentOrParents !== null) {
|
|
81
|
+
for (const parent of _parentOrParents) {
|
|
82
|
+
parent.remove(this);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
if (_subscriptions) {
|
|
86
|
+
for (const sub of _subscriptions) {
|
|
87
|
+
if (isFunction(sub) && !(sub instanceof _Subscription)) {
|
|
88
|
+
try {
|
|
89
|
+
sub();
|
|
90
|
+
} catch (error) {
|
|
91
|
+
console.error("Error in unsubscribe function:", error);
|
|
92
|
+
}
|
|
93
|
+
} else if (isObject(sub) && typeof sub.unsubscribe === "function") {
|
|
94
|
+
try {
|
|
95
|
+
sub.unsubscribe();
|
|
96
|
+
} catch (error) {
|
|
97
|
+
console.error("Error unsubscribing child:", error);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
this._subscriptions = null;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Adds a child subscription or cleanup function to this subscription.
|
|
106
|
+
* When this subscription is unsubscribed, all added subscriptions/functions will be unsubscribed/called.
|
|
107
|
+
*
|
|
108
|
+
* @throws {TypeError} If the argument is not a subscription-like object or function
|
|
109
|
+
*/
|
|
110
|
+
add(subscription) {
|
|
111
|
+
if (!subscription || subscription === this) {
|
|
112
|
+
return this;
|
|
113
|
+
}
|
|
114
|
+
if (subscription.closed) {
|
|
115
|
+
return this;
|
|
116
|
+
}
|
|
117
|
+
let { _closed, _subscriptions } = this;
|
|
118
|
+
if (_closed) {
|
|
119
|
+
if (isFunction(subscription)) {
|
|
120
|
+
try {
|
|
121
|
+
subscription();
|
|
122
|
+
} catch (error) {
|
|
123
|
+
console.error("Error in unsubscribe function:", error);
|
|
124
|
+
}
|
|
125
|
+
} else if (subscription.unsubscribe) {
|
|
126
|
+
try {
|
|
127
|
+
subscription.unsubscribe();
|
|
128
|
+
} catch (error) {
|
|
129
|
+
console.error("Error unsubscribing:", error);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return this;
|
|
133
|
+
}
|
|
134
|
+
if (!_subscriptions) {
|
|
135
|
+
this._subscriptions = [];
|
|
136
|
+
}
|
|
137
|
+
this._subscriptions.push(subscription);
|
|
138
|
+
if (subscription instanceof _Subscription) {
|
|
139
|
+
subscription._addParent(this);
|
|
140
|
+
}
|
|
141
|
+
return this;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Removes a child subscription from this subscription.
|
|
145
|
+
*/
|
|
146
|
+
remove(subscription) {
|
|
147
|
+
const { _subscriptions } = this;
|
|
148
|
+
if (!_subscriptions) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
const index = _subscriptions.indexOf(subscription);
|
|
152
|
+
if (index !== -1) {
|
|
153
|
+
_subscriptions.splice(index, 1);
|
|
154
|
+
subscription._removeParent(this);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
/** @private */
|
|
158
|
+
_addParent(parent) {
|
|
159
|
+
const { _parentOrParents } = this;
|
|
160
|
+
if (!_parentOrParents) {
|
|
161
|
+
this._parentOrParents = parent;
|
|
162
|
+
} else if (Array.isArray(_parentOrParents)) {
|
|
163
|
+
_parentOrParents.push(parent);
|
|
164
|
+
} else {
|
|
165
|
+
this._parentOrParents = [_parentOrParents, parent];
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
/** @private */
|
|
169
|
+
_removeParent(parent) {
|
|
170
|
+
const { _parentOrParents } = this;
|
|
171
|
+
if (_parentOrParents === parent) {
|
|
172
|
+
this._parentOrParents = null;
|
|
173
|
+
} else if (Array.isArray(_parentOrParents)) {
|
|
174
|
+
const index = _parentOrParents.indexOf(parent);
|
|
175
|
+
if (index !== -1) {
|
|
176
|
+
_parentOrParents.splice(index, 1);
|
|
177
|
+
if (_parentOrParents.length === 1) {
|
|
178
|
+
this._parentOrParents = _parentOrParents[0];
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
// src/lib/observable/observable.ts
|
|
186
|
+
var Subscriber = class extends Subscription {
|
|
187
|
+
/**
|
|
188
|
+
* Creates a new Subscriber.
|
|
189
|
+
*/
|
|
190
|
+
constructor(destinationOrNext, error, complete) {
|
|
191
|
+
super();
|
|
192
|
+
/** @private */
|
|
193
|
+
this.isStopped = false;
|
|
194
|
+
let observer;
|
|
195
|
+
if (!destinationOrNext) {
|
|
196
|
+
observer = {};
|
|
197
|
+
} else if (typeof destinationOrNext === "object") {
|
|
198
|
+
observer = destinationOrNext;
|
|
199
|
+
} else {
|
|
200
|
+
observer = {
|
|
201
|
+
next: destinationOrNext,
|
|
202
|
+
error,
|
|
203
|
+
complete
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
this.destination = observer;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Sends the next value to the observer.
|
|
210
|
+
*/
|
|
211
|
+
next(value) {
|
|
212
|
+
if (!this.isStopped && this.destination.next) {
|
|
213
|
+
try {
|
|
214
|
+
this.destination.next(value);
|
|
215
|
+
} catch (error) {
|
|
216
|
+
this.error(error);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Sends an error notification to the observer.
|
|
222
|
+
*/
|
|
223
|
+
error(err) {
|
|
224
|
+
if (!this.isStopped) {
|
|
225
|
+
this.isStopped = true;
|
|
226
|
+
if (this.destination.error) {
|
|
227
|
+
try {
|
|
228
|
+
this.destination.error(err);
|
|
229
|
+
} catch (error) {
|
|
230
|
+
throw error;
|
|
231
|
+
}
|
|
232
|
+
} else {
|
|
233
|
+
throw err;
|
|
234
|
+
}
|
|
235
|
+
this.unsubscribe();
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Sends a complete notification to the observer.
|
|
240
|
+
*/
|
|
241
|
+
complete() {
|
|
242
|
+
if (!this.isStopped) {
|
|
243
|
+
this.isStopped = true;
|
|
244
|
+
if (this.destination.complete) {
|
|
245
|
+
try {
|
|
246
|
+
this.destination.complete();
|
|
247
|
+
} catch (error) {
|
|
248
|
+
this.error(error);
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
this.unsubscribe();
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Unsubscribes the subscriber.
|
|
257
|
+
*/
|
|
258
|
+
unsubscribe() {
|
|
259
|
+
if (this.closed) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
this.isStopped = true;
|
|
263
|
+
super.unsubscribe();
|
|
264
|
+
}
|
|
265
|
+
};
|
|
266
|
+
var SafeSubscriber = class extends Subscriber {
|
|
267
|
+
constructor(observerOrNext, error, complete, parentSubscriber) {
|
|
268
|
+
super(observerOrNext, error, complete);
|
|
269
|
+
/** @private */
|
|
270
|
+
this._isUnsubscribing = false;
|
|
271
|
+
/** @private */
|
|
272
|
+
this._parentSubscriber = null;
|
|
273
|
+
this._parentSubscriber = parentSubscriber || null;
|
|
274
|
+
}
|
|
275
|
+
next(value) {
|
|
276
|
+
if (!this.isStopped && !this._isUnsubscribing) {
|
|
277
|
+
try {
|
|
278
|
+
super.next(value);
|
|
279
|
+
} catch (error) {
|
|
280
|
+
this.error(error);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
error(err) {
|
|
285
|
+
if (!this.isStopped && !this._isUnsubscribing) {
|
|
286
|
+
this._isUnsubscribing = true;
|
|
287
|
+
try {
|
|
288
|
+
super.error(err);
|
|
289
|
+
} finally {
|
|
290
|
+
this._isUnsubscribing = false;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
complete() {
|
|
295
|
+
if (!this.isStopped && !this._isUnsubscribing) {
|
|
296
|
+
this._isUnsubscribing = true;
|
|
297
|
+
try {
|
|
298
|
+
super.complete();
|
|
299
|
+
} finally {
|
|
300
|
+
this._isUnsubscribing = false;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
unsubscribe() {
|
|
305
|
+
if (this.closed) {
|
|
306
|
+
return;
|
|
307
|
+
}
|
|
308
|
+
this._isUnsubscribing = true;
|
|
309
|
+
super.unsubscribe();
|
|
310
|
+
this._isUnsubscribing = false;
|
|
311
|
+
}
|
|
312
|
+
};
|
|
313
|
+
function operate(destination) {
|
|
314
|
+
return new Subscriber(destination.next, destination.error, destination.complete);
|
|
315
|
+
}
|
|
316
|
+
var Observable = class extends Subscription {
|
|
317
|
+
/**
|
|
318
|
+
* Creates a new Observable.
|
|
319
|
+
*/
|
|
320
|
+
constructor(subscribe) {
|
|
321
|
+
super();
|
|
322
|
+
if (subscribe) {
|
|
323
|
+
this._subscribe = subscribe;
|
|
324
|
+
} else {
|
|
325
|
+
throw new TypeError("Observable constructor requires a subscribe function");
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
subscribe(observerOrNext, error, complete) {
|
|
329
|
+
let subscriber;
|
|
330
|
+
if (observerOrNext instanceof Subscriber) {
|
|
331
|
+
subscriber = observerOrNext;
|
|
332
|
+
} else {
|
|
333
|
+
subscriber = new SafeSubscriber(observerOrNext, error, complete);
|
|
334
|
+
}
|
|
335
|
+
const { _subscribe } = this;
|
|
336
|
+
try {
|
|
337
|
+
const result = _subscribe.call(this, subscriber);
|
|
338
|
+
if (result) {
|
|
339
|
+
if (typeof result === "function") {
|
|
340
|
+
subscriber.add(result);
|
|
341
|
+
} else if (typeof result.unsubscribe === "function") {
|
|
342
|
+
subscriber.add(result);
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
} catch (err) {
|
|
346
|
+
subscriber.error(err);
|
|
347
|
+
}
|
|
348
|
+
return subscriber;
|
|
349
|
+
}
|
|
350
|
+
pipe(...operations) {
|
|
351
|
+
if (operations.length === 0) {
|
|
352
|
+
return this;
|
|
353
|
+
}
|
|
354
|
+
return operations.reduce(
|
|
355
|
+
(prev, fn) => fn(prev),
|
|
356
|
+
this
|
|
357
|
+
);
|
|
358
|
+
}
|
|
359
|
+
/**
|
|
360
|
+
* Converts the Observable to a Promise.
|
|
361
|
+
* The Promise resolves with the last emitted value when the Observable completes,
|
|
362
|
+
* or rejects if the Observable errors.
|
|
363
|
+
*
|
|
364
|
+
* @example
|
|
365
|
+
* // Convert Observable to Promise
|
|
366
|
+
* const value = await of(1, 2, 3).toPromise();
|
|
367
|
+
* console.log(value); // 3
|
|
368
|
+
*
|
|
369
|
+
* @example
|
|
370
|
+
* // Handle empty Observable
|
|
371
|
+
* const value = await EMPTY.toPromise();
|
|
372
|
+
* console.log(value); // undefined
|
|
373
|
+
*/
|
|
374
|
+
toPromise() {
|
|
375
|
+
return new Promise((resolve, reject) => {
|
|
376
|
+
let lastValue;
|
|
377
|
+
this.subscribe({
|
|
378
|
+
next: (value) => lastValue = value,
|
|
379
|
+
error: reject,
|
|
380
|
+
complete: () => resolve(lastValue)
|
|
381
|
+
});
|
|
382
|
+
});
|
|
383
|
+
}
|
|
384
|
+
};
|
|
@@ -1,13 +1,6 @@
|
|
|
1
1
|
import { Subscription } from "./subscription.js";
|
|
2
2
|
/**
|
|
3
3
|
* Represents an object that can observe values emitted by an Observable.
|
|
4
|
-
*
|
|
5
|
-
* @template T - The type of values being observed
|
|
6
|
-
* @interface Observer
|
|
7
|
-
*
|
|
8
|
-
* @property {function(value: T): void} [next] - Callback for next notifications
|
|
9
|
-
* @property {function(error: any): void} [error] - Callback for error notifications
|
|
10
|
-
* @property {function(): void} [complete] - Callback for complete notifications
|
|
11
4
|
*/
|
|
12
5
|
export interface Observer<T> {
|
|
13
6
|
next: (value: T) => void;
|
|
@@ -15,20 +8,9 @@ export interface Observer<T> {
|
|
|
15
8
|
complete: () => void;
|
|
16
9
|
closed?: boolean;
|
|
17
10
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Union type representing all possible inputs that can be converted to an Observable.
|
|
20
|
-
*
|
|
21
|
-
* @template T - The type of values emitted by the Observable
|
|
22
|
-
* @typedef {Observable<T>|PromiseLike<T>|ArrayLike<T>|Iterable<T>|(() => Iterator<T>)} ObservableInput
|
|
23
|
-
*/
|
|
24
11
|
/**
|
|
25
12
|
* Type representing any iterator that can be consumed by the `from` function.
|
|
26
13
|
* This includes both standard iterators and generator function results.
|
|
27
|
-
*
|
|
28
|
-
* @template T - The type of values yielded by the iterator
|
|
29
|
-
* @template TReturn - The type of value returned by the iterator (when done)
|
|
30
|
-
* @template TNext - The type of value that can be passed to next()
|
|
31
|
-
* @typedef {Iterator<T, TReturn, TNext> & { return?(value?: TReturn): IteratorResult<T, TReturn>; throw?(e?: any): IteratorResult<T, TReturn>; }} AnyIterator
|
|
32
14
|
*/
|
|
33
15
|
export type AnyIterator<T, TReturn = any, TNext = any> = Iterator<T, TReturn, TNext> & {
|
|
34
16
|
return?(value?: TReturn): IteratorResult<T, TReturn>;
|
|
@@ -36,16 +18,11 @@ export type AnyIterator<T, TReturn = any, TNext = any> = Iterator<T, TReturn, TN
|
|
|
36
18
|
};
|
|
37
19
|
/**
|
|
38
20
|
* Enhanced ObservableInput type that includes iterator factory functions.
|
|
39
|
-
*
|
|
40
|
-
* @template T - The type of values emitted by the Observable
|
|
41
|
-
* @typedef {Observable<T>|PromiseLike<T>|ArrayLike<T>|Iterable<T>|(() => AnyIterator<T>) | (() => Generator<T, any, any>)} ObservableInput
|
|
42
21
|
*/
|
|
43
22
|
export type ObservableInput<T> = Observable<T> | PromiseLike<T> | ArrayLike<T> | Iterable<T> | (() => AnyIterator<T>);
|
|
44
23
|
/**
|
|
45
24
|
* Extracts the value type from an ObservableInput.
|
|
46
25
|
*
|
|
47
|
-
* @template O - The ObservableInput type to extract from
|
|
48
|
-
*
|
|
49
26
|
* @example
|
|
50
27
|
* // Returns number
|
|
51
28
|
* type Num = ObservedValueOf<Promise<number>>;
|
|
@@ -53,36 +30,20 @@ export type ObservableInput<T> = Observable<T> | PromiseLike<T> | ArrayLike<T> |
|
|
|
53
30
|
export type ObservedValueOf<O> = O extends ObservableInput<infer T> ? T : never;
|
|
54
31
|
/**
|
|
55
32
|
* Type for operator functions that transform one Observable into another.
|
|
56
|
-
*
|
|
57
|
-
* @template T - The input value type
|
|
58
|
-
* @template R - The output value type
|
|
59
|
-
* @typedef {function(source: Observable<T>): Observable<R>} OperatorFunction
|
|
60
33
|
*/
|
|
61
34
|
export type OperatorFunction<T, R> = (source: Observable<T>) => Observable<R>;
|
|
62
35
|
/**
|
|
63
36
|
* Type for unary operator functions (operators that take one parameter).
|
|
64
|
-
*
|
|
65
|
-
* @template T - The input value type
|
|
66
|
-
* @template R - The output value type
|
|
67
|
-
* @template A - The type of the operator's parameter
|
|
68
|
-
* @typedef {function(arg: A): OperatorFunction<T, R>} UnaryOperatorFunction
|
|
69
37
|
*/
|
|
70
38
|
export type UnaryOperatorFunction<T, R, A> = (arg: A) => OperatorFunction<T, R>;
|
|
71
39
|
/**
|
|
72
40
|
* Type for binary operator functions (operators that take two parameters).
|
|
73
|
-
*
|
|
74
|
-
* @template T - The input value type
|
|
75
|
-
* @template R - The output value type
|
|
76
|
-
* @template A - The type of the first parameter
|
|
77
|
-
* @template B - The type of the second parameter
|
|
78
|
-
* @typedef {function(arg1: A, arg2: B): OperatorFunction<T, R>} BinaryOperatorFunction
|
|
79
41
|
*/
|
|
80
42
|
export type BinaryOperatorFunction<T, R, A, B> = (arg1: A, arg2: B) => OperatorFunction<T, R>;
|
|
81
43
|
/**
|
|
82
44
|
* A subscriber is both an Observer and a Subscription.
|
|
83
45
|
* This is the object that gets passed to the Observable's subscribe function.
|
|
84
46
|
*
|
|
85
|
-
* @template T - The type of values being observed
|
|
86
47
|
* @class Subscriber
|
|
87
48
|
* @extends {Subscription}
|
|
88
49
|
* @implements {Observer<T>}
|
|
@@ -92,44 +53,28 @@ export declare class Subscriber<T> extends Subscription implements Observer<T> {
|
|
|
92
53
|
/** @private */ protected destination: Partial<Observer<T>>;
|
|
93
54
|
/**
|
|
94
55
|
* Creates a new Subscriber.
|
|
95
|
-
*
|
|
96
|
-
* @param {Partial<Observer<T>>|((value: T) => void)} [destinationOrNext] -
|
|
97
|
-
* Either an observer object or a next handler function
|
|
98
|
-
* @param {(error: any) => void} [error] - Error handler (if first param is next function)
|
|
99
|
-
* @param {() => void} [complete] - Complete handler (if first param is next function)
|
|
100
56
|
*/
|
|
101
57
|
constructor(destinationOrNext?: Partial<Observer<T>> | ((value: T) => void), error?: (error: any) => void, complete?: () => void);
|
|
102
58
|
/**
|
|
103
59
|
* Sends the next value to the observer.
|
|
104
|
-
*
|
|
105
|
-
* @param {T} value - The value to send
|
|
106
|
-
* @returns {void}
|
|
107
60
|
*/
|
|
108
61
|
next(value: T): void;
|
|
109
62
|
/**
|
|
110
63
|
* Sends an error notification to the observer.
|
|
111
|
-
*
|
|
112
|
-
* @param {any} err - The error to send
|
|
113
|
-
* @returns {void}
|
|
114
64
|
*/
|
|
115
65
|
error(err: any): void;
|
|
116
66
|
/**
|
|
117
67
|
* Sends a complete notification to the observer.
|
|
118
|
-
*
|
|
119
|
-
* @returns {void}
|
|
120
68
|
*/
|
|
121
69
|
complete(): void;
|
|
122
70
|
/**
|
|
123
71
|
* Unsubscribes the subscriber.
|
|
124
|
-
*
|
|
125
|
-
* @returns {void}
|
|
126
72
|
*/
|
|
127
73
|
unsubscribe(): void;
|
|
128
74
|
}
|
|
129
75
|
/**
|
|
130
76
|
* SafeSubscriber adds extra safety checks to prevent reentrant calls.
|
|
131
77
|
*
|
|
132
|
-
* @template T - The type of values being observed
|
|
133
78
|
* @class SafeSubscriber
|
|
134
79
|
* @extends {Subscriber<T>}
|
|
135
80
|
*/
|
|
@@ -155,7 +100,6 @@ export declare function operate<T>(destination: Observer<T>): Subscriber<T>;
|
|
|
155
100
|
* A representation of any set of values over any amount of time.
|
|
156
101
|
* This is the most basic building block of RxJS.
|
|
157
102
|
*
|
|
158
|
-
* @template T - The type of values emitted by the Observable
|
|
159
103
|
* @class Observable
|
|
160
104
|
*
|
|
161
105
|
* @example
|
|
@@ -191,35 +135,20 @@ export declare class Observable<T> extends Subscription {
|
|
|
191
135
|
private _subscribe;
|
|
192
136
|
/**
|
|
193
137
|
* Creates a new Observable.
|
|
194
|
-
*
|
|
195
|
-
* @param {function(Subscriber<T>): (void | (() => void) | Subscription)} subscribe -
|
|
196
|
-
* The function that is called when the Observable is subscribed to
|
|
197
138
|
*/
|
|
198
139
|
constructor(subscribe: (subscriber: Subscriber<T>) => void | (() => void) | Subscription);
|
|
199
140
|
/**
|
|
200
141
|
* Invokes an execution of an Observable and registers Observer handlers for notifications it will emit.
|
|
201
142
|
*
|
|
202
143
|
* @overload
|
|
203
|
-
* @returns {Subscription} A subscription object
|
|
204
144
|
*
|
|
205
145
|
* @overload
|
|
206
|
-
* @param {function(value: T): void} next - A function to handle next notifications
|
|
207
|
-
* @returns {Subscription} A subscription object
|
|
208
146
|
*
|
|
209
147
|
* @overload
|
|
210
|
-
* @param {function(value: T): void} next - A function to handle next notifications
|
|
211
|
-
* @param {function(error: any): void} error - A function to handle error notifications
|
|
212
|
-
* @returns {Subscription} A subscription object
|
|
213
148
|
*
|
|
214
149
|
* @overload
|
|
215
|
-
* @param {function(value: T): void} next - A function to handle next notifications
|
|
216
|
-
* @param {function(error: any): void} error - A function to handle error notifications
|
|
217
|
-
* @param {function(): void} complete - A function to handle complete notifications
|
|
218
|
-
* @returns {Subscription} A subscription object
|
|
219
150
|
*
|
|
220
151
|
* @overload
|
|
221
|
-
* @param {Partial<Observer<T>>} observer - An observer object
|
|
222
|
-
* @returns {Subscription} A subscription object
|
|
223
152
|
*
|
|
224
153
|
* @example
|
|
225
154
|
* // Subscribe with separate handlers
|
|
@@ -250,88 +179,24 @@ export declare class Observable<T> extends Subscription {
|
|
|
250
179
|
* to the source Observable.
|
|
251
180
|
*
|
|
252
181
|
* @overload
|
|
253
|
-
* @returns {Observable<T>} The source Observable unchanged
|
|
254
182
|
*
|
|
255
183
|
* @overload
|
|
256
|
-
* @template A
|
|
257
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
258
|
-
* @returns {Observable<A>} Observable transformed by op1
|
|
259
184
|
*
|
|
260
185
|
* @overload
|
|
261
|
-
* @template A, B
|
|
262
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
263
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
264
|
-
* @returns {Observable<B>} Observable transformed by op1 and op2
|
|
265
186
|
*
|
|
266
187
|
* @overload
|
|
267
|
-
* @template A, B, C
|
|
268
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
269
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
270
|
-
* @param {OperatorFunction<B, C>} op3 - Third operator
|
|
271
|
-
* @returns {Observable<C>} Observable transformed by all operators
|
|
272
188
|
*
|
|
273
189
|
* @overload
|
|
274
|
-
* @template A, B, C, D
|
|
275
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
276
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
277
|
-
* @param {OperatorFunction<B, C>} op3 - Third operator
|
|
278
|
-
* @param {OperatorFunction<C, D>} op4 - Fourth operator
|
|
279
|
-
* @returns {Observable<D>} Observable transformed by all operators
|
|
280
190
|
*
|
|
281
191
|
* @overload
|
|
282
|
-
* @template A, B, C, D, E
|
|
283
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
284
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
285
|
-
* @param {OperatorFunction<B, C>} op3 - Third operator
|
|
286
|
-
* @param {OperatorFunction<C, D>} op4 - Fourth operator
|
|
287
|
-
* @param {OperatorFunction<D, E>} op5 - Fifth operator
|
|
288
|
-
* @returns {Observable<E>} Observable transformed by all operators
|
|
289
192
|
*
|
|
290
193
|
* @overload
|
|
291
|
-
* @template A, B, C, D, E, F
|
|
292
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
293
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
294
|
-
* @param {OperatorFunction<B, C>} op3 - Third operator
|
|
295
|
-
* @param {OperatorFunction<C, D>} op4 - Fourth operator
|
|
296
|
-
* @param {OperatorFunction<D, E>} op5 - Fifth operator
|
|
297
|
-
* @param {OperatorFunction<E, F>} op6 - Sixth operator
|
|
298
|
-
* @returns {Observable<F>} Observable transformed by all operators
|
|
299
194
|
*
|
|
300
195
|
* @overload
|
|
301
|
-
* @template A, B, C, D, E, F, G
|
|
302
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
303
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
304
|
-
* @param {OperatorFunction<B, C>} op3 - Third operator
|
|
305
|
-
* @param {OperatorFunction<C, D>} op4 - Fourth operator
|
|
306
|
-
* @param {OperatorFunction<D, E>} op5 - Fifth operator
|
|
307
|
-
* @param {OperatorFunction<E, F>} op6 - Sixth operator
|
|
308
|
-
* @param {OperatorFunction<F, G>} op7 - Seventh operator
|
|
309
|
-
* @returns {Observable<G>} Observable transformed by all operators
|
|
310
196
|
*
|
|
311
197
|
* @overload
|
|
312
|
-
* @template A, B, C, D, E, F, G, H
|
|
313
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
314
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
315
|
-
* @param {OperatorFunction<B, C>} op3 - Third operator
|
|
316
|
-
* @param {OperatorFunction<C, D>} op4 - Fourth operator
|
|
317
|
-
* @param {OperatorFunction<D, E>} op5 - Fifth operator
|
|
318
|
-
* @param {OperatorFunction<E, F>} op6 - Sixth operator
|
|
319
|
-
* @param {OperatorFunction<F, G>} op7 - Seventh operator
|
|
320
|
-
* @param {OperatorFunction<G, H>} op8 - Eighth operator
|
|
321
|
-
* @returns {Observable<H>} Observable transformed by all operators
|
|
322
198
|
*
|
|
323
199
|
* @overload
|
|
324
|
-
* @template A, B, C, D, E, F, G, H, I
|
|
325
|
-
* @param {OperatorFunction<T, A>} op1 - First operator
|
|
326
|
-
* @param {OperatorFunction<A, B>} op2 - Second operator
|
|
327
|
-
* @param {OperatorFunction<B, C>} op3 - Third operator
|
|
328
|
-
* @param {OperatorFunction<C, D>} op4 - Fourth operator
|
|
329
|
-
* @param {OperatorFunction<D, E>} op5 - Fifth operator
|
|
330
|
-
* @param {OperatorFunction<E, F>} op6 - Sixth operator
|
|
331
|
-
* @param {OperatorFunction<F, G>} op7 - Seventh operator
|
|
332
|
-
* @param {OperatorFunction<G, H>} op8 - Eighth operator
|
|
333
|
-
* @param {OperatorFunction<H, I>} op9 - Ninth operator
|
|
334
|
-
* @returns {Observable<I>} Observable transformed by all operators
|
|
335
200
|
*
|
|
336
201
|
* @example
|
|
337
202
|
* // Simple pipeline
|
|
@@ -366,8 +231,6 @@ export declare class Observable<T> extends Subscription {
|
|
|
366
231
|
* The Promise resolves with the last emitted value when the Observable completes,
|
|
367
232
|
* or rejects if the Observable errors.
|
|
368
233
|
*
|
|
369
|
-
* @returns {Promise<T | undefined>} A Promise that resolves with the last value
|
|
370
|
-
*
|
|
371
234
|
* @example
|
|
372
235
|
* // Convert Observable to Promise
|
|
373
236
|
* const value = await of(1, 2, 3).toPromise();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../../src/lib/observable/observable.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../../src/lib/observable/observable.ts"],"names":[],"mappings":"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"}
|