UNPKG

@randy.tarampi/jsx

Version:

Some common JSX components for www.randytarampi.ca

23 lines (20 loc) 835 B
import { Map } from "immutable"; import { CLEAR_EMOJI } from "../actions/emoji/clearEmoji"; import { INSTANTIATE_EMOJI } from "../actions/emoji/instantiateEmoji"; import { UPDATE_EMOJI } from "../actions/emoji/updateEmoji"; export var emojiReducer = function emojiReducer() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Map(); var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case INSTANTIATE_EMOJI: case UPDATE_EMOJI: return state.set(action.payload.id, action.payload); case CLEAR_EMOJI: return state.delete(action.payload.id); default: return state; } }; export default emojiReducer; export var getEmoji = (state, emojiId) => state.get(emojiId); export var hasEmoji = (state, emojiId) => !!getEmoji(state, emojiId);