about summary refs log tree commit diff
path: root/app/javascript/flavours/glitch/reducers
diff options
context:
space:
mode:
authorbeatrix <beatrix.bitrot@gmail.com>2018-04-22 12:10:48 -0400
committerGitHub <noreply@github.com>2018-04-22 12:10:48 -0400
commit8f1ec48cbe5dddfc082c3fed4ea27b3e77bdc295 (patch)
treeaf9bf35993949471c205abffdf51976ae417294d /app/javascript/flavours/glitch/reducers
parent125e8c7f5aa8e272edad69880b7ded6a200318bd (diff)
parent1822ce89f9d64e30edeea671acb2d1ca79359219 (diff)
Merge pull request #421 from ThibG/glitch-soc/features/custom-emoji-api
[Glitch] retrieve custom emoji list via API instead of before page load
Diffstat (limited to 'app/javascript/flavours/glitch/reducers')
-rw-r--r--app/javascript/flavours/glitch/reducers/custom_emojis.js17
1 files changed, 8 insertions, 9 deletions
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;
 };