redux-dynamic-modules-beacon
Version:
redux-beacon integration for redux dynamic modules.
29 lines • 1.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getBeaconExtension = void 0;
var redux_beacon_1 = require("redux-beacon");
var EventsManager_1 = require("./EventsManager");
/**
* Get an extension that integrates redux-beacon events with the store
* @param target - The redux beacon target to send events to
*/
function getBeaconExtension(target) {
var eventsManager = new EventsManager_1.EventsManager();
// Setup the event middleware
var eventMiddleware = redux_beacon_1.createMiddleware(eventsManager.getEventsMap, target);
return {
middleware: [eventMiddleware],
onModuleAdded: function (module) {
if (module.events) {
eventsManager.addEventsMap(module.events);
}
},
onModuleRemoved: function (module) {
if (module.events) {
eventsManager.removeEventsMap(module.events);
}
}
};
}
exports.getBeaconExtension = getBeaconExtension;
//# sourceMappingURL=getBeaconExtension.js.map