Compute the number of unread messages in reducer
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user