Merge pull request #1510 from GetStream/fix/emoji
This commit is contained in:
@@ -1,3 +1,12 @@
|
||||
## Upcoming
|
||||
|
||||
🐞 Fixed
|
||||
|
||||
- [#1502](https://github.com/GetStream/stream-chat-flutter/issues/1502) Fixed `isOnlyEmoji` method Detects Single Hangul
|
||||
Consonants as Emoji.
|
||||
- [#1505](https://github.com/GetStream/stream-chat-flutter/issues/1505) Fixed Message bubble disappears for Hangul
|
||||
Consonants.
|
||||
|
||||
## 6.0.0
|
||||
|
||||
🐞 Fixed
|
||||
|
||||
@@ -34,7 +34,7 @@ extension StringExtension on String {
|
||||
if (trimmedString.isEmpty) return false;
|
||||
if (trimmedString.characters.length > 3) return false;
|
||||
final emojiRegex = RegExp(
|
||||
r'^(\u00a9|\u00ae|[\u2000-\u3300]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])+$',
|
||||
r'^(\u00a9|\u00ae|\u200d|[\ufe00-\ufe0f]|[\u2600-\u27FF]|[\u2300-\u2bFF]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])+$',
|
||||
multiLine: true,
|
||||
caseSensitive: false,
|
||||
);
|
||||
|
||||
@@ -81,6 +81,71 @@ void main() {
|
||||
expect('🌶1'.isOnlyEmoji, false);
|
||||
expect('👨👨👨👨'.isOnlyEmoji, true);
|
||||
expect('👨👨👨👨 '.isOnlyEmoji, true);
|
||||
expect('👨👨👨👨'.isOnlyEmoji, false);
|
||||
expect('⭐⭐⭐'.isOnlyEmoji, true);
|
||||
expect('⭕⭕⭐'.isOnlyEmoji, true);
|
||||
expect('✅'.isOnlyEmoji, true);
|
||||
expect('☺️'.isOnlyEmoji, true);
|
||||
});
|
||||
|
||||
test('Korean vowels', () {
|
||||
expect('ㅏ'.isOnlyEmoji, false);
|
||||
expect('ㅑ'.isOnlyEmoji, false);
|
||||
expect('ㅓ'.isOnlyEmoji, false);
|
||||
expect('ㅕ'.isOnlyEmoji, false);
|
||||
expect('ㅗ'.isOnlyEmoji, false);
|
||||
expect('ㅛ'.isOnlyEmoji, false);
|
||||
expect('ㅜ'.isOnlyEmoji, false);
|
||||
expect('ㅠ'.isOnlyEmoji, false);
|
||||
expect('ㅡ'.isOnlyEmoji, false);
|
||||
expect('ㅣ'.isOnlyEmoji, false);
|
||||
});
|
||||
|
||||
test('Korean consonants', () {
|
||||
expect('ㄱ'.isOnlyEmoji, false);
|
||||
expect('ㄴ'.isOnlyEmoji, false);
|
||||
expect('ㄷ'.isOnlyEmoji, false);
|
||||
expect('ㄹ'.isOnlyEmoji, false);
|
||||
expect('ㅁ'.isOnlyEmoji, false);
|
||||
expect('ㅂ'.isOnlyEmoji, false);
|
||||
expect('ㅅ'.isOnlyEmoji, false);
|
||||
expect('ㅇ'.isOnlyEmoji, false);
|
||||
expect('ㅈ'.isOnlyEmoji, false);
|
||||
expect('ㅊ'.isOnlyEmoji, false);
|
||||
expect('ㅋ'.isOnlyEmoji, false);
|
||||
expect('ㅌ'.isOnlyEmoji, false);
|
||||
expect('ㅍ'.isOnlyEmoji, false);
|
||||
expect('ㅎ'.isOnlyEmoji, false);
|
||||
});
|
||||
|
||||
test('Korean syllables', () {
|
||||
expect('가'.isOnlyEmoji, false);
|
||||
expect('나'.isOnlyEmoji, false);
|
||||
expect('다'.isOnlyEmoji, false);
|
||||
expect('라'.isOnlyEmoji, false);
|
||||
expect('마'.isOnlyEmoji, false);
|
||||
expect('바'.isOnlyEmoji, false);
|
||||
expect('사'.isOnlyEmoji, false);
|
||||
expect('아'.isOnlyEmoji, false);
|
||||
expect('자'.isOnlyEmoji, false);
|
||||
expect('차'.isOnlyEmoji, false);
|
||||
expect('카'.isOnlyEmoji, false);
|
||||
expect('타'.isOnlyEmoji, false);
|
||||
expect('파'.isOnlyEmoji, false);
|
||||
expect('하'.isOnlyEmoji, false);
|
||||
});
|
||||
|
||||
// https://github.com/GetStream/stream-chat-flutter/issues/1502
|
||||
test('Issue:#1502', () {
|
||||
expect('ㄴ'.isOnlyEmoji, false);
|
||||
expect('ㄴㅇ'.isOnlyEmoji, false);
|
||||
expect('ㅇㅋ'.isOnlyEmoji, false);
|
||||
});
|
||||
|
||||
// https://github.com/GetStream/stream-chat-flutter/issues/1505
|
||||
test('Issue:#1505', () {
|
||||
expect('ㅎㅎㅎ'.isOnlyEmoji, false);
|
||||
expect('ㅎㅎㅎㅎ'.isOnlyEmoji, false);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user