UNPKG

react-obsidian

Version:

Dependency injection framework for React and React Native applications

21 lines 977 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useColdObservables = void 0; const react_1 = require("react"); const ColdMediatorObservable_1 = require("./ColdMediatorObservable"); const mapObservablesToValues_1 = require("../mapObservablesToValues"); function useColdObservables(observables) { const [mediator] = (0, react_1.useState)(() => new ColdMediatorObservable_1.ColdMediatorObservable((0, mapObservablesToValues_1.mapObservablesToValues)(observables))); const [values, setValues] = (0, react_1.useState)(() => mediator.value); (0, react_1.useEffect)(() => { Object.keys(observables).forEach((key) => { mediator.addSource(observables[key], (value) => { mediator.setValue(key, value); }); }); return mediator.subscribe(setValues); }, []); return values; } exports.useColdObservables = useColdObservables; //# sourceMappingURL=useColdObservers.js.map