diff --git a/src/index.js b/src/index.js index a8cb0b33..d1b50ab7 100644 --- a/src/index.js +++ b/src/index.js @@ -27,11 +27,11 @@ class Griddle extends Component { storeKey = Griddle.storeKey || 'store', } = props; - const { initialState, reducers, reduxMiddleware } = init.call(this, core); + const { initialState, reducer, reduxMiddleware } = init.call(this, core); const composeEnhancers = (typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__) || compose this.store = createStore( - reducers, + reducer, initialState, composeEnhancers( applyMiddleware(...reduxMiddleware) diff --git a/src/utils/__tests__/initilizerTests.js b/src/utils/__tests__/initilizerTests.js index 31522b38..0623ea16 100644 --- a/src/utils/__tests__/initilizerTests.js +++ b/src/utils/__tests__/initilizerTests.js @@ -24,8 +24,8 @@ test('init succeeds given null defaults and empty props', (assert) => { assert.deepEqual(res.initialState, expectedDefaultInitialState); - assert.is(typeof res.reducers, 'function'); - assert.deepEqual(res.reducers({}, { type: 'REDUCE' }), {}); + assert.is(typeof res.reducer, 'function'); + assert.deepEqual(res.reducer({}, { type: 'REDUCE' }), {}); assert.deepEqual(res.reduxMiddleware, []); @@ -45,8 +45,8 @@ test('init succeeds given empty defaults and props', (assert) => { assert.deepEqual(res.initialState, expectedDefaultInitialState); - assert.is(typeof res.reducers, 'function'); - assert.deepEqual(res.reducers({}, { type: 'REDUCE' }), {}); + assert.is(typeof res.reducer, 'function'); + assert.deepEqual(res.reducer({}, { type: 'REDUCE' }), {}); assert.deepEqual(res.reduxMiddleware, []); @@ -60,7 +60,7 @@ test('init succeeds given empty defaults and props', (assert) => { test('init returns defaults given minimum props', (assert) => { const ctx = { props: { data: [] } }; const defaults = { - reducers: { REDUCE: () => ({ reduced: true }) }, + reducer: { REDUCE: () => ({ reduced: true }) }, components: { Layout: () => null }, settingsComponentObjects: { mySettings: { order: 10 } }, selectors: { aSelector: () => null }, @@ -81,9 +81,9 @@ test('init returns defaults given minimum props', (assert) => { styleConfig: defaults.styleConfig, }); - assert.is(typeof res.reducers, 'function'); - assert.deepEqual(Object.keys(res.reducers), Object.keys(defaults.reducers)); - assert.deepEqual(res.reducers({}, { type: 'REDUCE' }), { reduced: true }); + assert.is(typeof res.reducer, 'function'); + assert.deepEqual(Object.keys(res.reducer), Object.keys(defaults.reducer)); + assert.deepEqual(res.reducer({}, { type: 'REDUCE' }), { reduced: true }); assert.deepEqual(res.reduxMiddleware, []); @@ -244,7 +244,7 @@ test('init returns composed reducer given plugins', (assert) => { }, }; const defaults = { - reducers: { + reducer: { DEFAULTS: () => ({ defaults: true }), PLUGIN: () => ({ plugin: false }), }, @@ -253,10 +253,10 @@ test('init returns composed reducer given plugins', (assert) => { const res = init.call(ctx, defaults); assert.truthy(res); - assert.is(typeof res.reducers, 'function'); - assert.deepEqual(Object.keys(res.reducers), ['DEFAULTS', 'PLUGIN']); - assert.deepEqual(res.reducers({}, { type: 'DEFAULTS' }), { defaults: true }); - assert.deepEqual(res.reducers({}, { type: 'PLUGIN' }), { plugin: 1 }); + assert.is(typeof res.reducer, 'function'); + assert.deepEqual(Object.keys(res.reducer), ['DEFAULTS', 'PLUGIN']); + assert.deepEqual(res.reducer({}, { type: 'DEFAULTS' }), { defaults: true }); + assert.deepEqual(res.reducer({}, { type: 'PLUGIN' }), { plugin: 1 }); }); test('init returns flattened/compacted reduxMiddleware given plugins', (assert) => { diff --git a/src/utils/initializer.js b/src/utils/initializer.js index 193c7e86..3fa76b6a 100644 --- a/src/utils/initializer.js +++ b/src/utils/initializer.js @@ -7,7 +7,7 @@ module.exports = function initializer(defaults) { if (!this) throw new Error('this missing!'); const { - reducers: dataReducers, + reducer: defaultReducer, components, settingsComponentObjects, selectors, @@ -33,7 +33,7 @@ module.exports = function initializer(defaults) { const columnProperties = getColumnProperties(rowPropertiesComponent); // Combine / compose the reducers to make a single, unified reducer - const reducers = buildGriddleReducer([dataReducers, ...plugins.map(p => p.reducer)]); + const reducer = buildGriddleReducer([defaultReducer, ...plugins.map(p => p.reducer)]); // Combine / Compose the components to make a single component for each component type this.components = buildGriddleComponents([ @@ -82,7 +82,7 @@ module.exports = function initializer(defaults) { return { initialState, - reducers, + reducer, reduxMiddleware: _.compact([ ..._.flatten(plugins.map(p => p.reduxMiddleware)), ...reduxMiddleware