UNPKG

reducer-class

Version:

Boilerplate free class-based reducer creator. Built with TypeScript. Works with Redux and NGRX. Has integration with immer.

16 lines (15 loc) 804 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const redux_create_reducer_1 = require("redux-create-reducer"); const reducer_class_helpers_1 = require("./reducer-class-helpers"); class ReducerClass { static create() { const instance = new this(); const keys = this.reducerClassHelpers.getClassInstanceMethodNames(instance); const reducersWithActionTypes = this.reducerClassHelpers.getReducerClassMethodsWthActionTypes(instance, keys); const reducerMap = this.reducerClassHelpers.getReducerMap(reducersWithActionTypes); return redux_create_reducer_1.createReducer(instance.initialState, reducerMap); } } ReducerClass.reducerClassHelpers = new reducer_class_helpers_1.ReducerClassHelpers(); exports.ReducerClass = ReducerClass;