diff options
Diffstat (limited to 'src/content/reducers')
| -rw-r--r-- | src/content/reducers/addon.js | 24 | ||||
| -rw-r--r-- | src/content/reducers/index.js | 3 | 
2 files changed, 27 insertions, 0 deletions
| diff --git a/src/content/reducers/addon.js b/src/content/reducers/addon.js new file mode 100644 index 0000000..8cc5ef1 --- /dev/null +++ b/src/content/reducers/addon.js @@ -0,0 +1,24 @@ +import actions from 'content/actions'; + +const defaultState = { +  enabled: true, +}; + +export default function reducer(state = defaultState, action = {}) { +  switch (action.type) { +  case actions.ADDON_ENABLE: +    return Object.assign({}, state, { +      enabled: true, +    }); +  case actions.ADDON_DISABLE: +    return Object.assign({}, state, { +      enabled: false, +    }); +  case actions.ADDON_TOGGLE_ENABLED: +    return Object.assign({}, state, { +      enabled: !state.enabled, +    }); +  default: +    return state; +  } +} diff --git a/src/content/reducers/index.js b/src/content/reducers/index.js index c026a19..7cf318e 100644 --- a/src/content/reducers/index.js +++ b/src/content/reducers/index.js @@ -1,14 +1,17 @@ +import addonReducer from './addon';  import inputReducer from './input';  import followReducer from './follow';  // Make setting reducer instead of re-use  const defaultState = { +  addon: addonReducer(undefined, {}),    input: inputReducer(undefined, {}),    follow: followReducer(undefined, {}),  };  export default function reducer(state = defaultState, action = {}) {    return Object.assign({}, state, { +    addon: addonReducer(state.addon, action),      input: inputReducer(state.input, action),      follow: followReducer(state.follow, action),    }); | 
