Skip to content

Commit 3371ea2

Browse files
refact: Simplify $helper.string.hasEmoji() (#7966)
1 parent 0679671 commit 3371ea2

2 files changed

Lines changed: 4 additions & 7 deletions

File tree

โ€Žpanel/src/helpers/string.hasEmoji.test.jsโ€Ž

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4172,6 +4172,9 @@ describe.concurrent("$helper.string.hasEmoji", () => {
41724172
"๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ",
41734173
"๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ",
41744174
"๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ",
4175+
"๐Ÿ‘ฉ๐Ÿผโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ๐Ÿฟ",
4176+
"๐Ÿปโ€โ„๏ธ",
4177+
"โค๏ธโ€๐Ÿ”ฅ",
41754178
"text with emoji ๐Ÿ˜œ"
41764179
];
41774180
for (const emoji of emojis) {

โ€Žpanel/src/helpers/string.jsโ€Ž

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,7 @@ export function hasEmoji(string) {
7272
return false;
7373
}
7474

75-
// Source: https://thekevinscott.com/emojis-in-javascript/
76-
const result = string.match(
77-
// eslint-disable-next-line no-misleading-character-class
78-
/(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|[\ud83c\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|[\ud83c\ude32-\ude3a]|[\ud83c\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/i
79-
);
80-
81-
return result !== null && result.length !== null;
75+
return /\p{Emoji}/u.test(string);
8276
}
8377

8478
/**

0 commit comments

Comments
ย (0)