UNPKG

multitude

Version:

Comprehensive streams for push and pull

66 lines (44 loc) 5.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Talkback = void 0; var _helpers = require("../helpers"); var _typeCore = require("type-core"); function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); } function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } } function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); } function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; } function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; } function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); } function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } } var _items = /*#__PURE__*/new WeakMap(); var _options = /*#__PURE__*/new WeakMap(); class Talkback { constructor(item, options) { _classPrivateFieldInitSpec(this, _items, { writable: true, value: void 0 }); _classPrivateFieldInitSpec(this, _options, { writable: true, value: void 0 }); _classPrivateFieldSet(this, _items, _typeCore.TypeGuard.isArray(item) ? item : [item]); _classPrivateFieldSet(this, _options, options || {}); } start(subscription) { _helpers.Invoke.observers('start', subscription, _classPrivateFieldGet(this, _items), _classPrivateFieldGet(this, _options)); } next(value) { return _helpers.Invoke.observers('next', value, _classPrivateFieldGet(this, _items), _classPrivateFieldGet(this, _options)); } error(error) { return _helpers.Invoke.observers('error', error, _classPrivateFieldGet(this, _items), _classPrivateFieldGet(this, _options)); } complete() { return _helpers.Invoke.observers('complete', undefined, _classPrivateFieldGet(this, _items), _classPrivateFieldGet(this, _options)); } } exports.Talkback = Talkback; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wdXNoL2NsYXNzZXMvYXNzaXN0YW5jZS9UYWxrYmFjay50cyJdLCJuYW1lcyI6WyJUYWxrYmFjayIsImNvbnN0cnVjdG9yIiwiaXRlbSIsIm9wdGlvbnMiLCJUeXBlR3VhcmQiLCJpc0FycmF5Iiwic3RhcnQiLCJzdWJzY3JpcHRpb24iLCJJbnZva2UiLCJvYnNlcnZlcnMiLCJuZXh0IiwidmFsdWUiLCJlcnJvciIsImNvbXBsZXRlIiwidW5kZWZpbmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU08sTUFBTUEsUUFBTixDQUFvRDtBQUdsREMsRUFBQUEsV0FBVyxDQUNoQkMsSUFEZ0IsRUFFaEJDLE9BRmdCLEVBR2hCO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0Esd0NBQWNDLG9CQUFVQyxPQUFWLENBQWtCSCxJQUFsQixJQUEwQkEsSUFBMUIsR0FBaUMsQ0FBQ0EsSUFBRCxDQUEvQzs7QUFDQSwwQ0FBZ0JDLE9BQU8sSUFBSSxFQUEzQjtBQUNEOztBQUNNRyxFQUFBQSxLQUFLLENBQUNDLFlBQUQsRUFBd0M7QUFDbERDLG9CQUFPQyxTQUFQLENBQWlCLE9BQWpCLEVBQTBCRixZQUExQix3QkFBd0MsSUFBeEMsaUNBQXFELElBQXJEO0FBQ0Q7O0FBQ01HLEVBQUFBLElBQUksQ0FBQ0MsS0FBRCxFQUFpQjtBQUMxQixXQUFPSCxnQkFBT0MsU0FBUCxDQUFpQixNQUFqQixFQUF5QkUsS0FBekIsd0JBQWdDLElBQWhDLGlDQUE2QyxJQUE3QyxZQUFQO0FBQ0Q7O0FBQ01DLEVBQUFBLEtBQUssQ0FBQ0EsS0FBRCxFQUFxQjtBQUMvQixXQUFPSixnQkFBT0MsU0FBUCxDQUFpQixPQUFqQixFQUEwQkcsS0FBMUIsd0JBQWlDLElBQWpDLGlDQUE4QyxJQUE5QyxZQUFQO0FBQ0Q7O0FBQ01DLEVBQUFBLFFBQVEsR0FBUztBQUN0QixXQUFPTCxnQkFBT0MsU0FBUCxDQUFpQixVQUFqQixFQUE2QkssU0FBN0Isd0JBQXdDLElBQXhDLGlDQUFxRCxJQUFyRCxZQUFQO0FBQ0Q7O0FBckJ3RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFB1c2ggfSBmcm9tICdAZGVmaW5pdGlvbnMnO1xuaW1wb3J0IHsgSW52b2tlIH0gZnJvbSAnLi4vaGVscGVycyc7XG5pbXBvcnQgeyBVbmFyeUZuLCBUeXBlR3VhcmQgfSBmcm9tICd0eXBlLWNvcmUnO1xuXG5leHBvcnQgZGVjbGFyZSBuYW1lc3BhY2UgVGFsa2JhY2sge1xuICBleHBvcnQgaW50ZXJmYWNlIE9wdGlvbnMge1xuICAgIG11bHRpY2FzdD86IGJvb2xlYW47XG4gICAgb25FcnJvcj86IFVuYXJ5Rm48RXJyb3I+O1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUYWxrYmFjazxUID0gYW55PiBpbXBsZW1lbnRzIFB1c2guVGFsa2JhY2s8VD4ge1xuICAjaXRlbXM6IEFycmF5PFB1c2guT2JzZXJ2ZXI8VD4+O1xuICAjb3B0aW9uczogVGFsa2JhY2suT3B0aW9ucztcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGl0ZW06IFB1c2guT2JzZXJ2ZXI8VD4gfCBBcnJheTxQdXNoLk9ic2VydmVyPFQ+PixcbiAgICBvcHRpb25zPzogVGFsa2JhY2suT3B0aW9uc1xuICApIHtcbiAgICB0aGlzLiNpdGVtcyA9IFR5cGVHdWFyZC5pc0FycmF5KGl0ZW0pID8gaXRlbSA6IFtpdGVtXTtcbiAgICB0aGlzLiNvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgfVxuICBwdWJsaWMgc3RhcnQoc3Vic2NyaXB0aW9uOiBQdXNoLlN1YnNjcmlwdGlvbik6IHZvaWQge1xuICAgIEludm9rZS5vYnNlcnZlcnMoJ3N0YXJ0Jywgc3Vic2NyaXB0aW9uLCB0aGlzLiNpdGVtcywgdGhpcy4jb3B0aW9ucyk7XG4gIH1cbiAgcHVibGljIG5leHQodmFsdWU6IFQpOiB2b2lkIHtcbiAgICByZXR1cm4gSW52b2tlLm9ic2VydmVycygnbmV4dCcsIHZhbHVlLCB0aGlzLiNpdGVtcywgdGhpcy4jb3B0aW9ucyk7XG4gIH1cbiAgcHVibGljIGVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuICAgIHJldHVybiBJbnZva2Uub2JzZXJ2ZXJzKCdlcnJvcicsIGVycm9yLCB0aGlzLiNpdGVtcywgdGhpcy4jb3B0aW9ucyk7XG4gIH1cbiAgcHVibGljIGNvbXBsZXRlKCk6IHZvaWQge1xuICAgIHJldHVybiBJbnZva2Uub2JzZXJ2ZXJzKCdjb21wbGV0ZScsIHVuZGVmaW5lZCwgdGhpcy4jaXRlbXMsIHRoaXMuI29wdGlvbnMpO1xuICB9XG59XG4iXX0=