publishReplay.js 728 B

1234567891011121314
  1. "use strict";
  2. var ReplaySubject_1 = require('../ReplaySubject');
  3. var multicast_1 = require('./multicast');
  4. /* tslint:enable:max-line-length */
  5. function publishReplay(bufferSize, windowTime, selectorOrScheduler, scheduler) {
  6. if (selectorOrScheduler && typeof selectorOrScheduler !== 'function') {
  7. scheduler = selectorOrScheduler;
  8. }
  9. var selector = typeof selectorOrScheduler === 'function' ? selectorOrScheduler : undefined;
  10. var subject = new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, scheduler);
  11. return function (source) { return multicast_1.multicast(function () { return subject; }, selector)(source); };
  12. }
  13. exports.publishReplay = publishReplay;
  14. //# sourceMappingURL=publishReplay.js.map