From e4fa1e69e7ebfb627c7198fd1a9881e9327ec4d4 Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Sat, 28 Jun 2025 17:26:46 -0700 Subject: initial commit: scaffolding --- .../rxjs/dist/esm5/internal/operators/repeat.js | 60 ++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 node_modules/rxjs/dist/esm5/internal/operators/repeat.js (limited to 'node_modules/rxjs/dist/esm5/internal/operators/repeat.js') diff --git a/node_modules/rxjs/dist/esm5/internal/operators/repeat.js b/node_modules/rxjs/dist/esm5/internal/operators/repeat.js new file mode 100644 index 0000000..d5daec0 --- /dev/null +++ b/node_modules/rxjs/dist/esm5/internal/operators/repeat.js @@ -0,0 +1,60 @@ +import { EMPTY } from '../observable/empty'; +import { operate } from '../util/lift'; +import { createOperatorSubscriber } from './OperatorSubscriber'; +import { innerFrom } from '../observable/innerFrom'; +import { timer } from '../observable/timer'; +export function repeat(countOrConfig) { + var _a; + var count = Infinity; + var delay; + if (countOrConfig != null) { + if (typeof countOrConfig === 'object') { + (_a = countOrConfig.count, count = _a === void 0 ? Infinity : _a, delay = countOrConfig.delay); + } + else { + count = countOrConfig; + } + } + return count <= 0 + ? function () { return EMPTY; } + : operate(function (source, subscriber) { + var soFar = 0; + var sourceSub; + var resubscribe = function () { + sourceSub === null || sourceSub === void 0 ? void 0 : sourceSub.unsubscribe(); + sourceSub = null; + if (delay != null) { + var notifier = typeof delay === 'number' ? timer(delay) : innerFrom(delay(soFar)); + var notifierSubscriber_1 = createOperatorSubscriber(subscriber, function () { + notifierSubscriber_1.unsubscribe(); + subscribeToSource(); + }); + notifier.subscribe(notifierSubscriber_1); + } + else { + subscribeToSource(); + } + }; + var subscribeToSource = function () { + var syncUnsub = false; + sourceSub = source.subscribe(createOperatorSubscriber(subscriber, undefined, function () { + if (++soFar < count) { + if (sourceSub) { + resubscribe(); + } + else { + syncUnsub = true; + } + } + else { + subscriber.complete(); + } + })); + if (syncUnsub) { + resubscribe(); + } + }; + subscribeToSource(); + }); +} +//# sourceMappingURL=repeat.js.map \ No newline at end of file -- cgit v1.2.3