overmind
Version:
Frictionless state management
29 lines • 739 B
JavaScript
function parseNamespacedConfig(result, name, config) {
const { actions, effects, state } = config;
if (actions) {
result.actions[name] = actions;
}
if (effects) {
result.effects[name] = effects;
}
if (state) {
result.state[name] = state;
}
}
export function namespaced(namespaces) {
const result = {
initializers: {},
actions: {},
effects: {},
state: {},
};
Object.keys(namespaces).forEach((name) => {
parseNamespacedConfig(result, name, namespaces[name]);
});
return Object.assign({
actions: result.actions,
effects: result.effects,
state: result.state,
});
}
//# sourceMappingURL=namespaced.js.map