From 1822ce89f9d64e30edeea671acb2d1ca79359219 Mon Sep 17 00:00:00 2001 From: Thibaut Girka Date: Sat, 7 Apr 2018 22:05:21 +0200 Subject: [Glitch] retrieve custom emoji list via API instead of before page load Port b08ab329f4d149fd414e0539574f49062c571a8a to glitch-soc --- .../flavours/glitch/reducers/custom_emojis.js | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'app/javascript/flavours/glitch/reducers/custom_emojis.js') diff --git a/app/javascript/flavours/glitch/reducers/custom_emojis.js b/app/javascript/flavours/glitch/reducers/custom_emojis.js index 592cea8dc..90e3040a4 100644 --- a/app/javascript/flavours/glitch/reducers/custom_emojis.js +++ b/app/javascript/flavours/glitch/reducers/custom_emojis.js @@ -1,16 +1,15 @@ -import { List as ImmutableList } from 'immutable'; -import { STORE_HYDRATE } from 'flavours/glitch/actions/store'; +import { List as ImmutableList, fromJS as ConvertToImmutable } from 'immutable'; +import { CUSTOM_EMOJIS_FETCH_SUCCESS } from 'flavours/glitch/actions/custom_emojis'; import { search as emojiSearch } from 'flavours/glitch/util/emoji/emoji_mart_search_light'; import { buildCustomEmojis } from 'flavours/glitch/util/emoji'; -const initialState = ImmutableList(); +const initialState = ImmutableList([]); export default function custom_emojis(state = initialState, action) { - switch(action.type) { - case STORE_HYDRATE: - emojiSearch('', { custom: buildCustomEmojis(action.state.get('custom_emojis', [])) }); - return action.state.get('custom_emojis'); - default: - return state; + if(action.type === CUSTOM_EMOJIS_FETCH_SUCCESS) { + state = ConvertToImmutable(action.custom_emojis); + emojiSearch('', { custom: buildCustomEmojis(state) }); } + + return state; }; -- cgit