UNPKG

multitude

Version:

Comprehensive streams for push and pull

32 lines (27 loc) 2.92 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.skip = skip; var _operate = require("../../utils/operate"); var _typeCore = require("type-core"); function skip(count) { const options = !count || _typeCore.TypeGuard.isNumber(count) ? { count } : count; return (0, _operate.operate)(obs => { let index = -1; let stop = false; return { next(value) { index++; if (stop) return obs.next(value); if (options.count && index < options.count) return; if (options.while && options.while(value, index)) return; stop = true; return obs.next(value); } }; }); } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wdXNoL29wZXJhdG9ycy9maWx0ZXIvc2tpcC50cyJdLCJuYW1lcyI6WyJza2lwIiwiY291bnQiLCJvcHRpb25zIiwiVHlwZUd1YXJkIiwiaXNOdW1iZXIiLCJvYnMiLCJpbmRleCIsInN0b3AiLCJuZXh0IiwidmFsdWUiLCJ3aGlsZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBOztBQUNBOztBQU9PLFNBQVNBLElBQVQsQ0FBaUJDLEtBQWpCLEVBQW9FO0FBQ3pFLFFBQU1DLE9BQU8sR0FBRyxDQUFDRCxLQUFELElBQVVFLG9CQUFVQyxRQUFWLENBQW1CSCxLQUFuQixDQUFWLEdBQXNDO0FBQUVBLElBQUFBO0FBQUYsR0FBdEMsR0FBa0RBLEtBQWxFO0FBRUEsU0FBTyxzQkFBWUksR0FBRCxJQUFTO0FBQ3pCLFFBQUlDLEtBQUssR0FBRyxDQUFDLENBQWI7QUFDQSxRQUFJQyxJQUFJLEdBQUcsS0FBWDtBQUNBLFdBQU87QUFDTEMsTUFBQUEsSUFBSSxDQUFDQyxLQUFELEVBQWlCO0FBQ25CSCxRQUFBQSxLQUFLO0FBRUwsWUFBSUMsSUFBSixFQUFVLE9BQU9GLEdBQUcsQ0FBQ0csSUFBSixDQUFTQyxLQUFULENBQVA7QUFDVixZQUFJUCxPQUFPLENBQUNELEtBQVIsSUFBaUJLLEtBQUssR0FBR0osT0FBTyxDQUFDRCxLQUFyQyxFQUE0QztBQUM1QyxZQUFJQyxPQUFPLENBQUNRLEtBQVIsSUFBaUJSLE9BQU8sQ0FBQ1EsS0FBUixDQUFjRCxLQUFkLEVBQXFCSCxLQUFyQixDQUFyQixFQUFrRDtBQUVsREMsUUFBQUEsSUFBSSxHQUFHLElBQVA7QUFDQSxlQUFPRixHQUFHLENBQUNHLElBQUosQ0FBU0MsS0FBVCxDQUFQO0FBQ0Q7O0FBVkksS0FBUDtBQVlELEdBZk0sQ0FBUDtBQWdCRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFB1c2ggfSBmcm9tICdAZGVmaW5pdGlvbnMnO1xuaW1wb3J0IHsgb3BlcmF0ZSB9IGZyb20gJy4uLy4uL3V0aWxzL29wZXJhdGUnO1xuaW1wb3J0IHsgVHlwZUd1YXJkIH0gZnJvbSAndHlwZS1jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBTa2lwT3B0aW9uczxUPiB7XG4gIGNvdW50PzogbnVtYmVyO1xuICB3aGlsZT86ICh2YWx1ZTogVCwgaW5kZXg6IG51bWJlcikgPT4gYm9vbGVhbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNraXA8VD4oY291bnQ6IG51bWJlciB8IFNraXBPcHRpb25zPFQ+KTogUHVzaC5PcGVyYXRpb248VD4ge1xuICBjb25zdCBvcHRpb25zID0gIWNvdW50IHx8IFR5cGVHdWFyZC5pc051bWJlcihjb3VudCkgPyB7IGNvdW50IH0gOiBjb3VudDtcblxuICByZXR1cm4gb3BlcmF0ZTxUPigob2JzKSA9PiB7XG4gICAgbGV0IGluZGV4ID0gLTE7XG4gICAgbGV0IHN0b3AgPSBmYWxzZTtcbiAgICByZXR1cm4ge1xuICAgICAgbmV4dCh2YWx1ZTogVCk6IHZvaWQge1xuICAgICAgICBpbmRleCsrO1xuXG4gICAgICAgIGlmIChzdG9wKSByZXR1cm4gb2JzLm5leHQodmFsdWUpO1xuICAgICAgICBpZiAob3B0aW9ucy5jb3VudCAmJiBpbmRleCA8IG9wdGlvbnMuY291bnQpIHJldHVybjtcbiAgICAgICAgaWYgKG9wdGlvbnMud2hpbGUgJiYgb3B0aW9ucy53aGlsZSh2YWx1ZSwgaW5kZXgpKSByZXR1cm47XG5cbiAgICAgICAgc3RvcCA9IHRydWU7XG4gICAgICAgIHJldHVybiBvYnMubmV4dCh2YWx1ZSk7XG4gICAgICB9XG4gICAgfTtcbiAgfSk7XG59XG4iXX0=