sub-redux
Version:
[](https://www.npmjs.com/package/sub-redux) [](https://www.npmjs.com/package/sub-redux)
29 lines (28 loc) • 1.36 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var typesafe_actions_1 = require("typesafe-actions");
var actionHelpers_1 = require("./actionHelpers");
// Actions *********************************************************************
var nextId = 1;
exports.getId = function () { return (nextId++).toString(36); };
exports.actions = {
init: typesafe_actions_1.createStandardAction('SUB_REDUX/INIT').map(function (_a) {
var instance = _a.instance, initial = _a.initial, reducer = _a.reducer, _b = _a.middlewares, middlewares = _b === void 0 ? [] : _b;
return ({
payload: { instance: instance, initial: initial },
meta: { reducer: reducer, middlewares: middlewares },
});
}),
subAction: typesafe_actions_1.createCustomAction('SUB_REDUX/x/SUB_ACTION', function () { return actionHelpers_1.wrapSubAction; }),
destroy: typesafe_actions_1.createStandardAction('SUB_REDUX/DESTROY')(),
};
// Subaction helpers ***********************************************************
exports.isInitAction = function (action) {
return action.type === 'SUB_REDUX/INIT';
};
exports.isSubAction = function (action) {
return !!action.type.match(/^SUB_REDUX\/([0-9a-zA-Z]+)\/(.*)$/);
};
exports.isDestroyAction = function (action) {
return action.type === 'SUB_REDUX/DESTROY';
};
;