| import { Subscriber } from '../Subscriber'; |
| /** |
| * Returns an Observable that skips the first `count` items emitted by the source Observable. |
| * |
| * <img src="./img/skip.png" width="100%"> |
| * |
| * @param {Number} count - The number of times, items emitted by source Observable should be skipped. |
| * @return {Observable} An Observable that skips values emitted by the source Observable. |
| * |
| * @method skip |
| * @owner Observable |
| */ |
| export function skip(count) { |
| return (source) => source.lift(new SkipOperator(count)); |
| } |
| class SkipOperator { |
| constructor(total) { |
| this.total = total; |
| } |
| call(subscriber, source) { |
| return source.subscribe(new SkipSubscriber(subscriber, this.total)); |
| } |
| } |
| /** |
| * We need this JSDoc comment for affecting ESDoc. |
| * @ignore |
| * @extends {Ignored} |
| */ |
| class SkipSubscriber extends Subscriber { |
| constructor(destination, total) { |
| super(destination); |
| this.total = total; |
| this.count = 0; |
| } |
| _next(x) { |
| if (++this.count > this.total) { |
| this.destination.next(x); |
| } |
| } |
| } |
| //# sourceMappingURL=skip.js.map |