Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 5307 | Ir a la última revisión | | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
5306 stevensc 1
import { chatActionTypes } from './chat.types'
2
 
3
const initialState = {
4
  messages: [],
5
  currentPage: 1,
6
  lastPage: 1,
7
  loading: false,
8
  conversation: {}
9
}
10
 
11
export default (state = initialState, { type, payload }) => {
12
  switch (type) {
13
    case 'sendMessage':
14
      return {
15
        ...state,
16
        messages: [
17
          ...state.messages,
18
          {
19
            ...payload,
20
            not_received: !state.conversation.online
21
          }
22
        ]
23
      }
24
    case chatActionTypes.SET_UNREAD_MESSAGES:
25
      if (JSON.stringify(payload) !== JSON.stringify(state.unreadMessages)) {
26
        // let newShouldAlertNewMessage;
27
        return {
28
          ...state,
29
          unreadMessages: payload,
30
          haveNewMessage: true
31
        }
32
      } else {
33
        return state
34
      }
35
    case chatActionTypes.SET_NEW_MESSAGE:
36
      return { ...state, haveNewMessage: payload }
37
    case chatActionTypes.SET_SHOULD_ALERT_NEW_MESSAGE:
38
      return { ...state, shouldAlertNewMessage: payload }
39
    default:
40
      return state
41
  }
42
}