rxjs
Version:
Reactive Extensions for modern JavaScript
12 lines • 646 B
JavaScript
import { ReplaySubject } from '../ReplaySubject';
import { multicast } from './multicast';
import { isFunction } from '../util/isFunction';
export function publishReplay(bufferSize, windowTime, selectorOrScheduler, scheduler) {
if (selectorOrScheduler && !isFunction(selectorOrScheduler)) {
scheduler = selectorOrScheduler;
}
var selector = isFunction(selectorOrScheduler) ? selectorOrScheduler : undefined;
var subject = new ReplaySubject(bufferSize, windowTime, scheduler);
return function (source) { return multicast(function () { return subject; }, selector)(source); };
}
//# sourceMappingURL=publishReplay.js.map