ngx-decorate
Version:
Useful decorators for Angular 2 and above
32 lines • 918 B
JavaScript
import { ensureSymbol } from '../lib/ensureSymbol';
import { _subscrTo, _subscrToSubs } from '../lib/symbols';
/** @internal */
function processSource(self, source, subs) {
let subscrFn;
const cdrProp = source.cfg.cdrProp;
if (cdrProp) {
subscrFn = v => {
self[source.target] = v;
self[source.cfg.cdrProp].markForCheck();
};
}
else {
subscrFn = v => {
self[source.target] = v;
};
}
subs.push(self[source.source].subscribe(subscrFn, console.error));
}
/** @internal */
export function subscribeTo(self) {
const sources = self[_subscrTo];
if (sources) {
const subs = ensureSymbol(self, _subscrToSubs, []);
for (const source of sources) {
if (self[source.source]) {
processSource(self, source, subs);
}
}
}
}
//# sourceMappingURL=subscribe-to.js.map