stream-chat-react-native-core 9.4.0-beta.9 → 9.4.0

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 (620) hide show
  1. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +7 -0
  2. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  3. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +2 -0
  4. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  5. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +41 -55
  6. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  7. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +27 -7
  8. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  9. package/lib/commonjs/components/AutoCompleteInput/mentionItems/EnhancedMentionContent.js +55 -0
  10. package/lib/commonjs/components/AutoCompleteInput/mentionItems/EnhancedMentionContent.js.map +1 -0
  11. package/lib/commonjs/components/AutoCompleteInput/mentionItems/EnhancedMentionIcon.js +47 -0
  12. package/lib/commonjs/components/AutoCompleteInput/mentionItems/EnhancedMentionIcon.js.map +1 -0
  13. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js +39 -0
  14. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js.map +1 -0
  15. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionItem.js +45 -0
  16. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionItem.js.map +1 -0
  17. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionRoleItem.js +33 -0
  18. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionRoleItem.js.map +1 -0
  19. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionUserGroupItem.js +26 -0
  20. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionUserGroupItem.js.map +1 -0
  21. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionUserItem.js +53 -0
  22. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionUserItem.js.map +1 -0
  23. package/lib/commonjs/components/AutoCompleteInput/mentionItems/TokenizedSuggestionParts.js +38 -0
  24. package/lib/commonjs/components/AutoCompleteInput/mentionItems/TokenizedSuggestionParts.js.map +1 -0
  25. package/lib/commonjs/components/AutoCompleteInput/mentionItems/index.js +60 -0
  26. package/lib/commonjs/components/AutoCompleteInput/mentionItems/index.js.map +1 -0
  27. package/lib/commonjs/components/ChannelDetails/ChannelDetails.js +8 -3
  28. package/lib/commonjs/components/ChannelDetails/ChannelDetails.js.map +1 -1
  29. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsActionItem.js +2 -1
  30. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsActionItem.js.map +1 -1
  31. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js +57 -0
  32. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -0
  33. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js +3 -32
  34. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
  35. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavigationSection.js +64 -25
  36. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavigationSection.js.map +1 -1
  37. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js +3 -2
  38. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
  39. package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js +2 -2
  40. package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
  41. package/lib/commonjs/components/ChannelDetails/components/index.js +22 -0
  42. package/lib/commonjs/components/ChannelDetails/components/index.js.map +1 -1
  43. package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -1
  44. package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
  45. package/lib/commonjs/components/ChannelDetails/components/modal/Modal.js +22 -23
  46. package/lib/commonjs/components/ChannelDetails/components/modal/Modal.js.map +1 -1
  47. package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js +6 -4
  48. package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
  49. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js +65 -0
  50. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js.map +1 -0
  51. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +174 -0
  52. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -0
  53. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js +21 -0
  54. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js.map +1 -0
  55. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js +45 -0
  56. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js.map +1 -0
  57. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js +120 -0
  58. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -0
  59. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js +206 -0
  60. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -0
  61. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js +63 -0
  62. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js.map +1 -0
  63. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js +84 -0
  64. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js.map +1 -0
  65. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +177 -0
  66. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -0
  67. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js +21 -0
  68. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js.map +1 -0
  69. package/lib/commonjs/components/ChannelDetails/components/navigation-section/index.js +114 -0
  70. package/lib/commonjs/components/ChannelDetails/components/navigation-section/index.js.map +1 -0
  71. package/lib/commonjs/components/ChannelDetails/hooks/index.js +33 -0
  72. package/lib/commonjs/components/ChannelDetails/hooks/index.js.map +1 -1
  73. package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +55 -0
  74. package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -0
  75. package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js +52 -0
  76. package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -0
  77. package/lib/commonjs/components/ChannelDetails/hooks/useMediaList.js +30 -0
  78. package/lib/commonjs/components/ChannelDetails/hooks/useMediaList.js.map +1 -0
  79. package/lib/commonjs/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js +5 -3
  80. package/lib/commonjs/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js.map +1 -1
  81. package/lib/commonjs/components/ImageGallery/ImageGallery.js +21 -76
  82. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  83. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +6 -10
  84. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  85. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js +16 -14
  86. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  87. package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js +67 -0
  88. package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -0
  89. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +23 -15
  90. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  91. package/lib/commonjs/components/ImageGallery/hooks/useAnimatedGalleryStyle.js +4 -3
  92. package/lib/commonjs/components/ImageGallery/hooks/useAnimatedGalleryStyle.js.map +1 -1
  93. package/lib/commonjs/components/ImageGallery/hooks/useCurrentImageHeight.js +53 -0
  94. package/lib/commonjs/components/ImageGallery/hooks/useCurrentImageHeight.js.map +1 -0
  95. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js +25 -31
  96. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  97. package/lib/commonjs/components/Message/Message.js.map +1 -1
  98. package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js +14 -0
  99. package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js.map +1 -1
  100. package/lib/commonjs/components/Message/MessageItemView/utils/renderText.js +69 -11
  101. package/lib/commonjs/components/Message/MessageItemView/utils/renderText.js.map +1 -1
  102. package/lib/commonjs/components/MessageInput/MessageComposer.js +5 -12
  103. package/lib/commonjs/components/MessageInput/MessageComposer.js.map +1 -1
  104. package/lib/commonjs/components/MessageList/MessageFlashList.js +22 -3
  105. package/lib/commonjs/components/MessageList/MessageFlashList.js.map +1 -1
  106. package/lib/commonjs/components/MessageList/MessageList.js +23 -4
  107. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  108. package/lib/commonjs/components/UIComponents/BottomSheetModal.js +4 -17
  109. package/lib/commonjs/components/UIComponents/BottomSheetModal.js.map +1 -1
  110. package/lib/commonjs/components/UIComponents/ClippingFadeBottom.js +56 -0
  111. package/lib/commonjs/components/UIComponents/ClippingFadeBottom.js.map +1 -0
  112. package/lib/commonjs/components/UIComponents/EmptyList.js +78 -0
  113. package/lib/commonjs/components/UIComponents/EmptyList.js.map +1 -0
  114. package/lib/commonjs/components/UIComponents/PortalWhileClosingView.js +0 -3
  115. package/lib/commonjs/components/UIComponents/PortalWhileClosingView.js.map +1 -1
  116. package/lib/commonjs/components/UIComponents/index.js +22 -0
  117. package/lib/commonjs/components/UIComponents/index.js.map +1 -1
  118. package/lib/commonjs/components/index.js +11 -0
  119. package/lib/commonjs/components/index.js.map +1 -1
  120. package/lib/commonjs/components/ui/Avatar/AvatarGroup.js +3 -3
  121. package/lib/commonjs/components/ui/Avatar/constants.js +2 -2
  122. package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +64 -0
  123. package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -0
  124. package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js +63 -0
  125. package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -0
  126. package/lib/commonjs/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js +73 -0
  127. package/lib/commonjs/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js.map +1 -0
  128. package/lib/commonjs/contexts/componentsContext/defaultComponents.js +9 -0
  129. package/lib/commonjs/contexts/componentsContext/defaultComponents.js.map +1 -1
  130. package/lib/commonjs/contexts/index.js +33 -0
  131. package/lib/commonjs/contexts/index.js.map +1 -1
  132. package/lib/commonjs/contexts/themeContext/utils/theme.js +65 -4
  133. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  134. package/lib/commonjs/i18n/ar.json +17 -0
  135. package/lib/commonjs/i18n/en.json +18 -1
  136. package/lib/commonjs/i18n/es.json +17 -0
  137. package/lib/commonjs/i18n/fr.json +17 -0
  138. package/lib/commonjs/i18n/he.json +17 -0
  139. package/lib/commonjs/i18n/hi.json +17 -0
  140. package/lib/commonjs/i18n/it.json +17 -0
  141. package/lib/commonjs/i18n/ja.json +17 -0
  142. package/lib/commonjs/i18n/ko.json +17 -0
  143. package/lib/commonjs/i18n/nl.json +17 -0
  144. package/lib/commonjs/i18n/pt-br.json +17 -0
  145. package/lib/commonjs/i18n/ru.json +17 -0
  146. package/lib/commonjs/i18n/tr.json +17 -0
  147. package/lib/commonjs/icons/folder.js +37 -0
  148. package/lib/commonjs/icons/folder.js.map +1 -0
  149. package/lib/commonjs/icons/index.js +12 -0
  150. package/lib/commonjs/icons/index.js.map +1 -1
  151. package/lib/commonjs/icons/megaphone.js +36 -0
  152. package/lib/commonjs/icons/megaphone.js.map +1 -0
  153. package/lib/commonjs/icons/shield.js +36 -0
  154. package/lib/commonjs/icons/shield.js.map +1 -0
  155. package/lib/commonjs/state-store/image-gallery-state-store.js +12 -3
  156. package/lib/commonjs/state-store/image-gallery-state-store.js.map +1 -1
  157. package/lib/commonjs/store/SqliteClient.js +1 -1
  158. package/lib/commonjs/store/mappers/mapDraftMessageToStorable.js +8 -0
  159. package/lib/commonjs/store/mappers/mapDraftMessageToStorable.js.map +1 -1
  160. package/lib/commonjs/store/mappers/mapStorableToDraftMessage.js +8 -0
  161. package/lib/commonjs/store/mappers/mapStorableToDraftMessage.js.map +1 -1
  162. package/lib/commonjs/store/schema.js +4 -0
  163. package/lib/commonjs/store/schema.js.map +1 -1
  164. package/lib/commonjs/theme/generated/dark/StreamTokens.android.js +10 -1
  165. package/lib/commonjs/theme/generated/dark/StreamTokens.android.js.map +1 -1
  166. package/lib/commonjs/theme/generated/dark/StreamTokens.ios.js +10 -1
  167. package/lib/commonjs/theme/generated/dark/StreamTokens.ios.js.map +1 -1
  168. package/lib/commonjs/theme/generated/dark/StreamTokens.web.js +10 -1
  169. package/lib/commonjs/theme/generated/dark/StreamTokens.web.js.map +1 -1
  170. package/lib/commonjs/theme/generated/light/StreamTokens.android.js +10 -1
  171. package/lib/commonjs/theme/generated/light/StreamTokens.android.js.map +1 -1
  172. package/lib/commonjs/theme/generated/light/StreamTokens.ios.js +10 -1
  173. package/lib/commonjs/theme/generated/light/StreamTokens.ios.js.map +1 -1
  174. package/lib/commonjs/theme/generated/light/StreamTokens.web.js +10 -1
  175. package/lib/commonjs/theme/generated/light/StreamTokens.web.js.map +1 -1
  176. package/lib/commonjs/version.json +1 -1
  177. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +7 -0
  178. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  179. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +2 -0
  180. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  181. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +41 -55
  182. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  183. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +27 -7
  184. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  185. package/lib/module/components/AutoCompleteInput/mentionItems/EnhancedMentionContent.js +55 -0
  186. package/lib/module/components/AutoCompleteInput/mentionItems/EnhancedMentionContent.js.map +1 -0
  187. package/lib/module/components/AutoCompleteInput/mentionItems/EnhancedMentionIcon.js +47 -0
  188. package/lib/module/components/AutoCompleteInput/mentionItems/EnhancedMentionIcon.js.map +1 -0
  189. package/lib/module/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js +39 -0
  190. package/lib/module/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js.map +1 -0
  191. package/lib/module/components/AutoCompleteInput/mentionItems/MentionItem.js +45 -0
  192. package/lib/module/components/AutoCompleteInput/mentionItems/MentionItem.js.map +1 -0
  193. package/lib/module/components/AutoCompleteInput/mentionItems/MentionRoleItem.js +33 -0
  194. package/lib/module/components/AutoCompleteInput/mentionItems/MentionRoleItem.js.map +1 -0
  195. package/lib/module/components/AutoCompleteInput/mentionItems/MentionUserGroupItem.js +26 -0
  196. package/lib/module/components/AutoCompleteInput/mentionItems/MentionUserGroupItem.js.map +1 -0
  197. package/lib/module/components/AutoCompleteInput/mentionItems/MentionUserItem.js +53 -0
  198. package/lib/module/components/AutoCompleteInput/mentionItems/MentionUserItem.js.map +1 -0
  199. package/lib/module/components/AutoCompleteInput/mentionItems/TokenizedSuggestionParts.js +38 -0
  200. package/lib/module/components/AutoCompleteInput/mentionItems/TokenizedSuggestionParts.js.map +1 -0
  201. package/lib/module/components/AutoCompleteInput/mentionItems/index.js +60 -0
  202. package/lib/module/components/AutoCompleteInput/mentionItems/index.js.map +1 -0
  203. package/lib/module/components/ChannelDetails/ChannelDetails.js +8 -3
  204. package/lib/module/components/ChannelDetails/ChannelDetails.js.map +1 -1
  205. package/lib/module/components/ChannelDetails/components/ChannelDetailsActionItem.js +2 -1
  206. package/lib/module/components/ChannelDetails/components/ChannelDetailsActionItem.js.map +1 -1
  207. package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js +57 -0
  208. package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -0
  209. package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js +3 -32
  210. package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
  211. package/lib/module/components/ChannelDetails/components/ChannelDetailsNavigationSection.js +64 -25
  212. package/lib/module/components/ChannelDetails/components/ChannelDetailsNavigationSection.js.map +1 -1
  213. package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js +3 -2
  214. package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
  215. package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js +2 -2
  216. package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
  217. package/lib/module/components/ChannelDetails/components/index.js +22 -0
  218. package/lib/module/components/ChannelDetails/components/index.js.map +1 -1
  219. package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -1
  220. package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
  221. package/lib/module/components/ChannelDetails/components/modal/Modal.js +22 -23
  222. package/lib/module/components/ChannelDetails/components/modal/Modal.js.map +1 -1
  223. package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js +6 -4
  224. package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
  225. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js +65 -0
  226. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentItem.js.map +1 -0
  227. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +174 -0
  228. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -0
  229. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js +21 -0
  230. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.js.map +1 -0
  231. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js +45 -0
  232. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.js.map +1 -0
  233. package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js +120 -0
  234. package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -0
  235. package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js +206 -0
  236. package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -0
  237. package/lib/module/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js +63 -0
  238. package/lib/module/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.js.map +1 -0
  239. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js +84 -0
  240. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageItem.js.map +1 -0
  241. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +177 -0
  242. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -0
  243. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js +21 -0
  244. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.js.map +1 -0
  245. package/lib/module/components/ChannelDetails/components/navigation-section/index.js +114 -0
  246. package/lib/module/components/ChannelDetails/components/navigation-section/index.js.map +1 -0
  247. package/lib/module/components/ChannelDetails/hooks/index.js +33 -0
  248. package/lib/module/components/ChannelDetails/hooks/index.js.map +1 -1
  249. package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +55 -0
  250. package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -0
  251. package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js +52 -0
  252. package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -0
  253. package/lib/module/components/ChannelDetails/hooks/useMediaList.js +30 -0
  254. package/lib/module/components/ChannelDetails/hooks/useMediaList.js.map +1 -0
  255. package/lib/module/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js +5 -3
  256. package/lib/module/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js.map +1 -1
  257. package/lib/module/components/ImageGallery/ImageGallery.js +21 -76
  258. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  259. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +6 -10
  260. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  261. package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js +16 -14
  262. package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  263. package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js +67 -0
  264. package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -0
  265. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +23 -15
  266. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  267. package/lib/module/components/ImageGallery/hooks/useAnimatedGalleryStyle.js +4 -3
  268. package/lib/module/components/ImageGallery/hooks/useAnimatedGalleryStyle.js.map +1 -1
  269. package/lib/module/components/ImageGallery/hooks/useCurrentImageHeight.js +53 -0
  270. package/lib/module/components/ImageGallery/hooks/useCurrentImageHeight.js.map +1 -0
  271. package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js +25 -31
  272. package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  273. package/lib/module/components/Message/Message.js.map +1 -1
  274. package/lib/module/components/Message/MessageItemView/MessageTextContainer.js +14 -0
  275. package/lib/module/components/Message/MessageItemView/MessageTextContainer.js.map +1 -1
  276. package/lib/module/components/Message/MessageItemView/utils/renderText.js +69 -11
  277. package/lib/module/components/Message/MessageItemView/utils/renderText.js.map +1 -1
  278. package/lib/module/components/MessageInput/MessageComposer.js +5 -12
  279. package/lib/module/components/MessageInput/MessageComposer.js.map +1 -1
  280. package/lib/module/components/MessageList/MessageFlashList.js +22 -3
  281. package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
  282. package/lib/module/components/MessageList/MessageList.js +23 -4
  283. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  284. package/lib/module/components/UIComponents/BottomSheetModal.js +4 -17
  285. package/lib/module/components/UIComponents/BottomSheetModal.js.map +1 -1
  286. package/lib/module/components/UIComponents/ClippingFadeBottom.js +56 -0
  287. package/lib/module/components/UIComponents/ClippingFadeBottom.js.map +1 -0
  288. package/lib/module/components/UIComponents/EmptyList.js +78 -0
  289. package/lib/module/components/UIComponents/EmptyList.js.map +1 -0
  290. package/lib/module/components/UIComponents/PortalWhileClosingView.js +0 -3
  291. package/lib/module/components/UIComponents/PortalWhileClosingView.js.map +1 -1
  292. package/lib/module/components/UIComponents/index.js +22 -0
  293. package/lib/module/components/UIComponents/index.js.map +1 -1
  294. package/lib/module/components/index.js +11 -0
  295. package/lib/module/components/index.js.map +1 -1
  296. package/lib/module/components/ui/Avatar/AvatarGroup.js +3 -3
  297. package/lib/module/components/ui/Avatar/constants.js +2 -2
  298. package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +64 -0
  299. package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -0
  300. package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js +63 -0
  301. package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -0
  302. package/lib/module/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js +73 -0
  303. package/lib/module/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.js.map +1 -0
  304. package/lib/module/contexts/componentsContext/defaultComponents.js +9 -0
  305. package/lib/module/contexts/componentsContext/defaultComponents.js.map +1 -1
  306. package/lib/module/contexts/index.js +33 -0
  307. package/lib/module/contexts/index.js.map +1 -1
  308. package/lib/module/contexts/themeContext/utils/theme.js +65 -4
  309. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  310. package/lib/module/i18n/ar.json +17 -0
  311. package/lib/module/i18n/en.json +18 -1
  312. package/lib/module/i18n/es.json +17 -0
  313. package/lib/module/i18n/fr.json +17 -0
  314. package/lib/module/i18n/he.json +17 -0
  315. package/lib/module/i18n/hi.json +17 -0
  316. package/lib/module/i18n/it.json +17 -0
  317. package/lib/module/i18n/ja.json +17 -0
  318. package/lib/module/i18n/ko.json +17 -0
  319. package/lib/module/i18n/nl.json +17 -0
  320. package/lib/module/i18n/pt-br.json +17 -0
  321. package/lib/module/i18n/ru.json +17 -0
  322. package/lib/module/i18n/tr.json +17 -0
  323. package/lib/module/icons/folder.js +37 -0
  324. package/lib/module/icons/folder.js.map +1 -0
  325. package/lib/module/icons/index.js +12 -0
  326. package/lib/module/icons/index.js.map +1 -1
  327. package/lib/module/icons/megaphone.js +36 -0
  328. package/lib/module/icons/megaphone.js.map +1 -0
  329. package/lib/module/icons/shield.js +36 -0
  330. package/lib/module/icons/shield.js.map +1 -0
  331. package/lib/module/state-store/image-gallery-state-store.js +12 -3
  332. package/lib/module/state-store/image-gallery-state-store.js.map +1 -1
  333. package/lib/module/store/SqliteClient.js +1 -1
  334. package/lib/module/store/mappers/mapDraftMessageToStorable.js +8 -0
  335. package/lib/module/store/mappers/mapDraftMessageToStorable.js.map +1 -1
  336. package/lib/module/store/mappers/mapStorableToDraftMessage.js +8 -0
  337. package/lib/module/store/mappers/mapStorableToDraftMessage.js.map +1 -1
  338. package/lib/module/store/schema.js +4 -0
  339. package/lib/module/store/schema.js.map +1 -1
  340. package/lib/module/theme/generated/dark/StreamTokens.android.js +10 -1
  341. package/lib/module/theme/generated/dark/StreamTokens.android.js.map +1 -1
  342. package/lib/module/theme/generated/dark/StreamTokens.ios.js +10 -1
  343. package/lib/module/theme/generated/dark/StreamTokens.ios.js.map +1 -1
  344. package/lib/module/theme/generated/dark/StreamTokens.web.js +10 -1
  345. package/lib/module/theme/generated/dark/StreamTokens.web.js.map +1 -1
  346. package/lib/module/theme/generated/light/StreamTokens.android.js +10 -1
  347. package/lib/module/theme/generated/light/StreamTokens.android.js.map +1 -1
  348. package/lib/module/theme/generated/light/StreamTokens.ios.js +10 -1
  349. package/lib/module/theme/generated/light/StreamTokens.ios.js.map +1 -1
  350. package/lib/module/theme/generated/light/StreamTokens.web.js +10 -1
  351. package/lib/module/theme/generated/light/StreamTokens.web.js.map +1 -1
  352. package/lib/module/version.json +1 -1
  353. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts.map +1 -1
  354. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts.map +1 -1
  355. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +8 -2
  356. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts.map +1 -1
  357. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +1 -1
  358. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts.map +1 -1
  359. package/lib/typescript/components/AutoCompleteInput/mentionItems/EnhancedMentionContent.d.ts +13 -0
  360. package/lib/typescript/components/AutoCompleteInput/mentionItems/EnhancedMentionContent.d.ts.map +1 -0
  361. package/lib/typescript/components/AutoCompleteInput/mentionItems/EnhancedMentionIcon.d.ts +26 -0
  362. package/lib/typescript/components/AutoCompleteInput/mentionItems/EnhancedMentionIcon.d.ts.map +1 -0
  363. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.d.ts +7 -0
  364. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.d.ts.map +1 -0
  365. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionItem.d.ts +17 -0
  366. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionItem.d.ts.map +1 -0
  367. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionRoleItem.d.ts +7 -0
  368. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionRoleItem.d.ts.map +1 -0
  369. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionUserGroupItem.d.ts +7 -0
  370. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionUserGroupItem.d.ts.map +1 -0
  371. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionUserItem.d.ts +7 -0
  372. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionUserItem.d.ts.map +1 -0
  373. package/lib/typescript/components/AutoCompleteInput/mentionItems/TokenizedSuggestionParts.d.ts +21 -0
  374. package/lib/typescript/components/AutoCompleteInput/mentionItems/TokenizedSuggestionParts.d.ts.map +1 -0
  375. package/lib/typescript/components/AutoCompleteInput/mentionItems/index.d.ts +17 -0
  376. package/lib/typescript/components/AutoCompleteInput/mentionItems/index.d.ts.map +1 -0
  377. package/lib/typescript/components/ChannelDetails/ChannelDetails.d.ts +11 -1
  378. package/lib/typescript/components/ChannelDetails/ChannelDetails.d.ts.map +1 -1
  379. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsActionItem.d.ts.map +1 -1
  380. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsEditButton.d.ts +6 -0
  381. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsEditButton.d.ts.map +1 -0
  382. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavHeader.d.ts +3 -1
  383. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavHeader.d.ts.map +1 -1
  384. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavigationSection.d.ts.map +1 -1
  385. package/lib/typescript/components/ChannelDetails/components/index.d.ts +3 -0
  386. package/lib/typescript/components/ChannelDetails/components/index.d.ts.map +1 -1
  387. package/lib/typescript/components/ChannelDetails/components/members/ChannelMemberItem.d.ts.map +1 -1
  388. package/lib/typescript/components/ChannelDetails/components/modal/Modal.d.ts +2 -1
  389. package/lib/typescript/components/ChannelDetails/components/modal/Modal.d.ts.map +1 -1
  390. package/lib/typescript/components/ChannelDetails/components/modal/ModalHeader.d.ts +3 -1
  391. package/lib/typescript/components/ChannelDetails/components/modal/ModalHeader.d.ts.map +1 -1
  392. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentItem.d.ts +31 -0
  393. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentItem.d.ts.map +1 -0
  394. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentList.d.ts +17 -0
  395. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentList.d.ts.map +1 -0
  396. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.d.ts +9 -0
  397. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.d.ts.map +1 -0
  398. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.d.ts +13 -0
  399. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.d.ts.map +1 -0
  400. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaItem.d.ts +35 -0
  401. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaItem.d.ts.map +1 -0
  402. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaList.d.ts +17 -0
  403. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaList.d.ts.map +1 -0
  404. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.d.ts +11 -0
  405. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.d.ts.map +1 -0
  406. package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageItem.d.ts +19 -0
  407. package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageItem.d.ts.map +1 -0
  408. package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageList.d.ts +19 -0
  409. package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageList.d.ts.map +1 -0
  410. package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.d.ts +9 -0
  411. package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.d.ts.map +1 -0
  412. package/lib/typescript/components/ChannelDetails/components/navigation-section/index.d.ts +11 -0
  413. package/lib/typescript/components/ChannelDetails/components/navigation-section/index.d.ts.map +1 -0
  414. package/lib/typescript/components/ChannelDetails/hooks/index.d.ts +3 -0
  415. package/lib/typescript/components/ChannelDetails/hooks/index.d.ts.map +1 -1
  416. package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.d.ts +56 -0
  417. package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.d.ts.map +1 -0
  418. package/lib/typescript/components/ChannelDetails/hooks/useFileAttachmentListSections.d.ts +28 -0
  419. package/lib/typescript/components/ChannelDetails/hooks/useFileAttachmentListSections.d.ts.map +1 -0
  420. package/lib/typescript/components/ChannelDetails/hooks/useMediaList.d.ts +20 -0
  421. package/lib/typescript/components/ChannelDetails/hooks/useMediaList.d.ts.map +1 -0
  422. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts.map +1 -1
  423. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts.map +1 -1
  424. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryVideo.d.ts +1 -4
  425. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryVideo.d.ts.map +1 -1
  426. package/lib/typescript/components/ImageGallery/components/ImageGalleryA11yProbe.d.ts +20 -0
  427. package/lib/typescript/components/ImageGallery/components/ImageGalleryA11yProbe.d.ts.map +1 -0
  428. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts.map +1 -1
  429. package/lib/typescript/components/ImageGallery/hooks/useAnimatedGalleryStyle.d.ts +2 -3
  430. package/lib/typescript/components/ImageGallery/hooks/useAnimatedGalleryStyle.d.ts.map +1 -1
  431. package/lib/typescript/components/ImageGallery/hooks/useCurrentImageHeight.d.ts +24 -0
  432. package/lib/typescript/components/ImageGallery/hooks/useCurrentImageHeight.d.ts.map +1 -0
  433. package/lib/typescript/components/ImageGallery/hooks/useImageGalleryGestures.d.ts +1 -1
  434. package/lib/typescript/components/ImageGallery/hooks/useImageGalleryGestures.d.ts.map +1 -1
  435. package/lib/typescript/components/Message/Message.d.ts +11 -1
  436. package/lib/typescript/components/Message/Message.d.ts.map +1 -1
  437. package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts.map +1 -1
  438. package/lib/typescript/components/Message/MessageItemView/utils/renderText.d.ts.map +1 -1
  439. package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -1
  440. package/lib/typescript/components/MessageList/MessageFlashList.d.ts.map +1 -1
  441. package/lib/typescript/components/MessageList/MessageList.d.ts.map +1 -1
  442. package/lib/typescript/components/UIComponents/BottomSheetModal.d.ts.map +1 -1
  443. package/lib/typescript/components/UIComponents/ClippingFadeBottom.d.ts +18 -0
  444. package/lib/typescript/components/UIComponents/ClippingFadeBottom.d.ts.map +1 -0
  445. package/lib/typescript/components/UIComponents/EmptyList.d.ts +24 -0
  446. package/lib/typescript/components/UIComponents/EmptyList.d.ts.map +1 -0
  447. package/lib/typescript/components/UIComponents/index.d.ts +2 -0
  448. package/lib/typescript/components/UIComponents/index.d.ts.map +1 -1
  449. package/lib/typescript/components/index.d.ts +1 -0
  450. package/lib/typescript/components/index.d.ts.map +1 -1
  451. package/lib/typescript/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.d.ts +21 -0
  452. package/lib/typescript/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.d.ts.map +1 -0
  453. package/lib/typescript/contexts/channelMediaListContext/ChannelMediaListContext.d.ts +21 -0
  454. package/lib/typescript/contexts/channelMediaListContext/ChannelMediaListContext.d.ts.map +1 -0
  455. package/lib/typescript/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.d.ts +21 -0
  456. package/lib/typescript/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.d.ts.map +1 -0
  457. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts +19 -2
  458. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts.map +1 -1
  459. package/lib/typescript/contexts/index.d.ts +3 -0
  460. package/lib/typescript/contexts/index.d.ts.map +1 -1
  461. package/lib/typescript/contexts/themeContext/ThemeContext.d.ts +62 -1
  462. package/lib/typescript/contexts/themeContext/ThemeContext.d.ts.map +1 -1
  463. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +62 -1
  464. package/lib/typescript/contexts/themeContext/utils/theme.d.ts.map +1 -1
  465. package/lib/typescript/i18n/ar.json +17 -0
  466. package/lib/typescript/i18n/en.json +18 -1
  467. package/lib/typescript/i18n/es.json +17 -0
  468. package/lib/typescript/i18n/fr.json +17 -0
  469. package/lib/typescript/i18n/he.json +17 -0
  470. package/lib/typescript/i18n/hi.json +17 -0
  471. package/lib/typescript/i18n/it.json +17 -0
  472. package/lib/typescript/i18n/ja.json +17 -0
  473. package/lib/typescript/i18n/ko.json +17 -0
  474. package/lib/typescript/i18n/nl.json +17 -0
  475. package/lib/typescript/i18n/pt-br.json +17 -0
  476. package/lib/typescript/i18n/ru.json +17 -0
  477. package/lib/typescript/i18n/tr.json +17 -0
  478. package/lib/typescript/icons/folder.d.ts +4 -0
  479. package/lib/typescript/icons/folder.d.ts.map +1 -0
  480. package/lib/typescript/icons/index.d.ts +1 -0
  481. package/lib/typescript/icons/index.d.ts.map +1 -1
  482. package/lib/typescript/icons/megaphone.d.ts +4 -0
  483. package/lib/typescript/icons/megaphone.d.ts.map +1 -0
  484. package/lib/typescript/icons/shield.d.ts +4 -0
  485. package/lib/typescript/icons/shield.d.ts.map +1 -0
  486. package/lib/typescript/state-store/image-gallery-state-store.d.ts +8 -0
  487. package/lib/typescript/state-store/image-gallery-state-store.d.ts.map +1 -1
  488. package/lib/typescript/store/mappers/mapDraftMessageToStorable.d.ts.map +1 -1
  489. package/lib/typescript/store/mappers/mapStorableToDraftMessage.d.ts.map +1 -1
  490. package/lib/typescript/store/schema.d.ts +4 -0
  491. package/lib/typescript/store/schema.d.ts.map +1 -1
  492. package/lib/typescript/theme/generated/StreamTokens.types.d.ts +9 -0
  493. package/lib/typescript/theme/generated/StreamTokens.types.d.ts.map +1 -1
  494. package/lib/typescript/theme/generated/dark/StreamTokens.android.d.ts.map +1 -1
  495. package/lib/typescript/theme/generated/dark/StreamTokens.ios.d.ts.map +1 -1
  496. package/lib/typescript/theme/generated/dark/StreamTokens.web.d.ts.map +1 -1
  497. package/lib/typescript/theme/generated/light/StreamTokens.android.d.ts.map +1 -1
  498. package/lib/typescript/theme/generated/light/StreamTokens.ios.d.ts.map +1 -1
  499. package/lib/typescript/theme/generated/light/StreamTokens.web.d.ts.map +1 -1
  500. package/lib/typescript/utils/i18n/Streami18n.d.ts +17 -0
  501. package/lib/typescript/utils/i18n/Streami18n.d.ts.map +1 -1
  502. package/package.json +2 -2
  503. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +13 -0
  504. package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +2 -1
  505. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +35 -43
  506. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +28 -3
  507. package/src/components/AutoCompleteInput/mentionItems/EnhancedMentionContent.tsx +71 -0
  508. package/src/components/AutoCompleteInput/mentionItems/EnhancedMentionIcon.tsx +71 -0
  509. package/src/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.tsx +36 -0
  510. package/src/components/AutoCompleteInput/mentionItems/MentionItem.tsx +59 -0
  511. package/src/components/AutoCompleteInput/mentionItems/MentionRoleItem.tsx +27 -0
  512. package/src/components/AutoCompleteInput/mentionItems/MentionUserGroupItem.tsx +23 -0
  513. package/src/components/AutoCompleteInput/mentionItems/MentionUserItem.tsx +55 -0
  514. package/src/components/AutoCompleteInput/mentionItems/TokenizedSuggestionParts.tsx +56 -0
  515. package/src/components/AutoCompleteInput/mentionItems/__tests__/MentionItems.test.tsx +129 -0
  516. package/src/components/AutoCompleteInput/mentionItems/__tests__/TokenizedSuggestionParts.test.tsx +63 -0
  517. package/src/components/AutoCompleteInput/mentionItems/index.ts +16 -0
  518. package/src/components/ChannelDetails/ChannelDetails.tsx +17 -2
  519. package/src/components/ChannelDetails/__tests__/ChannelDetails.test.tsx +29 -0
  520. package/src/components/ChannelDetails/__tests__/ChannelDetailsEditButton.test.tsx +127 -0
  521. package/src/components/ChannelDetails/__tests__/ChannelDetailsNavHeader.test.tsx +21 -56
  522. package/src/components/ChannelDetails/__tests__/ChannelDetailsNavigationSection.test.tsx +225 -6
  523. package/src/components/ChannelDetails/__tests__/useFileAttachmentListSections.test.tsx +159 -0
  524. package/src/components/ChannelDetails/__tests__/useMediaList.test.tsx +53 -0
  525. package/src/components/ChannelDetails/components/ChannelDetailsActionItem.tsx +6 -1
  526. package/src/components/ChannelDetails/components/ChannelDetailsEditButton.tsx +50 -0
  527. package/src/components/ChannelDetails/components/ChannelDetailsNavHeader.tsx +6 -33
  528. package/src/components/ChannelDetails/components/ChannelDetailsNavigationSection.tsx +80 -32
  529. package/src/components/ChannelDetails/components/ChannelDetailsProfile.tsx +2 -1
  530. package/src/components/ChannelDetails/components/ChannelEditImageSheet.tsx +2 -2
  531. package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentItem.test.tsx +80 -0
  532. package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentList.test.tsx +334 -0
  533. package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentListSectionHeader.test.tsx +19 -0
  534. package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaItem.test.tsx +97 -0
  535. package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaList.test.tsx +351 -0
  536. package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageItem.test.tsx +112 -0
  537. package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageList.test.tsx +324 -0
  538. package/src/components/ChannelDetails/components/index.ts +3 -0
  539. package/src/components/ChannelDetails/components/members/ChannelMemberItem.tsx +6 -1
  540. package/src/components/ChannelDetails/components/modal/Modal.tsx +37 -24
  541. package/src/components/ChannelDetails/components/modal/ModalHeader.tsx +11 -4
  542. package/src/components/ChannelDetails/components/navigation-section/FileAttachmentItem.tsx +92 -0
  543. package/src/components/ChannelDetails/components/navigation-section/FileAttachmentList.tsx +204 -0
  544. package/src/components/ChannelDetails/components/navigation-section/FileAttachmentListLoadingSkeleton.tsx +23 -0
  545. package/src/components/ChannelDetails/components/navigation-section/FileAttachmentListSectionHeader.tsx +56 -0
  546. package/src/components/ChannelDetails/components/navigation-section/MediaItem.tsx +160 -0
  547. package/src/components/ChannelDetails/components/navigation-section/MediaList.tsx +244 -0
  548. package/src/components/ChannelDetails/components/navigation-section/MediaListLoadingSkeleton.tsx +66 -0
  549. package/src/components/ChannelDetails/components/navigation-section/PinnedMessageItem.tsx +94 -0
  550. package/src/components/ChannelDetails/components/navigation-section/PinnedMessageList.tsx +198 -0
  551. package/src/components/ChannelDetails/components/navigation-section/PinnedMessageListLoadingSkeleton.tsx +23 -0
  552. package/src/components/ChannelDetails/components/navigation-section/index.ts +10 -0
  553. package/src/components/ChannelDetails/hooks/index.ts +3 -0
  554. package/src/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.ts +108 -0
  555. package/src/components/ChannelDetails/hooks/useFileAttachmentListSections.ts +79 -0
  556. package/src/components/ChannelDetails/hooks/useMediaList.ts +51 -0
  557. package/src/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.tsx +3 -2
  558. package/src/components/ImageGallery/ImageGallery.tsx +41 -120
  559. package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +4 -1
  560. package/src/components/ImageGallery/__tests__/ImageGalleryAdjustable.test.tsx +5 -4
  561. package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +9 -11
  562. package/src/components/ImageGallery/components/AnimatedGalleryVideo.tsx +28 -15
  563. package/src/components/ImageGallery/components/ImageGalleryA11yProbe.tsx +82 -0
  564. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +21 -18
  565. package/src/components/ImageGallery/hooks/useAnimatedGalleryStyle.tsx +5 -5
  566. package/src/components/ImageGallery/hooks/useCurrentImageHeight.ts +86 -0
  567. package/src/components/ImageGallery/hooks/useImageGalleryGestures.tsx +42 -51
  568. package/src/components/Message/Message.tsx +14 -2
  569. package/src/components/Message/MessageItemView/MessageTextContainer.tsx +25 -0
  570. package/src/components/Message/MessageItemView/utils/renderText.tsx +97 -18
  571. package/src/components/MessageInput/MessageComposer.tsx +7 -9
  572. package/src/components/MessageList/MessageFlashList.tsx +28 -0
  573. package/src/components/MessageList/MessageList.tsx +28 -0
  574. package/src/components/Thread/__tests__/__snapshots__/Thread.test.tsx.snap +24 -15
  575. package/src/components/UIComponents/BottomSheetModal.tsx +2 -17
  576. package/src/components/UIComponents/ClippingFadeBottom.tsx +47 -0
  577. package/src/components/UIComponents/EmptyList.tsx +80 -0
  578. package/src/components/UIComponents/PortalWhileClosingView.tsx +0 -4
  579. package/src/components/UIComponents/__tests__/EmptyList.test.tsx +90 -0
  580. package/src/components/UIComponents/index.ts +2 -0
  581. package/src/components/index.ts +1 -0
  582. package/src/components/ui/Avatar/AvatarGroup.tsx +3 -3
  583. package/src/components/ui/Avatar/constants.ts +2 -2
  584. package/src/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.tsx +67 -0
  585. package/src/contexts/channelMediaListContext/ChannelMediaListContext.tsx +68 -0
  586. package/src/contexts/channelPinnedMessageListContext/ChannelPinnedMessageListContext.tsx +72 -0
  587. package/src/contexts/componentsContext/defaultComponents.ts +21 -2
  588. package/src/contexts/index.ts +3 -0
  589. package/src/contexts/themeContext/utils/theme.ts +124 -2
  590. package/src/i18n/ar.json +17 -0
  591. package/src/i18n/en.json +18 -1
  592. package/src/i18n/es.json +17 -0
  593. package/src/i18n/fr.json +17 -0
  594. package/src/i18n/he.json +17 -0
  595. package/src/i18n/hi.json +17 -0
  596. package/src/i18n/it.json +17 -0
  597. package/src/i18n/ja.json +17 -0
  598. package/src/i18n/ko.json +17 -0
  599. package/src/i18n/nl.json +17 -0
  600. package/src/i18n/pt-br.json +17 -0
  601. package/src/i18n/ru.json +17 -0
  602. package/src/i18n/tr.json +17 -0
  603. package/src/icons/folder.tsx +28 -0
  604. package/src/icons/index.ts +1 -0
  605. package/src/icons/megaphone.tsx +21 -0
  606. package/src/icons/shield.tsx +21 -0
  607. package/src/state-store/__tests__/image-gallery-state-store.test.ts +81 -0
  608. package/src/state-store/image-gallery-state-store.ts +27 -1
  609. package/src/store/SqliteClient.ts +1 -1
  610. package/src/store/mappers/mapDraftMessageToStorable.ts +8 -0
  611. package/src/store/mappers/mapStorableToDraftMessage.ts +8 -0
  612. package/src/store/schema.ts +8 -0
  613. package/src/theme/generated/StreamTokens.types.ts +9 -0
  614. package/src/theme/generated/dark/StreamTokens.android.ts +10 -1
  615. package/src/theme/generated/dark/StreamTokens.ios.ts +10 -1
  616. package/src/theme/generated/dark/StreamTokens.web.ts +10 -1
  617. package/src/theme/generated/light/StreamTokens.android.ts +10 -1
  618. package/src/theme/generated/light/StreamTokens.ios.ts +10 -1
  619. package/src/theme/generated/light/StreamTokens.web.ts +10 -1
  620. package/src/version.json +1 -1
package/src/i18n/ko.json CHANGED
@@ -162,6 +162,7 @@
162
162
  "duration/Remind Me": "{{ milliseconds | durationFormatter(withSuffix: true) }}",
163
163
  "replied to": "에 답장했습니다",
164
164
  "timestamp/ChannelPreviewStatus": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: {\"lastDay\":\"[어제]\",\"lastWeek\":\"dddd\",\"nextDay\":\"[내일]\",\"nextWeek\":\"dddd [LT에]\",\"sameDay\":\"LT\",\"sameElse\":\"L\"}) }}",
165
+ "timestamp/FileAttachmentListSection": "{{ timestamp | timestampFormatter(format: MMMM YYYY) }}",
165
166
  "timestamp/ImageGalleryHeader": "{{ timestamp | timestampFormatter(calendar: true) }}",
166
167
  "timestamp/InlineDateSeparator": "{{ timestamp | timestampFormatter(calendar: true) }}",
167
168
  "timestamp/MessageEditedTimestamp": "{{ timestamp | timestampFormatter(calendar: true) }}",
@@ -388,6 +389,7 @@
388
389
  "Failed to block user": "사용자 차단에 실패했습니다",
389
390
  "Failed to delete channel": "채널 삭제에 실패했습니다",
390
391
  "Failed to leave channel": "채널 나가기에 실패했습니다",
392
+ "Failed to load pinned messages": "고정된 메시지를 불러오지 못했습니다",
391
393
  "Failed to load users": "사용자 불러오기에 실패했습니다",
392
394
  "Failed to play the recording": "녹음 재생에 실패했습니다",
393
395
  "Failed to update channel archive status": "채널 보관 상태 업데이트에 실패했습니다",
@@ -437,6 +439,21 @@
437
439
  "a11y/Gallery Image": "갤러리 이미지",
438
440
  "a11y/Gallery Video": "갤러리 동영상",
439
441
  "a11y/{{position}} of {{count}}": "{{count}}개 중 {{position}}번째",
442
+ "No pinned messages": "고정된 메시지가 없습니다",
443
+ "a11y/Search pinned messages": "고정된 메시지 검색",
444
+ "Long-press a message to pin it to the chat": "메시지를 길게 눌러 채팅에 고정하세요",
445
+ "No photos or videos": "사진 또는 동영상 없음",
446
+ "Share a photo or video to see it here": "사진이나 동영상을 공유하면 여기에 표시됩니다",
447
+ "Failed to load media": "미디어를 불러오지 못했습니다",
448
+ "No files": "파일 없음",
449
+ "Share a file to see it here": "파일을 공유하면 여기에 표시됩니다",
450
+ "Failed to load files": "파일을 불러오지 못했습니다",
451
+ "Notify all {{ role }} members": "Notify all {{ role }} members",
452
+ "a11y/Command suggestions available": "Command suggestions available",
453
+ "a11y/Emoji suggestions available": "Emoji suggestions available",
454
+ "a11y/Mention suggestions available": "Mention suggestions available",
455
+ "mention/Channel Description": "Notify everyone in this channel",
456
+ "mention/Here Description": "Notify every online member in this channel",
440
457
  "Pin Chat": "채팅 고정",
441
458
  "Pin Group": "그룹 고정",
442
459
  "Unpin Chat": "채팅 고정 해제",
package/src/i18n/nl.json CHANGED
@@ -162,6 +162,7 @@
162
162
  "duration/Remind Me": "{{ milliseconds | durationFormatter(withSuffix: true) }}",
163
163
  "replied to": "reageerde op",
164
164
  "timestamp/ChannelPreviewStatus": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: {\"lastDay\":\"[Gisteren]\",\"lastWeek\":\"dddd\",\"nextDay\":\"[Morgen]\",\"nextWeek\":\"dddd [om] LT\",\"sameDay\":\"LT\",\"sameElse\":\"L\"}) }}",
165
+ "timestamp/FileAttachmentListSection": "{{ timestamp | timestampFormatter(format: MMMM YYYY) }}",
165
166
  "timestamp/ImageGalleryHeader": "{{ timestamp | timestampFormatter(calendar: true) }}",
166
167
  "timestamp/InlineDateSeparator": "{{ timestamp | timestampFormatter(calendar: true) }}",
167
168
  "timestamp/MessageEditedTimestamp": "{{ timestamp | timestampFormatter(calendar: true) }}",
@@ -388,6 +389,7 @@
388
389
  "Failed to block user": "Gebruiker blokkeren mislukt",
389
390
  "Failed to delete channel": "Kanaal verwijderen mislukt",
390
391
  "Failed to leave channel": "Kanaal verlaten mislukt",
392
+ "Failed to load pinned messages": "Vastgemaakte berichten laden mislukt",
391
393
  "Failed to load users": "Gebruikers laden mislukt",
392
394
  "Failed to play the recording": "Opname afspelen mislukt",
393
395
  "Failed to update channel archive status": "Bijwerken van kanaalarchiefstatus mislukt",
@@ -437,6 +439,21 @@
437
439
  "a11y/Gallery Image": "Galerij-afbeelding",
438
440
  "a11y/Gallery Video": "Galerij-video",
439
441
  "a11y/{{position}} of {{count}}": "{{position}} van {{count}}",
442
+ "No pinned messages": "Geen vastgemaakte berichten",
443
+ "a11y/Search pinned messages": "Zoek vastgemaakte berichten",
444
+ "Long-press a message to pin it to the chat": "Houd een bericht lang ingedrukt om het vast te pinnen in de chat",
445
+ "No photos or videos": "Geen foto's of video's",
446
+ "Share a photo or video to see it here": "Deel een foto of video om deze hier te zien",
447
+ "Failed to load media": "Media laden mislukt",
448
+ "No files": "Geen bestanden",
449
+ "Share a file to see it here": "Deel een bestand om het hier te zien",
450
+ "Failed to load files": "Bestanden laden mislukt",
451
+ "Notify all {{ role }} members": "Notify all {{ role }} members",
452
+ "a11y/Command suggestions available": "Command suggestions available",
453
+ "a11y/Emoji suggestions available": "Emoji suggestions available",
454
+ "a11y/Mention suggestions available": "Mention suggestions available",
455
+ "mention/Channel Description": "Notify everyone in this channel",
456
+ "mention/Here Description": "Notify every online member in this channel",
440
457
  "Pin Chat": "Chat vastmaken",
441
458
  "Pin Group": "Groep vastmaken",
442
459
  "Unpin Chat": "Chat losmaken",
@@ -162,6 +162,7 @@
162
162
  "duration/Remind Me": "{{ milliseconds | durationFormatter(withSuffix: true) }}",
163
163
  "replied to": "respondeu a",
164
164
  "timestamp/ChannelPreviewStatus": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: {\"lastDay\":\"[Ontem]\",\"lastWeek\":\"dddd\",\"nextDay\":\"[Amanhã]\",\"nextWeek\":\"dddd [às] LT\",\"sameDay\":\"LT\",\"sameElse\":\"L\"}) }}",
165
+ "timestamp/FileAttachmentListSection": "{{ timestamp | timestampFormatter(format: MMMM YYYY) }}",
165
166
  "timestamp/ImageGalleryHeader": "{{ timestamp | timestampFormatter(calendar: true) }}",
166
167
  "timestamp/InlineDateSeparator": "{{ timestamp | timestampFormatter(calendar: true) }}",
167
168
  "timestamp/MessageEditedTimestamp": "{{ timestamp | timestampFormatter(calendar: true) }}",
@@ -388,6 +389,7 @@
388
389
  "Failed to block user": "Falha ao bloquear usuário",
389
390
  "Failed to delete channel": "Falha ao excluir o canal",
390
391
  "Failed to leave channel": "Falha ao sair do canal",
392
+ "Failed to load pinned messages": "Falha ao carregar mensagens fixadas",
391
393
  "Failed to load users": "Falha ao carregar usuários",
392
394
  "Failed to play the recording": "Falha ao reproduzir a gravação",
393
395
  "Failed to update channel archive status": "Falha ao atualizar o status de arquivamento do canal",
@@ -437,6 +439,21 @@
437
439
  "a11y/Gallery Image": "Imagem da galeria",
438
440
  "a11y/Gallery Video": "Vídeo da galeria",
439
441
  "a11y/{{position}} of {{count}}": "{{position}} de {{count}}",
442
+ "No pinned messages": "Nenhuma mensagem fixada",
443
+ "a11y/Search pinned messages": "Pesquisar mensagens fixadas",
444
+ "Long-press a message to pin it to the chat": "Mantenha pressionada uma mensagem para fixá-la no chat",
445
+ "No photos or videos": "Nenhuma foto ou vídeo",
446
+ "Share a photo or video to see it here": "Compartilhe uma foto ou vídeo para vê-lo aqui",
447
+ "Failed to load media": "Falha ao carregar mídia",
448
+ "No files": "Nenhum arquivo",
449
+ "Share a file to see it here": "Compartilhe um arquivo para vê-lo aqui",
450
+ "Failed to load files": "Falha ao carregar os arquivos",
451
+ "Notify all {{ role }} members": "Notify all {{ role }} members",
452
+ "a11y/Command suggestions available": "Command suggestions available",
453
+ "a11y/Emoji suggestions available": "Emoji suggestions available",
454
+ "a11y/Mention suggestions available": "Mention suggestions available",
455
+ "mention/Channel Description": "Notify everyone in this channel",
456
+ "mention/Here Description": "Notify every online member in this channel",
440
457
  "Pin Chat": "Fixar conversa",
441
458
  "Pin Group": "Fixar grupo",
442
459
  "Unpin Chat": "Desafixar conversa",
package/src/i18n/ru.json CHANGED
@@ -162,6 +162,7 @@
162
162
  "duration/Remind Me": "{{ milliseconds | durationFormatter(withSuffix: true) }}",
163
163
  "replied to": "ответил на",
164
164
  "timestamp/ChannelPreviewStatus": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: {\"lastDay\":\"[Вчера]\",\"lastWeek\":\"dddd\",\"nextDay\":\"[Завтра]\",\"nextWeek\":\"dddd [в] LT\",\"sameDay\":\"LT\",\"sameElse\":\"L\"}) }}",
165
+ "timestamp/FileAttachmentListSection": "{{ timestamp | timestampFormatter(format: MMMM YYYY) }}",
165
166
  "timestamp/ImageGalleryHeader": "{{ timestamp | timestampFormatter(calendar: true) }}",
166
167
  "timestamp/InlineDateSeparator": "{{ timestamp | timestampFormatter(calendar: true) }}",
167
168
  "timestamp/MessageEditedTimestamp": "{{ timestamp | timestampFormatter(calendar: true) }}",
@@ -388,6 +389,7 @@
388
389
  "Failed to block user": "Не удалось заблокировать пользователя",
389
390
  "Failed to delete channel": "Не удалось удалить канал",
390
391
  "Failed to leave channel": "Не удалось покинуть канал",
392
+ "Failed to load pinned messages": "Не удалось загрузить закреплённые сообщения",
391
393
  "Failed to load users": "Не удалось загрузить пользователей",
392
394
  "Failed to play the recording": "Не удалось воспроизвести запись",
393
395
  "Failed to update channel archive status": "Не удалось обновить статус архивации канала",
@@ -437,6 +439,21 @@
437
439
  "a11y/Gallery Image": "Изображение из галереи",
438
440
  "a11y/Gallery Video": "Видео из галереи",
439
441
  "a11y/{{position}} of {{count}}": "{{position}} из {{count}}",
442
+ "No pinned messages": "Нет закреплённых сообщений",
443
+ "a11y/Search pinned messages": "Поиск закреплённых сообщений",
444
+ "Long-press a message to pin it to the chat": "Нажмите и удерживайте сообщение, чтобы закрепить его в чате",
445
+ "No photos or videos": "Нет фото и видео",
446
+ "Share a photo or video to see it here": "Поделитесь фото или видео, чтобы увидеть их здесь",
447
+ "Failed to load media": "Не удалось загрузить медиафайлы",
448
+ "No files": "Нет файлов",
449
+ "Share a file to see it here": "Поделитесь файлом, чтобы увидеть его здесь",
450
+ "Failed to load files": "Не удалось загрузить файлы",
451
+ "Notify all {{ role }} members": "Notify all {{ role }} members",
452
+ "a11y/Command suggestions available": "Command suggestions available",
453
+ "a11y/Emoji suggestions available": "Emoji suggestions available",
454
+ "a11y/Mention suggestions available": "Mention suggestions available",
455
+ "mention/Channel Description": "Notify everyone in this channel",
456
+ "mention/Here Description": "Notify every online member in this channel",
440
457
  "Pin Chat": "Закрепить чат",
441
458
  "Pin Group": "Закрепить группу",
442
459
  "Unpin Chat": "Открепить чат",
package/src/i18n/tr.json CHANGED
@@ -162,6 +162,7 @@
162
162
  "duration/Remind Me": "{{ milliseconds | durationFormatter(withSuffix: true) }}",
163
163
  "replied to": "yanıtladı",
164
164
  "timestamp/ChannelPreviewStatus": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: {\"lastDay\":\"[Dün]\",\"lastWeek\":\"dddd\",\"nextDay\":\"[Yarın]\",\"nextWeek\":\"dddd [saat] LT\",\"sameDay\":\"LT\",\"sameElse\":\"L\"}) }}",
165
+ "timestamp/FileAttachmentListSection": "{{ timestamp | timestampFormatter(format: MMMM YYYY) }}",
165
166
  "timestamp/ImageGalleryHeader": "{{ timestamp | timestampFormatter(calendar: true) }}",
166
167
  "timestamp/InlineDateSeparator": "{{ timestamp | timestampFormatter(calendar: true) }}",
167
168
  "timestamp/MessageEditedTimestamp": "{{ timestamp | timestampFormatter(calendar: true) }}",
@@ -388,6 +389,7 @@
388
389
  "Failed to block user": "Kullanıcı engellenemedi",
389
390
  "Failed to delete channel": "Kanal silinemedi",
390
391
  "Failed to leave channel": "Kanaldan çıkılamadı",
392
+ "Failed to load pinned messages": "Sabitlenmiş mesajlar yüklenemedi",
391
393
  "Failed to load users": "Kullanıcılar yüklenemedi",
392
394
  "Failed to play the recording": "Kayıt oynatılamadı",
393
395
  "Failed to update channel archive status": "Kanal arşiv durumu güncellenemedi",
@@ -437,6 +439,21 @@
437
439
  "a11y/Gallery Image": "Galeri görüntüsü",
438
440
  "a11y/Gallery Video": "Galeri videosu",
439
441
  "a11y/{{position}} of {{count}}": "{{count}} öğeden {{position}}",
442
+ "No pinned messages": "Sabitlenmiş mesaj yok",
443
+ "a11y/Search pinned messages": "Sabitlenmiş mesajları ara",
444
+ "Long-press a message to pin it to the chat": "Bir mesajı sohbete sabitlemek için uzun basın",
445
+ "No photos or videos": "Fotoğraf veya video yok",
446
+ "Share a photo or video to see it here": "Burada görmek için bir fotoğraf veya video paylaşın",
447
+ "Failed to load media": "Medya yüklenemedi",
448
+ "No files": "Dosya yok",
449
+ "Share a file to see it here": "Burada görmek için bir dosya paylaşın",
450
+ "Failed to load files": "Dosyalar yüklenemedi",
451
+ "Notify all {{ role }} members": "Notify all {{ role }} members",
452
+ "a11y/Command suggestions available": "Command suggestions available",
453
+ "a11y/Emoji suggestions available": "Emoji suggestions available",
454
+ "a11y/Mention suggestions available": "Mention suggestions available",
455
+ "mention/Channel Description": "Notify everyone in this channel",
456
+ "mention/Here Description": "Notify every online member in this channel",
440
457
  "Pin Chat": "Sohbeti sabitle",
441
458
  "Pin Group": "Grubu sabitle",
442
459
  "Unpin Chat": "Sohbetin sabitlemesini kaldır",
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+
3
+ import { Path, Svg } from 'react-native-svg';
4
+
5
+ import { IconProps } from './utils/base';
6
+
7
+ export const Folder = ({ fill, height, pathFill, size, stroke, width, ...rest }: IconProps) => {
8
+ const color = stroke ?? pathFill ?? fill ?? 'black';
9
+
10
+ return (
11
+ <Svg
12
+ fill={'none'}
13
+ height={height ?? size}
14
+ viewBox={'0 0 17 14'}
15
+ width={width ?? size}
16
+ {...rest}
17
+ >
18
+ <Path
19
+ d='M15.75 3.25V12.0695C15.75 12.2169 15.6915 12.3581 15.5873 12.4623C15.4831 12.5665 15.3419 12.625 15.1945 12.625H1.375C1.20924 12.625 1.05027 12.5592 0.933058 12.4419C0.815848 12.3247 0.75 12.1658 0.75 12V1.375C0.75 1.20924 0.815848 1.05027 0.933058 0.933058C1.05027 0.815848 1.20924 0.75 1.375 0.75H5.54141C5.67664 0.75 5.80822 0.793861 5.91641 0.875L8.25 2.625H15.125C15.2908 2.625 15.4497 2.69085 15.5669 2.80806C15.6842 2.92527 15.75 3.08424 15.75 3.25Z'
20
+ fill='none'
21
+ stroke={color}
22
+ strokeLinecap='round'
23
+ strokeLinejoin='round'
24
+ strokeWidth={1.5}
25
+ />
26
+ </Svg>
27
+ );
28
+ };
@@ -46,6 +46,7 @@ export * from './refresh';
46
46
  export { PollThumbnail } from './poll';
47
47
  export * from './notification';
48
48
  export { FilePickerIcon } from './file';
49
+ export * from './folder';
49
50
  export * from './command';
50
51
  export * from './bell';
51
52
  export * from './save';
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+
3
+ import { Path, Svg } from 'react-native-svg';
4
+
5
+ import { IconProps } from './utils/base';
6
+
7
+ export const Megaphone = ({ fill, height, pathFill, size, stroke, width, ...rest }: IconProps) => {
8
+ const color = stroke ?? pathFill ?? fill ?? 'black';
9
+
10
+ return (
11
+ <Svg height={height ?? size} width={width ?? size} viewBox='0 0 16 16' fill='none' {...rest}>
12
+ <Path
13
+ d='M10 4.99999V12.5419C10 12.6241 10.0204 12.705 10.0592 12.7775C10.098 12.85 10.1541 12.9119 10.2225 12.9575L10.91 13.4156C10.9767 13.4601 11.0531 13.4879 11.1328 13.4966C11.2124 13.5054 11.293 13.4948 11.3678 13.4659C11.4425 13.437 11.5092 13.3905 11.5623 13.3304C11.6153 13.2703 11.6531 13.1984 11.6725 13.1206L12.5 9.99999M10 4.99999H12.5C13.163 4.99999 13.7989 5.26338 14.2678 5.73222C14.7366 6.20106 15 6.83695 15 7.49999C15 8.16303 14.7366 8.79892 14.2678 9.26776C13.7989 9.7366 13.163 9.99999 12.5 9.99999M10 4.99999C10 4.99999 6.59688 4.86499 3.32188 2.11812C3.24905 2.05685 3.16025 2.01764 3.06591 2.0051C2.97158 1.99255 2.87562 2.00719 2.78931 2.04729C2.70301 2.08739 2.62994 2.15129 2.57869 2.23148C2.52744 2.31167 2.50014 2.40482 2.5 2.49999V12.5C2.50002 12.5952 2.52723 12.6884 2.57844 12.7687C2.62964 12.849 2.7027 12.913 2.78903 12.9532C2.87536 12.9934 2.97137 13.0081 3.06576 12.9955C3.16015 12.983 3.24901 12.9438 3.32188 12.8825C6.59688 10.135 10 9.99999 10 9.99999H12.5'
14
+ stroke={color}
15
+ strokeWidth={1.5}
16
+ strokeLinecap='round'
17
+ strokeLinejoin='round'
18
+ />
19
+ </Svg>
20
+ );
21
+ };
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+
3
+ import { Path, Svg } from 'react-native-svg';
4
+
5
+ import { IconProps } from './utils/base';
6
+
7
+ export const Shield = ({ fill, height, pathFill, size, stroke, width, ...rest }: IconProps) => {
8
+ const color = stroke ?? pathFill ?? fill ?? 'black';
9
+
10
+ return (
11
+ <Svg width={width ?? size} height={height ?? size} viewBox='0 0 16 16' fill='none' {...rest}>
12
+ <Path
13
+ d='M13.5 7V3.5C13.5 3.36739 13.4473 3.24021 13.3536 3.14645C13.2598 3.05268 13.1326 3 13 3H3C2.86739 3 2.74021 3.05268 2.64645 3.14645C2.55268 3.24021 2.5 3.36739 2.5 3.5V7C2.5 13 8 14.5 8 14.5C8 14.5 13.5 13 13.5 7Z'
14
+ stroke={color}
15
+ strokeWidth={1.5}
16
+ strokeLinecap='round'
17
+ strokeLinejoin='round'
18
+ />
19
+ </Svg>
20
+ );
21
+ };
@@ -13,6 +13,7 @@ import { VideoPlayerPool } from '../video-player-pool';
13
13
  jest.mock('../video-player-pool', () => ({
14
14
  VideoPlayerPool: jest.fn().mockImplementation(() => ({
15
15
  clear: jest.fn(),
16
+ getActivePlayer: jest.fn(() => null),
16
17
  pool: new Map(),
17
18
  state: {
18
19
  getLatestValue: () => ({ activeVideoPlayer: null }),
@@ -179,6 +180,63 @@ describe('ImageGalleryStateStore', () => {
179
180
 
180
181
  expect(store.state.getLatestValue().currentIndex).toBe(0);
181
182
  });
183
+
184
+ it('should mirror currentIndex into currentIndexShared.value', () => {
185
+ const store = new ImageGalleryStateStore();
186
+
187
+ store.currentIndex = 7;
188
+
189
+ expect(store.currentIndexShared.value).toBe(7);
190
+ });
191
+
192
+ it('should pause the active video player when currentIndex changes', () => {
193
+ const store = new ImageGalleryStateStore();
194
+ const pause = jest.fn();
195
+ (store.videoPlayerPool.getActivePlayer as jest.Mock).mockReturnValue({ pause });
196
+
197
+ store.currentIndex = 3;
198
+
199
+ expect(pause).toHaveBeenCalledTimes(1);
200
+ });
201
+
202
+ it('should not pause the active player when currentIndex setter is called with the same value', () => {
203
+ const store = new ImageGalleryStateStore();
204
+ store.currentIndex = 3;
205
+ const pause = jest.fn();
206
+ (store.videoPlayerPool.getActivePlayer as jest.Mock).mockReturnValue({ pause });
207
+
208
+ store.currentIndex = 3;
209
+
210
+ expect(pause).not.toHaveBeenCalled();
211
+ });
212
+
213
+ it('should not throw when there is no active player on index change', () => {
214
+ const store = new ImageGalleryStateStore();
215
+ (store.videoPlayerPool.getActivePlayer as jest.Mock).mockReturnValue(null);
216
+
217
+ expect(() => {
218
+ store.currentIndex = 5;
219
+ }).not.toThrow();
220
+ });
221
+ });
222
+
223
+ describe('currentIndexShared mirror', () => {
224
+ it('should initialize at INITIAL_STATE.currentIndex (0)', () => {
225
+ const store = new ImageGalleryStateStore();
226
+
227
+ expect(store.currentIndexShared.value).toBe(0);
228
+ });
229
+
230
+ it('should reset to 0 on clear() even after non-zero set', () => {
231
+ const store = new ImageGalleryStateStore();
232
+ store.currentIndex = 12;
233
+ expect(store.currentIndexShared.value).toBe(12);
234
+
235
+ store.clear();
236
+
237
+ expect(store.state.getLatestValue().currentIndex).toBe(0);
238
+ expect(store.currentIndexShared.value).toBe(0);
239
+ });
182
240
  });
183
241
 
184
242
  describe('attachmentsWithMessage getter', () => {
@@ -707,6 +765,29 @@ describe('ImageGalleryStateStore', () => {
707
765
  unsubscribe();
708
766
  });
709
767
 
768
+ it('should mirror the matched index into currentIndexShared', () => {
769
+ const store = new ImageGalleryStateStore();
770
+ store.subscribeToMessages();
771
+ const unsubscribe = store.subscribeToSelectedAttachmentUrl();
772
+
773
+ store.messages = [
774
+ generateMessage({
775
+ attachments: [generateImageAttachment({ image_url: 'https://example.com/1.jpg' })],
776
+ id: 'msg-1',
777
+ }),
778
+ generateMessage({
779
+ attachments: [generateImageAttachment({ image_url: 'https://example.com/2.jpg' })],
780
+ id: 'msg-2',
781
+ }),
782
+ ];
783
+ store.selectedAttachmentUrl = 'https://example.com/2.jpg';
784
+
785
+ expect(store.state.getLatestValue().currentIndex).toBe(1);
786
+ expect(store.currentIndexShared.value).toBe(1);
787
+
788
+ unsubscribe();
789
+ });
790
+
710
791
  it('should return unsubscribe function', () => {
711
792
  const store = new ImageGalleryStateStore();
712
793
  const unsubscribe = store.subscribeToSelectedAttachmentUrl();
@@ -1,3 +1,5 @@
1
+ import { makeMutable, SharedValue } from 'react-native-reanimated';
2
+
1
3
  import { Attachment, LocalMessage, StateStore, Unsubscribe, UserResponse } from 'stream-chat';
2
4
 
3
5
  import { VideoPlayerPool } from './video-player-pool';
@@ -66,11 +68,19 @@ export class ImageGalleryStateStore {
66
68
  state: StateStore<ImageGalleryState>;
67
69
  options: ImageGalleryOptions;
68
70
  videoPlayerPool: VideoPlayerPool;
71
+ /**
72
+ * SharedValue mirror of `state.currentIndex` for worklet consumers (gesture
73
+ * handlers, animated styles). Maintained in lockstep with the setter and the
74
+ * reset path in `clear()`. Reads from worklets bypass the JS bridge entirely;
75
+ * any code path that updates `currentIndex` must keep this mirror in sync.
76
+ */
77
+ currentIndexShared: SharedValue<number>;
69
78
 
70
79
  constructor(options: Partial<ImageGalleryOptions> = {}) {
71
80
  this.options = { ...INITIAL_IMAGE_GALLERY_OPTIONS, ...options };
72
81
  this.state = new StateStore<ImageGalleryState>(INITIAL_STATE);
73
82
  this.videoPlayerPool = new VideoPlayerPool();
83
+ this.currentIndexShared = makeMutable(INITIAL_STATE.currentIndex);
74
84
  }
75
85
 
76
86
  // Getters
@@ -154,7 +164,21 @@ export class ImageGalleryStateStore {
154
164
  }
155
165
 
156
166
  set currentIndex(currentIndex: number) {
167
+ const previousIndex = this.state.getLatestValue().currentIndex;
157
168
  this.state.partialNext({ currentIndex });
169
+ this.currentIndexShared.value = currentIndex;
170
+ // When the user moves off the current slide, pause whatever video was
171
+ // playing. Moved here from a useEffect in ImageGallery so the invariant
172
+ // lives next to the state it depends on — and the parent no longer needs
173
+ // to subscribe to currentIndex purely to drive this side effect.
174
+ // `clear()` is the other reset path; it bypasses this setter but already
175
+ // pauses everything through `videoPlayerPool.clear()`.
176
+ if (previousIndex !== currentIndex) {
177
+ const activePlayer = this.videoPlayerPool.getActivePlayer();
178
+ if (activePlayer) {
179
+ activePlayer.pause();
180
+ }
181
+ }
158
182
  }
159
183
 
160
184
  set requesterNode(requesterNode: number | null) {
@@ -212,7 +236,8 @@ export class ImageGalleryStateStore {
212
236
  (asset) =>
213
237
  stripQueryFromUrl(asset.uri) === stripQueryFromUrl(selectedAttachmentUrl ?? ''),
214
238
  );
215
- this.state.partialNext({ currentIndex: index === -1 ? 0 : index });
239
+ // Route through the setter so currentIndexShared stays in sync.
240
+ this.currentIndex = index === -1 ? 0 : index;
216
241
  },
217
242
  );
218
243
 
@@ -233,5 +258,6 @@ export class ImageGalleryStateStore {
233
258
  clear = () => {
234
259
  this.videoPlayerPool.clear();
235
260
  this.state.partialNext(INITIAL_STATE);
261
+ this.currentIndexShared.value = INITIAL_STATE.currentIndex;
236
262
  };
237
263
  }
@@ -28,7 +28,7 @@ import type { PreparedBatchQueries, PreparedQueries, Scalar, Table } from './typ
28
28
  * This way usage @op-engineering/op-sqlite package is scoped to a single class/file.
29
29
  */
30
30
  export class SqliteClient {
31
- static dbVersion = 15;
31
+ static dbVersion = 16;
32
32
 
33
33
  static dbName = DB_NAME;
34
34
  static dbLocation = DB_LOCATION;
@@ -12,6 +12,10 @@ export const mapDraftMessageToStorable = ({
12
12
  custom,
13
13
  text,
14
14
  attachments,
15
+ mentioned_channel,
16
+ mentioned_group_ids,
17
+ mentioned_here,
18
+ mentioned_roles,
15
19
  mentioned_users,
16
20
  parent_id,
17
21
  poll_id,
@@ -25,6 +29,10 @@ export const mapDraftMessageToStorable = ({
25
29
  attachments: attachments ? JSON.stringify(attachments) : undefined,
26
30
  custom: custom ? JSON.stringify(custom) : undefined,
27
31
  id,
32
+ mentionedChannel: mentioned_channel,
33
+ mentionedGroupIds: mentioned_group_ids ? JSON.stringify(mentioned_group_ids) : undefined,
34
+ mentionedHere: mentioned_here,
35
+ mentionedRoles: mentioned_roles ? JSON.stringify(mentioned_roles) : undefined,
28
36
  mentionedUsers: mentioned_users ? JSON.stringify(mentioned_users) : undefined,
29
37
  parentId: parent_id,
30
38
  poll_id,
@@ -10,6 +10,10 @@ export const mapStorableToDraftMessage = (
10
10
  custom,
11
11
  text,
12
12
  attachments,
13
+ mentionedChannel,
14
+ mentionedGroupIds,
15
+ mentionedHere,
16
+ mentionedRoles,
13
17
  mentionedUsers,
14
18
  parentId,
15
19
  poll_id,
@@ -23,6 +27,10 @@ export const mapStorableToDraftMessage = (
23
27
  attachments: attachments ? JSON.parse(attachments) : undefined,
24
28
  custom: custom ? JSON.parse(custom) : undefined,
25
29
  id,
30
+ mentioned_channel: mentionedChannel,
31
+ mentioned_group_ids: mentionedGroupIds ? JSON.parse(mentionedGroupIds) : undefined,
32
+ mentioned_here: mentionedHere,
33
+ mentioned_roles: mentionedRoles ? JSON.parse(mentionedRoles) : undefined,
26
34
  mentioned_users: mentionedUsers ? JSON.parse(mentionedUsers) : undefined,
27
35
  parent_id: parentId,
28
36
  poll_id,
@@ -90,6 +90,10 @@ export const tables: Tables = {
90
90
  attachments: 'TEXT',
91
91
  custom: 'TEXT',
92
92
  id: 'TEXT NOT NULL',
93
+ mentionedChannel: 'BOOLEAN DEFAULT FALSE',
94
+ mentionedGroupIds: 'TEXT',
95
+ mentionedHere: 'BOOLEAN DEFAULT FALSE',
96
+ mentionedRoles: 'TEXT',
93
97
  mentionedUsers: 'TEXT',
94
98
  parentId: 'TEXT',
95
99
  poll_id: 'TEXT',
@@ -381,6 +385,10 @@ export type Schema = {
381
385
  id: string;
382
386
  attachments?: string;
383
387
  custom?: string;
388
+ mentionedChannel?: boolean;
389
+ mentionedGroupIds?: string;
390
+ mentionedHere?: boolean;
391
+ mentionedRoles?: string;
384
392
  mentionedUsers?: string;
385
393
  parentId?: string;
386
394
  poll_id?: string;
@@ -444,6 +444,11 @@ export interface ChatSemantics {
444
444
  chatBgAttachmentIncoming: ColorValue;
445
445
  chatBgAttachmentOutgoing: ColorValue;
446
446
  chatBgIncoming: ColorValue;
447
+ chatBgMention: ColorValue;
448
+ chatBgMentionBroadcast: ColorValue;
449
+ chatBgMentionGroup: ColorValue;
450
+ chatBgMentionRole: ColorValue;
451
+ chatBgMentionUser: ColorValue;
447
452
  chatBgOutgoing: ColorValue;
448
453
  chatBorderIncoming: ColorValue;
449
454
  chatBorderOnChatIncoming: ColorValue;
@@ -458,6 +463,10 @@ export interface ChatSemantics {
458
463
  chatTextIncoming: ColorValue;
459
464
  chatTextLink: ColorValue;
460
465
  chatTextMention: ColorValue;
466
+ chatTextMentionBroadcast: ColorValue;
467
+ chatTextMentionGroup: ColorValue;
468
+ chatTextMentionRole: ColorValue;
469
+ chatTextMentionUser: ColorValue;
461
470
  chatTextOutgoing: ColorValue;
462
471
  chatTextReaction: ColorValue;
463
472
  chatTextRead: ColorValue;
@@ -509,6 +509,11 @@ export const semantics: IStreamTokens['semantics'] = {
509
509
  chatBgAttachmentIncoming: '$backgroundCoreSurfaceStrong',
510
510
  chatBgAttachmentOutgoing: '$brand150',
511
511
  chatBgIncoming: '$backgroundCoreSurfaceDefault',
512
+ chatBgMention: foundations.colors.baseTransparent0,
513
+ chatBgMentionBroadcast: '$chatBgMention',
514
+ chatBgMentionGroup: '$chatBgMention',
515
+ chatBgMentionRole: '$chatBgMention',
516
+ chatBgMentionUser: '$chatBgMention',
512
517
  chatBgOutgoing: '$brand100',
513
518
  chatBorderIncoming: '$borderCoreSubtle',
514
519
  chatBorderOnChatIncoming: '$borderCoreStrong',
@@ -522,7 +527,11 @@ export const semantics: IStreamTokens['semantics'] = {
522
527
  chatReplyIndicatorOutgoing: '$brand400',
523
528
  chatTextIncoming: '$textPrimary',
524
529
  chatTextLink: '$textLink',
525
- chatTextMention: '$textLink',
530
+ chatTextMention: '$accentPrimary',
531
+ chatTextMentionBroadcast: '$chatTextMention',
532
+ chatTextMentionGroup: '$chatTextMention',
533
+ chatTextMentionRole: '$chatTextMention',
534
+ chatTextMentionUser: '$chatTextMention',
526
535
  chatTextOutgoing: '$brand900',
527
536
  chatTextReaction: '$textSecondary',
528
537
  chatTextRead: '$accentPrimary',
@@ -509,6 +509,11 @@ export const semantics: IStreamTokens['semantics'] = {
509
509
  chatBgAttachmentIncoming: '$backgroundCoreSurfaceStrong',
510
510
  chatBgAttachmentOutgoing: '$brand150',
511
511
  chatBgIncoming: '$backgroundCoreSurfaceDefault',
512
+ chatBgMention: foundations.colors.baseTransparent0,
513
+ chatBgMentionBroadcast: '$chatBgMention',
514
+ chatBgMentionGroup: '$chatBgMention',
515
+ chatBgMentionRole: '$chatBgMention',
516
+ chatBgMentionUser: '$chatBgMention',
512
517
  chatBgOutgoing: '$brand100',
513
518
  chatBorderIncoming: '$borderCoreSubtle',
514
519
  chatBorderOnChatIncoming: '$borderCoreStrong',
@@ -522,7 +527,11 @@ export const semantics: IStreamTokens['semantics'] = {
522
527
  chatReplyIndicatorOutgoing: '$brand400',
523
528
  chatTextIncoming: '$textPrimary',
524
529
  chatTextLink: '$textLink',
525
- chatTextMention: '$textLink',
530
+ chatTextMention: '$accentPrimary',
531
+ chatTextMentionBroadcast: '$chatTextMention',
532
+ chatTextMentionGroup: '$chatTextMention',
533
+ chatTextMentionRole: '$chatTextMention',
534
+ chatTextMentionUser: '$chatTextMention',
526
535
  chatTextOutgoing: '$brand900',
527
536
  chatTextReaction: '$textSecondary',
528
537
  chatTextRead: '$accentPrimary',
@@ -509,6 +509,11 @@ export const semantics: IStreamTokens['semantics'] = {
509
509
  chatBgAttachmentIncoming: '$backgroundCoreSurfaceStrong',
510
510
  chatBgAttachmentOutgoing: '$brand150',
511
511
  chatBgIncoming: '$backgroundCoreSurfaceDefault',
512
+ chatBgMention: foundations.colors.baseTransparent0,
513
+ chatBgMentionBroadcast: '$chatBgMention',
514
+ chatBgMentionGroup: '$chatBgMention',
515
+ chatBgMentionRole: '$chatBgMention',
516
+ chatBgMentionUser: '$chatBgMention',
512
517
  chatBgOutgoing: '$brand100',
513
518
  chatBorderIncoming: '$borderCoreSubtle',
514
519
  chatBorderOnChatIncoming: '$borderCoreStrong',
@@ -522,7 +527,11 @@ export const semantics: IStreamTokens['semantics'] = {
522
527
  chatReplyIndicatorOutgoing: '$brand400',
523
528
  chatTextIncoming: '$textPrimary',
524
529
  chatTextLink: '$textLink',
525
- chatTextMention: '$textLink',
530
+ chatTextMention: '$accentPrimary',
531
+ chatTextMentionBroadcast: '$chatTextMention',
532
+ chatTextMentionGroup: '$chatTextMention',
533
+ chatTextMentionRole: '$chatTextMention',
534
+ chatTextMentionUser: '$chatTextMention',
526
535
  chatTextOutgoing: '$brand900',
527
536
  chatTextReaction: '$textSecondary',
528
537
  chatTextRead: '$accentPrimary',
@@ -509,6 +509,11 @@ export const semantics: IStreamTokens['semantics'] = {
509
509
  chatBgAttachmentIncoming: '$backgroundCoreSurfaceStrong',
510
510
  chatBgAttachmentOutgoing: '$brand150',
511
511
  chatBgIncoming: '$backgroundCoreSurfaceDefault',
512
+ chatBgMention: foundations.colors.baseTransparent0,
513
+ chatBgMentionBroadcast: '$chatBgMention',
514
+ chatBgMentionGroup: '$chatBgMention',
515
+ chatBgMentionRole: '$chatBgMention',
516
+ chatBgMentionUser: '$chatBgMention',
512
517
  chatBgOutgoing: '$brand100',
513
518
  chatBorderIncoming: '$borderCoreSubtle',
514
519
  chatBorderOnChatIncoming: '$borderCoreStrong',
@@ -522,7 +527,11 @@ export const semantics: IStreamTokens['semantics'] = {
522
527
  chatReplyIndicatorOutgoing: '$brand400',
523
528
  chatTextIncoming: '$textPrimary',
524
529
  chatTextLink: '$textLink',
525
- chatTextMention: '$textLink',
530
+ chatTextMention: '$accentPrimary',
531
+ chatTextMentionBroadcast: '$chatTextMention',
532
+ chatTextMentionGroup: '$chatTextMention',
533
+ chatTextMentionRole: '$chatTextMention',
534
+ chatTextMentionUser: '$chatTextMention',
526
535
  chatTextOutgoing: '$brand900',
527
536
  chatTextReaction: '$textSecondary',
528
537
  chatTextRead: '$accentPrimary',