stream-chat-react-native-core 5.25.0-beta.1 → 5.25.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  2. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  3. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +1 -1
  4. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  5. package/lib/commonjs/components/Channel/Channel.js +16 -13
  6. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  7. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -0
  8. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  9. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +4 -2
  10. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  11. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -0
  12. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  13. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  14. package/lib/commonjs/emoji-data/compile.js +63 -11
  15. package/lib/commonjs/emoji-data/compile.js.map +1 -1
  16. package/lib/commonjs/emoji-data/index.js +9843 -37
  17. package/lib/commonjs/emoji-data/index.js.map +1 -1
  18. package/lib/commonjs/i18n/en.json +1 -1
  19. package/lib/commonjs/i18n/es.json +46 -46
  20. package/lib/commonjs/i18n/fr.json +46 -46
  21. package/lib/commonjs/i18n/he.json +46 -46
  22. package/lib/commonjs/i18n/hi.json +46 -46
  23. package/lib/commonjs/i18n/it.json +46 -46
  24. package/lib/commonjs/i18n/ja.json +46 -46
  25. package/lib/commonjs/i18n/ko.json +46 -46
  26. package/lib/commonjs/i18n/nl.json +46 -46
  27. package/lib/commonjs/i18n/ru.json +47 -47
  28. package/lib/commonjs/i18n/tr.json +46 -46
  29. package/lib/commonjs/index.js +4 -4
  30. package/lib/commonjs/index.js.map +1 -1
  31. package/lib/commonjs/utils/utils.js +84 -31
  32. package/lib/commonjs/utils/utils.js.map +1 -1
  33. package/lib/commonjs/version.json +1 -1
  34. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  35. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  36. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +1 -1
  37. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  38. package/lib/module/components/Channel/Channel.js +16 -13
  39. package/lib/module/components/Channel/Channel.js.map +1 -1
  40. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -0
  41. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  42. package/lib/module/contexts/messageInputContext/MessageInputContext.js +4 -2
  43. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  44. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -0
  45. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  46. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  47. package/lib/module/emoji-data/compile.js +63 -11
  48. package/lib/module/emoji-data/compile.js.map +1 -1
  49. package/lib/module/emoji-data/index.js +9843 -37
  50. package/lib/module/emoji-data/index.js.map +1 -1
  51. package/lib/module/i18n/en.json +1 -1
  52. package/lib/module/i18n/es.json +46 -46
  53. package/lib/module/i18n/fr.json +46 -46
  54. package/lib/module/i18n/he.json +46 -46
  55. package/lib/module/i18n/hi.json +46 -46
  56. package/lib/module/i18n/it.json +46 -46
  57. package/lib/module/i18n/ja.json +46 -46
  58. package/lib/module/i18n/ko.json +46 -46
  59. package/lib/module/i18n/nl.json +46 -46
  60. package/lib/module/i18n/ru.json +47 -47
  61. package/lib/module/i18n/tr.json +46 -46
  62. package/lib/module/index.js +4 -4
  63. package/lib/module/index.js.map +1 -1
  64. package/lib/module/utils/utils.js +84 -31
  65. package/lib/module/utils/utils.js.map +1 -1
  66. package/lib/module/version.json +1 -1
  67. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
  68. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +9 -1
  69. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
  70. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +1 -1
  71. package/lib/typescript/emoji-data/index.d.ts +9 -0
  72. package/lib/typescript/i18n/en.json +1 -1
  73. package/lib/typescript/i18n/es.json +46 -46
  74. package/lib/typescript/i18n/fr.json +46 -46
  75. package/lib/typescript/i18n/he.json +46 -46
  76. package/lib/typescript/i18n/hi.json +46 -46
  77. package/lib/typescript/i18n/it.json +46 -46
  78. package/lib/typescript/i18n/ja.json +46 -46
  79. package/lib/typescript/i18n/ko.json +46 -46
  80. package/lib/typescript/i18n/nl.json +46 -46
  81. package/lib/typescript/i18n/ru.json +47 -47
  82. package/lib/typescript/i18n/tr.json +46 -46
  83. package/lib/typescript/index.d.ts +1 -1
  84. package/lib/typescript/utils/utils.d.ts +9 -4
  85. package/package.json +3 -2
  86. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +1 -1
  87. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +1 -1
  88. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +1 -1
  89. package/src/components/Channel/Channel.tsx +3 -0
  90. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +2 -0
  91. package/src/contexts/messageInputContext/MessageInputContext.tsx +12 -0
  92. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +2 -0
  93. package/src/contexts/suggestionsContext/SuggestionsContext.tsx +1 -1
  94. package/src/emoji-data/compile.js +56 -36
  95. package/src/emoji-data/index.ts +5178 -0
  96. package/src/i18n/en.json +1 -1
  97. package/src/i18n/es.json +46 -46
  98. package/src/i18n/fr.json +46 -46
  99. package/src/i18n/he.json +46 -46
  100. package/src/i18n/hi.json +46 -46
  101. package/src/i18n/it.json +46 -46
  102. package/src/i18n/ja.json +46 -46
  103. package/src/i18n/ko.json +46 -46
  104. package/src/i18n/nl.json +46 -46
  105. package/src/i18n/ru.json +47 -47
  106. package/src/i18n/tr.json +46 -46
  107. package/src/index.ts +1 -1
  108. package/src/utils/utils.ts +47 -33
  109. package/src/version.json +1 -1
  110. package/lib/commonjs/emoji-data/compiled.js +0 -15587
  111. package/lib/commonjs/emoji-data/compiled.js.map +0 -1
  112. package/lib/commonjs/emoji-data/emojiNames.js +0 -4913
  113. package/lib/commonjs/emoji-data/emojiNames.js.map +0 -1
  114. package/lib/commonjs/emoji-data/emojis.js +0 -13155
  115. package/lib/commonjs/emoji-data/emojis.js.map +0 -1
  116. package/lib/module/emoji-data/compiled.js +0 -15587
  117. package/lib/module/emoji-data/compiled.js.map +0 -1
  118. package/lib/module/emoji-data/emojiNames.js +0 -4913
  119. package/lib/module/emoji-data/emojiNames.js.map +0 -1
  120. package/lib/module/emoji-data/emojis.js +0 -13155
  121. package/lib/module/emoji-data/emojis.js.map +0 -1
  122. package/lib/typescript/emoji-data/compiled.d.ts +0 -20
  123. package/lib/typescript/emoji-data/emojiNames.d.ts +0 -0
  124. package/lib/typescript/emoji-data/emojis.d.ts +0 -0
  125. package/src/emoji-data/compiled.ts +0 -8930
  126. package/src/emoji-data/emojiNames.ts +0 -6960
  127. package/src/emoji-data/emojis.ts +0 -14893
  128. package/src/emoji-data/index.js +0 -38
package/src/i18n/ru.json CHANGED
@@ -1,21 +1,21 @@
1
1
  {
2
- "1 Reply": "",
3
- "1 Thread Reply": "",
4
- "Allow access to your Gallery": "",
5
- "Allow camera access in device settings": "",
2
+ "1 Reply": "1 Ответ",
3
+ "1 Thread Reply": "1 тема Ответить",
4
+ "Allow access to your Gallery": "Разрешить доступ к вашей галерее",
5
+ "Allow camera access in device settings": "Разрешите доступ к камере в настройках устройства.",
6
6
  "Also send to channel": "",
7
- "Are you sure you want to permanently delete this message?": "Вы действительно хотите удалить это сообщение без возможности восстановления?",
7
+ "Are you sure you want to permanently delete this message?": "",
8
8
  "Are you sure?": "",
9
- "Block User": "Заблокировать пользователя",
10
- "Cancel": "Отмена",
11
- "Cannot Flag Message": "Невозможно пожаловаться на сообщение",
9
+ "Block User": "",
10
+ "Cancel": "",
11
+ "Cannot Flag Message": "",
12
12
  "Consider how your comment might make others feel and be sure to follow our Community Guidelines": "",
13
- "Copy Message": "Копировать сообщение",
14
- "Delete": "удалять",
15
- "Delete Message": "Удалить сообщение",
16
- "Device camera is used to take photos or videos.": "",
17
- "Do you want to send a copy of this message to a moderator for further investigation?": "Вы хотите отправить копию этого сообщения модератору для дальнейшего изучения?",
18
- "Edit Message": "Редактировать сообщение",
13
+ "Copy Message": "",
14
+ "Delete": "",
15
+ "Delete Message": "",
16
+ "Device camera is used to take photos or videos.": "Камера устройства используется для съемки фотографий или видео.",
17
+ "Do you want to send a copy of this message to a moderator for further investigation?": "",
18
+ "Edit Message": "",
19
19
  "Editing Message": "",
20
20
  "Emoji matching": "",
21
21
  "Empty message...": "",
@@ -23,57 +23,57 @@
23
23
  "Error loading channel list...": "",
24
24
  "Error loading messages for this channel...": "",
25
25
  "Error while loading, please reload/refresh": "",
26
- "File type not supported": "",
27
- "Flag": "Пометить",
28
- "Flag Message": "Пометить сообщение",
29
- "Flag action failed either due to a network issue or the message is already flagged": "Не удалось отправить жалобу. Возможные причины: проблема с подключением к интернету или ваша жалоба уже была принята.",
26
+ "File type not supported": "Тип файла не поддерживается",
27
+ "Flag": "",
28
+ "Flag Message": "",
29
+ "Flag action failed either due to a network issue or the message is already flagged": "",
30
30
  "How about sending your first message to a friend?": "",
31
31
  "Instant Commands": "",
32
32
  "Let's start chatting!": "",
33
33
  "Links are disabled": "",
34
- "Loading channels...": "Загружаю каналы...",
35
- "Loading messages...": "Загружаю сообщения...",
36
- "Loading...": "Загружаю...",
34
+ "Loading channels...": "",
35
+ "Loading messages...": "",
36
+ "Loading...": "",
37
37
  "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
38
38
  "Message Reactions": "",
39
39
  "Message deleted": "",
40
- "Message flagged": "Сообщение отмечено",
41
- "Mute User": "Отключить пользователя",
42
- "Not supported": "",
40
+ "Message flagged": "",
41
+ "Mute User": "",
42
+ "Not supported": "не поддерживается",
43
43
  "Nothing yet...": "",
44
- "Ok": "",
44
+ "Ok": "",
45
45
  "Only visible to you": "",
46
- "Open Settings": "",
47
- "Photo": "Фото",
48
- "Photos and Videos": "",
49
- "Pin to Conversation": "Закрепить к беседе",
46
+ "Open Settings": "Открыть настройки",
47
+ "Photo": "",
48
+ "Photos and Videos": "Фото и видео",
49
+ "Pin to Conversation": "",
50
50
  "Pinned by": "",
51
- "Please enable access to your photos and videos so you can share them.": "",
51
+ "Please enable access to your photos and videos so you can share them.": "Разрешите доступ к своим фотографиям и видео, чтобы вы могли ими поделиться.",
52
52
  "Please select a channel first": "Пожалуйста, сначала выберите канал",
53
53
  "Reconnecting...": "",
54
- "Reply": "Ответить",
55
- "Reply to Message": "",
56
- "Resend": "Отправить",
57
- "Search GIFs": "",
58
- "Select More Photos": "",
54
+ "Reply": "",
55
+ "Reply to Message": "Ответить на сообщение",
56
+ "Resend": "",
57
+ "Search GIFs": "Поиск GIF",
58
+ "Select More Photos": "Выбрать больше фотографий",
59
59
  "Send Anyway": "",
60
- "Send a message": "",
60
+ "Send a message": "Отправить сообщение",
61
61
  "Sending links is not allowed in this conversation": "",
62
- "Slow mode ON": "",
63
- "The message has been reported to a moderator.": "Сообщение отправлено модератору.",
64
- "Thread Reply": "Тема Ответить",
65
- "Unblock User": "Разблокировать пользователя",
66
- "Unknown User": "",
67
- "Unmute User": "Включить микрофон",
68
- "Unpin from Conversation": "Открепить от беседы",
62
+ "Slow mode ON": "Медленный режим включен",
63
+ "The message has been reported to a moderator.": "",
64
+ "Thread Reply": "",
65
+ "Unblock User": "",
66
+ "Unknown User": "Неизвестный пользователь",
67
+ "Unmute User": "",
68
+ "Unpin from Conversation": "",
69
69
  "Unread Messages": "",
70
- "Video": "видео",
70
+ "Video": "",
71
71
  "You": "",
72
72
  "You can't send messages in this channel": "",
73
73
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} и еще {{ nonSelfUserLength }} пишут",
74
- "{{ index }} of {{ photoLength }}": "",
75
- "{{ replyCount }} Replies": "",
76
- "{{ replyCount }} Thread Replies": "",
74
+ "{{ index }} of {{ photoLength }}": "{{ index }} из {{ photoLength }}",
75
+ "{{ replyCount }} Replies": "{{ replyCount }} Ответов",
76
+ "{{ replyCount }} Thread Replies": "{{replyCount}} Ответы в темах",
77
77
  "{{ user }} is typing": "{{ user }} пишет",
78
78
  "🏙 Attachment...": ""
79
79
  }
package/src/i18n/tr.json CHANGED
@@ -1,21 +1,21 @@
1
1
  {
2
- "1 Reply": "",
3
- "1 Thread Reply": "",
4
- "Allow access to your Gallery": "",
5
- "Allow camera access in device settings": "",
2
+ "1 Reply": "1 Cevap",
3
+ "1 Thread Reply": "1 Konu Yanıtı",
4
+ "Allow access to your Gallery": "Galerinize erişime izin verin",
5
+ "Allow camera access in device settings": "Cihaz ayarlarında kamera erişimine izin ver",
6
6
  "Also send to channel": "",
7
- "Are you sure you want to permanently delete this message?": "Bu mesajı kalıcı olarak silmek istediğinizden emin misiniz?",
7
+ "Are you sure you want to permanently delete this message?": "",
8
8
  "Are you sure?": "",
9
- "Block User": "Kullanıcıyı engelle",
10
- "Cancel": "İptal",
11
- "Cannot Flag Message": "Raporlama Başarısız",
9
+ "Block User": "",
10
+ "Cancel": "",
11
+ "Cannot Flag Message": "",
12
12
  "Consider how your comment might make others feel and be sure to follow our Community Guidelines": "",
13
- "Copy Message": "Mesajı Kopyala",
14
- "Delete": "Sil",
15
- "Delete Message": "Mesajı Sil",
16
- "Device camera is used to take photos or videos.": "",
17
- "Do you want to send a copy of this message to a moderator for further investigation?": "Detaylı inceleme için bu mesajın kopyasını moderatöre göndermek istiyor musunuz?",
18
- "Edit Message": "Mesajı Düzenle",
13
+ "Copy Message": "",
14
+ "Delete": "",
15
+ "Delete Message": "",
16
+ "Device camera is used to take photos or videos.": "Cihaz kamerası fotoğraf veya video çekmek için kullanılır.",
17
+ "Do you want to send a copy of this message to a moderator for further investigation?": "",
18
+ "Edit Message": "",
19
19
  "Editing Message": "",
20
20
  "Emoji matching": "",
21
21
  "Empty message...": "",
@@ -23,57 +23,57 @@
23
23
  "Error loading channel list...": "",
24
24
  "Error loading messages for this channel...": "",
25
25
  "Error while loading, please reload/refresh": "",
26
- "File type not supported": "",
27
- "Flag": "Raporla",
28
- "Flag Message": "Mesajı Raporla",
29
- "Flag action failed either due to a network issue or the message is already flagged": "Mesajın daha önce raporlanmış olması veya bir ağ bağlantısı sorunu nedeniyle raporlama işlemi başarısız oldu.",
26
+ "File type not supported": "Dosya türü desteklenmiyor",
27
+ "Flag": "",
28
+ "Flag Message": "",
29
+ "Flag action failed either due to a network issue or the message is already flagged": "",
30
30
  "How about sending your first message to a friend?": "",
31
31
  "Instant Commands": "",
32
32
  "Let's start chatting!": "",
33
33
  "Links are disabled": "",
34
- "Loading channels...": "Kanallar yükleniyor...",
35
- "Loading messages...": "Mesajlar yükleniyor...",
36
- "Loading...": "Yükleniyor...",
34
+ "Loading channels...": "",
35
+ "Loading messages...": "",
36
+ "Loading...": "",
37
37
  "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
38
38
  "Message Reactions": "",
39
39
  "Message deleted": "",
40
- "Message flagged": "Mesaj işaretlendi",
41
- "Mute User": "Kullanıcıyı sessize al",
40
+ "Message flagged": "",
41
+ "Mute User": "",
42
42
  "Not supported": "",
43
43
  "Nothing yet...": "",
44
- "Ok": "Tamam",
44
+ "Ok": "",
45
45
  "Only visible to you": "",
46
- "Open Settings": "",
47
- "Photo": "Fotoğraf",
48
- "Photos and Videos": "",
49
- "Pin to Conversation": "Konuşmaya sabitle",
46
+ "Open Settings": "Ayarları aç",
47
+ "Photo": "",
48
+ "Photos and Videos": "Fotoğraflar ve Videolar",
49
+ "Pin to Conversation": "",
50
50
  "Pinned by": "",
51
- "Please enable access to your photos and videos so you can share them.": "",
51
+ "Please enable access to your photos and videos so you can share them.": "Paylaşım yapabilmek için lutfen fotoğraflarınıza ve videolarınıza erişimi etkinleştirin.",
52
52
  "Please select a channel first": "Lütfen önce bir kanal seçiniz",
53
53
  "Reconnecting...": "",
54
- "Reply": "Yanıtla",
55
- "Reply to Message": "",
56
- "Resend": "Yeniden gönder",
57
- "Search GIFs": "",
58
- "Select More Photos": "",
54
+ "Reply": "",
55
+ "Reply to Message": "Mesajı Yanıtla",
56
+ "Resend": "",
57
+ "Search GIFs": "GIF Ara",
58
+ "Select More Photos": "Daha Fazla Fotoğraf Seçin",
59
59
  "Send Anyway": "",
60
- "Send a message": "",
60
+ "Send a message": "Mesaj gönder",
61
61
  "Sending links is not allowed in this conversation": "",
62
- "Slow mode ON": "",
63
- "The message has been reported to a moderator.": "Mesaj moderatöre bildirildi.",
64
- "Thread Reply": "Konu Yanıtı",
65
- "Unblock User": "Kullanıcının engelini kaldır",
66
- "Unknown User": "",
67
- "Unmute User": "Kullanıcının sesini aç",
68
- "Unpin from Conversation": "Sabitlemeyi kaldır",
62
+ "Slow mode ON": "Yavaş Mod Açık",
63
+ "The message has been reported to a moderator.": "",
64
+ "Thread Reply": "",
65
+ "Unblock User": "",
66
+ "Unknown User": "Bilinmeyen kullanıcı",
67
+ "Unmute User": "",
68
+ "Unpin from Conversation": "",
69
69
  "Unread Messages": "",
70
- "Video": "Video",
70
+ "Video": "",
71
71
  "You": "",
72
72
  "You can't send messages in this channel": "",
73
73
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} ve {{ nonSelfUserLength }} kişi daha yazıyor",
74
- "{{ index }} of {{ photoLength }}": "",
75
- "{{ replyCount }} Replies": "",
76
- "{{ replyCount }} Thread Replies": "",
74
+ "{{ index }} of {{ photoLength }}": "{{ index }} / {{ photoLength }}",
75
+ "{{ replyCount }} Replies": "{{ replyCount }} Cevap",
76
+ "{{ replyCount }} Thread Replies": "{{responseCount}} Konu Cevapı",
77
77
  "{{ user }} is typing": "{{ user }} yazıyor",
78
78
  "🏙 Attachment...": ""
79
79
  }
package/src/index.ts CHANGED
@@ -2,7 +2,7 @@ export * from './components';
2
2
  export * from './hooks';
3
3
  export { registerNativeHandlers, NetInfo } from './native';
4
4
  export * from './contexts';
5
- export * from './emoji-data/compiled';
5
+ export * from './emoji-data';
6
6
 
7
7
  export * from './icons';
8
8
 
@@ -14,13 +14,16 @@ import type {
14
14
  } from 'stream-chat';
15
15
 
16
16
  import type { MessageType } from '../components/MessageList/hooks/useMessageList';
17
- import type { MentionAllAppUsersQuery } from '../contexts/messageInputContext/MessageInputContext';
17
+ import type {
18
+ EmojiSearchIndex,
19
+ MentionAllAppUsersQuery,
20
+ } from '../contexts/messageInputContext/MessageInputContext';
18
21
  import type {
19
22
  SuggestionCommand,
20
23
  SuggestionComponentType,
21
24
  SuggestionUser,
22
25
  } from '../contexts/suggestionsContext/SuggestionsContext';
23
- import { compiledEmojis, Emoji } from '../emoji-data/compiled';
26
+ import { compiledEmojis, Emoji } from '../emoji-data';
24
27
  import type { IconProps } from '../icons/utils/base';
25
28
  import type { TableRowJoinedUser } from '../store/types';
26
29
  import type { DefaultStreamChatGenerics, ValueOf } from '../types/types';
@@ -287,7 +290,7 @@ export type TriggerSettings<
287
290
  query: Emoji['name'],
288
291
  _: string,
289
292
  onReady?: (data: Emoji[], q: Emoji['name']) => void,
290
- ) => Emoji[];
293
+ ) => Emoji[] | Promise<Emoji[]>;
291
294
  output: (entity: Emoji) => {
292
295
  caretPosition: string;
293
296
  key: string;
@@ -325,6 +328,7 @@ export type ACITriggerSettingsParams<
325
328
  channel: Channel<StreamChatGenerics>;
326
329
  client: StreamChat<StreamChatGenerics>;
327
330
  onMentionSelectItem: (item: SuggestionUser<StreamChatGenerics>) => void;
331
+ emojiSearchIndex?: EmojiSearchIndex;
328
332
  };
329
333
 
330
334
  export type QueryUsersFunction<
@@ -350,6 +354,41 @@ export type QueryMembersFunction<
350
354
  },
351
355
  ) => Promise<void>;
352
356
 
357
+ /**
358
+ * Default emoji search index for auto complete text input
359
+ */
360
+ export const defaultEmojiSearchIndex: EmojiSearchIndex = {
361
+ search: (query) => {
362
+ const results = [];
363
+
364
+ for (const emoji of compiledEmojis) {
365
+ if (results.length >= 10) return results;
366
+ if (emoji.names.some((name) => name.includes(query))) {
367
+ // Aggregate skins as different toned emojis - if skins are present
368
+ if (emoji.skins) {
369
+ results.push({
370
+ ...emoji,
371
+ name: `${emoji.name}-tone-1`,
372
+ skins: undefined,
373
+ });
374
+ emoji.skins.forEach((tone, index) =>
375
+ results.push({
376
+ ...emoji,
377
+ name: `${emoji.name}-tone-${index + 2}`,
378
+ skins: undefined,
379
+ unicode: tone,
380
+ }),
381
+ );
382
+ } else {
383
+ results.push(emoji);
384
+ }
385
+ }
386
+ }
387
+
388
+ return results;
389
+ },
390
+ };
391
+
353
392
  /**
354
393
  * ACI = AutoCompleteInput
355
394
  *
@@ -366,6 +405,7 @@ export const ACITriggerSettings = <
366
405
  >({
367
406
  channel,
368
407
  client,
408
+ emojiSearchIndex,
369
409
  onMentionSelectItem,
370
410
  }: ACITriggerSettingsParams<StreamChatGenerics>): TriggerSettings<StreamChatGenerics> => ({
371
411
  '/': {
@@ -409,42 +449,16 @@ export const ACITriggerSettings = <
409
449
  type: 'command',
410
450
  },
411
451
  ':': {
412
- dataProvider: (query, _, onReady) => {
452
+ dataProvider: async (query, _, onReady) => {
413
453
  if (!query) return [];
414
454
 
415
- const result = compiledEmojis.emojiArray.reduce((acc, cur) => {
416
- if (acc.length >= 10) return acc;
417
-
418
- if (cur.names.some((name) => name.includes(query))) {
419
- const emoji = compiledEmojis.emojiLib[cur.name];
420
- // Since there can be no emojiLib for the current name we need to check for it being undefined
421
- if (emoji?.skin_variations) {
422
- acc.push({
423
- ...emoji,
424
- name: `${emoji.name}-tone-1`,
425
- skin_variations: undefined,
426
- });
427
- emoji.skin_variations.forEach((tone, index) =>
428
- acc.push({
429
- ...emoji,
430
- name: `${emoji.name}-tone-${index + 2}`,
431
- skin_variations: undefined,
432
- unicode: tone,
433
- }),
434
- );
435
- } else if (emoji) {
436
- acc.push(emoji);
437
- }
438
- }
439
-
440
- return acc;
441
- }, [] as Emoji[]);
455
+ const emojis = (await emojiSearchIndex?.search(query)) ?? [];
442
456
 
443
457
  if (onReady) {
444
- onReady(result, query);
458
+ onReady(emojis, query);
445
459
  }
446
460
 
447
- return result;
461
+ return emojis;
448
462
  },
449
463
  output: (entity) => ({
450
464
  caretPosition: 'next',
package/src/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "5.25.0-beta.1"
2
+ "version": "5.25.0-beta.2"
3
3
  }