ngx-decorate
Version:
Useful decorators for Angular 2 and above
35 lines • 1.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const ensureSymbol_1 = require("../lib/ensureSymbol");
const symbols_1 = require("../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 */
function subscribeTo(self) {
const sources = self[symbols_1._subscrTo];
if (sources) {
const subs = ensureSymbol_1.ensureSymbol(self, symbols_1._subscrToSubs, []);
for (const source of sources) {
if (self[source.source]) {
processSource(self, source, subs);
}
}
}
}
exports.subscribeTo = subscribeTo;
//# sourceMappingURL=subscribe-to.js.map