source: trip-planner-front/node_modules/rxjs/_esm5/internal/operators/multicast.js@ 6a3a178

Last change on this file since 6a3a178 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 1.5 KB
Line 
1/** PURE_IMPORTS_START _observable_ConnectableObservable PURE_IMPORTS_END */
2import { connectableObservableDescriptor } from '../observable/ConnectableObservable';
3export function multicast(subjectOrSubjectFactory, selector) {
4 return function multicastOperatorFunction(source) {
5 var subjectFactory;
6 if (typeof subjectOrSubjectFactory === 'function') {
7 subjectFactory = subjectOrSubjectFactory;
8 }
9 else {
10 subjectFactory = function subjectFactory() {
11 return subjectOrSubjectFactory;
12 };
13 }
14 if (typeof selector === 'function') {
15 return source.lift(new MulticastOperator(subjectFactory, selector));
16 }
17 var connectable = Object.create(source, connectableObservableDescriptor);
18 connectable.source = source;
19 connectable.subjectFactory = subjectFactory;
20 return connectable;
21 };
22}
23var MulticastOperator = /*@__PURE__*/ (function () {
24 function MulticastOperator(subjectFactory, selector) {
25 this.subjectFactory = subjectFactory;
26 this.selector = selector;
27 }
28 MulticastOperator.prototype.call = function (subscriber, source) {
29 var selector = this.selector;
30 var subject = this.subjectFactory();
31 var subscription = selector(subject).subscribe(subscriber);
32 subscription.add(source.subscribe(subject));
33 return subscription;
34 };
35 return MulticastOperator;
36}());
37export { MulticastOperator };
38//# sourceMappingURL=multicast.js.map
Note: See TracBrowser for help on using the repository browser.