Compute the number of unread messages in reducer

This commit is contained in:
Torjus
2018-07-12 17:20:37 +02:00
parent 5207271b70
commit 8d9436a10e
2 changed files with 35 additions and 26 deletions
+16 -3
View File
@@ -1,7 +1,8 @@
const initialState =
{
toolAreaOpen : false,
currentToolTab : 'chat' // chat, settings, users
currentToolTab : 'chat', // chat, settings, users
unread : 0
};
const toolarea = (state = initialState, action) =>
@@ -11,15 +12,27 @@ const toolarea = (state = initialState, action) =>
case 'TOGGLE_TOOL_AREA':
{
const toolAreaOpen = !state.toolAreaOpen;
const unread = toolAreaOpen && state.currentToolTab === 'chat' ? 0 : state.unread;
return { ...state, toolAreaOpen };
return { ...state, toolAreaOpen, unread };
}
case 'SET_TOOL_TAB':
{
const { toolTab } = action.payload;
const unread = toolTab === 'chat' ? 0 : state.unread;
return { ...state, currentToolTab: toolTab };
return { ...state, currentToolTab: toolTab, unread };
}
case 'ADD_NEW_RESPONSE_MESSAGE':
{
if (state.toolAreaOpen && state.currentToolTab === 'chat')
{
return state;
}
return { ...state, unread: state.unread + 1 };
}
default: