diff options
| author | Pinapelz <yukais@pinapelz.com> | 2025-06-28 17:26:46 -0700 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2025-06-28 17:43:56 -0700 |
| commit | e4fa1e69e7ebfb627c7198fd1a9881e9327ec4d4 (patch) | |
| tree | 06284a538a6008eca75051399e47db4e5d50301c /node_modules/rxjs/dist/esm5/internal/observable/bindCallbackInternals.js | |
initial commit: scaffolding
Diffstat (limited to 'node_modules/rxjs/dist/esm5/internal/observable/bindCallbackInternals.js')
| -rw-r--r-- | node_modules/rxjs/dist/esm5/internal/observable/bindCallbackInternals.js | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/node_modules/rxjs/dist/esm5/internal/observable/bindCallbackInternals.js b/node_modules/rxjs/dist/esm5/internal/observable/bindCallbackInternals.js new file mode 100644 index 0000000..659f5f3 --- /dev/null +++ b/node_modules/rxjs/dist/esm5/internal/observable/bindCallbackInternals.js @@ -0,0 +1,79 @@ +import { __read, __spreadArray } from "tslib"; +import { isScheduler } from '../util/isScheduler'; +import { Observable } from '../Observable'; +import { subscribeOn } from '../operators/subscribeOn'; +import { mapOneOrManyArgs } from '../util/mapOneOrManyArgs'; +import { observeOn } from '../operators/observeOn'; +import { AsyncSubject } from '../AsyncSubject'; +export function bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler) { + if (resultSelector) { + if (isScheduler(resultSelector)) { + scheduler = resultSelector; + } + else { + return function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler) + .apply(this, args) + .pipe(mapOneOrManyArgs(resultSelector)); + }; + } + } + if (scheduler) { + return function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return bindCallbackInternals(isNodeStyle, callbackFunc) + .apply(this, args) + .pipe(subscribeOn(scheduler), observeOn(scheduler)); + }; + } + return function () { + var _this = this; + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + var subject = new AsyncSubject(); + var uninitialized = true; + return new Observable(function (subscriber) { + var subs = subject.subscribe(subscriber); + if (uninitialized) { + uninitialized = false; + var isAsync_1 = false; + var isComplete_1 = false; + callbackFunc.apply(_this, __spreadArray(__spreadArray([], __read(args)), [ + function () { + var results = []; + for (var _i = 0; _i < arguments.length; _i++) { + results[_i] = arguments[_i]; + } + if (isNodeStyle) { + var err = results.shift(); + if (err != null) { + subject.error(err); + return; + } + } + subject.next(1 < results.length ? results : results[0]); + isComplete_1 = true; + if (isAsync_1) { + subject.complete(); + } + }, + ])); + if (isComplete_1) { + subject.complete(); + } + isAsync_1 = true; + } + return subs; + }); + }; +} +//# sourceMappingURL=bindCallbackInternals.js.map
\ No newline at end of file |
