@signaltree/core 9.3.0 → 9.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Action.js +15 -0
- package/dist/AsyncAction.js +91 -0
- package/dist/AsyncScheduler.js +37 -0
- package/dist/ObjectUnsubscribedError.js +11 -0
- package/dist/Observable.js +103 -0
- package/dist/OperatorSubscriber.js +62 -0
- package/dist/Scheduler.js +17 -0
- package/dist/Subject.js +162 -0
- package/dist/Subscriber.js +153 -0
- package/dist/Subscription.js +144 -0
- package/dist/UnsubscriptionError.js +14 -0
- package/dist/args.js +10 -0
- package/dist/arrRemove.js +8 -0
- package/dist/async.js +6 -0
- package/dist/config.js +4 -0
- package/dist/createErrorClass.js +12 -0
- package/dist/dateTimestampProvider.js +6 -0
- package/dist/debounceTime.js +46 -0
- package/dist/distinctUntilChanged.js +25 -0
- package/dist/errorContext.js +7 -0
- package/dist/executeSchedule.js +19 -0
- package/dist/filter.js +11 -0
- package/dist/from.js +8 -0
- package/dist/identity.js +5 -0
- package/dist/index.js +2 -0
- package/dist/innerFrom.js +145 -0
- package/dist/intervalProvider.js +17 -0
- package/dist/isArrayLike.js +3 -0
- package/dist/isAsyncIterable.js +7 -0
- package/dist/isFunction.js +5 -0
- package/dist/isInteropObservable.js +8 -0
- package/dist/isIterable.js +8 -0
- package/dist/isObservable.js +8 -0
- package/dist/isPromise.js +7 -0
- package/dist/isReadableStreamLike.js +40 -0
- package/dist/isScheduler.js +7 -0
- package/dist/iterator.js +9 -0
- package/dist/lib/markers/async-query.js +134 -0
- package/dist/lib/markers/async-source.js +122 -0
- package/dist/lib/rxjs-interop/rx-method.js +50 -0
- package/dist/lift.js +22 -0
- package/dist/noop.js +3 -0
- package/dist/observable2.js +3 -0
- package/dist/observeOn.js +12 -0
- package/dist/of.js +13 -0
- package/dist/pipe.js +15 -0
- package/dist/reportUnhandledError.js +11 -0
- package/dist/rxjs-interop.js +1 -0
- package/dist/scheduleArray.js +20 -0
- package/dist/scheduleAsyncIterable.js +25 -0
- package/dist/scheduleIterable.js +34 -0
- package/dist/scheduleObservable.js +9 -0
- package/dist/schedulePromise.js +9 -0
- package/dist/scheduleReadableStreamLike.js +8 -0
- package/dist/scheduled.js +39 -0
- package/dist/subscribeOn.js +10 -0
- package/dist/switchMap.js +26 -0
- package/dist/tap.js +42 -0
- package/dist/throwUnobservableError.js +5 -0
- package/dist/timeoutProvider.js +17 -0
- package/package.json +6 -1
- package/src/index.d.ts +2 -0
- package/src/lib/markers/async-query.d.ts +31 -0
- package/src/lib/markers/async-source.d.ts +27 -0
- package/src/lib/markers/index.d.ts +2 -0
- package/src/lib/rxjs-interop/index.d.ts +1 -0
- package/src/lib/rxjs-interop/rx-method.d.ts +11 -0
- package/src/rxjs-interop.d.ts +1 -0
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { __values, __spreadArray, __read } from 'tslib';
|
|
2
|
+
import { isFunction } from './isFunction.js';
|
|
3
|
+
import { UnsubscriptionError } from './UnsubscriptionError.js';
|
|
4
|
+
import { arrRemove } from './arrRemove.js';
|
|
5
|
+
|
|
6
|
+
var Subscription = (function () {
|
|
7
|
+
function Subscription(initialTeardown) {
|
|
8
|
+
this.initialTeardown = initialTeardown;
|
|
9
|
+
this.closed = false;
|
|
10
|
+
this._parentage = null;
|
|
11
|
+
this._finalizers = null;
|
|
12
|
+
}
|
|
13
|
+
Subscription.prototype.unsubscribe = function () {
|
|
14
|
+
var e_1, _a, e_2, _b;
|
|
15
|
+
var errors;
|
|
16
|
+
if (!this.closed) {
|
|
17
|
+
this.closed = true;
|
|
18
|
+
var _parentage = this._parentage;
|
|
19
|
+
if (_parentage) {
|
|
20
|
+
this._parentage = null;
|
|
21
|
+
if (Array.isArray(_parentage)) {
|
|
22
|
+
try {
|
|
23
|
+
for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) {
|
|
24
|
+
var parent_1 = _parentage_1_1.value;
|
|
25
|
+
parent_1.remove(this);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
29
|
+
finally {
|
|
30
|
+
try {
|
|
31
|
+
if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);
|
|
32
|
+
}
|
|
33
|
+
finally { if (e_1) throw e_1.error; }
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
_parentage.remove(this);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
var initialFinalizer = this.initialTeardown;
|
|
41
|
+
if (isFunction(initialFinalizer)) {
|
|
42
|
+
try {
|
|
43
|
+
initialFinalizer();
|
|
44
|
+
}
|
|
45
|
+
catch (e) {
|
|
46
|
+
errors = e instanceof UnsubscriptionError ? e.errors : [e];
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
var _finalizers = this._finalizers;
|
|
50
|
+
if (_finalizers) {
|
|
51
|
+
this._finalizers = null;
|
|
52
|
+
try {
|
|
53
|
+
for (var _finalizers_1 = __values(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) {
|
|
54
|
+
var finalizer = _finalizers_1_1.value;
|
|
55
|
+
try {
|
|
56
|
+
execFinalizer(finalizer);
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
errors = errors !== null && errors !== void 0 ? errors : [];
|
|
60
|
+
if (err instanceof UnsubscriptionError) {
|
|
61
|
+
errors = __spreadArray(__spreadArray([], __read(errors)), __read(err.errors));
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
errors.push(err);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
70
|
+
finally {
|
|
71
|
+
try {
|
|
72
|
+
if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1);
|
|
73
|
+
}
|
|
74
|
+
finally { if (e_2) throw e_2.error; }
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
if (errors) {
|
|
78
|
+
throw new UnsubscriptionError(errors);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
Subscription.prototype.add = function (teardown) {
|
|
83
|
+
var _a;
|
|
84
|
+
if (teardown && teardown !== this) {
|
|
85
|
+
if (this.closed) {
|
|
86
|
+
execFinalizer(teardown);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
if (teardown instanceof Subscription) {
|
|
90
|
+
if (teardown.closed || teardown._hasParent(this)) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
teardown._addParent(this);
|
|
94
|
+
}
|
|
95
|
+
(this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
Subscription.prototype._hasParent = function (parent) {
|
|
100
|
+
var _parentage = this._parentage;
|
|
101
|
+
return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));
|
|
102
|
+
};
|
|
103
|
+
Subscription.prototype._addParent = function (parent) {
|
|
104
|
+
var _parentage = this._parentage;
|
|
105
|
+
this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;
|
|
106
|
+
};
|
|
107
|
+
Subscription.prototype._removeParent = function (parent) {
|
|
108
|
+
var _parentage = this._parentage;
|
|
109
|
+
if (_parentage === parent) {
|
|
110
|
+
this._parentage = null;
|
|
111
|
+
}
|
|
112
|
+
else if (Array.isArray(_parentage)) {
|
|
113
|
+
arrRemove(_parentage, parent);
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
Subscription.prototype.remove = function (teardown) {
|
|
117
|
+
var _finalizers = this._finalizers;
|
|
118
|
+
_finalizers && arrRemove(_finalizers, teardown);
|
|
119
|
+
if (teardown instanceof Subscription) {
|
|
120
|
+
teardown._removeParent(this);
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
Subscription.EMPTY = (function () {
|
|
124
|
+
var empty = new Subscription();
|
|
125
|
+
empty.closed = true;
|
|
126
|
+
return empty;
|
|
127
|
+
})();
|
|
128
|
+
return Subscription;
|
|
129
|
+
}());
|
|
130
|
+
var EMPTY_SUBSCRIPTION = Subscription.EMPTY;
|
|
131
|
+
function isSubscription(value) {
|
|
132
|
+
return (value instanceof Subscription ||
|
|
133
|
+
(value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe)));
|
|
134
|
+
}
|
|
135
|
+
function execFinalizer(finalizer) {
|
|
136
|
+
if (isFunction(finalizer)) {
|
|
137
|
+
finalizer();
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
finalizer.unsubscribe();
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
export { EMPTY_SUBSCRIPTION, Subscription, isSubscription };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createErrorClass } from './createErrorClass.js';
|
|
2
|
+
|
|
3
|
+
var UnsubscriptionError = createErrorClass(function (_super) {
|
|
4
|
+
return function UnsubscriptionErrorImpl(errors) {
|
|
5
|
+
_super(this);
|
|
6
|
+
this.message = errors
|
|
7
|
+
? errors.length + " errors occurred during unsubscription:\n" + errors.map(function (err, i) { return i + 1 + ") " + err.toString(); }).join('\n ')
|
|
8
|
+
: '';
|
|
9
|
+
this.name = 'UnsubscriptionError';
|
|
10
|
+
this.errors = errors;
|
|
11
|
+
};
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export { UnsubscriptionError };
|
package/dist/args.js
ADDED
package/dist/async.js
ADDED
package/dist/config.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
function createErrorClass(createImpl) {
|
|
2
|
+
var _super = function (instance) {
|
|
3
|
+
Error.call(instance);
|
|
4
|
+
instance.stack = new Error().stack;
|
|
5
|
+
};
|
|
6
|
+
var ctorFunc = createImpl(_super);
|
|
7
|
+
ctorFunc.prototype = Object.create(Error.prototype);
|
|
8
|
+
ctorFunc.prototype.constructor = ctorFunc;
|
|
9
|
+
return ctorFunc;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { createErrorClass };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { asyncScheduler } from './async.js';
|
|
2
|
+
import { operate } from './lift.js';
|
|
3
|
+
import { createOperatorSubscriber } from './OperatorSubscriber.js';
|
|
4
|
+
|
|
5
|
+
function debounceTime(dueTime, scheduler) {
|
|
6
|
+
if (scheduler === void 0) { scheduler = asyncScheduler; }
|
|
7
|
+
return operate(function (source, subscriber) {
|
|
8
|
+
var activeTask = null;
|
|
9
|
+
var lastValue = null;
|
|
10
|
+
var lastTime = null;
|
|
11
|
+
var emit = function () {
|
|
12
|
+
if (activeTask) {
|
|
13
|
+
activeTask.unsubscribe();
|
|
14
|
+
activeTask = null;
|
|
15
|
+
var value = lastValue;
|
|
16
|
+
lastValue = null;
|
|
17
|
+
subscriber.next(value);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
function emitWhenIdle() {
|
|
21
|
+
var targetTime = lastTime + dueTime;
|
|
22
|
+
var now = scheduler.now();
|
|
23
|
+
if (now < targetTime) {
|
|
24
|
+
activeTask = this.schedule(undefined, targetTime - now);
|
|
25
|
+
subscriber.add(activeTask);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
emit();
|
|
29
|
+
}
|
|
30
|
+
source.subscribe(createOperatorSubscriber(subscriber, function (value) {
|
|
31
|
+
lastValue = value;
|
|
32
|
+
lastTime = scheduler.now();
|
|
33
|
+
if (!activeTask) {
|
|
34
|
+
activeTask = scheduler.schedule(emitWhenIdle, dueTime);
|
|
35
|
+
subscriber.add(activeTask);
|
|
36
|
+
}
|
|
37
|
+
}, function () {
|
|
38
|
+
emit();
|
|
39
|
+
subscriber.complete();
|
|
40
|
+
}, undefined, function () {
|
|
41
|
+
lastValue = activeTask = null;
|
|
42
|
+
}));
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export { debounceTime };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { identity } from './identity.js';
|
|
2
|
+
import { operate } from './lift.js';
|
|
3
|
+
import { createOperatorSubscriber } from './OperatorSubscriber.js';
|
|
4
|
+
|
|
5
|
+
function distinctUntilChanged(comparator, keySelector) {
|
|
6
|
+
if (keySelector === void 0) { keySelector = identity; }
|
|
7
|
+
comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare;
|
|
8
|
+
return operate(function (source, subscriber) {
|
|
9
|
+
var previousKey;
|
|
10
|
+
var first = true;
|
|
11
|
+
source.subscribe(createOperatorSubscriber(subscriber, function (value) {
|
|
12
|
+
var currentKey = keySelector(value);
|
|
13
|
+
if (first || !comparator(previousKey, currentKey)) {
|
|
14
|
+
first = false;
|
|
15
|
+
previousKey = currentKey;
|
|
16
|
+
subscriber.next(value);
|
|
17
|
+
}
|
|
18
|
+
}));
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
function defaultCompare(a, b) {
|
|
22
|
+
return a === b;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { distinctUntilChanged };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
function executeSchedule(parentSubscription, scheduler, work, delay, repeat) {
|
|
2
|
+
if (delay === void 0) { delay = 0; }
|
|
3
|
+
if (repeat === void 0) { repeat = false; }
|
|
4
|
+
var scheduleSubscription = scheduler.schedule(function () {
|
|
5
|
+
work();
|
|
6
|
+
if (repeat) {
|
|
7
|
+
parentSubscription.add(this.schedule(null, delay));
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
this.unsubscribe();
|
|
11
|
+
}
|
|
12
|
+
}, delay);
|
|
13
|
+
parentSubscription.add(scheduleSubscription);
|
|
14
|
+
if (!repeat) {
|
|
15
|
+
return scheduleSubscription;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { executeSchedule };
|
package/dist/filter.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { operate } from './lift.js';
|
|
2
|
+
import { createOperatorSubscriber } from './OperatorSubscriber.js';
|
|
3
|
+
|
|
4
|
+
function filter(predicate, thisArg) {
|
|
5
|
+
return operate(function (source, subscriber) {
|
|
6
|
+
var index = 0;
|
|
7
|
+
source.subscribe(createOperatorSubscriber(subscriber, function (value) { return predicate.call(thisArg, value, index++) && subscriber.next(value); }));
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { filter };
|
package/dist/from.js
ADDED
package/dist/identity.js
ADDED
package/dist/index.js
CHANGED
|
@@ -7,6 +7,8 @@ export { isDerivedMarker } from './lib/markers/derived.js';
|
|
|
7
7
|
export { LoadingState, isStatusMarker, status } from './lib/markers/status.js';
|
|
8
8
|
export { clearStoragePrefix, createStorageKeys, isStoredMarker, stored } from './lib/markers/stored.js';
|
|
9
9
|
export { FORM_MARKER, createFormSignal, form, isFormMarker, validators } from './lib/markers/form.js';
|
|
10
|
+
export { ASYNC_SOURCE_MARKER, asyncSource, createAsyncSourceSignal, isAsyncSourceMarker } from './lib/markers/async-source.js';
|
|
11
|
+
export { ASYNC_QUERY_MARKER, asyncQuery, createAsyncQuerySignal, isAsyncQueryMarker } from './lib/markers/async-query.js';
|
|
10
12
|
export { registerMarkerProcessor } from './lib/internals/materialize-markers.js';
|
|
11
13
|
export { composeEnhancers, isAnySignal, isNodeAccessor, toWritableSignal } from './lib/utils.js';
|
|
12
14
|
export { getPathNotifier } from './lib/path-notifier.js';
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { __values, __awaiter, __generator, __asyncValues } from 'tslib';
|
|
2
|
+
import { isArrayLike } from './isArrayLike.js';
|
|
3
|
+
import { isPromise } from './isPromise.js';
|
|
4
|
+
import { Observable } from './Observable.js';
|
|
5
|
+
import { isInteropObservable } from './isInteropObservable.js';
|
|
6
|
+
import { isAsyncIterable } from './isAsyncIterable.js';
|
|
7
|
+
import { createInvalidObservableTypeError } from './throwUnobservableError.js';
|
|
8
|
+
import { isIterable } from './isIterable.js';
|
|
9
|
+
import { isReadableStreamLike, readableStreamLikeToAsyncGenerator } from './isReadableStreamLike.js';
|
|
10
|
+
import { isFunction } from './isFunction.js';
|
|
11
|
+
import { reportUnhandledError } from './reportUnhandledError.js';
|
|
12
|
+
import { observable } from './observable2.js';
|
|
13
|
+
|
|
14
|
+
function innerFrom(input) {
|
|
15
|
+
if (input instanceof Observable) {
|
|
16
|
+
return input;
|
|
17
|
+
}
|
|
18
|
+
if (input != null) {
|
|
19
|
+
if (isInteropObservable(input)) {
|
|
20
|
+
return fromInteropObservable(input);
|
|
21
|
+
}
|
|
22
|
+
if (isArrayLike(input)) {
|
|
23
|
+
return fromArrayLike(input);
|
|
24
|
+
}
|
|
25
|
+
if (isPromise(input)) {
|
|
26
|
+
return fromPromise(input);
|
|
27
|
+
}
|
|
28
|
+
if (isAsyncIterable(input)) {
|
|
29
|
+
return fromAsyncIterable(input);
|
|
30
|
+
}
|
|
31
|
+
if (isIterable(input)) {
|
|
32
|
+
return fromIterable(input);
|
|
33
|
+
}
|
|
34
|
+
if (isReadableStreamLike(input)) {
|
|
35
|
+
return fromReadableStreamLike(input);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
throw createInvalidObservableTypeError(input);
|
|
39
|
+
}
|
|
40
|
+
function fromInteropObservable(obj) {
|
|
41
|
+
return new Observable(function (subscriber) {
|
|
42
|
+
var obs = obj[observable]();
|
|
43
|
+
if (isFunction(obs.subscribe)) {
|
|
44
|
+
return obs.subscribe(subscriber);
|
|
45
|
+
}
|
|
46
|
+
throw new TypeError('Provided object does not correctly implement Symbol.observable');
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function fromArrayLike(array) {
|
|
50
|
+
return new Observable(function (subscriber) {
|
|
51
|
+
for (var i = 0; i < array.length && !subscriber.closed; i++) {
|
|
52
|
+
subscriber.next(array[i]);
|
|
53
|
+
}
|
|
54
|
+
subscriber.complete();
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
function fromPromise(promise) {
|
|
58
|
+
return new Observable(function (subscriber) {
|
|
59
|
+
promise
|
|
60
|
+
.then(function (value) {
|
|
61
|
+
if (!subscriber.closed) {
|
|
62
|
+
subscriber.next(value);
|
|
63
|
+
subscriber.complete();
|
|
64
|
+
}
|
|
65
|
+
}, function (err) { return subscriber.error(err); })
|
|
66
|
+
.then(null, reportUnhandledError);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
function fromIterable(iterable) {
|
|
70
|
+
return new Observable(function (subscriber) {
|
|
71
|
+
var e_1, _a;
|
|
72
|
+
try {
|
|
73
|
+
for (var iterable_1 = __values(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) {
|
|
74
|
+
var value = iterable_1_1.value;
|
|
75
|
+
subscriber.next(value);
|
|
76
|
+
if (subscriber.closed) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
82
|
+
finally {
|
|
83
|
+
try {
|
|
84
|
+
if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) _a.call(iterable_1);
|
|
85
|
+
}
|
|
86
|
+
finally { if (e_1) throw e_1.error; }
|
|
87
|
+
}
|
|
88
|
+
subscriber.complete();
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function fromAsyncIterable(asyncIterable) {
|
|
92
|
+
return new Observable(function (subscriber) {
|
|
93
|
+
process(asyncIterable, subscriber).catch(function (err) { return subscriber.error(err); });
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
function fromReadableStreamLike(readableStream) {
|
|
97
|
+
return fromAsyncIterable(readableStreamLikeToAsyncGenerator(readableStream));
|
|
98
|
+
}
|
|
99
|
+
function process(asyncIterable, subscriber) {
|
|
100
|
+
var asyncIterable_1, asyncIterable_1_1;
|
|
101
|
+
var e_2, _a;
|
|
102
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
103
|
+
var value, e_2_1;
|
|
104
|
+
return __generator(this, function (_b) {
|
|
105
|
+
switch (_b.label) {
|
|
106
|
+
case 0:
|
|
107
|
+
_b.trys.push([0, 5, 6, 11]);
|
|
108
|
+
asyncIterable_1 = __asyncValues(asyncIterable);
|
|
109
|
+
_b.label = 1;
|
|
110
|
+
case 1: return [4, asyncIterable_1.next()];
|
|
111
|
+
case 2:
|
|
112
|
+
if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [3, 4];
|
|
113
|
+
value = asyncIterable_1_1.value;
|
|
114
|
+
subscriber.next(value);
|
|
115
|
+
if (subscriber.closed) {
|
|
116
|
+
return [2];
|
|
117
|
+
}
|
|
118
|
+
_b.label = 3;
|
|
119
|
+
case 3: return [3, 1];
|
|
120
|
+
case 4: return [3, 11];
|
|
121
|
+
case 5:
|
|
122
|
+
e_2_1 = _b.sent();
|
|
123
|
+
e_2 = { error: e_2_1 };
|
|
124
|
+
return [3, 11];
|
|
125
|
+
case 6:
|
|
126
|
+
_b.trys.push([6, , 9, 10]);
|
|
127
|
+
if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [3, 8];
|
|
128
|
+
return [4, _a.call(asyncIterable_1)];
|
|
129
|
+
case 7:
|
|
130
|
+
_b.sent();
|
|
131
|
+
_b.label = 8;
|
|
132
|
+
case 8: return [3, 10];
|
|
133
|
+
case 9:
|
|
134
|
+
if (e_2) throw e_2.error;
|
|
135
|
+
return [7];
|
|
136
|
+
case 10: return [7];
|
|
137
|
+
case 11:
|
|
138
|
+
subscriber.complete();
|
|
139
|
+
return [2];
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export { fromArrayLike, fromAsyncIterable, fromInteropObservable, fromIterable, fromPromise, fromReadableStreamLike, innerFrom };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { __spreadArray, __read } from 'tslib';
|
|
2
|
+
|
|
3
|
+
var intervalProvider = {
|
|
4
|
+
setInterval: function (handler, timeout) {
|
|
5
|
+
var args = [];
|
|
6
|
+
for (var _i = 2; _i < arguments.length; _i++) {
|
|
7
|
+
args[_i - 2] = arguments[_i];
|
|
8
|
+
}
|
|
9
|
+
return setInterval.apply(void 0, __spreadArray([handler, timeout], __read(args)));
|
|
10
|
+
},
|
|
11
|
+
clearInterval: function (handle) {
|
|
12
|
+
return (clearInterval)(handle);
|
|
13
|
+
},
|
|
14
|
+
delegate: undefined,
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { intervalProvider };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { __asyncGenerator, __generator, __await } from 'tslib';
|
|
2
|
+
import { isFunction } from './isFunction.js';
|
|
3
|
+
|
|
4
|
+
function readableStreamLikeToAsyncGenerator(readableStream) {
|
|
5
|
+
return __asyncGenerator(this, arguments, function readableStreamLikeToAsyncGenerator_1() {
|
|
6
|
+
var reader, _a, value, done;
|
|
7
|
+
return __generator(this, function (_b) {
|
|
8
|
+
switch (_b.label) {
|
|
9
|
+
case 0:
|
|
10
|
+
reader = readableStream.getReader();
|
|
11
|
+
_b.label = 1;
|
|
12
|
+
case 1:
|
|
13
|
+
_b.trys.push([1, , 9, 10]);
|
|
14
|
+
_b.label = 2;
|
|
15
|
+
case 2:
|
|
16
|
+
return [4, __await(reader.read())];
|
|
17
|
+
case 3:
|
|
18
|
+
_a = _b.sent(), value = _a.value, done = _a.done;
|
|
19
|
+
if (!done) return [3, 5];
|
|
20
|
+
return [4, __await(void 0)];
|
|
21
|
+
case 4: return [2, _b.sent()];
|
|
22
|
+
case 5: return [4, __await(value)];
|
|
23
|
+
case 6: return [4, _b.sent()];
|
|
24
|
+
case 7:
|
|
25
|
+
_b.sent();
|
|
26
|
+
return [3, 2];
|
|
27
|
+
case 8: return [3, 10];
|
|
28
|
+
case 9:
|
|
29
|
+
reader.releaseLock();
|
|
30
|
+
return [7];
|
|
31
|
+
case 10: return [2];
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function isReadableStreamLike(obj) {
|
|
37
|
+
return isFunction(obj === null || obj === void 0 ? void 0 : obj.getReader);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export { isReadableStreamLike, readableStreamLikeToAsyncGenerator };
|