From 14c145df7fb5d8523f8378de8df824f5653c9dfb Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 14:39:29 +0530 Subject: [PATCH 01/11] fix: Changed the title to translation key --- assets/emojis.js | 14 +++++++------- src/languages/en.js | 10 ++++++++++ src/languages/es.js | 10 ++++++++++ 3 files changed, 27 insertions(+), 7 deletions(-) diff --git a/assets/emojis.js b/assets/emojis.js index 62c4665218da..5a215276b70a 100644 --- a/assets/emojis.js +++ b/assets/emojis.js @@ -50,7 +50,7 @@ const skinTones = [{ const emojis = [ { - code: 'Smileys & People', + code: 'smileysAndPeople', header: true, }, { @@ -2801,7 +2801,7 @@ const emojis = [ ], }, { - code: 'Animals & Nature', + code: 'animalsAndNature', header: true, }, { @@ -4378,7 +4378,7 @@ const emojis = [ code: CONST.EMOJI_SPACER, }, { - code: 'Travel & Places', + code: 'travelAndPlaces', header: true, }, { @@ -6248,7 +6248,7 @@ const emojis = [ code: CONST.EMOJI_SPACER, }, { - code: 'Activities', + code: 'activities', header: true, }, { @@ -7023,7 +7023,7 @@ const emojis = [ code: CONST.EMOJI_SPACER, }, { - code: 'Objects', + code: 'objects', header: true, }, { @@ -8473,7 +8473,7 @@ const emojis = [ code: CONST.EMOJI_SPACER, }, { - code: 'Symbols', + code: 'symbols', header: true, }, { @@ -10111,7 +10111,7 @@ const emojis = [ code: CONST.EMOJI_SPACER, }, { - code: 'Flags', + code: 'flags', header: true, }, { diff --git a/src/languages/en.js b/src/languages/en.js index 0bd7db28ba67..e15c0b2ed1c9 100755 --- a/src/languages/en.js +++ b/src/languages/en.js @@ -818,6 +818,16 @@ export default { }, emojiPicker: { skinTonePickerLabel: 'Change default skin tone', + headers: { + frequentlyUsed: 'Frequently Used', + smileysAndPeople: 'Smileys & People', + animalsAndNature: 'Animals & Nature', + travelAndPlaces: 'Travel & Places', + activities: 'Activities', + objects: 'Objects', + symbols: 'Symbols', + flags: 'Flags', + }, }, newRoomPage: { newRoom: 'New Room', diff --git a/src/languages/es.js b/src/languages/es.js index 98728a2e9fc2..8077c729396d 100644 --- a/src/languages/es.js +++ b/src/languages/es.js @@ -820,6 +820,16 @@ export default { }, emojiPicker: { skinTonePickerLabel: 'Elige el tono de piel por defecto', + headers: { + frequentlyUsed: 'Frequently Used', + smileysAndPeople: 'Smileys & People', + animalsAndNature: 'Animals & Nature', + travelAndPlaces: 'Travel & Places', + activities: 'Activities', + objects: 'Objects', + symbols: 'Symbols', + flags: 'Flags', + }, }, newRoomPage: { newRoom: 'Nueva sala de chat', From b3ee8323c64fe6303ae6db43f4c1fa90aac07ed5 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 14:39:42 +0530 Subject: [PATCH 02/11] fix: replaced the code with translate function --- src/libs/EmojiUtils.js | 2 +- src/pages/home/report/EmojiPickerMenu/index.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libs/EmojiUtils.js b/src/libs/EmojiUtils.js index e5b8aa812313..eb91090a9901 100644 --- a/src/libs/EmojiUtils.js +++ b/src/libs/EmojiUtils.js @@ -116,7 +116,7 @@ function mergeEmojisWithFrequentlyUsedEmojis(emojis, frequentlyUsedEmojis = []) let allEmojis = [{ header: true, - code: 'Frequently Used', + code: 'frequentlyUsed', }]; allEmojis = allEmojis.concat(getDynamicSpacing(allEmojis.length)); diff --git a/src/pages/home/report/EmojiPickerMenu/index.js b/src/pages/home/report/EmojiPickerMenu/index.js index 019f14ba3b1a..d89088467f66 100755 --- a/src/pages/home/report/EmojiPickerMenu/index.js +++ b/src/pages/home/report/EmojiPickerMenu/index.js @@ -342,7 +342,7 @@ class EmojiPickerMenu extends Component { if (header) { return ( - {code} + {this.props.translate(`emojiPicker.headers.${code}`)} ); } From e9853d48df813e28fe4e09b13fa00ededa81de27 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 14:50:11 +0530 Subject: [PATCH 03/11] fix: Updated translations for es --- src/languages/es.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/languages/es.js b/src/languages/es.js index 8077c729396d..4ffd445dcd16 100644 --- a/src/languages/es.js +++ b/src/languages/es.js @@ -821,14 +821,14 @@ export default { emojiPicker: { skinTonePickerLabel: 'Elige el tono de piel por defecto', headers: { - frequentlyUsed: 'Frequently Used', - smileysAndPeople: 'Smileys & People', - animalsAndNature: 'Animals & Nature', - travelAndPlaces: 'Travel & Places', - activities: 'Activities', - objects: 'Objects', - symbols: 'Symbols', - flags: 'Flags', + frequentlyUsed: 'Usado frecuentemente', + smileysAndPeople: 'Emoticonos y personas', + animalsAndNature: 'Animales y naturaleza', + travelAndPlaces: 'Viajes y lugares', + activities: 'Actividades', + objects: 'Objetos', + symbols: 'Simbolos', + flags: 'Banderas', }, }, newRoomPage: { From a2734a0ee04715291064865acc611589823a6064 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 15:23:56 +0530 Subject: [PATCH 04/11] fix: Added translation to native code as well --- src/pages/home/report/EmojiPickerMenu/index.native.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/home/report/EmojiPickerMenu/index.native.js b/src/pages/home/report/EmojiPickerMenu/index.native.js index 59f49542336c..c54c3e46d1c5 100644 --- a/src/pages/home/report/EmojiPickerMenu/index.native.js +++ b/src/pages/home/report/EmojiPickerMenu/index.native.js @@ -86,7 +86,7 @@ class EmojiPickerMenu extends Component { if (item.header) { return ( - {item.code} + {this.props.translate(`emojiPicker.headers.${item.code}`)} ); } From b57f01c118e7e110c3486da45587895dfb6396f1 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 17:05:13 +0530 Subject: [PATCH 05/11] fix: Added food & drinks --- src/languages/en.js | 1 + src/languages/es.js | 1 + 2 files changed, 2 insertions(+) diff --git a/src/languages/en.js b/src/languages/en.js index e15c0b2ed1c9..c2a12dcdf19f 100755 --- a/src/languages/en.js +++ b/src/languages/en.js @@ -822,6 +822,7 @@ export default { frequentlyUsed: 'Frequently Used', smileysAndPeople: 'Smileys & People', animalsAndNature: 'Animals & Nature', + foodAndDrinks: 'Food & Drinks', travelAndPlaces: 'Travel & Places', activities: 'Activities', objects: 'Objects', diff --git a/src/languages/es.js b/src/languages/es.js index 4ffd445dcd16..fd55beec2bf4 100644 --- a/src/languages/es.js +++ b/src/languages/es.js @@ -824,6 +824,7 @@ export default { frequentlyUsed: 'Usado frecuentemente', smileysAndPeople: 'Emoticonos y personas', animalsAndNature: 'Animales y naturaleza', + foodAndDrinks: 'Alimentos y bebidas', travelAndPlaces: 'Viajes y lugares', activities: 'Actividades', objects: 'Objetos', From 2aa425fda8bbe6fdf2aa474d0381cd496524f114 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 17:05:57 +0530 Subject: [PATCH 06/11] fix: Added dynamic spacing for category names --- src/libs/EmojiUtils.js | 29 +++++++++++++++---- .../home/report/EmojiPickerMenu/index.js | 2 +- .../report/EmojiPickerMenu/index.native.js | 2 +- 3 files changed, 26 insertions(+), 7 deletions(-) diff --git a/src/libs/EmojiUtils.js b/src/libs/EmojiUtils.js index eb91090a9901..e12d4bd7f59f 100644 --- a/src/libs/EmojiUtils.js +++ b/src/libs/EmojiUtils.js @@ -89,20 +89,40 @@ function getDynamicHeaderIndices(emojis) { /** * Get number of empty spaces to be filled to get equal emojis for every row * @param {Number} emojiCount + * @param {Number} suffix * @returns {Object[]} */ -function getDynamicSpacing(emojiCount) { +function getDynamicSpacing(emojiCount, suffix) { const spacerEmojis = []; let modLength = CONST.EMOJI_NUM_PER_ROW - (emojiCount % CONST.EMOJI_NUM_PER_ROW); while (modLength > 0) { spacerEmojis.push({ - code: CONST.EMOJI_SPACER, + code: `${CONST.EMOJI_SPACER}_${suffix}_${modLength}`, + spacer: true, }); modLength -= 1; } return spacerEmojis; } +/** + * Add dynamic spaces to emoji categories + * @param {Object[]} emojis + * @returns {Object[]} + */ +function addSpacesToEmojiCategories(emojis) { + let updatedEmojis = []; + emojis.forEach((emoji, index) => { + if (emoji.header) { + updatedEmojis = updatedEmojis.concat(getDynamicSpacing(updatedEmojis.length, index), [emoji], getDynamicSpacing(1, index)); + } else { + updatedEmojis.push(emoji); + } + }); + return updatedEmojis; +} + + /** * Get a merged array with frequently used emojis * @param {Object[]} emojis @@ -119,9 +139,8 @@ function mergeEmojisWithFrequentlyUsedEmojis(emojis, frequentlyUsedEmojis = []) code: 'frequentlyUsed', }]; - allEmojis = allEmojis.concat(getDynamicSpacing(allEmojis.length)); - allEmojis = allEmojis.concat(frequentlyUsedEmojis, getDynamicSpacing(frequentlyUsedEmojis.length)); - allEmojis = allEmojis.concat(emojis); + allEmojis = allEmojis.concat(frequentlyUsedEmojis, emojis); + allEmojis = addSpacesToEmojiCategories(emojis); return allEmojis; } diff --git a/src/pages/home/report/EmojiPickerMenu/index.js b/src/pages/home/report/EmojiPickerMenu/index.js index d89088467f66..e189218f7087 100755 --- a/src/pages/home/report/EmojiPickerMenu/index.js +++ b/src/pages/home/report/EmojiPickerMenu/index.js @@ -335,7 +335,7 @@ class EmojiPickerMenu extends Component { */ renderItem({item, index}) { const {code, header, types} = item; - if (code === CONST.EMOJI_SPACER) { + if (item.spacer) { return null; } diff --git a/src/pages/home/report/EmojiPickerMenu/index.native.js b/src/pages/home/report/EmojiPickerMenu/index.native.js index c54c3e46d1c5..69320bd4baf5 100644 --- a/src/pages/home/report/EmojiPickerMenu/index.native.js +++ b/src/pages/home/report/EmojiPickerMenu/index.native.js @@ -79,7 +79,7 @@ class EmojiPickerMenu extends Component { */ renderItem({item}) { const {code, types} = item; - if (item.code === CONST.EMOJI_SPACER) { + if (item.spacer) { return null; } From 1aecb6b23152205d003666e796ff96f4143d55f3 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 17:07:18 +0530 Subject: [PATCH 07/11] fix: Removed hardcoded spaces and added new category --- assets/emojis.js | 232 +---------------------------------------------- 1 file changed, 4 insertions(+), 228 deletions(-) diff --git a/assets/emojis.js b/assets/emojis.js index 5a215276b70a..af01a606a6ca 100644 --- a/assets/emojis.js +++ b/assets/emojis.js @@ -53,27 +53,6 @@ const emojis = [ code: 'smileysAndPeople', header: true, }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: '😀', keywords: [ @@ -2804,27 +2783,6 @@ const emojis = [ code: 'animalsAndNature', header: true, }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: '🐵', keywords: [ @@ -3615,6 +3573,10 @@ const emojis = [ 'wind', ], }, + { + code: 'foodAndDrinks', + header: true, + }, { code: '🍇', keywords: [ @@ -4365,43 +4327,10 @@ const emojis = [ 'zodiac', ], }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: 'travelAndPlaces', header: true, }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: '🌍', keywords: [ @@ -6226,52 +6155,10 @@ const emojis = [ 'weather', ], }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: 'activities', header: true, }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: '🎃', keywords: [ @@ -7010,43 +6897,10 @@ const emojis = [ 'playing', ], }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: 'objects', header: true, }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: '🔇', keywords: [ @@ -8454,49 +8308,10 @@ const emojis = [ 'trolley', ], }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: 'symbols', header: true, }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: '🏧', keywords: [ @@ -10092,49 +9907,10 @@ const emojis = [ 'geometric', ], }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: 'flags', header: true, }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, - { - code: CONST.EMOJI_SPACER, - }, { code: '🏁', keywords: [ From ea2c6bdbf2068607f36fc9447d8d3d03b0513381 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Tue, 11 Jan 2022 22:54:31 +0530 Subject: [PATCH 08/11] fix: Code cleanup --- src/libs/EmojiUtils.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/libs/EmojiUtils.js b/src/libs/EmojiUtils.js index e12d4bd7f59f..aa7b42b9f857 100644 --- a/src/libs/EmojiUtils.js +++ b/src/libs/EmojiUtils.js @@ -112,7 +112,7 @@ function getDynamicSpacing(emojiCount, suffix) { */ function addSpacesToEmojiCategories(emojis) { let updatedEmojis = []; - emojis.forEach((emoji, index) => { + _.each(emojis, (emoji, index) => { if (emoji.header) { updatedEmojis = updatedEmojis.concat(getDynamicSpacing(updatedEmojis.length, index), [emoji], getDynamicSpacing(1, index)); } else { @@ -175,11 +175,8 @@ function addToFrequentlyUsedEmojis(frequentlyUsedEmojis, newEmoji) { export { - getEmojiUnicode, - trimEmojiUnicode, isSingleEmoji, getDynamicHeaderIndices, - getDynamicSpacing, mergeEmojisWithFrequentlyUsedEmojis, addToFrequentlyUsedEmojis, }; From 39853fb7d247f31c87c0aef829805da2bfe86613 Mon Sep 17 00:00:00 2001 From: Manan Date: Wed, 12 Jan 2022 17:48:47 +0530 Subject: [PATCH 09/11] fix: Updated spanish translation Co-authored-by: Ionatan Wiznia --- src/languages/es.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/languages/es.js b/src/languages/es.js index f538ae20a7cb..f2ad38cfd65c 100644 --- a/src/languages/es.js +++ b/src/languages/es.js @@ -847,7 +847,7 @@ export default { travelAndPlaces: 'Viajes y lugares', activities: 'Actividades', objects: 'Objetos', - symbols: 'Simbolos', + symbols: 'Símbolos', flags: 'Banderas', }, }, From deb283db9be45810be252dc04a9920f12ac4df6a Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Wed, 12 Jan 2022 21:10:52 +0530 Subject: [PATCH 10/11] fix: Add dynamic spaces when no frequently used emojis exist --- src/libs/EmojiUtils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libs/EmojiUtils.js b/src/libs/EmojiUtils.js index aa7b42b9f857..2123a153f3df 100644 --- a/src/libs/EmojiUtils.js +++ b/src/libs/EmojiUtils.js @@ -131,7 +131,7 @@ function addSpacesToEmojiCategories(emojis) { */ function mergeEmojisWithFrequentlyUsedEmojis(emojis, frequentlyUsedEmojis = []) { if (frequentlyUsedEmojis.length === 0) { - return emojis; + return addSpacesToEmojiCategories(emojis); } let allEmojis = [{ From dcf4dde1b0b6ad3fb52dcee19686c8aaadff5608 Mon Sep 17 00:00:00 2001 From: Manan Jadhav Date: Wed, 12 Jan 2022 21:16:55 +0530 Subject: [PATCH 11/11] fix: Added early return --- src/libs/EmojiUtils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libs/EmojiUtils.js b/src/libs/EmojiUtils.js index 2123a153f3df..1f1fe18961de 100644 --- a/src/libs/EmojiUtils.js +++ b/src/libs/EmojiUtils.js @@ -115,9 +115,9 @@ function addSpacesToEmojiCategories(emojis) { _.each(emojis, (emoji, index) => { if (emoji.header) { updatedEmojis = updatedEmojis.concat(getDynamicSpacing(updatedEmojis.length, index), [emoji], getDynamicSpacing(1, index)); - } else { - updatedEmojis.push(emoji); + return; } + updatedEmojis.push(emoji); }); return updatedEmojis; }