Sha256: d2676a41af291e69f30277cac6b6a8fb415eecb14057ad3da297260715cd07e3
Contents?: true
Size: 693 Bytes
Versions: 2
Compression:
Stored size: 693 Bytes
Contents
import { FETCH, CREATE, DELETE, SHOW_ALL } from '../actions/Messages'; const messagesState = { messages: [], loaded: false, showAll: false }; export function messages(state = messagesState, action) { switch (action.type) { case FETCH: return { ...state, messages: action.data, loaded: true }; case CREATE: let newState = state.messages.concat([action.message]); return { ...state, messages: newState }; case DELETE: let index = state.messages.map((x) => x.id).indexOf(action.id); state.messages.splice(index, 1); return { ...state, messages: state.messages }; case SHOW_ALL: return { ...state, showAll: action.data }; default: return state; } }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
denshobato_chat_panel-0.0.2 | lib/react/reducers/Messages.jsx |
denshobato_chat_panel-0.0.1 | lib/react/reducers/Messages.jsx |