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/operators/takeLast.js | |
initial commit: scaffolding
Diffstat (limited to 'node_modules/rxjs/dist/esm5/internal/operators/takeLast.js')
| -rw-r--r-- | node_modules/rxjs/dist/esm5/internal/operators/takeLast.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/node_modules/rxjs/dist/esm5/internal/operators/takeLast.js b/node_modules/rxjs/dist/esm5/internal/operators/takeLast.js new file mode 100644 index 0000000..9de2aa3 --- /dev/null +++ b/node_modules/rxjs/dist/esm5/internal/operators/takeLast.js @@ -0,0 +1,34 @@ +import { __values } from "tslib"; +import { EMPTY } from '../observable/empty'; +import { operate } from '../util/lift'; +import { createOperatorSubscriber } from './OperatorSubscriber'; +export function takeLast(count) { + return count <= 0 + ? function () { return EMPTY; } + : operate(function (source, subscriber) { + var buffer = []; + source.subscribe(createOperatorSubscriber(subscriber, function (value) { + buffer.push(value); + count < buffer.length && buffer.shift(); + }, function () { + var e_1, _a; + try { + for (var buffer_1 = __values(buffer), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) { + var value = buffer_1_1.value; + subscriber.next(value); + } + } + catch (e_1_1) { e_1 = { error: e_1_1 }; } + finally { + try { + if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) _a.call(buffer_1); + } + finally { if (e_1) throw e_1.error; } + } + subscriber.complete(); + }, undefined, function () { + buffer = null; + })); + }); +} +//# sourceMappingURL=takeLast.js.map
\ No newline at end of file |
