Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-10-16 15:09:33 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-10-16 15:09:33 +0300
commit3775eba7c1d41443461e3abcdab2867bbc4636ae (patch)
tree4c1ed52aa0dd296c1608e2d1d6911e86cdf29abf /app/assets/javascripts/emoji
parented7568cc8083a9f8923d1a26bc0d8f60e3f629a3 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/emoji')
-rw-r--r--app/assets/javascripts/emoji/index.js31
1 files changed, 18 insertions, 13 deletions
diff --git a/app/assets/javascripts/emoji/index.js b/app/assets/javascripts/emoji/index.js
index c06ecb3a8d9..4a56843c0b5 100644
--- a/app/assets/javascripts/emoji/index.js
+++ b/app/assets/javascripts/emoji/index.js
@@ -82,6 +82,12 @@ export function getAllEmoji() {
* @returns {Object} The matching emoji.
*/
export function getEmoji(query, fallback = false) {
+ // TODO https://gitlab.com/gitlab-org/gitlab/-/issues/268208
+ const fallbackEmoji = emojiMap.grey_question;
+ if (!query) {
+ return fallback ? fallbackEmoji : null;
+ }
+
if (!emojiMap) {
// eslint-disable-next-line @gitlab/require-i18n-strings
throw new Error('The emoji map is uninitialized or initialization has not completed');
@@ -94,11 +100,7 @@ export function getEmoji(query, fallback = false) {
return emojiMap[name];
}
- if (fallback) {
- return emojiMap.grey_question;
- }
-
- return null;
+ return fallback ? fallbackEmoji : null;
}
const searchMatchers = {
@@ -178,6 +180,15 @@ export function searchEmoji(query, opts) {
raw = false,
} = opts || {};
+ const fallbackEmoji = emojiMap.grey_question;
+ if (!query) {
+ if (fallback) {
+ return raw ? [{ emoji: fallbackEmoji }] : [fallbackEmoji];
+ }
+
+ return [];
+ }
+
// optimization for an exact match in name and alias
if (match === 'exact' && new Set([...fields, 'name', 'alias']).size === 2) {
const emoji = getEmoji(query, fallback);
@@ -193,16 +204,10 @@ export function searchEmoji(query, opts) {
// Fallback to question mark for unknown emojis
if (fallback && results.length === 0) {
- if (raw) {
- return [{ emoji: emojiMap.grey_question }];
- }
- return [emojiMap.grey_question];
+ return raw ? [{ emoji: fallbackEmoji }] : [fallbackEmoji];
}
- if (raw) {
- return results;
- }
- return results.map(r => r.emoji);
+ return raw ? results : results.map(r => r.emoji);
}
let emojiCategoryMap;