sub-redux
Version:
[](https://www.npmjs.com/package/sub-redux) [](https://www.npmjs.com/package/sub-redux)
31 lines (30 loc) • 1.31 kB
JavaScript
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
var actionHelpers_1 = require("./actionHelpers");
function getSubMiddlewareApi(instance, store) {
return {
dispatch: function (subAction) {
store.dispatch(actionHelpers_1.wrapSubAction({ instance: instance, subAction: subAction }));
return subAction;
},
getState: function () { return store.getState().subRedux[instance].state; },
};
}
exports.getSubMiddlewareApi = getSubMiddlewareApi;
function getSubStore(instance, store) {
return __assign({}, getSubMiddlewareApi(instance, store), { subscribe: function (subscriber) { return store.subscribe(subscriber); }, replaceReducer: function () {
throw new Error('subredux subStore does not support replaceReducer');
}, isSubReduxStore: true, subReduxInstance: instance, parentStore: store });
}
exports.getSubStore = getSubStore;
;