caminho
Version:
Tool for creating efficient data pipelines in a JavaScript environment
18 lines • 746 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.parallel = parallel;
const rxjs_1 = require("rxjs");
const valueBag_1 = require("../utils/valueBag");
function parallel(params, operatorAppliers) {
function parallelOperatorsApplier(observable) {
return (0, rxjs_1.zip)(operatorAppliers.map((operatorApplier) => operatorApplier(observable)));
}
const shareObservable = (0, rxjs_1.share)();
const mapper = (0, rxjs_1.map)((0, valueBag_1.buildValueBagAccumulator)(params));
return (observable) => {
const multicaster = observable.pipe(shareObservable);
return parallelOperatorsApplier(multicaster)
.pipe(mapper);
};
}
//# sourceMappingURL=parallel.js.map