diff options
Diffstat (limited to 'app/javascript/flavours/glitch/reducers')
-rw-r--r-- | app/javascript/flavours/glitch/reducers/boosts.js | 25 | ||||
-rw-r--r-- | app/javascript/flavours/glitch/reducers/index.js | 2 | ||||
-rw-r--r-- | app/javascript/flavours/glitch/reducers/modal.js | 3 |
3 files changed, 30 insertions, 0 deletions
diff --git a/app/javascript/flavours/glitch/reducers/boosts.js b/app/javascript/flavours/glitch/reducers/boosts.js new file mode 100644 index 000000000..3541ca0c2 --- /dev/null +++ b/app/javascript/flavours/glitch/reducers/boosts.js @@ -0,0 +1,25 @@ +import Immutable from 'immutable'; + +import { + BOOSTS_INIT_MODAL, + BOOSTS_CHANGE_PRIVACY, +} from 'flavours/glitch/actions/boosts'; + +const initialState = Immutable.Map({ + new: Immutable.Map({ + privacy: 'public', + }), +}); + +export default function mutes(state = initialState, action) { + switch (action.type) { + case BOOSTS_INIT_MODAL: + return state.withMutations((state) => { + state.setIn(['new', 'privacy'], action.privacy); + }); + case BOOSTS_CHANGE_PRIVACY: + return state.setIn(['new', 'privacy'], action.privacy); + default: + return state; + } +} diff --git a/app/javascript/flavours/glitch/reducers/index.js b/app/javascript/flavours/glitch/reducers/index.js index b1ddb769e..c452e834c 100644 --- a/app/javascript/flavours/glitch/reducers/index.js +++ b/app/javascript/flavours/glitch/reducers/index.js @@ -18,6 +18,7 @@ import status_lists from './status_lists'; import mutes from './mutes'; import blocks from './blocks'; import reports from './reports'; +import boosts from './boosts'; import contexts from './contexts'; import compose from './compose'; import search from './search'; @@ -61,6 +62,7 @@ const reducers = { mutes, blocks, reports, + boosts, contexts, compose, search, diff --git a/app/javascript/flavours/glitch/reducers/modal.js b/app/javascript/flavours/glitch/reducers/modal.js index 7bd9d4b32..52b05d69b 100644 --- a/app/javascript/flavours/glitch/reducers/modal.js +++ b/app/javascript/flavours/glitch/reducers/modal.js @@ -1,4 +1,5 @@ import { MODAL_OPEN, MODAL_CLOSE } from 'flavours/glitch/actions/modal'; +import { TIMELINE_DELETE } from 'flavours/glitch/actions/timelines'; const initialState = { modalType: null, @@ -11,6 +12,8 @@ export default function modal(state = initialState, action) { return { modalType: action.modalType, modalProps: action.modalProps }; case MODAL_CLOSE: return (action.modalType === undefined || action.modalType === state.modalType) ? initialState : state; + case TIMELINE_DELETE: + return (state.modalProps.statusId === action.id) ? initialState : state; default: return state; } |