stream-chat-react-native-core 4.0.0 → 4.1.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 (1523) hide show
  1. package/README.md +1 -13
  2. package/lib/commonjs/components/Attachment/Attachment.js +17 -16
  3. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  4. package/lib/commonjs/components/Attachment/AttachmentActions.js +5 -5
  5. package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
  6. package/lib/commonjs/components/Attachment/Card.js +19 -16
  7. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  8. package/lib/commonjs/components/Attachment/FileAttachment.js +9 -9
  9. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  10. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +5 -5
  11. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  12. package/lib/commonjs/components/Attachment/FileIcon.js +1 -1
  13. package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
  14. package/lib/commonjs/components/Attachment/Gallery.js +124 -122
  15. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  16. package/lib/commonjs/components/Attachment/Giphy.js +113 -149
  17. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  18. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  19. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  20. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  21. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  22. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  23. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  24. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  25. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  26. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  27. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  28. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  29. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  30. package/lib/commonjs/components/Attachment/utils/buildGallery/types.js +4 -0
  31. package/lib/commonjs/{styleguideComponents/Reanimated.js.map → components/Attachment/utils/buildGallery/types.js.map} +0 -0
  32. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js +14 -0
  33. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js.map +1 -0
  34. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  35. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  36. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +10 -9
  37. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  38. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.js +1 -1
  39. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerError.js +1 -1
  40. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerErrorImage.js +1 -1
  41. package/lib/commonjs/components/AttachmentPicker/components/AttachmentSelectionBar.js +12 -9
  42. package/lib/commonjs/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
  43. package/lib/commonjs/components/AttachmentPicker/components/CameraSelectorIcon.js +1 -1
  44. package/lib/commonjs/components/AttachmentPicker/components/FileSelectorIcon.js +1 -1
  45. package/lib/commonjs/components/AttachmentPicker/components/ImageOverlaySelectedComponent.js +1 -1
  46. package/lib/commonjs/components/AttachmentPicker/components/ImageSelectorIcon.js +1 -1
  47. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +25 -49
  48. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  49. package/lib/commonjs/components/AutoCompleteInput/{CommandsItem.js → AutoCompleteSuggestionCommandIcon.js} +21 -94
  50. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -0
  51. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +145 -0
  52. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -0
  53. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +248 -0
  54. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -0
  55. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +223 -0
  56. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -0
  57. package/lib/commonjs/components/Avatar/Avatar.js +14 -8
  58. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  59. package/lib/commonjs/components/Avatar/GroupAvatar.js +11 -9
  60. package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
  61. package/lib/commonjs/components/Channel/Channel.js +304 -203
  62. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  63. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +7 -5
  64. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  65. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +7 -5
  66. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  67. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +13 -31
  68. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  69. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +35 -0
  70. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -0
  71. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  72. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  73. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  74. package/lib/commonjs/components/ChannelList/ChannelList.js +7 -7
  75. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  76. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js +6 -5
  77. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  78. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js +7 -8
  79. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  80. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +5 -4
  81. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  82. package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js +8 -5
  83. package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  84. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js +18 -18
  85. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
  86. package/lib/commonjs/components/ChannelList/Skeleton.js +15 -14
  87. package/lib/commonjs/components/ChannelList/Skeleton.js.map +1 -1
  88. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  89. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  90. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  91. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  92. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  93. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  94. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  95. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  96. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js +3 -1
  97. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  98. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  99. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  100. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  101. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  102. package/lib/commonjs/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  103. package/lib/commonjs/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  104. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  105. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  106. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +96 -63
  107. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  108. package/lib/commonjs/components/ChannelList/utils.js +1 -1
  109. package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
  110. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js +3 -3
  111. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  112. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +5 -5
  113. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  114. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +6 -6
  115. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  116. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js +50 -21
  117. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  118. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  119. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  120. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +5 -5
  121. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  122. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js +2 -2
  123. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  124. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +3 -3
  125. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  126. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js +16 -7
  127. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  128. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  129. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  130. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js +2 -1
  131. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  132. package/lib/commonjs/components/Chat/Chat.js +9 -5
  133. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  134. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  135. package/lib/commonjs/components/Chat/hooks/useIsOnline.js +40 -31
  136. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
  137. package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
  138. package/lib/commonjs/components/ImageGallery/ImageGallery.js +91 -59
  139. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  140. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +3 -3
  141. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  142. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +13 -13
  143. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  144. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +32 -17
  145. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  146. package/lib/commonjs/components/ImageGallery/components/ImageGalleryOverlay.js +1 -1
  147. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +8 -8
  148. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  149. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js +6 -6
  150. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  151. package/lib/commonjs/components/Indicators/EmptyStateIndicator.js +1 -1
  152. package/lib/commonjs/components/Indicators/LoadingDot.js +1 -1
  153. package/lib/commonjs/components/Indicators/LoadingDots.js +1 -1
  154. package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js +1 -1
  155. package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  156. package/lib/commonjs/components/Indicators/LoadingIndicator.js +10 -10
  157. package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
  158. package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js +21 -13
  159. package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
  160. package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleViewFC.js +1 -1
  161. package/lib/commonjs/components/Message/Message.js +153 -855
  162. package/lib/commonjs/components/Message/Message.js.map +1 -1
  163. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js +7 -7
  164. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  165. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +42 -40
  166. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  167. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +9 -7
  168. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  169. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +35 -23
  170. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  171. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +122 -0
  172. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -0
  173. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js +27 -11
  174. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  175. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js +6 -6
  176. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  177. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +32 -15
  178. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  179. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +29 -25
  180. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  181. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +8 -4
  182. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  183. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +87 -114
  184. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
  185. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  186. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  187. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  188. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  189. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +208 -27
  190. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  191. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  192. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  193. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +1 -5
  194. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  195. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +307 -0
  196. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -0
  197. package/lib/commonjs/components/Message/hooks/useMessageActions.js +563 -0
  198. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -0
  199. package/lib/commonjs/components/Message/utils/messageActions.js +17 -15
  200. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  201. package/lib/commonjs/components/Message/utils/removeReservedFields.js.map +1 -1
  202. package/lib/commonjs/components/MessageInput/AttachButton.js +7 -5
  203. package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
  204. package/lib/commonjs/components/MessageInput/CommandsButton.js +4 -4
  205. package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
  206. package/lib/commonjs/components/MessageInput/CooldownTimer.js +78 -0
  207. package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -0
  208. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +33 -28
  209. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  210. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +10 -10
  211. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
  212. package/lib/commonjs/components/MessageInput/InputButtons.js +18 -23
  213. package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
  214. package/lib/commonjs/components/MessageInput/MessageInput.js +94 -66
  215. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  216. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js +4 -4
  217. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
  218. package/lib/commonjs/components/MessageInput/SendButton.js +9 -7
  219. package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
  220. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +71 -0
  221. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -0
  222. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +12 -11
  223. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  224. package/lib/commonjs/components/MessageInput/UploadProgressIndicator.js +1 -1
  225. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js +63 -0
  226. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -0
  227. package/lib/commonjs/components/MessageInput/hooks/useCountdown.js +57 -0
  228. package/lib/commonjs/components/MessageInput/hooks/useCountdown.js.map +1 -0
  229. package/lib/commonjs/components/MessageList/DateHeader.js +3 -3
  230. package/lib/commonjs/components/MessageList/DateHeader.js.map +1 -1
  231. package/lib/commonjs/components/MessageList/InlineDateSeparator.js +5 -4
  232. package/lib/commonjs/components/MessageList/InlineDateSeparator.js.map +1 -1
  233. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +5 -5
  234. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  235. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +5 -5
  236. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  237. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js +5 -5
  238. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  239. package/lib/commonjs/components/MessageList/InlineUnreadIndicator.js +1 -1
  240. package/lib/commonjs/components/MessageList/MessageList.js +101 -62
  241. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  242. package/lib/commonjs/components/MessageList/MessageSystem.js +7 -7
  243. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  244. package/lib/commonjs/components/MessageList/NetworkDownIndicator.js +1 -1
  245. package/lib/commonjs/components/MessageList/ScrollToBottomButton.js +8 -6
  246. package/lib/commonjs/components/MessageList/ScrollToBottomButton.js.map +1 -1
  247. package/lib/commonjs/components/MessageList/TypingIndicator.js +6 -6
  248. package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
  249. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +3 -3
  250. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  251. package/lib/commonjs/components/MessageList/hooks/useMessageList.js +24 -11
  252. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  253. package/lib/commonjs/components/MessageList/hooks/useTypingString.js +2 -2
  254. package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
  255. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  256. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js +2 -1
  257. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
  258. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js +11 -10
  259. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
  260. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  261. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  262. package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
  263. package/lib/{module/components/MessageOverlay/MessageActions.js → commonjs/components/MessageOverlay/MessageActionList.js} +33 -85
  264. package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -0
  265. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +131 -0
  266. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -0
  267. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +100 -85
  268. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
  269. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js +38 -0
  270. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
  271. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +18 -19
  272. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  273. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js +32 -35
  274. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
  275. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  276. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  277. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js +37 -0
  278. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
  279. package/lib/commonjs/components/Reply/Reply.js +26 -20
  280. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  281. package/lib/commonjs/components/Spinner/Spinner.js +1 -1
  282. package/lib/commonjs/components/Thread/Thread.js +15 -6
  283. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  284. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +14 -13
  285. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  286. package/lib/commonjs/components/docs/ListProps.md +1 -1
  287. package/lib/commonjs/components/docs/data.js +45 -45
  288. package/lib/commonjs/components/docs/data.js.map +1 -1
  289. package/lib/commonjs/components/index.js +133 -55
  290. package/lib/commonjs/components/index.js.map +1 -1
  291. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +3 -3
  292. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  293. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +3 -3
  294. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  295. package/lib/commonjs/contexts/channelContext/ChannelContext.js +3 -3
  296. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  297. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js +3 -3
  298. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  299. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +5 -5
  300. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  301. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js +3 -3
  302. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
  303. package/lib/commonjs/contexts/chatContext/ChatContext.js +3 -3
  304. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  305. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +3 -3
  306. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  307. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js +3 -3
  308. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  309. package/lib/commonjs/contexts/messageContext/MessageContext.js +3 -3
  310. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  311. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +106 -71
  312. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  313. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +9 -5
  314. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  315. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  316. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  317. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js +6 -20
  318. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  319. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  320. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  321. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  322. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  323. package/lib/commonjs/contexts/messagesContext/MessagesContext.js +3 -3
  324. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  325. package/lib/commonjs/contexts/overlayContext/OverlayContext.js +2 -2
  326. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  327. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +50 -50
  328. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  329. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +61 -0
  330. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -0
  331. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +3 -3
  332. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  333. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +21 -34
  334. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  335. package/lib/commonjs/contexts/themeContext/ThemeContext.js +3 -3
  336. package/lib/commonjs/contexts/themeContext/ThemeContext.js.map +1 -1
  337. package/lib/commonjs/contexts/themeContext/utils/theme.js +48 -20
  338. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  339. package/lib/commonjs/contexts/threadContext/ThreadContext.js +3 -3
  340. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  341. package/lib/commonjs/contexts/translationContext/TranslationContext.js +4 -4
  342. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  343. package/lib/commonjs/contexts/typingContext/TypingContext.js +3 -3
  344. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
  345. package/lib/commonjs/contexts/utils/getDisplayName.js.map +1 -1
  346. package/lib/commonjs/emoji-data/compiled.js +0 -315
  347. package/lib/commonjs/emoji-data/compiled.js.map +1 -1
  348. package/lib/commonjs/emoji-data/emojiNames.js +0 -105
  349. package/lib/commonjs/emoji-data/emojiNames.js.map +1 -1
  350. package/lib/commonjs/emoji-data/emojis.js +0 -175
  351. package/lib/commonjs/emoji-data/emojis.js.map +1 -1
  352. package/lib/commonjs/emoji-data/index.js +2 -2
  353. package/lib/commonjs/emoji-data/index.js.map +1 -1
  354. package/lib/commonjs/hooks/useAppStateListener.js +8 -5
  355. package/lib/commonjs/hooks/useAppStateListener.js.map +1 -1
  356. package/lib/commonjs/hooks/useIsMountedRef.js +19 -0
  357. package/lib/commonjs/hooks/useIsMountedRef.js.map +1 -0
  358. package/lib/commonjs/hooks/useStreami18n.js +5 -2
  359. package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
  360. package/lib/commonjs/i18n/en.json +9 -3
  361. package/lib/commonjs/i18n/fr.json +9 -3
  362. package/lib/commonjs/i18n/hi.json +9 -3
  363. package/lib/commonjs/i18n/it.json +9 -3
  364. package/lib/commonjs/i18n/ja.json +67 -0
  365. package/lib/commonjs/i18n/ko.json +67 -0
  366. package/lib/commonjs/i18n/nl.json +9 -3
  367. package/lib/commonjs/i18n/ru.json +9 -3
  368. package/lib/commonjs/i18n/tr.json +10 -4
  369. package/lib/commonjs/icons/ArrowRight.js +1 -1
  370. package/lib/commonjs/icons/AtMentions.js +1 -1
  371. package/lib/commonjs/icons/Attach.js +1 -1
  372. package/lib/commonjs/icons/Audio.js +1 -1
  373. package/lib/commonjs/icons/CSV.js +1 -1
  374. package/lib/commonjs/icons/Camera.js +1 -1
  375. package/lib/commonjs/icons/Check.js +1 -1
  376. package/lib/commonjs/icons/CheckAll.js +1 -1
  377. package/lib/commonjs/icons/CheckSend.js +1 -1
  378. package/lib/commonjs/icons/CircleClose.js +1 -1
  379. package/lib/commonjs/icons/CirclePlus.js +1 -1
  380. package/lib/commonjs/icons/CircleRight.js +1 -1
  381. package/lib/commonjs/icons/Close.js +1 -1
  382. package/lib/commonjs/icons/Copy.js +1 -1
  383. package/lib/commonjs/icons/CurveLineLeftUp.js +1 -1
  384. package/lib/commonjs/icons/DOC.js +1 -1
  385. package/lib/commonjs/icons/DOCX.js +1 -1
  386. package/lib/commonjs/icons/Delete.js +1 -1
  387. package/lib/commonjs/icons/Down.js +1 -1
  388. package/lib/commonjs/icons/DownloadArrow.js +1 -1
  389. package/lib/commonjs/icons/DownloadCloud.js +1 -1
  390. package/lib/commonjs/icons/Edit.js +1 -1
  391. package/lib/commonjs/icons/Error.js +1 -1
  392. package/lib/commonjs/icons/Eye.js +1 -1
  393. package/lib/commonjs/icons/Flag.js +1 -1
  394. package/lib/commonjs/icons/Folder.js +1 -1
  395. package/lib/commonjs/icons/GenericFile.js +1 -1
  396. package/lib/commonjs/icons/GiphyIcon.js +1 -1
  397. package/lib/commonjs/icons/Grid.js +1 -1
  398. package/lib/commonjs/icons/Group.js +1 -1
  399. package/lib/commonjs/icons/HTML.js +1 -1
  400. package/lib/commonjs/icons/Imgur.js +1 -1
  401. package/lib/commonjs/icons/LOLReaction.js +1 -1
  402. package/lib/commonjs/icons/Lightning.js +1 -1
  403. package/lib/commonjs/icons/Link.js +1 -1
  404. package/lib/commonjs/icons/Loading.js +1 -1
  405. package/lib/commonjs/icons/Logo.js +1 -1
  406. package/lib/commonjs/icons/LoveReaction.js +1 -1
  407. package/lib/commonjs/icons/MD.js +1 -1
  408. package/lib/commonjs/icons/MailOpen.js +1 -1
  409. package/lib/commonjs/icons/MenuPointHorizontal.js +1 -1
  410. package/lib/commonjs/icons/MenuPointVertical.js +1 -1
  411. package/lib/commonjs/icons/MessageFlag.js +1 -1
  412. package/lib/commonjs/icons/MessageIcon.js +1 -1
  413. package/lib/commonjs/icons/Mute.js +1 -1
  414. package/lib/commonjs/icons/Notification.js +1 -1
  415. package/lib/commonjs/icons/ODT.js +1 -1
  416. package/lib/commonjs/icons/PDF.js +1 -1
  417. package/lib/commonjs/icons/PPT.js +1 -1
  418. package/lib/commonjs/icons/PPTX.js +1 -1
  419. package/lib/commonjs/icons/Picture.js +1 -1
  420. package/lib/commonjs/icons/Pin.js +42 -0
  421. package/lib/commonjs/icons/Pin.js.map +1 -0
  422. package/lib/commonjs/icons/PinHeader.js +38 -0
  423. package/lib/commonjs/icons/PinHeader.js.map +1 -0
  424. package/lib/commonjs/icons/RAR.js +1 -1
  425. package/lib/commonjs/icons/RTF.js +1 -1
  426. package/lib/commonjs/icons/Refresh.js +1 -1
  427. package/lib/commonjs/icons/SEVEN_Z.js +1 -1
  428. package/lib/commonjs/icons/Search.js +1 -1
  429. package/lib/commonjs/icons/SendRight.js +1 -1
  430. package/lib/commonjs/icons/SendUp.js +1 -1
  431. package/lib/commonjs/icons/Share.js +1 -1
  432. package/lib/commonjs/icons/ShareRightArrow.js +1 -1
  433. package/lib/commonjs/icons/Smile.js +1 -1
  434. package/lib/commonjs/icons/Sound.js +1 -1
  435. package/lib/commonjs/icons/TAR.js +1 -1
  436. package/lib/commonjs/icons/TXT.js +1 -1
  437. package/lib/commonjs/icons/ThreadReply.js +1 -1
  438. package/lib/commonjs/icons/ThumbsDownReaction.js +1 -1
  439. package/lib/commonjs/icons/ThumbsUpReaction.js +1 -1
  440. package/lib/commonjs/icons/Time.js +1 -1
  441. package/lib/commonjs/icons/Unknown.js +1 -1
  442. package/lib/commonjs/icons/Unpin.js +38 -0
  443. package/lib/commonjs/icons/Unpin.js.map +1 -0
  444. package/lib/commonjs/icons/User.js +1 -1
  445. package/lib/commonjs/icons/UserAdd.js +1 -1
  446. package/lib/commonjs/icons/UserAdmin.js +62 -0
  447. package/lib/commonjs/icons/UserAdmin.js.map +1 -0
  448. package/lib/commonjs/icons/UserDelete.js +1 -1
  449. package/lib/commonjs/icons/UserMinus.js +1 -1
  450. package/lib/commonjs/icons/WutReaction.js +1 -1
  451. package/lib/commonjs/icons/XLS.js +1 -1
  452. package/lib/commonjs/icons/XLSX.js +1 -1
  453. package/lib/commonjs/icons/ZIP.js +1 -1
  454. package/lib/commonjs/icons/index.js +39 -26
  455. package/lib/commonjs/icons/index.js.map +1 -1
  456. package/lib/commonjs/icons/utils/base.js +2 -2
  457. package/lib/commonjs/index.js +6 -6
  458. package/lib/commonjs/init.js +13 -0
  459. package/lib/commonjs/init.js.map +1 -0
  460. package/lib/commonjs/mock-builders/api/error.js +1 -1
  461. package/lib/commonjs/mock-builders/api/queryChannels.js +1 -1
  462. package/lib/commonjs/mock-builders/api/queryChannels.js.map +1 -1
  463. package/lib/commonjs/mock-builders/api/sendMessage.js +4 -1
  464. package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
  465. package/lib/commonjs/mock-builders/generator/attachment.js +1 -3
  466. package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
  467. package/lib/commonjs/mock-builders/generator/channel.js +101 -50
  468. package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
  469. package/lib/commonjs/mock-builders/generator/user.js +32 -33
  470. package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
  471. package/lib/commonjs/mock-builders/mock.js +3 -3
  472. package/lib/commonjs/mock-builders/mock.js.map +1 -1
  473. package/lib/commonjs/mock-builders/native/react-native-mock.js +1 -1
  474. package/lib/commonjs/mock-builders/native/react-native-mock.js.map +1 -1
  475. package/lib/commonjs/native.js +1 -7
  476. package/lib/commonjs/native.js.map +1 -1
  477. package/lib/commonjs/utils/Streami18n.js +10 -0
  478. package/lib/commonjs/utils/Streami18n.js.map +1 -1
  479. package/lib/commonjs/utils/date.js +13 -0
  480. package/lib/commonjs/utils/date.js.map +1 -0
  481. package/lib/commonjs/utils/getResizedImageUrl.js +37 -0
  482. package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -0
  483. package/lib/commonjs/utils/getUrlOfImageAttachment.js +9 -0
  484. package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -0
  485. package/lib/commonjs/utils/utils.js +39 -19
  486. package/lib/commonjs/utils/utils.js.map +1 -1
  487. package/lib/commonjs/version.json +1 -1
  488. package/lib/module/components/Attachment/Attachment.js +17 -16
  489. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  490. package/lib/module/components/Attachment/AttachmentActions.js +5 -5
  491. package/lib/module/components/Attachment/AttachmentActions.js.map +1 -1
  492. package/lib/module/components/Attachment/Card.js +19 -16
  493. package/lib/module/components/Attachment/Card.js.map +1 -1
  494. package/lib/module/components/Attachment/FileAttachment.js +9 -9
  495. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  496. package/lib/module/components/Attachment/FileAttachmentGroup.js +5 -5
  497. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  498. package/lib/module/components/Attachment/FileIcon.js +1 -1
  499. package/lib/module/components/Attachment/FileIcon.js.map +1 -1
  500. package/lib/module/components/Attachment/Gallery.js +124 -122
  501. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  502. package/lib/module/components/Attachment/Giphy.js +113 -149
  503. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  504. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  505. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  506. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  507. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  508. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  509. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  510. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  511. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  512. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  513. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  514. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  515. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  516. package/lib/module/components/Attachment/utils/buildGallery/types.js +4 -0
  517. package/lib/module/{styleguideComponents/Reanimated.js.map → components/Attachment/utils/buildGallery/types.js.map} +0 -0
  518. package/lib/module/components/Attachment/utils/getAspectRatio.js +14 -0
  519. package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -0
  520. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  521. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  522. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +10 -9
  523. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  524. package/lib/module/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.js +1 -1
  525. package/lib/module/components/AttachmentPicker/components/AttachmentPickerError.js +1 -1
  526. package/lib/module/components/AttachmentPicker/components/AttachmentPickerErrorImage.js +1 -1
  527. package/lib/module/components/AttachmentPicker/components/AttachmentSelectionBar.js +12 -9
  528. package/lib/module/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
  529. package/lib/module/components/AttachmentPicker/components/CameraSelectorIcon.js +1 -1
  530. package/lib/module/components/AttachmentPicker/components/FileSelectorIcon.js +1 -1
  531. package/lib/module/components/AttachmentPicker/components/ImageOverlaySelectedComponent.js +1 -1
  532. package/lib/module/components/AttachmentPicker/components/ImageSelectorIcon.js +1 -1
  533. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +25 -49
  534. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  535. package/lib/module/components/AutoCompleteInput/{CommandsItem.js → AutoCompleteSuggestionCommandIcon.js} +21 -94
  536. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -0
  537. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +145 -0
  538. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -0
  539. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +248 -0
  540. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -0
  541. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +223 -0
  542. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -0
  543. package/lib/module/components/Avatar/Avatar.js +14 -8
  544. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  545. package/lib/module/components/Avatar/GroupAvatar.js +11 -9
  546. package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
  547. package/lib/module/components/Channel/Channel.js +304 -203
  548. package/lib/module/components/Channel/Channel.js.map +1 -1
  549. package/lib/module/components/Channel/hooks/useCreateChannelContext.js +7 -5
  550. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  551. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +7 -5
  552. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  553. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +13 -31
  554. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  555. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +35 -0
  556. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -0
  557. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  558. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  559. package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  560. package/lib/module/components/ChannelList/ChannelList.js +7 -7
  561. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  562. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js +6 -5
  563. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  564. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js +7 -8
  565. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  566. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +5 -4
  567. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  568. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js +8 -5
  569. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  570. package/lib/module/components/ChannelList/ChannelListMessenger.js +18 -18
  571. package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
  572. package/lib/module/components/ChannelList/Skeleton.js +15 -14
  573. package/lib/module/components/ChannelList/Skeleton.js.map +1 -1
  574. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  575. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  576. package/lib/module/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  577. package/lib/module/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  578. package/lib/module/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  579. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  580. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  581. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  582. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js +3 -1
  583. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  584. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  585. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  586. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  587. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  588. package/lib/module/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  589. package/lib/module/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  590. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  591. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  592. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +96 -63
  593. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  594. package/lib/module/components/ChannelList/utils.js +1 -1
  595. package/lib/module/components/ChannelList/utils.js.map +1 -1
  596. package/lib/module/components/ChannelPreview/ChannelAvatar.js +3 -3
  597. package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  598. package/lib/module/components/ChannelPreview/ChannelPreview.js +5 -5
  599. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  600. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +6 -6
  601. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  602. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js +50 -21
  603. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  604. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  605. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  606. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +5 -5
  607. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  608. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js +2 -2
  609. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  610. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +3 -3
  611. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  612. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js +16 -7
  613. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  614. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  615. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  616. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js +2 -1
  617. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  618. package/lib/module/components/Chat/Chat.js +9 -5
  619. package/lib/module/components/Chat/Chat.js.map +1 -1
  620. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  621. package/lib/module/components/Chat/hooks/useIsOnline.js +40 -31
  622. package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
  623. package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
  624. package/lib/module/components/ImageGallery/ImageGallery.js +91 -59
  625. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  626. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +3 -3
  627. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  628. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +13 -13
  629. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  630. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +32 -17
  631. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  632. package/lib/module/components/ImageGallery/components/ImageGalleryOverlay.js +1 -1
  633. package/lib/module/components/ImageGallery/components/ImageGrid.js +8 -8
  634. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  635. package/lib/module/components/ImageGallery/components/ImageGridHandle.js +6 -6
  636. package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  637. package/lib/module/components/Indicators/EmptyStateIndicator.js +1 -1
  638. package/lib/module/components/Indicators/LoadingDot.js +1 -1
  639. package/lib/module/components/Indicators/LoadingDots.js +1 -1
  640. package/lib/module/components/Indicators/LoadingErrorIndicator.js +1 -1
  641. package/lib/module/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  642. package/lib/module/components/Indicators/LoadingIndicator.js +10 -10
  643. package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
  644. package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js +21 -13
  645. package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
  646. package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleViewFC.js +1 -1
  647. package/lib/module/components/Message/Message.js +153 -855
  648. package/lib/module/components/Message/Message.js.map +1 -1
  649. package/lib/module/components/Message/MessageSimple/MessageAvatar.js +7 -7
  650. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  651. package/lib/module/components/Message/MessageSimple/MessageContent.js +42 -40
  652. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  653. package/lib/module/components/Message/MessageSimple/MessageDeleted.js +9 -7
  654. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  655. package/lib/module/components/Message/MessageSimple/MessageFooter.js +35 -23
  656. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  657. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +122 -0
  658. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -0
  659. package/lib/module/components/Message/MessageSimple/MessageReplies.js +27 -11
  660. package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  661. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js +6 -6
  662. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  663. package/lib/module/components/Message/MessageSimple/MessageSimple.js +32 -15
  664. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  665. package/lib/module/components/Message/MessageSimple/MessageStatus.js +29 -25
  666. package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  667. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +8 -4
  668. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  669. package/lib/module/components/Message/MessageSimple/ReactionList.js +87 -114
  670. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
  671. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  672. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  673. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  674. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  675. package/lib/module/components/Message/MessageSimple/utils/renderText.js +208 -27
  676. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  677. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  678. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  679. package/lib/module/components/Message/hooks/useCreateMessageContext.js +1 -5
  680. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  681. package/lib/module/components/Message/hooks/useMessageActionHandlers.js +307 -0
  682. package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -0
  683. package/lib/module/components/Message/hooks/useMessageActions.js +563 -0
  684. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -0
  685. package/lib/module/components/Message/utils/messageActions.js +17 -15
  686. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  687. package/lib/module/components/Message/utils/removeReservedFields.js.map +1 -1
  688. package/lib/module/components/MessageInput/AttachButton.js +7 -5
  689. package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
  690. package/lib/module/components/MessageInput/CommandsButton.js +4 -4
  691. package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
  692. package/lib/module/components/MessageInput/CooldownTimer.js +78 -0
  693. package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -0
  694. package/lib/module/components/MessageInput/FileUploadPreview.js +33 -28
  695. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  696. package/lib/module/components/MessageInput/ImageUploadPreview.js +10 -10
  697. package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
  698. package/lib/module/components/MessageInput/InputButtons.js +18 -23
  699. package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
  700. package/lib/module/components/MessageInput/MessageInput.js +94 -66
  701. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  702. package/lib/module/components/MessageInput/MoreOptionsButton.js +4 -4
  703. package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
  704. package/lib/module/components/MessageInput/SendButton.js +9 -7
  705. package/lib/module/components/MessageInput/SendButton.js.map +1 -1
  706. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +71 -0
  707. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -0
  708. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +12 -11
  709. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  710. package/lib/module/components/MessageInput/UploadProgressIndicator.js +1 -1
  711. package/lib/module/components/MessageInput/hooks/useCooldown.js +63 -0
  712. package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -0
  713. package/lib/module/components/MessageInput/hooks/useCountdown.js +57 -0
  714. package/lib/module/components/MessageInput/hooks/useCountdown.js.map +1 -0
  715. package/lib/module/components/MessageList/DateHeader.js +3 -3
  716. package/lib/module/components/MessageList/DateHeader.js.map +1 -1
  717. package/lib/module/components/MessageList/InlineDateSeparator.js +5 -4
  718. package/lib/module/components/MessageList/InlineDateSeparator.js.map +1 -1
  719. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +5 -5
  720. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  721. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +5 -5
  722. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  723. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js +5 -5
  724. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  725. package/lib/module/components/MessageList/InlineUnreadIndicator.js +1 -1
  726. package/lib/module/components/MessageList/MessageList.js +101 -62
  727. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  728. package/lib/module/components/MessageList/MessageSystem.js +7 -7
  729. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  730. package/lib/module/components/MessageList/NetworkDownIndicator.js +1 -1
  731. package/lib/module/components/MessageList/ScrollToBottomButton.js +8 -6
  732. package/lib/module/components/MessageList/ScrollToBottomButton.js.map +1 -1
  733. package/lib/module/components/MessageList/TypingIndicator.js +6 -6
  734. package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
  735. package/lib/module/components/MessageList/TypingIndicatorContainer.js +3 -3
  736. package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  737. package/lib/module/components/MessageList/hooks/useMessageList.js +24 -11
  738. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  739. package/lib/module/components/MessageList/hooks/useTypingString.js +2 -2
  740. package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
  741. package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  742. package/lib/module/components/MessageList/utils/getDateSeparators.js +2 -1
  743. package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
  744. package/lib/module/components/MessageList/utils/getGroupStyles.js +11 -10
  745. package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
  746. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  747. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  748. package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
  749. package/lib/{commonjs/components/MessageOverlay/MessageActions.js → module/components/MessageOverlay/MessageActionList.js} +33 -85
  750. package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -0
  751. package/lib/module/components/MessageOverlay/MessageActionListItem.js +131 -0
  752. package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -0
  753. package/lib/module/components/MessageOverlay/MessageOverlay.js +100 -85
  754. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
  755. package/lib/module/components/MessageOverlay/OverlayBackdrop.js +38 -0
  756. package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
  757. package/lib/module/components/MessageOverlay/OverlayReactionList.js +18 -19
  758. package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  759. package/lib/module/components/MessageOverlay/OverlayReactions.js +32 -35
  760. package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
  761. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  762. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  763. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js +37 -0
  764. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
  765. package/lib/module/components/Reply/Reply.js +26 -20
  766. package/lib/module/components/Reply/Reply.js.map +1 -1
  767. package/lib/module/components/Spinner/Spinner.js +1 -1
  768. package/lib/module/components/Thread/Thread.js +15 -6
  769. package/lib/module/components/Thread/Thread.js.map +1 -1
  770. package/lib/module/components/Thread/components/ThreadFooterComponent.js +14 -13
  771. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  772. package/lib/module/components/docs/ListProps.md +1 -1
  773. package/lib/module/components/docs/data.js +45 -45
  774. package/lib/module/components/docs/data.js.map +1 -1
  775. package/lib/module/components/index.js +133 -55
  776. package/lib/module/components/index.js.map +1 -1
  777. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +3 -3
  778. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  779. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +3 -3
  780. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  781. package/lib/module/contexts/channelContext/ChannelContext.js +3 -3
  782. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  783. package/lib/module/contexts/channelsContext/ChannelsContext.js +3 -3
  784. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  785. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +5 -5
  786. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  787. package/lib/module/contexts/channelsStateContext/useChannelState.js +3 -3
  788. package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
  789. package/lib/module/contexts/chatContext/ChatContext.js +3 -3
  790. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  791. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +3 -3
  792. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  793. package/lib/module/contexts/keyboardContext/KeyboardContext.js +3 -3
  794. package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  795. package/lib/module/contexts/messageContext/MessageContext.js +3 -3
  796. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  797. package/lib/module/contexts/messageInputContext/MessageInputContext.js +106 -71
  798. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  799. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +9 -5
  800. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  801. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  802. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  803. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js +6 -20
  804. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  805. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  806. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  807. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  808. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  809. package/lib/module/contexts/messagesContext/MessagesContext.js +3 -3
  810. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  811. package/lib/module/contexts/overlayContext/OverlayContext.js +2 -2
  812. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  813. package/lib/module/contexts/overlayContext/OverlayProvider.js +50 -50
  814. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  815. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +61 -0
  816. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -0
  817. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +3 -3
  818. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  819. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +21 -34
  820. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  821. package/lib/module/contexts/themeContext/ThemeContext.js +3 -3
  822. package/lib/module/contexts/themeContext/ThemeContext.js.map +1 -1
  823. package/lib/module/contexts/themeContext/utils/theme.js +48 -20
  824. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  825. package/lib/module/contexts/threadContext/ThreadContext.js +3 -3
  826. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  827. package/lib/module/contexts/translationContext/TranslationContext.js +4 -4
  828. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  829. package/lib/module/contexts/typingContext/TypingContext.js +3 -3
  830. package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
  831. package/lib/module/contexts/utils/getDisplayName.js.map +1 -1
  832. package/lib/module/emoji-data/compiled.js +0 -315
  833. package/lib/module/emoji-data/compiled.js.map +1 -1
  834. package/lib/module/emoji-data/emojiNames.js +0 -105
  835. package/lib/module/emoji-data/emojiNames.js.map +1 -1
  836. package/lib/module/emoji-data/emojis.js +0 -175
  837. package/lib/module/emoji-data/emojis.js.map +1 -1
  838. package/lib/module/emoji-data/index.js +2 -2
  839. package/lib/module/emoji-data/index.js.map +1 -1
  840. package/lib/module/hooks/useAppStateListener.js +8 -5
  841. package/lib/module/hooks/useAppStateListener.js.map +1 -1
  842. package/lib/module/hooks/useIsMountedRef.js +19 -0
  843. package/lib/module/hooks/useIsMountedRef.js.map +1 -0
  844. package/lib/module/hooks/useStreami18n.js +5 -2
  845. package/lib/module/hooks/useStreami18n.js.map +1 -1
  846. package/lib/module/i18n/en.json +9 -3
  847. package/lib/module/i18n/fr.json +9 -3
  848. package/lib/module/i18n/hi.json +9 -3
  849. package/lib/module/i18n/it.json +9 -3
  850. package/lib/module/i18n/ja.json +67 -0
  851. package/lib/module/i18n/ko.json +67 -0
  852. package/lib/module/i18n/nl.json +9 -3
  853. package/lib/module/i18n/ru.json +9 -3
  854. package/lib/module/i18n/tr.json +10 -4
  855. package/lib/module/icons/ArrowRight.js +1 -1
  856. package/lib/module/icons/AtMentions.js +1 -1
  857. package/lib/module/icons/Attach.js +1 -1
  858. package/lib/module/icons/Audio.js +1 -1
  859. package/lib/module/icons/CSV.js +1 -1
  860. package/lib/module/icons/Camera.js +1 -1
  861. package/lib/module/icons/Check.js +1 -1
  862. package/lib/module/icons/CheckAll.js +1 -1
  863. package/lib/module/icons/CheckSend.js +1 -1
  864. package/lib/module/icons/CircleClose.js +1 -1
  865. package/lib/module/icons/CirclePlus.js +1 -1
  866. package/lib/module/icons/CircleRight.js +1 -1
  867. package/lib/module/icons/Close.js +1 -1
  868. package/lib/module/icons/Copy.js +1 -1
  869. package/lib/module/icons/CurveLineLeftUp.js +1 -1
  870. package/lib/module/icons/DOC.js +1 -1
  871. package/lib/module/icons/DOCX.js +1 -1
  872. package/lib/module/icons/Delete.js +1 -1
  873. package/lib/module/icons/Down.js +1 -1
  874. package/lib/module/icons/DownloadArrow.js +1 -1
  875. package/lib/module/icons/DownloadCloud.js +1 -1
  876. package/lib/module/icons/Edit.js +1 -1
  877. package/lib/module/icons/Error.js +1 -1
  878. package/lib/module/icons/Eye.js +1 -1
  879. package/lib/module/icons/Flag.js +1 -1
  880. package/lib/module/icons/Folder.js +1 -1
  881. package/lib/module/icons/GenericFile.js +1 -1
  882. package/lib/module/icons/GiphyIcon.js +1 -1
  883. package/lib/module/icons/Grid.js +1 -1
  884. package/lib/module/icons/Group.js +1 -1
  885. package/lib/module/icons/HTML.js +1 -1
  886. package/lib/module/icons/Imgur.js +1 -1
  887. package/lib/module/icons/LOLReaction.js +1 -1
  888. package/lib/module/icons/Lightning.js +1 -1
  889. package/lib/module/icons/Link.js +1 -1
  890. package/lib/module/icons/Loading.js +1 -1
  891. package/lib/module/icons/Logo.js +1 -1
  892. package/lib/module/icons/LoveReaction.js +1 -1
  893. package/lib/module/icons/MD.js +1 -1
  894. package/lib/module/icons/MailOpen.js +1 -1
  895. package/lib/module/icons/MenuPointHorizontal.js +1 -1
  896. package/lib/module/icons/MenuPointVertical.js +1 -1
  897. package/lib/module/icons/MessageFlag.js +1 -1
  898. package/lib/module/icons/MessageIcon.js +1 -1
  899. package/lib/module/icons/Mute.js +1 -1
  900. package/lib/module/icons/Notification.js +1 -1
  901. package/lib/module/icons/ODT.js +1 -1
  902. package/lib/module/icons/PDF.js +1 -1
  903. package/lib/module/icons/PPT.js +1 -1
  904. package/lib/module/icons/PPTX.js +1 -1
  905. package/lib/module/icons/Picture.js +1 -1
  906. package/lib/module/icons/Pin.js +42 -0
  907. package/lib/module/icons/Pin.js.map +1 -0
  908. package/lib/module/icons/PinHeader.js +38 -0
  909. package/lib/module/icons/PinHeader.js.map +1 -0
  910. package/lib/module/icons/RAR.js +1 -1
  911. package/lib/module/icons/RTF.js +1 -1
  912. package/lib/module/icons/Refresh.js +1 -1
  913. package/lib/module/icons/SEVEN_Z.js +1 -1
  914. package/lib/module/icons/Search.js +1 -1
  915. package/lib/module/icons/SendRight.js +1 -1
  916. package/lib/module/icons/SendUp.js +1 -1
  917. package/lib/module/icons/Share.js +1 -1
  918. package/lib/module/icons/ShareRightArrow.js +1 -1
  919. package/lib/module/icons/Smile.js +1 -1
  920. package/lib/module/icons/Sound.js +1 -1
  921. package/lib/module/icons/TAR.js +1 -1
  922. package/lib/module/icons/TXT.js +1 -1
  923. package/lib/module/icons/ThreadReply.js +1 -1
  924. package/lib/module/icons/ThumbsDownReaction.js +1 -1
  925. package/lib/module/icons/ThumbsUpReaction.js +1 -1
  926. package/lib/module/icons/Time.js +1 -1
  927. package/lib/module/icons/Unknown.js +1 -1
  928. package/lib/module/icons/Unpin.js +38 -0
  929. package/lib/module/icons/Unpin.js.map +1 -0
  930. package/lib/module/icons/User.js +1 -1
  931. package/lib/module/icons/UserAdd.js +1 -1
  932. package/lib/module/icons/UserAdmin.js +62 -0
  933. package/lib/module/icons/UserAdmin.js.map +1 -0
  934. package/lib/module/icons/UserDelete.js +1 -1
  935. package/lib/module/icons/UserMinus.js +1 -1
  936. package/lib/module/icons/WutReaction.js +1 -1
  937. package/lib/module/icons/XLS.js +1 -1
  938. package/lib/module/icons/XLSX.js +1 -1
  939. package/lib/module/icons/ZIP.js +1 -1
  940. package/lib/module/icons/index.js +39 -26
  941. package/lib/module/icons/index.js.map +1 -1
  942. package/lib/module/icons/utils/base.js +2 -2
  943. package/lib/module/index.js +6 -6
  944. package/lib/module/init.js +13 -0
  945. package/lib/module/init.js.map +1 -0
  946. package/lib/module/mock-builders/api/error.js +1 -1
  947. package/lib/module/mock-builders/api/queryChannels.js +1 -1
  948. package/lib/module/mock-builders/api/queryChannels.js.map +1 -1
  949. package/lib/module/mock-builders/api/sendMessage.js +4 -1
  950. package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
  951. package/lib/module/mock-builders/generator/attachment.js +1 -3
  952. package/lib/module/mock-builders/generator/attachment.js.map +1 -1
  953. package/lib/module/mock-builders/generator/channel.js +101 -50
  954. package/lib/module/mock-builders/generator/channel.js.map +1 -1
  955. package/lib/module/mock-builders/generator/user.js +32 -33
  956. package/lib/module/mock-builders/generator/user.js.map +1 -1
  957. package/lib/module/mock-builders/mock.js +3 -3
  958. package/lib/module/mock-builders/mock.js.map +1 -1
  959. package/lib/module/mock-builders/native/react-native-mock.js +1 -1
  960. package/lib/module/mock-builders/native/react-native-mock.js.map +1 -1
  961. package/lib/module/native.js +1 -7
  962. package/lib/module/native.js.map +1 -1
  963. package/lib/module/utils/Streami18n.js +10 -0
  964. package/lib/module/utils/Streami18n.js.map +1 -1
  965. package/lib/module/utils/date.js +13 -0
  966. package/lib/module/utils/date.js.map +1 -0
  967. package/lib/module/utils/getResizedImageUrl.js +37 -0
  968. package/lib/module/utils/getResizedImageUrl.js.map +1 -0
  969. package/lib/module/utils/getUrlOfImageAttachment.js +9 -0
  970. package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -0
  971. package/lib/module/utils/utils.js +39 -19
  972. package/lib/module/utils/utils.js.map +1 -1
  973. package/lib/module/version.json +1 -1
  974. package/lib/typescript/components/Attachment/Attachment.d.ts +6 -6
  975. package/lib/typescript/components/Attachment/AttachmentActions.d.ts +5 -5
  976. package/lib/typescript/components/Attachment/Card.d.ts +7 -5
  977. package/lib/typescript/components/Attachment/FileAttachment.d.ts +6 -6
  978. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +4 -4
  979. package/lib/typescript/components/Attachment/Gallery.d.ts +19 -6
  980. package/lib/typescript/components/Attachment/Giphy.d.ts +7 -7
  981. package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts +23 -0
  982. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts +7 -0
  983. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts +7 -0
  984. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts +7 -0
  985. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +10 -0
  986. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts +137 -0
  987. package/lib/typescript/components/Attachment/utils/buildGallery/types.d.ts +23 -0
  988. package/lib/typescript/components/Attachment/utils/getAspectRatio.d.ts +9 -0
  989. package/lib/typescript/components/Attachment/utils/getGalleryImageBorderRadius.d.ts +22 -0
  990. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +10 -4
  991. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +5 -0
  992. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts +8 -0
  993. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +10 -0
  994. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +21 -0
  995. package/lib/typescript/components/Avatar/Avatar.d.ts +1 -1
  996. package/lib/typescript/components/Channel/Channel.d.ts +13 -16
  997. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +2 -2
  998. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +3 -70
  999. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +3 -126
  1000. package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +7 -0
  1001. package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +3 -3
  1002. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +2 -2
  1003. package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +2 -2
  1004. package/lib/typescript/components/ChannelList/ChannelList.d.ts +15 -15
  1005. package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +4 -4
  1006. package/lib/typescript/components/ChannelList/hooks/listeners/useAddedToChannelNotification.d.ts +5 -5
  1007. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelDeleted.d.ts +5 -5
  1008. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelHidden.d.ts +5 -5
  1009. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelTruncated.d.ts +5 -5
  1010. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +5 -5
  1011. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelVisible.d.ts +5 -5
  1012. package/lib/typescript/components/ChannelList/hooks/listeners/useConnectionRecovered.d.ts +2 -2
  1013. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessage.d.ts +4 -4
  1014. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts +5 -5
  1015. package/lib/typescript/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.d.ts +5 -5
  1016. package/lib/typescript/components/ChannelList/hooks/listeners/useUserPresence.d.ts +4 -4
  1017. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +2 -2
  1018. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +11 -9
  1019. package/lib/typescript/components/ChannelList/utils.d.ts +7 -7
  1020. package/lib/typescript/components/ChannelPreview/ChannelAvatar.d.ts +3 -3
  1021. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +7 -7
  1022. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +4 -5
  1023. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts +6 -6
  1024. package/lib/typescript/components/ChannelPreview/ChannelPreviewMutedStatus.d.ts +9 -0
  1025. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +3 -3
  1026. package/lib/typescript/components/ChannelPreview/ChannelPreviewTitle.d.ts +3 -3
  1027. package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts +3 -3
  1028. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.d.ts +15 -3
  1029. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts +4 -4
  1030. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts +2 -2
  1031. package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +5 -5
  1032. package/lib/typescript/components/Chat/Chat.d.ts +3 -3
  1033. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +2 -2
  1034. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +2 -2
  1035. package/lib/typescript/components/Chat/hooks/useMutedUsers.d.ts +2 -2
  1036. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +13 -10
  1037. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +1 -1
  1038. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +10 -10
  1039. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +10 -10
  1040. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +10 -10
  1041. package/lib/typescript/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.d.ts +1 -0
  1042. package/lib/typescript/components/Indicators/LoadingErrorIndicator.d.ts +1 -1
  1043. package/lib/typescript/components/KeyboardCompatibleView/KeyboardCompatibleView.d.ts +2 -1
  1044. package/lib/typescript/components/Message/Message.d.ts +14 -13
  1045. package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts +5 -5
  1046. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +4 -4
  1047. package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts +6 -6
  1048. package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +8 -8
  1049. package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +8 -0
  1050. package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts +4 -4
  1051. package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts +3 -3
  1052. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +4 -4
  1053. package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +4 -4
  1054. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +7 -6
  1055. package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +5 -4
  1056. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.d.ts +7 -0
  1057. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.test.d.ts +1 -0
  1058. package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +21 -6
  1059. package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts +1 -0
  1060. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +2 -2
  1061. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +15 -0
  1062. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +26 -0
  1063. package/lib/typescript/components/Message/utils/messageActions.d.ts +22 -21
  1064. package/lib/typescript/components/Message/utils/removeReservedFields.d.ts +2 -2
  1065. package/lib/typescript/components/MessageInput/AttachButton.d.ts +5 -5
  1066. package/lib/typescript/components/MessageInput/CommandsButton.d.ts +5 -5
  1067. package/lib/typescript/components/MessageInput/CooldownTimer.d.ts +10 -0
  1068. package/lib/typescript/components/MessageInput/FileUploadPreview.d.ts +4 -4
  1069. package/lib/typescript/components/MessageInput/ImageUploadPreview.d.ts +4 -4
  1070. package/lib/typescript/components/MessageInput/InputButtons.d.ts +5 -5
  1071. package/lib/typescript/components/MessageInput/MessageInput.d.ts +4 -4
  1072. package/lib/typescript/components/MessageInput/MoreOptionsButton.d.ts +5 -5
  1073. package/lib/typescript/components/MessageInput/SendButton.d.ts +4 -4
  1074. package/lib/typescript/components/MessageInput/SendMessageDisallowedIndicator.d.ts +1 -0
  1075. package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +2 -2
  1076. package/lib/typescript/components/MessageInput/hooks/useCooldown.d.ts +9 -0
  1077. package/lib/typescript/components/MessageInput/hooks/useCountdown.d.ts +8 -0
  1078. package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +2 -2
  1079. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +2 -2
  1080. package/lib/typescript/components/MessageList/InlineLoadingMoreThreadIndicator.d.ts +2 -2
  1081. package/lib/typescript/components/MessageList/MessageList.d.ts +8 -7
  1082. package/lib/typescript/components/MessageList/MessageSystem.d.ts +5 -5
  1083. package/lib/typescript/components/MessageList/TypingIndicator.d.ts +2 -2
  1084. package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +4 -4
  1085. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +6 -5
  1086. package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts +2 -2
  1087. package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +3 -3
  1088. package/lib/typescript/components/MessageList/utils/getDateSeparators.d.ts +4 -4
  1089. package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts +5 -5
  1090. package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +2 -2
  1091. package/lib/typescript/components/MessageList/utils/getReadStates.d.ts +8 -5
  1092. package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +12 -0
  1093. package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts +21 -0
  1094. package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +6 -6
  1095. package/lib/typescript/components/MessageOverlay/OverlayBackdrop.d.ts +6 -0
  1096. package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts +6 -7
  1097. package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +3 -1
  1098. package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts +7 -0
  1099. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +12 -0
  1100. package/lib/typescript/components/Reply/Reply.d.ts +5 -5
  1101. package/lib/typescript/components/Thread/Thread.d.ts +8 -8
  1102. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +2 -2
  1103. package/lib/typescript/components/index.d.ts +13 -7
  1104. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +2 -2
  1105. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +39 -40
  1106. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +30 -22
  1107. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +19 -19
  1108. package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +17 -17
  1109. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +11 -11
  1110. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +8 -8
  1111. package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts +2 -2
  1112. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +12 -16
  1113. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +53 -42
  1114. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +3 -3
  1115. package/lib/typescript/contexts/messageInputContext/hooks/useMessageDetailsForState.d.ts +3 -3
  1116. package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +31 -32
  1117. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.d.ts +12 -0
  1118. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.test.d.ts +1 -0
  1119. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +77 -166
  1120. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +15 -8
  1121. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts +2 -2
  1122. package/lib/typescript/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.d.ts +25 -0
  1123. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +8 -8
  1124. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +29 -28
  1125. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +46 -17
  1126. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +10 -10
  1127. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +2 -2
  1128. package/lib/typescript/contexts/typingContext/TypingContext.d.ts +8 -8
  1129. package/lib/typescript/contexts/utils/getDisplayName.d.ts +2 -2
  1130. package/lib/typescript/hooks/useIsMountedRef.d.ts +20 -0
  1131. package/lib/typescript/i18n/en.json +9 -3
  1132. package/lib/typescript/i18n/fr.json +9 -3
  1133. package/lib/typescript/i18n/hi.json +9 -3
  1134. package/lib/typescript/i18n/it.json +9 -3
  1135. package/lib/typescript/i18n/ja.json +67 -0
  1136. package/lib/typescript/i18n/ko.json +67 -0
  1137. package/lib/typescript/i18n/nl.json +9 -3
  1138. package/lib/typescript/i18n/ru.json +9 -3
  1139. package/lib/typescript/i18n/tr.json +10 -4
  1140. package/lib/typescript/icons/{Left.d.ts → Pin.d.ts} +1 -1
  1141. package/lib/typescript/icons/PinHeader.d.ts +3 -0
  1142. package/lib/typescript/icons/{Right.d.ts → Unpin.d.ts} +1 -1
  1143. package/lib/typescript/icons/UserAdmin.d.ts +3 -0
  1144. package/lib/typescript/icons/index.d.ts +3 -2
  1145. package/lib/typescript/init.d.ts +2 -0
  1146. package/lib/typescript/native.d.ts +1 -9
  1147. package/lib/typescript/types/types.d.ts +16 -13
  1148. package/lib/typescript/utils/Streami18n.d.ts +17 -9
  1149. package/lib/typescript/utils/date.d.ts +2 -0
  1150. package/lib/typescript/utils/getResizedImageUrl.d.ts +20 -0
  1151. package/lib/typescript/utils/getUrlOfImageAttachment.d.ts +7 -0
  1152. package/lib/typescript/utils/utils.d.ts +36 -30
  1153. package/package.json +15 -20
  1154. package/src/components/Attachment/Attachment.tsx +20 -61
  1155. package/src/components/Attachment/AttachmentActions.tsx +17 -57
  1156. package/src/components/Attachment/Card.tsx +22 -52
  1157. package/src/components/Attachment/FileAttachment.tsx +16 -51
  1158. package/src/components/Attachment/FileAttachmentGroup.tsx +16 -57
  1159. package/src/components/Attachment/FileIcon.tsx +2 -2
  1160. package/src/components/Attachment/Gallery.tsx +209 -241
  1161. package/src/components/Attachment/Giphy.tsx +84 -128
  1162. package/src/components/Attachment/__tests__/Attachment.test.js +27 -19
  1163. package/src/components/Attachment/__tests__/Gallery.test.js +233 -0
  1164. package/src/components/Attachment/__tests__/buildGallery.test.js +131 -0
  1165. package/src/components/Attachment/utils/buildGallery/buildGallery.ts +77 -0
  1166. package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +91 -0
  1167. package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +99 -0
  1168. package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +66 -0
  1169. package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +48 -0
  1170. package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +188 -0
  1171. package/src/components/Attachment/utils/buildGallery/types.ts +27 -0
  1172. package/src/components/Attachment/utils/getAspectRatio.ts +21 -0
  1173. package/src/components/Attachment/utils/getGalleryImageBorderRadius.ts +71 -0
  1174. package/src/components/AttachmentPicker/AttachmentPicker.tsx +4 -2
  1175. package/src/components/AttachmentPicker/components/AttachmentSelectionBar.tsx +15 -3
  1176. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +66 -96
  1177. package/src/components/AutoCompleteInput/{CommandsItem.tsx → AutoCompleteSuggestionCommandIcon.tsx} +7 -59
  1178. package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +102 -0
  1179. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +149 -0
  1180. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +209 -0
  1181. package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.js +10 -16
  1182. package/src/components/Avatar/Avatar.tsx +8 -11
  1183. package/src/components/Avatar/GroupAvatar.tsx +7 -21
  1184. package/src/components/Avatar/__tests__/Avatar.test.js +2 -33
  1185. package/src/components/Channel/Channel.tsx +495 -477
  1186. package/src/components/Channel/__tests__/Channel.test.js +63 -100
  1187. package/src/components/Channel/__tests__/ownCapabilities.test.js +376 -0
  1188. package/src/components/Channel/hooks/useCreateChannelContext.ts +11 -25
  1189. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +54 -69
  1190. package/src/components/Channel/hooks/useCreateMessagesContext.ts +17 -49
  1191. package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +39 -0
  1192. package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +16 -32
  1193. package/src/components/Channel/hooks/useCreateThreadContext.ts +4 -19
  1194. package/src/components/Channel/hooks/useCreateTypingContext.ts +4 -19
  1195. package/src/components/ChannelList/ChannelList.tsx +36 -58
  1196. package/src/components/ChannelList/ChannelListFooterLoadingIndicator.tsx +2 -3
  1197. package/src/components/ChannelList/ChannelListHeaderErrorIndicator.tsx +3 -7
  1198. package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +5 -2
  1199. package/src/components/ChannelList/ChannelListLoadingIndicator.tsx +5 -1
  1200. package/src/components/ChannelList/ChannelListMessenger.tsx +22 -74
  1201. package/src/components/ChannelList/Skeleton.tsx +2 -1
  1202. package/src/components/ChannelList/__tests__/ChannelList.test.js +75 -16
  1203. package/src/components/ChannelList/__tests__/ChannelListMessenger.test.js +46 -14
  1204. package/src/components/ChannelList/hooks/listeners/useAddedToChannelNotification.ts +17 -39
  1205. package/src/components/ChannelList/hooks/listeners/useChannelDeleted.ts +15 -37
  1206. package/src/components/ChannelList/hooks/listeners/useChannelHidden.ts +15 -37
  1207. package/src/components/ChannelList/hooks/listeners/useChannelTruncated.ts +17 -39
  1208. package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +15 -37
  1209. package/src/components/ChannelList/hooks/listeners/useChannelVisible.ts +17 -39
  1210. package/src/components/ChannelList/hooks/listeners/useConnectionRecovered.ts +8 -20
  1211. package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +13 -36
  1212. package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +17 -39
  1213. package/src/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.ts +15 -37
  1214. package/src/components/ChannelList/hooks/listeners/useUserPresence.ts +11 -33
  1215. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +5 -21
  1216. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +95 -70
  1217. package/src/components/ChannelList/utils.ts +9 -42
  1218. package/src/components/ChannelPreview/ChannelAvatar.tsx +6 -29
  1219. package/src/components/ChannelPreview/ChannelPreview.tsx +21 -54
  1220. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +14 -24
  1221. package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +39 -56
  1222. package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +50 -0
  1223. package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +10 -30
  1224. package/src/components/ChannelPreview/ChannelPreviewTitle.tsx +7 -28
  1225. package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +7 -27
  1226. package/src/components/ChannelPreview/__tests__/ChannelPreview.test.js +16 -22
  1227. package/src/components/ChannelPreview/__tests__/ChannelPreviewMessenger.test.js +23 -14
  1228. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.ts +15 -30
  1229. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +8 -30
  1230. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +9 -30
  1231. package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +31 -81
  1232. package/src/components/Chat/Chat.tsx +19 -44
  1233. package/src/components/Chat/__tests__/Chat.test.js +12 -47
  1234. package/src/components/Chat/hooks/useCreateChatContext.ts +4 -19
  1235. package/src/components/Chat/hooks/useIsOnline.ts +45 -56
  1236. package/src/components/Chat/hooks/useMutedUsers.ts +5 -20
  1237. package/src/components/ImageGallery/ImageGallery.tsx +110 -86
  1238. package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +1 -2
  1239. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +20 -15
  1240. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +45 -25
  1241. package/src/components/ImageGallery/components/ImageGrid.tsx +47 -33
  1242. package/src/components/ImageGallery/components/ImageGridHandle.tsx +1 -0
  1243. package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +31 -0
  1244. package/src/components/Indicators/LoadingErrorIndicator.tsx +1 -1
  1245. package/src/components/Indicators/LoadingIndicator.tsx +1 -2
  1246. package/src/components/KeyboardCompatibleView/KeyboardCompatibleView.tsx +9 -2
  1247. package/src/components/Message/Message.tsx +196 -688
  1248. package/src/components/Message/MessageSimple/MessageAvatar.tsx +14 -56
  1249. package/src/components/Message/MessageSimple/MessageContent.tsx +42 -87
  1250. package/src/components/Message/MessageSimple/MessageDeleted.tsx +24 -63
  1251. package/src/components/Message/MessageSimple/MessageFooter.tsx +60 -84
  1252. package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +109 -0
  1253. package/src/components/Message/MessageSimple/MessageReplies.tsx +19 -60
  1254. package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx +7 -29
  1255. package/src/components/Message/MessageSimple/MessageSimple.tsx +64 -78
  1256. package/src/components/Message/MessageSimple/MessageStatus.tsx +35 -88
  1257. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +24 -66
  1258. package/src/components/Message/MessageSimple/ReactionList.tsx +110 -163
  1259. package/src/components/Message/MessageSimple/__tests__/Message.test.js +24 -258
  1260. package/src/components/Message/MessageSimple/__tests__/MessageAvatar.test.js +9 -8
  1261. package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +63 -46
  1262. package/src/components/Message/MessageSimple/__tests__/MessagePinnedHeader.test.js +53 -0
  1263. package/src/components/Message/MessageSimple/__tests__/MessageReplies.test.js +13 -9
  1264. package/src/components/Message/MessageSimple/__tests__/MessageStatus.test.js +11 -47
  1265. package/src/components/Message/MessageSimple/__tests__/MessageTextContainer.test.js +2 -2
  1266. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap +35 -22
  1267. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessagePinnedHeader.test.js.snap +80 -0
  1268. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageReplies.test.js.snap +72 -46
  1269. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageStatus.test.js.snap +77 -48
  1270. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageTextContainer.test.js.snap +6 -18
  1271. package/src/components/Message/MessageSimple/utils/parseLinks.test.ts +100 -0
  1272. package/src/components/Message/MessageSimple/utils/parseLinks.ts +95 -0
  1273. package/src/components/Message/MessageSimple/utils/renderText.test.tsx +70 -0
  1274. package/src/components/Message/MessageSimple/utils/renderText.tsx +138 -63
  1275. package/src/components/Message/hooks/useCreateMessageContext.ts +5 -26
  1276. package/src/components/Message/hooks/useMessageActionHandlers.ts +157 -0
  1277. package/src/components/Message/hooks/useMessageActions.tsx +371 -0
  1278. package/src/components/Message/utils/messageActions.ts +53 -54
  1279. package/src/components/Message/utils/removeReservedFields.ts +3 -18
  1280. package/src/components/MessageInput/AttachButton.tsx +15 -57
  1281. package/src/components/MessageInput/CommandsButton.tsx +16 -58
  1282. package/src/components/MessageInput/CooldownTimer.tsx +67 -0
  1283. package/src/components/MessageInput/FileUploadPreview.tsx +86 -118
  1284. package/src/components/MessageInput/ImageUploadPreview.tsx +15 -58
  1285. package/src/components/MessageInput/InputButtons.tsx +17 -64
  1286. package/src/components/MessageInput/MessageInput.tsx +83 -97
  1287. package/src/components/MessageInput/MoreOptionsButton.tsx +14 -56
  1288. package/src/components/MessageInput/SendButton.tsx +14 -55
  1289. package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +47 -0
  1290. package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +6 -21
  1291. package/src/components/MessageInput/__tests__/AttachButton.test.js +2 -2
  1292. package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +193 -97
  1293. package/src/components/MessageInput/__tests__/ImageUploadPreview.test.js +35 -35
  1294. package/src/components/MessageInput/__tests__/MessageInput.test.js +29 -17
  1295. package/src/components/MessageInput/__tests__/SendButton.test.js +2 -2
  1296. package/src/components/MessageInput/__tests__/UploadProgressIndicator.test.js +2 -2
  1297. package/src/components/MessageInput/__tests__/__snapshots__/AttachButton.test.js.snap +134 -52
  1298. package/src/components/MessageInput/__tests__/__snapshots__/FileUploadPreview.test.js.snap +3955 -1647
  1299. package/src/components/MessageInput/__tests__/__snapshots__/ImageUploadPreview.test.js.snap +1964 -1464
  1300. package/src/components/MessageInput/__tests__/__snapshots__/MessageInput.test.js.snap +633 -326
  1301. package/src/components/MessageInput/__tests__/__snapshots__/SendButton.test.js.snap +224 -124
  1302. package/src/components/MessageInput/__tests__/__snapshots__/UploadProgressIndicator.test.js.snap +85 -17
  1303. package/src/components/MessageInput/hooks/useCooldown.ts +48 -0
  1304. package/src/components/MessageInput/hooks/useCountdown.ts +48 -0
  1305. package/src/components/MessageList/DateHeader.tsx +2 -2
  1306. package/src/components/MessageList/InlineDateSeparator.tsx +5 -2
  1307. package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +3 -18
  1308. package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +3 -18
  1309. package/src/components/MessageList/InlineLoadingMoreThreadIndicator.tsx +3 -18
  1310. package/src/components/MessageList/MessageList.tsx +181 -159
  1311. package/src/components/MessageList/MessageSystem.tsx +7 -28
  1312. package/src/components/MessageList/ScrollToBottomButton.tsx +6 -1
  1313. package/src/components/MessageList/TypingIndicator.tsx +4 -20
  1314. package/src/components/MessageList/TypingIndicatorContainer.tsx +14 -47
  1315. package/src/components/MessageList/__tests__/MessageList.test.js +231 -152
  1316. package/src/components/MessageList/__tests__/MessageSystem.test.js +3 -3
  1317. package/src/components/MessageList/__tests__/ScrollToBottomButton.test.js +13 -8
  1318. package/src/components/MessageList/__tests__/TypingIndicator.test.js +14 -97
  1319. package/src/components/MessageList/__tests__/__snapshots__/MessageSystem.test.js.snap +9 -4
  1320. package/src/components/MessageList/__tests__/__snapshots__/ScrollToBottomButton.test.js.snap +78 -32
  1321. package/src/components/MessageList/__tests__/__snapshots__/TypingIndicator.test.js.snap +60 -57
  1322. package/src/components/MessageList/hooks/useMessageList.ts +39 -62
  1323. package/src/components/MessageList/hooks/useTypingString.ts +6 -22
  1324. package/src/components/MessageList/utils/filterTypingUsers.ts +7 -28
  1325. package/src/components/MessageList/utils/getDateSeparators.ts +10 -30
  1326. package/src/components/MessageList/utils/getGroupStyles.ts +23 -44
  1327. package/src/components/MessageList/utils/getLastReceivedMessage.ts +9 -19
  1328. package/src/components/MessageList/utils/getReadStates.ts +5 -20
  1329. package/src/components/MessageOverlay/MessageActionList.tsx +170 -0
  1330. package/src/components/MessageOverlay/MessageActionListItem.tsx +124 -0
  1331. package/src/components/MessageOverlay/MessageOverlay.tsx +264 -268
  1332. package/src/components/MessageOverlay/OverlayBackdrop.tsx +18 -0
  1333. package/src/components/MessageOverlay/OverlayReactionList.tsx +24 -82
  1334. package/src/components/MessageOverlay/OverlayReactions.tsx +12 -8
  1335. package/src/components/MessageOverlay/OverlayReactionsAvatar.tsx +27 -0
  1336. package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +44 -0
  1337. package/src/components/Reply/Reply.tsx +44 -81
  1338. package/src/components/Thread/Thread.tsx +31 -57
  1339. package/src/components/Thread/__tests__/Thread.test.js +58 -77
  1340. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +874 -1011
  1341. package/src/components/Thread/components/ThreadFooterComponent.tsx +13 -49
  1342. package/src/components/docs/ListProps.md +1 -1
  1343. package/src/components/docs/data.js +38 -37
  1344. package/src/components/index.ts +13 -7
  1345. package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +1 -2
  1346. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +10 -9
  1347. package/src/contexts/channelContext/ChannelContext.tsx +43 -79
  1348. package/src/contexts/channelsContext/ChannelsContext.tsx +37 -63
  1349. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +39 -117
  1350. package/src/contexts/channelsStateContext/useChannelState.ts +29 -61
  1351. package/src/contexts/chatContext/ChatContext.tsx +15 -51
  1352. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +13 -56
  1353. package/src/contexts/keyboardContext/KeyboardContext.tsx +13 -8
  1354. package/src/contexts/messageContext/MessageContext.tsx +16 -57
  1355. package/src/contexts/messageInputContext/MessageInputContext.tsx +146 -157
  1356. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +13 -26
  1357. package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +15 -34
  1358. package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +41 -97
  1359. package/src/contexts/messageOverlayContext/hooks/useResettableState.test.tsx +46 -0
  1360. package/src/contexts/messageOverlayContext/hooks/useResettableState.ts +22 -0
  1361. package/src/contexts/messagesContext/MessagesContext.tsx +96 -234
  1362. package/src/contexts/overlayContext/OverlayContext.tsx +35 -35
  1363. package/src/contexts/overlayContext/OverlayProvider.tsx +52 -62
  1364. package/src/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.tsx +38 -0
  1365. package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +14 -55
  1366. package/src/contexts/suggestionsContext/SuggestionsContext.tsx +59 -80
  1367. package/src/contexts/suggestionsContext/__tests__/Suggestions.test.js +4 -2
  1368. package/src/contexts/themeContext/ThemeContext.tsx +1 -0
  1369. package/src/contexts/themeContext/utils/theme.ts +92 -36
  1370. package/src/contexts/threadContext/ThreadContext.tsx +14 -48
  1371. package/src/contexts/translationContext/TranslationContext.tsx +15 -10
  1372. package/src/contexts/typingContext/TypingContext.tsx +12 -46
  1373. package/src/contexts/utils/getDisplayName.ts +3 -1
  1374. package/src/emoji-data/compiled.ts +1830 -9609
  1375. package/src/emoji-data/emojiNames.ts +0 -140
  1376. package/src/emoji-data/emojis.ts +0 -210
  1377. package/src/emoji-data/index.js +1 -1
  1378. package/src/hooks/useAppStateListener.ts +26 -12
  1379. package/src/hooks/useIsMountedRef.ts +36 -0
  1380. package/src/hooks/useStreami18n.ts +5 -3
  1381. package/src/i18n/en.json +9 -3
  1382. package/src/i18n/fr.json +9 -3
  1383. package/src/i18n/hi.json +9 -3
  1384. package/src/i18n/it.json +9 -3
  1385. package/src/i18n/ja.json +67 -0
  1386. package/src/i18n/ko.json +67 -0
  1387. package/src/i18n/nl.json +9 -3
  1388. package/src/i18n/ru.json +9 -3
  1389. package/src/i18n/tr.json +10 -4
  1390. package/src/icons/Pin.tsx +17 -0
  1391. package/src/icons/PinHeader.tsx +12 -0
  1392. package/src/icons/Unpin.tsx +12 -0
  1393. package/src/icons/UserAdmin.tsx +23 -0
  1394. package/src/icons/index.ts +3 -2
  1395. package/src/init.ts +5 -0
  1396. package/src/mock-builders/api/queryChannels.js +1 -1
  1397. package/src/mock-builders/api/sendMessage.js +3 -1
  1398. package/src/mock-builders/generator/attachment.js +0 -2
  1399. package/src/mock-builders/generator/channel.js +101 -46
  1400. package/src/mock-builders/generator/user.js +33 -26
  1401. package/src/mock-builders/mock.js +2 -2
  1402. package/src/mock-builders/native/react-native-mock.js +1 -1
  1403. package/src/native.ts +2 -13
  1404. package/src/types/types.ts +16 -18
  1405. package/src/utils/Streami18n.ts +12 -6
  1406. package/src/utils/__tests__/Streami18n.test.js +9 -45
  1407. package/src/utils/__tests__/getResizedImageUrl.test.js +57 -0
  1408. package/src/utils/__tests__/utils.test.js +19 -0
  1409. package/src/utils/date.ts +4 -0
  1410. package/src/utils/getResizedImageUrl.ts +59 -0
  1411. package/src/utils/getUrlOfImageAttachment.ts +10 -0
  1412. package/src/utils/utils.ts +97 -142
  1413. package/src/version.json +1 -1
  1414. package/lib/commonjs/components/AutoCompleteInput/CommandsHeader.js +0 -78
  1415. package/lib/commonjs/components/AutoCompleteInput/CommandsHeader.js.map +0 -1
  1416. package/lib/commonjs/components/AutoCompleteInput/CommandsItem.js.map +0 -1
  1417. package/lib/commonjs/components/AutoCompleteInput/EmojisHeader.js +0 -81
  1418. package/lib/commonjs/components/AutoCompleteInput/EmojisHeader.js.map +0 -1
  1419. package/lib/commonjs/components/AutoCompleteInput/EmojisItem.js +0 -75
  1420. package/lib/commonjs/components/AutoCompleteInput/EmojisItem.js.map +0 -1
  1421. package/lib/commonjs/components/AutoCompleteInput/MentionsItem.js +0 -125
  1422. package/lib/commonjs/components/AutoCompleteInput/MentionsItem.js.map +0 -1
  1423. package/lib/commonjs/components/AutoCompleteInput/SuggestionsList.js +0 -199
  1424. package/lib/commonjs/components/AutoCompleteInput/SuggestionsList.js.map +0 -1
  1425. package/lib/commonjs/components/Channel/utils/debounce.js +0 -20
  1426. package/lib/commonjs/components/Channel/utils/debounce.js.map +0 -1
  1427. package/lib/commonjs/components/Channel/utils/throttle.js +0 -20
  1428. package/lib/commonjs/components/Channel/utils/throttle.js.map +0 -1
  1429. package/lib/commonjs/components/MessageOverlay/MessageActions.js.map +0 -1
  1430. package/lib/commonjs/icons/Left.js +0 -38
  1431. package/lib/commonjs/icons/Left.js.map +0 -1
  1432. package/lib/commonjs/icons/Right.js +0 -38
  1433. package/lib/commonjs/icons/Right.js.map +0 -1
  1434. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js +0 -100
  1435. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js.map +0 -1
  1436. package/lib/commonjs/styleguideComponents/BottomSheet.js +0 -25
  1437. package/lib/commonjs/styleguideComponents/BottomSheet.js.map +0 -1
  1438. package/lib/commonjs/styleguideComponents/JsDoc.js +0 -87
  1439. package/lib/commonjs/styleguideComponents/JsDoc.js.map +0 -1
  1440. package/lib/commonjs/styleguideComponents/Markdown.js +0 -12
  1441. package/lib/commonjs/styleguideComponents/Markdown.js.map +0 -1
  1442. package/lib/commonjs/styleguideComponents/PathlineRenderer.js +0 -92
  1443. package/lib/commonjs/styleguideComponents/PathlineRenderer.js.map +0 -1
  1444. package/lib/commonjs/styleguideComponents/PropsRenderer.js +0 -267
  1445. package/lib/commonjs/styleguideComponents/PropsRenderer.js.map +0 -1
  1446. package/lib/commonjs/styleguideComponents/Reanimated.js +0 -2
  1447. package/lib/commonjs/styleguideComponents/Wrapper.js +0 -29
  1448. package/lib/commonjs/styleguideComponents/Wrapper.js.map +0 -1
  1449. package/lib/commonjs/styleguideComponents/register-react-native-web.js +0 -44
  1450. package/lib/commonjs/styleguideComponents/register-react-native-web.js.map +0 -1
  1451. package/lib/commonjs/styleguideComponents/resolveAssetSource.js +0 -11
  1452. package/lib/commonjs/styleguideComponents/resolveAssetSource.js.map +0 -1
  1453. package/lib/module/components/AutoCompleteInput/CommandsHeader.js +0 -78
  1454. package/lib/module/components/AutoCompleteInput/CommandsHeader.js.map +0 -1
  1455. package/lib/module/components/AutoCompleteInput/CommandsItem.js.map +0 -1
  1456. package/lib/module/components/AutoCompleteInput/EmojisHeader.js +0 -81
  1457. package/lib/module/components/AutoCompleteInput/EmojisHeader.js.map +0 -1
  1458. package/lib/module/components/AutoCompleteInput/EmojisItem.js +0 -75
  1459. package/lib/module/components/AutoCompleteInput/EmojisItem.js.map +0 -1
  1460. package/lib/module/components/AutoCompleteInput/MentionsItem.js +0 -125
  1461. package/lib/module/components/AutoCompleteInput/MentionsItem.js.map +0 -1
  1462. package/lib/module/components/AutoCompleteInput/SuggestionsList.js +0 -199
  1463. package/lib/module/components/AutoCompleteInput/SuggestionsList.js.map +0 -1
  1464. package/lib/module/components/Channel/utils/debounce.js +0 -20
  1465. package/lib/module/components/Channel/utils/debounce.js.map +0 -1
  1466. package/lib/module/components/Channel/utils/throttle.js +0 -20
  1467. package/lib/module/components/Channel/utils/throttle.js.map +0 -1
  1468. package/lib/module/components/MessageOverlay/MessageActions.js.map +0 -1
  1469. package/lib/module/icons/Left.js +0 -38
  1470. package/lib/module/icons/Left.js.map +0 -1
  1471. package/lib/module/icons/Right.js +0 -38
  1472. package/lib/module/icons/Right.js.map +0 -1
  1473. package/lib/module/styleguideComponents/ArgumentsRenderer.js +0 -100
  1474. package/lib/module/styleguideComponents/ArgumentsRenderer.js.map +0 -1
  1475. package/lib/module/styleguideComponents/BottomSheet.js +0 -25
  1476. package/lib/module/styleguideComponents/BottomSheet.js.map +0 -1
  1477. package/lib/module/styleguideComponents/JsDoc.js +0 -87
  1478. package/lib/module/styleguideComponents/JsDoc.js.map +0 -1
  1479. package/lib/module/styleguideComponents/Markdown.js +0 -12
  1480. package/lib/module/styleguideComponents/Markdown.js.map +0 -1
  1481. package/lib/module/styleguideComponents/PathlineRenderer.js +0 -92
  1482. package/lib/module/styleguideComponents/PathlineRenderer.js.map +0 -1
  1483. package/lib/module/styleguideComponents/PropsRenderer.js +0 -267
  1484. package/lib/module/styleguideComponents/PropsRenderer.js.map +0 -1
  1485. package/lib/module/styleguideComponents/Reanimated.js +0 -2
  1486. package/lib/module/styleguideComponents/Wrapper.js +0 -29
  1487. package/lib/module/styleguideComponents/Wrapper.js.map +0 -1
  1488. package/lib/module/styleguideComponents/register-react-native-web.js +0 -44
  1489. package/lib/module/styleguideComponents/register-react-native-web.js.map +0 -1
  1490. package/lib/module/styleguideComponents/resolveAssetSource.js +0 -11
  1491. package/lib/module/styleguideComponents/resolveAssetSource.js.map +0 -1
  1492. package/lib/typescript/components/AutoCompleteInput/CommandsHeader.d.ts +0 -2
  1493. package/lib/typescript/components/AutoCompleteInput/CommandsItem.d.ts +0 -15
  1494. package/lib/typescript/components/AutoCompleteInput/EmojisHeader.d.ts +0 -5
  1495. package/lib/typescript/components/AutoCompleteInput/EmojisItem.d.ts +0 -12
  1496. package/lib/typescript/components/AutoCompleteInput/MentionsItem.d.ts +0 -16
  1497. package/lib/typescript/components/AutoCompleteInput/SuggestionsList.d.ts +0 -13
  1498. package/lib/typescript/components/Channel/utils/debounce.d.ts +0 -2
  1499. package/lib/typescript/components/Channel/utils/throttle.d.ts +0 -2
  1500. package/lib/typescript/components/MessageOverlay/MessageActions.d.ts +0 -11
  1501. package/src/components/AutoCompleteInput/CommandsHeader.tsx +0 -43
  1502. package/src/components/AutoCompleteInput/EmojisHeader.tsx +0 -45
  1503. package/src/components/AutoCompleteInput/EmojisItem.tsx +0 -52
  1504. package/src/components/AutoCompleteInput/MentionsItem.tsx +0 -74
  1505. package/src/components/AutoCompleteInput/SuggestionsList.tsx +0 -138
  1506. package/src/components/AutoCompleteInput/__tests__/CommandsItem.test.js +0 -29
  1507. package/src/components/AutoCompleteInput/__tests__/MentionsItem.test.js +0 -62
  1508. package/src/components/Channel/utils/debounce.ts +0 -12
  1509. package/src/components/Channel/utils/throttle.ts +0 -12
  1510. package/src/components/MessageList/__tests__/__snapshots__/MessageList.test.js.snap +0 -983
  1511. package/src/components/MessageOverlay/MessageActions.tsx +0 -243
  1512. package/src/icons/Left.tsx +0 -12
  1513. package/src/icons/Right.tsx +0 -12
  1514. package/src/styleguideComponents/ArgumentsRenderer.tsx +0 -59
  1515. package/src/styleguideComponents/BottomSheet.tsx +0 -3
  1516. package/src/styleguideComponents/JsDoc.tsx +0 -43
  1517. package/src/styleguideComponents/Markdown.tsx +0 -1
  1518. package/src/styleguideComponents/PathlineRenderer.tsx +0 -44
  1519. package/src/styleguideComponents/PropsRenderer.tsx +0 -138
  1520. package/src/styleguideComponents/Reanimated.tsx +0 -0
  1521. package/src/styleguideComponents/Wrapper.tsx +0 -6
  1522. package/src/styleguideComponents/register-react-native-web.js +0 -13
  1523. package/src/styleguideComponents/resolveAssetSource.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["utils.ts"],"names":["FileState","Object","freeze","FINISHED","NO_FILE","UPLOAD_FAILED","UPLOADED","UPLOADING","ProgressIndicatorTypes","IN_PROGRESS","RETRY","defaultAutoCompleteSuggestionsLimit","defaultMentionAllAppUsersQuery","filters","options","sort","isUserResponse","user","undefined","getCommands","channel","getConfig","commands","getMembers","members","state","values","length","filter","member","map","getWatchers","watchers","getMembersAndWatchers","users","reduce","acc","cur","id","queryMembers","query","onReady","limit","name","$autocomplete","response","forEach","push","queryMembersDebounced","leading","trailing","queryUsers","client","mentionAllAppUsersQuery","$ne","userID","$or","queryUsersDebounced","isCommandTrigger","trigger","isEmojiTrigger","isMentionTrigger","ACITriggerSettings","onMentionSelectItem","component","dataProvider","text","indexOf","selectedCommands","command","a","b","nameA","toLowerCase","nameB","result","slice","output","entity","caretPosition","key","_","compiledEmojis","emojiArray","names","some","includes","emoji","emojiLib","skin_variations","tone","index","unicode","callback","item","mentionAllAppUsersEnabled","data","matchingUsers","makeImageCompatibleUrl","url","trim","vw","percentageWidth","rounded","value","Dimensions","get","width","Math","round","vh","percentageHeight","height","generateRandomId","Number","random","toString","replace","emojiRegex"],"mappings":"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","sourcesContent":["import debounce from 'lodash/debounce';\nimport { Dimensions } from 'react-native';\n\nimport { compiledEmojis, Emoji } from '../emoji-data/compiled';\n\nimport type React from 'react';\nimport type { DebouncedFunc } from 'lodash';\nimport type {\n Channel,\n ChannelMemberAPIResponse,\n ChannelMemberResponse,\n StreamChat,\n UserResponse,\n} from 'stream-chat';\n\nimport type { CommandsItemProps } from '../components/AutoCompleteInput/CommandsItem';\nimport type { EmojisItemProps } from '../components/AutoCompleteInput/EmojisItem';\nimport type { MentionsItemProps } from '../components/AutoCompleteInput/MentionsItem';\nimport type { MentionAllAppUsersQuery } from '../contexts/messageInputContext/MessageInputContext';\nimport type {\n SuggestionCommand,\n SuggestionUser,\n} from '../contexts/suggestionsContext/SuggestionsContext';\nimport type { IconProps } from '../icons/utils/base';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../types/types';\n\nexport type ReactionData = {\n Icon: React.FC<IconProps>;\n type: string;\n};\n\nexport const FileState = Object.freeze({\n // finished and uploaded state are the same thing. First is set on frontend,\n // while later is set on backend side\n // TODO: Unify both of them\n FINISHED: 'finished',\n NO_FILE: 'no_file',\n UPLOAD_FAILED: 'upload_failed',\n UPLOADED: 'uploaded',\n UPLOADING: 'uploading',\n});\n\nexport const ProgressIndicatorTypes: {\n IN_PROGRESS: 'in_progress';\n RETRY: 'retry';\n} = Object.freeze({\n IN_PROGRESS: 'in_progress',\n RETRY: 'retry',\n});\n\nconst defaultAutoCompleteSuggestionsLimit = 10;\nconst defaultMentionAllAppUsersQuery = {\n filters: {},\n options: {},\n sort: {},\n};\n\nconst isUserResponse = <Us extends DefaultUserType = DefaultUserType>(\n user: SuggestionUser<Us> | undefined,\n): user is SuggestionUser<Us> => (user as SuggestionUser<Us>) !== undefined;\n\nconst getCommands = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n channel: Channel<At, Ch, Co, Ev, Me, Re, Us>,\n) => channel.getConfig()?.commands || [];\n\nconst getMembers = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n channel: Channel<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const members = channel.state.members;\n\n return Object.values(members).length\n ? (\n Object.values(members).filter((member) => member.user) as Array<\n ChannelMemberResponse<Us> & { user: UserResponse<Us> }\n >\n ).map((member) => member.user)\n : [];\n};\n\nconst getWatchers = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n channel: Channel<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const watchers = channel.state.watchers;\n return Object.values(watchers).length ? [...Object.values(watchers)] : [];\n};\n\nconst getMembersAndWatchers = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n channel: Channel<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const users = [...getMembers(channel), ...getWatchers(channel)];\n\n return Object.values(\n users.reduce((acc, cur) => {\n if (!acc[cur.id]) {\n acc[cur.id] = cur;\n }\n\n return acc;\n }, {} as { [key: string]: SuggestionUser<Us> }),\n );\n};\n\nconst queryMembers = async <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n channel: Channel<At, Ch, Co, Ev, Me, Re, Us>,\n query: SuggestionUser<Us>['name'],\n onReady?: (users: SuggestionUser<Us>[]) => void,\n limit = defaultAutoCompleteSuggestionsLimit,\n): Promise<void> => {\n if (typeof query === 'string') {\n const response = (await (channel as unknown as Channel).queryMembers(\n {\n name: { $autocomplete: query },\n },\n {},\n { limit },\n )) as ChannelMemberAPIResponse<Us>;\n\n const users: SuggestionUser<Us>[] = [];\n response.members.forEach((member) => isUserResponse(member.user) && users.push(member.user));\n if (onReady && users) {\n onReady(users);\n }\n }\n};\n\nexport const queryMembersDebounced = debounce(queryMembers, 200, {\n leading: false,\n trailing: true,\n});\n\nconst queryUsers = async <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n client: StreamChat<At, Ch, Co, Ev, Me, Re, Us>,\n query: SuggestionUser<Us>['name'],\n onReady?: (users: SuggestionUser<Us>[]) => void,\n options: {\n limit?: number;\n mentionAllAppUsersQuery?: MentionAllAppUsersQuery<Us>;\n } = {},\n): Promise<void> => {\n if (typeof query === 'string') {\n const {\n limit = defaultAutoCompleteSuggestionsLimit,\n mentionAllAppUsersQuery = defaultMentionAllAppUsersQuery,\n } = options;\n const filters = {\n id: { $ne: client.userID },\n ...mentionAllAppUsersQuery?.filters,\n };\n\n if (query) {\n // @ts-ignore\n filters.$or = [{ id: { $autocomplete: query } }, { name: { $autocomplete: query } }];\n }\n\n const response = await client.queryUsers(\n // @ts-ignore\n filters,\n { id: 1, ...mentionAllAppUsersQuery?.sort },\n { limit, ...mentionAllAppUsersQuery?.options },\n );\n const users: SuggestionUser<Us>[] = [];\n response.users.forEach((user) => isUserResponse(user) && users.push(user));\n if (onReady && users) {\n onReady(users);\n }\n }\n};\n\nexport const queryUsersDebounced = debounce(queryUsers, 200, {\n leading: false,\n trailing: true,\n});\n\nexport const isCommandTrigger = (trigger: Trigger): trigger is '/' => trigger === '/';\n\nexport const isEmojiTrigger = (trigger: Trigger): trigger is ':' => trigger === ':';\n\nexport const isMentionTrigger = (trigger: Trigger): trigger is '@' => trigger === '@';\n\nexport type Trigger = '/' | '@' | ':';\n\nexport type TriggerSettings<\n Co extends string = DefaultCommandType,\n Us extends UnknownType = DefaultUserType,\n> = {\n '/'?: {\n component: string | React.ComponentType<Partial<CommandsItemProps<Co>>>;\n dataProvider: (\n query: SuggestionCommand<Co>['name'],\n text: string,\n onReady?: (data: SuggestionCommand<Co>[], q: SuggestionCommand<Co>['name']) => void,\n options?: {\n limit?: number;\n },\n ) => SuggestionCommand<Co>[];\n output: (entity: SuggestionCommand<Co>) => {\n caretPosition: string;\n key: string;\n text: string;\n };\n };\n ':'?: {\n component: string | React.ComponentType<Partial<EmojisItemProps>>;\n dataProvider: (\n query: Emoji['name'],\n _: string,\n onReady?: (data: Emoji[], q: Emoji['name']) => void,\n ) => Emoji[];\n output: (entity: Emoji) => {\n caretPosition: string;\n key: string;\n text: string;\n };\n };\n '@'?: {\n callback: (item: SuggestionUser<Us>) => void;\n component: string | React.ComponentType<Partial<MentionsItemProps<Us>>>;\n dataProvider: (\n query: SuggestionUser<Us>['name'],\n _: string,\n onReady?: (data: SuggestionUser<Us>[], q: SuggestionUser<Us>['name']) => void,\n options?: {\n limit?: number;\n mentionAllAppUsersEnabled?: boolean;\n mentionAllAppUsersQuery?: MentionAllAppUsersQuery<Us>;\n },\n ) => SuggestionUser<Us>[] | Promise<void> | void;\n output: (entity: SuggestionUser<Us>) => {\n caretPosition: string;\n key: string;\n text: string;\n };\n };\n};\n\nexport type ACITriggerSettingsParams<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = {\n channel: Channel<At, Ch, Co, Ev, Me, Re, Us>;\n client: StreamChat<At, Ch, Co, Ev, Me, Re, Us>;\n onMentionSelectItem: (item: SuggestionUser<Us>) => void;\n};\n\nexport type QueryUsersFunction<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = (\n client: StreamChat<At, Ch, Co, Ev, Me, Re, Us>,\n query: SuggestionUser<Us>['name'],\n onReady?: (users: SuggestionUser<Us>[]) => void,\n options?: {\n limit?: number;\n mentionAllAppUsersQuery?: MentionAllAppUsersQuery<Us>;\n },\n) => Promise<void>;\n\nexport type QueryMembersFunction<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = (\n channel: Channel<At, Ch, Co, Ev, Me, Re, Us>,\n query: SuggestionUser<Us>['name'],\n onReady?: (users: SuggestionUser<Us>[]) => void,\n options?: {\n limit?: number;\n },\n) => Promise<void>;\n\n/**\n * ACI = AutoCompleteInput\n *\n * DataProvider accepts `onReady` function, which will execute once the data is ready.\n * Another approach would have been to simply return the data from dataProvider and let the\n * component await for it and then execute the required logic. We are going for callback instead\n * of async-await since we have debounce function in dataProvider. Which will delay the execution\n * of api call on trailing end of debounce (lets call it a1) but will return with result of\n * previous call without waiting for a1. So in this case, we want to execute onReady, when trailing\n * end of debounce executes.\n */\nexport const ACITriggerSettings = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>({\n channel,\n client,\n onMentionSelectItem,\n}: ACITriggerSettingsParams<At, Ch, Co, Ev, Me, Re, Us>): TriggerSettings<Co, Us> => ({\n '/': {\n component: 'CommandsItem',\n dataProvider: (query, text, onReady, options = {}) => {\n if (text.indexOf('/') !== 0) return [];\n\n const { limit = defaultAutoCompleteSuggestionsLimit } = options;\n const selectedCommands = !query\n ? getCommands(channel)\n : getCommands(channel).filter((command) => query && command.name?.indexOf(query) !== -1);\n\n // sort alphabetically unless the you're matching the first char\n selectedCommands.sort((a, b) => {\n let nameA = a.name?.toLowerCase() || '';\n let nameB = b.name?.toLowerCase() || '';\n if (query && nameA.indexOf(query) === 0) {\n nameA = `0${nameA}`;\n }\n if (query && nameB.indexOf(query) === 0) {\n nameB = `0${nameB}`;\n }\n if (nameA < nameB) return -1;\n if (nameA > nameB) return 1;\n\n return 0;\n });\n\n const result = selectedCommands.slice(0, limit);\n\n if (onReady) {\n onReady(result, query);\n }\n\n return result;\n },\n output: (entity) => ({\n caretPosition: 'next',\n key: `${entity.name}`,\n text: `/${entity.name}`,\n }),\n },\n ':': {\n component: 'EmojisItem',\n dataProvider: (query, _, onReady) => {\n if (!query) return [];\n\n const result = compiledEmojis.emojiArray.reduce((acc, cur) => {\n if (acc.length >= 10) return acc;\n\n if (cur.names.some((name) => name.includes(query))) {\n const emoji = compiledEmojis.emojiLib[cur.name];\n if (emoji.skin_variations) {\n acc.push({\n ...emoji,\n name: `${emoji.name}-tone-1`,\n skin_variations: undefined,\n });\n emoji.skin_variations.forEach((tone, index) =>\n acc.push({\n ...emoji,\n name: `${emoji.name}-tone-${index + 2}`,\n skin_variations: undefined,\n unicode: tone,\n }),\n );\n } else {\n acc.push(emoji);\n }\n }\n\n return acc;\n }, [] as Emoji[]);\n\n if (onReady) {\n onReady(result, query);\n }\n\n return result;\n },\n output: (entity) => ({\n caretPosition: 'next',\n key: entity.name,\n text: entity.unicode,\n }),\n },\n '@': {\n callback: (item) => {\n onMentionSelectItem(item);\n },\n component: 'MentionsItem',\n dataProvider: (\n query,\n _,\n onReady,\n options = {\n limit: defaultAutoCompleteSuggestionsLimit,\n mentionAllAppUsersEnabled: false,\n mentionAllAppUsersQuery: defaultMentionAllAppUsersQuery,\n },\n ) => {\n if (options?.mentionAllAppUsersEnabled) {\n return (\n queryUsersDebounced as DebouncedFunc<QueryUsersFunction<At, Ch, Co, Ev, Me, Re, Us>>\n )(\n client,\n query,\n (data) => {\n if (onReady) {\n onReady(data, query);\n }\n },\n {\n limit: options.limit,\n mentionAllAppUsersQuery: options.mentionAllAppUsersQuery,\n },\n );\n }\n\n /**\n * By default, we return maximum 100 members via queryChannels api call.\n * Thus it is safe to assume, that if number of members in channel.state is < 100,\n * then all the members are already available on client side and we don't need to\n * make any api call to queryMembers endpoint.\n */\n if (!query || Object.values(channel.state.members).length < 100) {\n const users = getMembersAndWatchers(channel);\n\n const matchingUsers = users.filter((user) => {\n if (!query) return true;\n if (user.name?.toLowerCase().indexOf(query.toLowerCase()) !== -1) {\n return true;\n }\n if (user.id.toLowerCase().indexOf(query.toLowerCase()) !== -1) {\n return true;\n }\n return false;\n });\n\n const data = matchingUsers.slice(0, options?.limit);\n\n if (onReady) {\n onReady(data, query);\n }\n\n return data;\n }\n\n return (\n queryMembersDebounced as DebouncedFunc<QueryMembersFunction<At, Ch, Co, Ev, Me, Re, Us>>\n )(\n channel,\n query,\n (data) => {\n if (onReady) {\n onReady(data, query);\n }\n },\n {\n limit: options.limit,\n },\n );\n },\n output: (entity) => ({\n caretPosition: 'next',\n key: entity.id,\n text: `@${entity.name || entity.id}`,\n }),\n },\n});\n\nexport const makeImageCompatibleUrl = (url: string) =>\n (url.indexOf('//') === 0 ? `https:${url}` : url).trim();\n\nexport const vw = (percentageWidth: number, rounded = false) => {\n const value = Dimensions.get('window').width * (percentageWidth / 100);\n return rounded ? Math.round(value) : value;\n};\n\nexport const vh = (percentageHeight: number, rounded = false) => {\n const height = Dimensions.get('window').height;\n\n const value = height * (percentageHeight / 100);\n return rounded ? Math.round(value) : value;\n};\n\nexport const generateRandomId = (a = ''): string =>\n a\n ? /* eslint-disable no-bitwise */\n ((Number(a) ^ (Math.random() * 16)) >> (Number(a) / 4)).toString(16)\n : `${1e7}-${1e3}-${4e3}-${8e3}-${1e11}`.replace(/[018]/g, generateRandomId);\n\n// source: https://raw.githubusercontent.com/mathiasbynens/emoji-regex/master/RGI_Emoji.js\n// [#\\*0-9]\\uFE0F\\u20E3 was replaced with [#*0-9]\\uFE0F\\u20E3 due to a lint warning\nexport const emojiRegex =\n /^(\\uD83C\\uDFF4\\uDB40\\uDC67\\uDB40\\uDC62(?:\\uDB40\\uDC77\\uDB40\\uDC6C\\uDB40\\uDC73|\\uDB40\\uDC73\\uDB40\\uDC63\\uDB40\\uDC74|\\uDB40\\uDC65\\uDB40\\uDC6E\\uDB40\\uDC67)\\uDB40\\uDC7F|\\uD83D\\uDC69\\u200D\\uD83D\\uDC69\\u200D(?:\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67]))|\\uD83D\\uDC68(?:\\uD83C\\uDFFF\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB-\\uDFFE])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFE\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFD\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFC\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFB\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFC-\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\u200D(?:\\u2764\\uFE0F\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83D\\uDC68|(?:\\uD83D[\\uDC68\\uDC69])\\u200D(?:\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67]))|\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67])|(?:\\uD83D[\\uDC68\\uDC69])\\u200D(?:\\uD83D[\\uDC66\\uDC67])|[\\u2695\\u2696\\u2708]\\uFE0F|\\uD83D[\\uDC66\\uDC67]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|(?:\\uD83C\\uDFFF\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFE\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFD\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFC\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFB\\u200D[\\u2695\\u2696\\u2708])\\uFE0F|\\uD83C\\uDFFF|\\uD83C\\uDFFE|\\uD83C\\uDFFD|\\uD83C\\uDFFC|\\uD83C\\uDFFB)?|\\uD83E\\uDDD1(?:(?:\\uD83C[\\uDFFB-\\uDFFF])\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83E\\uDDD1(?:\\uD83C[\\uDFFB-\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83E\\uDDD1|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]))|\\uD83D\\uDC69(?:\\u200D(?:\\u2764\\uFE0F\\u200D(?:\\uD83D\\uDC8B\\u200D(?:\\uD83D[\\uDC68\\uDC69])|\\uD83D[\\uDC68\\uDC69])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFF\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFE\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFD\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFC\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFB\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]))|\\uD83D\\uDC69\\uD83C\\uDFFF\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB-\\uDFFE])|\\uD83D\\uDC69\\uD83C\\uDFFE\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])|\\uD83D\\uDC69\\uD83C\\uDFFD\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])|\\uD83D\\uDC69\\uD83C\\uDFFC\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])|\\uD83D\\uDC69\\uD83C\\uDFFB\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFC-\\uDFFF])|\\uD83D\\uDC69\\u200D\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC69\\u200D\\uD83D\\uDC69\\u200D(?:\\uD83D[\\uDC66\\uDC67])|(?:\\uD83D\\uDC41\\uFE0F\\u200D\\uD83D\\uDDE8|\\uD83D\\uDC69(?:\\uD83C\\uDFFF\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFE\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFD\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFC\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFB\\u200D[\\u2695\\u2696\\u2708]|\\u200D[\\u2695\\u2696\\u2708])|\\uD83C\\uDFF3\\uFE0F\\u200D\\u26A7|\\uD83E\\uDDD1(?:(?:\\uD83C[\\uDFFB-\\uDFFF])\\u200D[\\u2695\\u2696\\u2708]|\\u200D[\\u2695\\u2696\\u2708])|\\uD83D\\uDC3B\\u200D\\u2744|(?:(?:\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD])(?:\\uD83C[\\uDFFB-\\uDFFF])|\\uD83D\\uDC6F|\\uD83E[\\uDD3C\\uDDDE\\uDDDF])\\u200D[\\u2640\\u2642]|(?:\\u26F9|\\uD83C[\\uDFCB\\uDFCC]|\\uD83D\\uDD75)(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])\\u200D[\\u2640\\u2642]|\\uD83C\\uDFF4\\u200D\\u2620|(?:\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD])\\u200D[\\u2640\\u2642]|[\\xA9\\xAE\\u203C\\u2049\\u2122\\u2139\\u2194-\\u2199\\u21A9\\u21AA\\u2328\\u23CF\\u23ED-\\u23EF\\u23F1\\u23F2\\u23F8-\\u23FA\\u24C2\\u25AA\\u25AB\\u25B6\\u25C0\\u25FB\\u25FC\\u2600-\\u2604\\u260E\\u2611\\u2618\\u2620\\u2622\\u2623\\u2626\\u262A\\u262E\\u262F\\u2638-\\u263A\\u2640\\u2642\\u265F\\u2660\\u2663\\u2665\\u2666\\u2668\\u267B\\u267E\\u2692\\u2694-\\u2697\\u2699\\u269B\\u269C\\u26A0\\u26A7\\u26B0\\u26B1\\u26C8\\u26CF\\u26D1\\u26D3\\u26E9\\u26F0\\u26F1\\u26F4\\u26F7\\u26F8\\u2702\\u2708\\u2709\\u270F\\u2712\\u2714\\u2716\\u271D\\u2721\\u2733\\u2734\\u2744\\u2747\\u2763\\u2764\\u27A1\\u2934\\u2935\\u2B05-\\u2B07\\u3030\\u303D\\u3297\\u3299]|\\uD83C[\\uDD70\\uDD71\\uDD7E\\uDD7F\\uDE02\\uDE37\\uDF21\\uDF24-\\uDF2C\\uDF36\\uDF7D\\uDF96\\uDF97\\uDF99-\\uDF9B\\uDF9E\\uDF9F\\uDFCD\\uDFCE\\uDFD4-\\uDFDF\\uDFF5\\uDFF7]|\\uD83D[\\uDC3F\\uDCFD\\uDD49\\uDD4A\\uDD6F\\uDD70\\uDD73\\uDD76-\\uDD79\\uDD87\\uDD8A-\\uDD8D\\uDDA5\\uDDA8\\uDDB1\\uDDB2\\uDDBC\\uDDC2-\\uDDC4\\uDDD1-\\uDDD3\\uDDDC-\\uDDDE\\uDDE1\\uDDE3\\uDDE8\\uDDEF\\uDDF3\\uDDFA\\uDECB\\uDECD-\\uDECF\\uDEE0-\\uDEE5\\uDEE9\\uDEF0\\uDEF3])\\uFE0F|\\uD83D\\uDC69\\u200D\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67])|\\uD83C\\uDFF3\\uFE0F\\u200D\\uD83C\\uDF08|\\uD83D\\uDC69\\u200D\\uD83D\\uDC67|\\uD83D\\uDC69\\u200D\\uD83D\\uDC66|\\uD83D\\uDC15\\u200D\\uD83E\\uDDBA|\\uD83D\\uDC69(?:\\uD83C\\uDFFF|\\uD83C\\uDFFE|\\uD83C\\uDFFD|\\uD83C\\uDFFC|\\uD83C\\uDFFB)?|\\uD83C\\uDDFD\\uD83C\\uDDF0|\\uD83C\\uDDF6\\uD83C\\uDDE6|\\uD83C\\uDDF4\\uD83C\\uDDF2|\\uD83D\\uDC08\\u200D\\u2B1B|\\uD83D\\uDC41\\uFE0F|\\uD83C\\uDFF3\\uFE0F|\\uD83E\\uDDD1(?:\\uD83C[\\uDFFB-\\uDFFF])?|\\uD83C\\uDDFF(?:\\uD83C[\\uDDE6\\uDDF2\\uDDFC])|\\uD83C\\uDDFE(?:\\uD83C[\\uDDEA\\uDDF9])|\\uD83C\\uDDFC(?:\\uD83C[\\uDDEB\\uDDF8])|\\uD83C\\uDDFB(?:\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDEE\\uDDF3\\uDDFA])|\\uD83C\\uDDFA(?:\\uD83C[\\uDDE6\\uDDEC\\uDDF2\\uDDF3\\uDDF8\\uDDFE\\uDDFF])|\\uD83C\\uDDF9(?:\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDED\\uDDEF-\\uDDF4\\uDDF7\\uDDF9\\uDDFB\\uDDFC\\uDDFF])|\\uD83C\\uDDF8(?:\\uD83C[\\uDDE6-\\uDDEA\\uDDEC-\\uDDF4\\uDDF7-\\uDDF9\\uDDFB\\uDDFD-\\uDDFF])|\\uD83C\\uDDF7(?:\\uD83C[\\uDDEA\\uDDF4\\uDDF8\\uDDFA\\uDDFC])|\\uD83C\\uDDF5(?:\\uD83C[\\uDDE6\\uDDEA-\\uDDED\\uDDF0-\\uDDF3\\uDDF7-\\uDDF9\\uDDFC\\uDDFE])|\\uD83C\\uDDF3(?:\\uD83C[\\uDDE6\\uDDE8\\uDDEA-\\uDDEC\\uDDEE\\uDDF1\\uDDF4\\uDDF5\\uDDF7\\uDDFA\\uDDFF])|\\uD83C\\uDDF2(?:\\uD83C[\\uDDE6\\uDDE8-\\uDDED\\uDDF0-\\uDDFF])|\\uD83C\\uDDF1(?:\\uD83C[\\uDDE6-\\uDDE8\\uDDEE\\uDDF0\\uDDF7-\\uDDFB\\uDDFE])|\\uD83C\\uDDF0(?:\\uD83C[\\uDDEA\\uDDEC-\\uDDEE\\uDDF2\\uDDF3\\uDDF5\\uDDF7\\uDDFC\\uDDFE\\uDDFF])|\\uD83C\\uDDEF(?:\\uD83C[\\uDDEA\\uDDF2\\uDDF4\\uDDF5])|\\uD83C\\uDDEE(?:\\uD83C[\\uDDE8-\\uDDEA\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9])|\\uD83C\\uDDED(?:\\uD83C[\\uDDF0\\uDDF2\\uDDF3\\uDDF7\\uDDF9\\uDDFA])|\\uD83C\\uDDEC(?:\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEE\\uDDF1-\\uDDF3\\uDDF5-\\uDDFA\\uDDFC\\uDDFE])|\\uD83C\\uDDEB(?:\\uD83C[\\uDDEE-\\uDDF0\\uDDF2\\uDDF4\\uDDF7])|\\uD83C\\uDDEA(?:\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDED\\uDDF7-\\uDDFA])|\\uD83C\\uDDE9(?:\\uD83C[\\uDDEA\\uDDEC\\uDDEF\\uDDF0\\uDDF2\\uDDF4\\uDDFF])|\\uD83C\\uDDE8(?:\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDEE\\uDDF0-\\uDDF5\\uDDF7\\uDDFA-\\uDDFF])|\\uD83C\\uDDE7(?:\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEF\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9\\uDDFB\\uDDFC\\uDDFE\\uDDFF])|\\uD83C\\uDDE6(?:\\uD83C[\\uDDE8-\\uDDEC\\uDDEE\\uDDF1\\uDDF2\\uDDF4\\uDDF6-\\uDDFA\\uDDFC\\uDDFD\\uDDFF])|[#*0-9]\\uFE0F\\u20E3|(?:\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD])(?:\\uD83C[\\uDFFB-\\uDFFF])|(?:\\u26F9|\\uD83C[\\uDFCB\\uDFCC]|\\uD83D\\uDD75)(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])|\\uD83C\\uDFF4|(?:[\\u270A\\u270B]|\\uD83C[\\uDF85\\uDFC2\\uDFC7]|\\uD83D[\\uDC42\\uDC43\\uDC46-\\uDC50\\uDC66\\uDC67\\uDC6B-\\uDC6D\\uDC72\\uDC74-\\uDC76\\uDC78\\uDC7C\\uDC83\\uDC85\\uDCAA\\uDD7A\\uDD95\\uDD96\\uDE4C\\uDE4F\\uDEC0\\uDECC]|\\uD83E[\\uDD0C\\uDD0F\\uDD18-\\uDD1C\\uDD1E\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2-\\uDDD5])(?:\\uD83C[\\uDFFB-\\uDFFF])|(?:[\\u261D\\u270C\\u270D]|\\uD83D[\\uDD74\\uDD90])(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])|[\\u270A\\u270B]|\\uD83C[\\uDF85\\uDFC2\\uDFC7]|\\uD83D[\\uDC08\\uDC15\\uDC3B\\uDC42\\uDC43\\uDC46-\\uDC50\\uDC66\\uDC67\\uDC6B-\\uDC6D\\uDC72\\uDC74-\\uDC76\\uDC78\\uDC7C\\uDC83\\uDC85\\uDCAA\\uDD7A\\uDD95\\uDD96\\uDE4C\\uDE4F\\uDEC0\\uDECC]|\\uD83E[\\uDD0C\\uDD0F\\uDD18-\\uDD1C\\uDD1E\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2-\\uDDD5]|\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD]|\\uD83D\\uDC6F|\\uD83E[\\uDD3C\\uDDDE\\uDDDF]|[\\u231A\\u231B\\u23E9-\\u23EC\\u23F0\\u23F3\\u25FD\\u25FE\\u2614\\u2615\\u2648-\\u2653\\u267F\\u2693\\u26A1\\u26AA\\u26AB\\u26BD\\u26BE\\u26C4\\u26C5\\u26CE\\u26D4\\u26EA\\u26F2\\u26F3\\u26F5\\u26FA\\u26FD\\u2705\\u2728\\u274C\\u274E\\u2753-\\u2755\\u2757\\u2795-\\u2797\\u27B0\\u27BF\\u2B1B\\u2B1C\\u2B50\\u2B55]|\\uD83C[\\uDC04\\uDCCF\\uDD8E\\uDD91-\\uDD9A\\uDE01\\uDE1A\\uDE2F\\uDE32-\\uDE36\\uDE38-\\uDE3A\\uDE50\\uDE51\\uDF00-\\uDF20\\uDF2D-\\uDF35\\uDF37-\\uDF7C\\uDF7E-\\uDF84\\uDF86-\\uDF93\\uDFA0-\\uDFC1\\uDFC5\\uDFC6\\uDFC8\\uDFC9\\uDFCF-\\uDFD3\\uDFE0-\\uDFF0\\uDFF8-\\uDFFF]|\\uD83D[\\uDC00-\\uDC07\\uDC09-\\uDC14\\uDC16-\\uDC3A\\uDC3C-\\uDC3E\\uDC40\\uDC44\\uDC45\\uDC51-\\uDC65\\uDC6A\\uDC79-\\uDC7B\\uDC7D-\\uDC80\\uDC84\\uDC88-\\uDCA9\\uDCAB-\\uDCFC\\uDCFF-\\uDD3D\\uDD4B-\\uDD4E\\uDD50-\\uDD67\\uDDA4\\uDDFB-\\uDE44\\uDE48-\\uDE4A\\uDE80-\\uDEA2\\uDEA4-\\uDEB3\\uDEB7-\\uDEBF\\uDEC1-\\uDEC5\\uDED0-\\uDED2\\uDED5-\\uDED7\\uDEEB\\uDEEC\\uDEF4-\\uDEFC\\uDFE0-\\uDFEB]|\\uD83E[\\uDD0D\\uDD0E\\uDD10-\\uDD17\\uDD1D\\uDD20-\\uDD25\\uDD27-\\uDD2F\\uDD3A\\uDD3F-\\uDD45\\uDD47-\\uDD76\\uDD78\\uDD7A-\\uDDB4\\uDDB7\\uDDBA\\uDDBC-\\uDDCB\\uDDD0\\uDDE0-\\uDDFF\\uDE70-\\uDE74\\uDE78-\\uDE7A\\uDE80-\\uDE86\\uDE90-\\uDEA8\\uDEB0-\\uDEB6\\uDEC0-\\uDEC2\\uDED0-\\uDED6])+$/;\n"]}
1
+ {"version":3,"sources":["utils.ts"],"names":["FileState","Object","freeze","FINISHED","NO_FILE","UPLOAD_FAILED","UPLOADED","UPLOADING","ProgressIndicatorTypes","IN_PROGRESS","RETRY","MessageStatusTypes","FAILED","RECEIVED","SENDING","defaultAutoCompleteSuggestionsLimit","defaultMentionAllAppUsersQuery","filters","options","sort","isUserResponse","user","undefined","getCommands","channel","getConfig","commands","getMembers","members","state","values","length","filter","member","map","getWatchers","watchers","getMembersAndWatchers","users","reduce","acc","cur","id","queryMembers","query","onReady","limit","name","$autocomplete","response","forEach","push","queryMembersDebounced","leading","trailing","queryUsers","client","mentionAllAppUsersQuery","$ne","userID","$or","queryUsersDebounced","isCommandTrigger","trigger","isEmojiTrigger","isMentionTrigger","ACITriggerSettings","onMentionSelectItem","dataProvider","text","indexOf","selectedCommands","command","a","b","nameA","toLowerCase","nameB","result","slice","output","entity","caretPosition","key","type","_","compiledEmojis","emojiArray","names","some","includes","emoji","emojiLib","skin_variations","tone","index","unicode","callback","item","mentionAllAppUsersEnabled","data","matchingUsers","makeImageCompatibleUrl","url","trim","getUrlWithoutParams","indexOfQuestion","substring","vw","percentageWidth","rounded","value","Dimensions","get","width","Math","round","vh","percentageHeight","height","generateRandomId","Number","random","toString","replace","emojiRegex","urlRegex"],"mappings":"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","sourcesContent":["import type React from 'react';\nimport { Dimensions } from 'react-native';\n\nimport type { DebouncedFunc } from 'lodash';\nimport debounce from 'lodash/debounce';\nimport type {\n Channel,\n ChannelMemberAPIResponse,\n ChannelMemberResponse,\n CommandResponse,\n StreamChat,\n UserResponse,\n} from 'stream-chat';\n\nimport type { MentionAllAppUsersQuery } from '../contexts/messageInputContext/MessageInputContext';\nimport type {\n SuggestionCommand,\n SuggestionComponentType,\n SuggestionUser,\n} from '../contexts/suggestionsContext/SuggestionsContext';\nimport { compiledEmojis, Emoji } from '../emoji-data/compiled';\nimport type { IconProps } from '../icons/utils/base';\nimport type { DefaultStreamChatGenerics } from '../types/types';\n\nexport type ReactionData = {\n Icon: React.FC<IconProps>;\n type: string;\n};\n\nexport const FileState = Object.freeze({\n // finished and uploaded state are the same thing. First is set on frontend,\n // while later is set on backend side\n // TODO: Unify both of them\n FINISHED: 'finished',\n NO_FILE: 'no_file',\n UPLOAD_FAILED: 'upload_failed',\n UPLOADED: 'uploaded',\n UPLOADING: 'uploading',\n});\n\nexport const ProgressIndicatorTypes: {\n IN_PROGRESS: 'in_progress';\n RETRY: 'retry';\n} = Object.freeze({\n IN_PROGRESS: 'in_progress',\n RETRY: 'retry',\n});\n\nexport const MessageStatusTypes = {\n FAILED: 'failed',\n RECEIVED: 'received',\n SENDING: 'sending',\n};\n\nconst defaultAutoCompleteSuggestionsLimit = 10;\nconst defaultMentionAllAppUsersQuery = {\n filters: {},\n options: {},\n sort: {},\n};\n\nconst isUserResponse = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n user: SuggestionUser<StreamChatGenerics> | undefined,\n): user is SuggestionUser<StreamChatGenerics> =>\n (user as SuggestionUser<StreamChatGenerics>) !== undefined;\n\nconst getCommands = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n channel: Channel<StreamChatGenerics>,\n) => channel.getConfig()?.commands || [];\n\nconst getMembers = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n channel: Channel<StreamChatGenerics>,\n) => {\n const members = channel.state.members;\n\n return Object.values(members).length\n ? (\n Object.values(members).filter((member) => member.user) as Array<\n ChannelMemberResponse<StreamChatGenerics> & { user: UserResponse<StreamChatGenerics> }\n >\n ).map((member) => member.user)\n : [];\n};\n\nconst getWatchers = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n channel: Channel<StreamChatGenerics>,\n) => {\n const watchers = channel.state.watchers;\n return Object.values(watchers).length ? [...Object.values(watchers)] : [];\n};\n\nconst getMembersAndWatchers = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n channel: Channel<StreamChatGenerics>,\n) => {\n const users = [...getMembers(channel), ...getWatchers(channel)];\n\n return Object.values(\n users.reduce((acc, cur) => {\n if (!acc[cur.id]) {\n acc[cur.id] = cur;\n }\n\n return acc;\n }, {} as { [key: string]: SuggestionUser<StreamChatGenerics> }),\n );\n};\n\nconst queryMembers = async <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n channel: Channel<StreamChatGenerics>,\n query: SuggestionUser<StreamChatGenerics>['name'],\n onReady?: (users: SuggestionUser<StreamChatGenerics>[]) => void,\n options: {\n limit?: number;\n } = {},\n): Promise<void> => {\n const { limit = defaultAutoCompleteSuggestionsLimit } = options;\n\n if (typeof query === 'string') {\n const response = (await (channel as unknown as Channel).queryMembers(\n {\n name: { $autocomplete: query },\n },\n {},\n { limit },\n )) as ChannelMemberAPIResponse<StreamChatGenerics>;\n\n const users: SuggestionUser<StreamChatGenerics>[] = [];\n response.members.forEach((member) => isUserResponse(member.user) && users.push(member.user));\n if (onReady && users) {\n onReady(users);\n }\n }\n};\n\nexport const queryMembersDebounced = debounce(queryMembers, 200, {\n leading: false,\n trailing: true,\n});\n\nconst queryUsers = async <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n client: StreamChat<StreamChatGenerics>,\n query: SuggestionUser<StreamChatGenerics>['name'],\n onReady?: (users: SuggestionUser<StreamChatGenerics>[]) => void,\n options: {\n limit?: number;\n mentionAllAppUsersQuery?: MentionAllAppUsersQuery<StreamChatGenerics>;\n } = {},\n): Promise<void> => {\n if (typeof query === 'string') {\n const {\n limit = defaultAutoCompleteSuggestionsLimit,\n mentionAllAppUsersQuery = defaultMentionAllAppUsersQuery,\n } = options;\n const filters = {\n id: { $ne: client.userID },\n ...mentionAllAppUsersQuery?.filters,\n };\n\n if (query) {\n // @ts-ignore\n filters.$or = [{ id: { $autocomplete: query } }, { name: { $autocomplete: query } }];\n }\n\n const response = await client.queryUsers(\n // @ts-ignore\n filters,\n { id: 1, ...mentionAllAppUsersQuery?.sort },\n { limit, ...mentionAllAppUsersQuery?.options },\n );\n const users: SuggestionUser<StreamChatGenerics>[] = [];\n response.users.forEach((user) => isUserResponse(user) && users.push(user));\n if (onReady && users) {\n onReady(users);\n }\n }\n};\n\nexport const queryUsersDebounced = debounce(queryUsers, 200, {\n leading: false,\n trailing: true,\n});\n\nexport const isCommandTrigger = (trigger: Trigger): trigger is '/' => trigger === '/';\n\nexport const isEmojiTrigger = (trigger: Trigger): trigger is ':' => trigger === ':';\n\nexport const isMentionTrigger = (trigger: Trigger): trigger is '@' => trigger === '@';\n\nexport type Trigger = '/' | '@' | ':';\n\nexport type TriggerSettings<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n '/'?: {\n dataProvider: (\n query: CommandResponse<StreamChatGenerics>['name'],\n text: string,\n onReady?: (\n data: CommandResponse<StreamChatGenerics>[],\n q: CommandResponse<StreamChatGenerics>['name'],\n ) => void,\n options?: {\n limit?: number;\n },\n ) => SuggestionCommand<StreamChatGenerics>[];\n output: (entity: CommandResponse<StreamChatGenerics>) => {\n caretPosition: string;\n key: string;\n text: string;\n };\n type: SuggestionComponentType;\n };\n ':'?: {\n dataProvider: (\n query: Emoji['name'],\n _: string,\n onReady?: (data: Emoji[], q: Emoji['name']) => void,\n ) => Emoji[];\n output: (entity: Emoji) => {\n caretPosition: string;\n key: string;\n text: string;\n };\n type: SuggestionComponentType;\n };\n '@'?: {\n callback: (item: SuggestionUser<StreamChatGenerics>) => void;\n dataProvider: (\n query: SuggestionUser<StreamChatGenerics>['name'],\n _: string,\n onReady?: (\n data: SuggestionUser<StreamChatGenerics>[],\n q: SuggestionUser<StreamChatGenerics>['name'],\n ) => void,\n options?: {\n limit?: number;\n mentionAllAppUsersEnabled?: boolean;\n mentionAllAppUsersQuery?: MentionAllAppUsersQuery<StreamChatGenerics>;\n },\n ) => SuggestionUser<StreamChatGenerics>[] | Promise<void> | void;\n output: (entity: SuggestionUser<StreamChatGenerics>) => {\n caretPosition: string;\n key: string;\n text: string;\n };\n type: SuggestionComponentType;\n };\n};\n\nexport type ACITriggerSettingsParams<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n channel: Channel<StreamChatGenerics>;\n client: StreamChat<StreamChatGenerics>;\n onMentionSelectItem: (item: SuggestionUser<StreamChatGenerics>) => void;\n};\n\nexport type QueryUsersFunction<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = (\n client: StreamChat<StreamChatGenerics>,\n query: SuggestionUser<StreamChatGenerics>['name'],\n onReady?: (users: SuggestionUser<StreamChatGenerics>[]) => void,\n options?: {\n limit?: number;\n mentionAllAppUsersQuery?: MentionAllAppUsersQuery<StreamChatGenerics>;\n },\n) => Promise<void>;\n\nexport type QueryMembersFunction<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = (\n channel: Channel<StreamChatGenerics>,\n query: SuggestionUser<StreamChatGenerics>['name'],\n onReady?: (users: SuggestionUser<StreamChatGenerics>[]) => void,\n options?: {\n limit?: number;\n },\n) => Promise<void>;\n\n/**\n * ACI = AutoCompleteInput\n *\n * DataProvider accepts `onReady` function, which will execute once the data is ready.\n * Another approach would have been to simply return the data from dataProvider and let the\n * component await for it and then execute the required logic. We are going for callback instead\n * of async-await since we have debounce function in dataProvider. Which will delay the execution\n * of api call on trailing end of debounce (lets call it a1) but will return with result of\n * previous call without waiting for a1. So in this case, we want to execute onReady, when trailing\n * end of debounce executes.\n */\nexport const ACITriggerSettings = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n channel,\n client,\n onMentionSelectItem,\n}: ACITriggerSettingsParams<StreamChatGenerics>): TriggerSettings<StreamChatGenerics> => ({\n '/': {\n dataProvider: (query, text, onReady, options = {}) => {\n if (text.indexOf('/') !== 0) return [];\n\n const { limit = defaultAutoCompleteSuggestionsLimit } = options;\n const selectedCommands = !query\n ? getCommands(channel)\n : getCommands(channel).filter((command) => query && command.name?.indexOf(query) !== -1);\n\n // sort alphabetically unless the you're matching the first char\n selectedCommands.sort((a, b) => {\n let nameA = a.name?.toLowerCase() || '';\n let nameB = b.name?.toLowerCase() || '';\n if (query && nameA.indexOf(query) === 0) {\n nameA = `0${nameA}`;\n }\n if (query && nameB.indexOf(query) === 0) {\n nameB = `0${nameB}`;\n }\n if (nameA < nameB) return -1;\n if (nameA > nameB) return 1;\n\n return 0;\n });\n\n const result = selectedCommands.slice(0, limit);\n\n if (onReady) {\n onReady(result, query);\n }\n\n return result;\n },\n output: (entity) => ({\n caretPosition: 'next',\n key: `${entity.name}`,\n text: `/${entity.name}`,\n }),\n type: 'command',\n },\n ':': {\n dataProvider: (query, _, onReady) => {\n if (!query) return [];\n\n const result = compiledEmojis.emojiArray.reduce((acc, cur) => {\n if (acc.length >= 10) return acc;\n\n if (cur.names.some((name) => name.includes(query))) {\n const emoji = compiledEmojis.emojiLib[cur.name];\n if (emoji.skin_variations) {\n acc.push({\n ...emoji,\n name: `${emoji.name}-tone-1`,\n skin_variations: undefined,\n });\n emoji.skin_variations.forEach((tone, index) =>\n acc.push({\n ...emoji,\n name: `${emoji.name}-tone-${index + 2}`,\n skin_variations: undefined,\n unicode: tone,\n }),\n );\n } else {\n acc.push(emoji);\n }\n }\n\n return acc;\n }, [] as Emoji[]);\n\n if (onReady) {\n onReady(result, query);\n }\n\n return result;\n },\n output: (entity) => ({\n caretPosition: 'next',\n key: entity.name,\n text: entity.unicode,\n }),\n type: 'emoji',\n },\n '@': {\n callback: (item) => {\n onMentionSelectItem(item);\n },\n dataProvider: (\n query,\n _,\n onReady,\n options = {\n limit: defaultAutoCompleteSuggestionsLimit,\n mentionAllAppUsersEnabled: false,\n mentionAllAppUsersQuery: defaultMentionAllAppUsersQuery,\n },\n ) => {\n if (options?.mentionAllAppUsersEnabled) {\n return (queryUsersDebounced as DebouncedFunc<QueryUsersFunction<StreamChatGenerics>>)(\n client,\n query,\n (data) => {\n if (onReady) {\n onReady(data, query);\n }\n },\n {\n limit: options.limit,\n mentionAllAppUsersQuery: options.mentionAllAppUsersQuery,\n },\n );\n }\n\n /**\n * By default, we return maximum 100 members via queryChannels api call.\n * Thus it is safe to assume, that if number of members in channel.state is < 100,\n * then all the members are already available on client side and we don't need to\n * make any api call to queryMembers endpoint.\n */\n if (!query || Object.values(channel.state.members).length < 100) {\n const users = getMembersAndWatchers(channel);\n\n const matchingUsers = users.filter((user) => {\n if (!query) return true;\n if (user.name?.toLowerCase().indexOf(query.toLowerCase()) !== -1) {\n return true;\n }\n if (user.id.toLowerCase().indexOf(query.toLowerCase()) !== -1) {\n return true;\n }\n return false;\n });\n\n const data = matchingUsers.slice(0, options?.limit);\n\n if (onReady) {\n onReady(data, query);\n }\n\n return data;\n }\n\n return (queryMembersDebounced as DebouncedFunc<QueryMembersFunction<StreamChatGenerics>>)(\n channel,\n query,\n (data) => {\n if (onReady) {\n onReady(data, query);\n }\n },\n {\n limit: options.limit,\n },\n );\n },\n output: (entity) => ({\n caretPosition: 'next',\n key: entity.id,\n text: `@${entity.name || entity.id}`,\n }),\n type: 'mention',\n },\n});\n\nexport const makeImageCompatibleUrl = (url: string) =>\n (url.indexOf('//') === 0 ? `https:${url}` : url).trim();\n\nexport const getUrlWithoutParams = (url?: string) => {\n if (!url) return url;\n\n const indexOfQuestion = url.indexOf('?');\n if (indexOfQuestion === -1) return url;\n\n return url.substring(0, url.indexOf('?'));\n};\n\nexport const vw = (percentageWidth: number, rounded = false) => {\n const value = Dimensions.get('window').width * (percentageWidth / 100);\n return rounded ? Math.round(value) : value;\n};\n\nexport const vh = (percentageHeight: number, rounded = false) => {\n const height = Dimensions.get('window').height;\n\n const value = height * (percentageHeight / 100);\n return rounded ? Math.round(value) : value;\n};\n\nexport const generateRandomId = (a = ''): string =>\n a\n ? /* eslint-disable no-bitwise */\n ((Number(a) ^ (Math.random() * 16)) >> (Number(a) / 4)).toString(16)\n : `${1e7}-${1e3}-${4e3}-${8e3}-${1e11}`.replace(/[018]/g, generateRandomId);\n\n// source: https://raw.githubusercontent.com/mathiasbynens/emoji-regex/master/RGI_Emoji.js\n// [#\\*0-9]\\uFE0F\\u20E3 was replaced with [#*0-9]\\uFE0F\\u20E3 due to a lint warning\nexport const emojiRegex =\n /^(\\uD83C\\uDFF4\\uDB40\\uDC67\\uDB40\\uDC62(?:\\uDB40\\uDC77\\uDB40\\uDC6C\\uDB40\\uDC73|\\uDB40\\uDC73\\uDB40\\uDC63\\uDB40\\uDC74|\\uDB40\\uDC65\\uDB40\\uDC6E\\uDB40\\uDC67)\\uDB40\\uDC7F|\\uD83D\\uDC69\\u200D\\uD83D\\uDC69\\u200D(?:\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67]))|\\uD83D\\uDC68(?:\\uD83C\\uDFFF\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB-\\uDFFE])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFE\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFD\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFC\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFB\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83D\\uDC68(?:\\uD83C[\\uDFFC-\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\u200D(?:\\u2764\\uFE0F\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83D\\uDC68|(?:\\uD83D[\\uDC68\\uDC69])\\u200D(?:\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67]))|\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67])|(?:\\uD83D[\\uDC68\\uDC69])\\u200D(?:\\uD83D[\\uDC66\\uDC67])|[\\u2695\\u2696\\u2708]\\uFE0F|\\uD83D[\\uDC66\\uDC67]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|(?:\\uD83C\\uDFFF\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFE\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFD\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFC\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFB\\u200D[\\u2695\\u2696\\u2708])\\uFE0F|\\uD83C\\uDFFF|\\uD83C\\uDFFE|\\uD83C\\uDFFD|\\uD83C\\uDFFC|\\uD83C\\uDFFB)?|\\uD83E\\uDDD1(?:(?:\\uD83C[\\uDFFB-\\uDFFF])\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83E\\uDDD1(?:\\uD83C[\\uDFFB-\\uDFFF])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\u200D(?:\\uD83E\\uDD1D\\u200D\\uD83E\\uDDD1|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]))|\\uD83D\\uDC69(?:\\u200D(?:\\u2764\\uFE0F\\u200D(?:\\uD83D\\uDC8B\\u200D(?:\\uD83D[\\uDC68\\uDC69])|\\uD83D[\\uDC68\\uDC69])|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFF\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFE\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFD\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFC\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C\\uDFFB\\u200D(?:\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]))|\\uD83D\\uDC69\\uD83C\\uDFFF\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB-\\uDFFE])|\\uD83D\\uDC69\\uD83C\\uDFFE\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])|\\uD83D\\uDC69\\uD83C\\uDFFD\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])|\\uD83D\\uDC69\\uD83C\\uDFFC\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])|\\uD83D\\uDC69\\uD83C\\uDFFB\\u200D\\uD83E\\uDD1D\\u200D(?:\\uD83D[\\uDC68\\uDC69])(?:\\uD83C[\\uDFFC-\\uDFFF])|\\uD83D\\uDC69\\u200D\\uD83D\\uDC66\\u200D\\uD83D\\uDC66|\\uD83D\\uDC69\\u200D\\uD83D\\uDC69\\u200D(?:\\uD83D[\\uDC66\\uDC67])|(?:\\uD83D\\uDC41\\uFE0F\\u200D\\uD83D\\uDDE8|\\uD83D\\uDC69(?:\\uD83C\\uDFFF\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFE\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFD\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFC\\u200D[\\u2695\\u2696\\u2708]|\\uD83C\\uDFFB\\u200D[\\u2695\\u2696\\u2708]|\\u200D[\\u2695\\u2696\\u2708])|\\uD83C\\uDFF3\\uFE0F\\u200D\\u26A7|\\uD83E\\uDDD1(?:(?:\\uD83C[\\uDFFB-\\uDFFF])\\u200D[\\u2695\\u2696\\u2708]|\\u200D[\\u2695\\u2696\\u2708])|\\uD83D\\uDC3B\\u200D\\u2744|(?:(?:\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD])(?:\\uD83C[\\uDFFB-\\uDFFF])|\\uD83D\\uDC6F|\\uD83E[\\uDD3C\\uDDDE\\uDDDF])\\u200D[\\u2640\\u2642]|(?:\\u26F9|\\uD83C[\\uDFCB\\uDFCC]|\\uD83D\\uDD75)(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])\\u200D[\\u2640\\u2642]|\\uD83C\\uDFF4\\u200D\\u2620|(?:\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD])\\u200D[\\u2640\\u2642]|[\\xA9\\xAE\\u203C\\u2049\\u2122\\u2139\\u2194-\\u2199\\u21A9\\u21AA\\u2328\\u23CF\\u23ED-\\u23EF\\u23F1\\u23F2\\u23F8-\\u23FA\\u24C2\\u25AA\\u25AB\\u25B6\\u25C0\\u25FB\\u25FC\\u2600-\\u2604\\u260E\\u2611\\u2618\\u2620\\u2622\\u2623\\u2626\\u262A\\u262E\\u262F\\u2638-\\u263A\\u2640\\u2642\\u265F\\u2660\\u2663\\u2665\\u2666\\u2668\\u267B\\u267E\\u2692\\u2694-\\u2697\\u2699\\u269B\\u269C\\u26A0\\u26A7\\u26B0\\u26B1\\u26C8\\u26CF\\u26D1\\u26D3\\u26E9\\u26F0\\u26F1\\u26F4\\u26F7\\u26F8\\u2702\\u2708\\u2709\\u270F\\u2712\\u2714\\u2716\\u271D\\u2721\\u2733\\u2734\\u2744\\u2747\\u2763\\u2764\\u27A1\\u2934\\u2935\\u2B05-\\u2B07\\u3030\\u303D\\u3297\\u3299]|\\uD83C[\\uDD70\\uDD71\\uDD7E\\uDD7F\\uDE02\\uDE37\\uDF21\\uDF24-\\uDF2C\\uDF36\\uDF7D\\uDF96\\uDF97\\uDF99-\\uDF9B\\uDF9E\\uDF9F\\uDFCD\\uDFCE\\uDFD4-\\uDFDF\\uDFF5\\uDFF7]|\\uD83D[\\uDC3F\\uDCFD\\uDD49\\uDD4A\\uDD6F\\uDD70\\uDD73\\uDD76-\\uDD79\\uDD87\\uDD8A-\\uDD8D\\uDDA5\\uDDA8\\uDDB1\\uDDB2\\uDDBC\\uDDC2-\\uDDC4\\uDDD1-\\uDDD3\\uDDDC-\\uDDDE\\uDDE1\\uDDE3\\uDDE8\\uDDEF\\uDDF3\\uDDFA\\uDECB\\uDECD-\\uDECF\\uDEE0-\\uDEE5\\uDEE9\\uDEF0\\uDEF3])\\uFE0F|\\uD83D\\uDC69\\u200D\\uD83D\\uDC67\\u200D(?:\\uD83D[\\uDC66\\uDC67])|\\uD83C\\uDFF3\\uFE0F\\u200D\\uD83C\\uDF08|\\uD83D\\uDC69\\u200D\\uD83D\\uDC67|\\uD83D\\uDC69\\u200D\\uD83D\\uDC66|\\uD83D\\uDC15\\u200D\\uD83E\\uDDBA|\\uD83D\\uDC69(?:\\uD83C\\uDFFF|\\uD83C\\uDFFE|\\uD83C\\uDFFD|\\uD83C\\uDFFC|\\uD83C\\uDFFB)?|\\uD83C\\uDDFD\\uD83C\\uDDF0|\\uD83C\\uDDF6\\uD83C\\uDDE6|\\uD83C\\uDDF4\\uD83C\\uDDF2|\\uD83D\\uDC08\\u200D\\u2B1B|\\uD83D\\uDC41\\uFE0F|\\uD83C\\uDFF3\\uFE0F|\\uD83E\\uDDD1(?:\\uD83C[\\uDFFB-\\uDFFF])?|\\uD83C\\uDDFF(?:\\uD83C[\\uDDE6\\uDDF2\\uDDFC])|\\uD83C\\uDDFE(?:\\uD83C[\\uDDEA\\uDDF9])|\\uD83C\\uDDFC(?:\\uD83C[\\uDDEB\\uDDF8])|\\uD83C\\uDDFB(?:\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDEE\\uDDF3\\uDDFA])|\\uD83C\\uDDFA(?:\\uD83C[\\uDDE6\\uDDEC\\uDDF2\\uDDF3\\uDDF8\\uDDFE\\uDDFF])|\\uD83C\\uDDF9(?:\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDED\\uDDEF-\\uDDF4\\uDDF7\\uDDF9\\uDDFB\\uDDFC\\uDDFF])|\\uD83C\\uDDF8(?:\\uD83C[\\uDDE6-\\uDDEA\\uDDEC-\\uDDF4\\uDDF7-\\uDDF9\\uDDFB\\uDDFD-\\uDDFF])|\\uD83C\\uDDF7(?:\\uD83C[\\uDDEA\\uDDF4\\uDDF8\\uDDFA\\uDDFC])|\\uD83C\\uDDF5(?:\\uD83C[\\uDDE6\\uDDEA-\\uDDED\\uDDF0-\\uDDF3\\uDDF7-\\uDDF9\\uDDFC\\uDDFE])|\\uD83C\\uDDF3(?:\\uD83C[\\uDDE6\\uDDE8\\uDDEA-\\uDDEC\\uDDEE\\uDDF1\\uDDF4\\uDDF5\\uDDF7\\uDDFA\\uDDFF])|\\uD83C\\uDDF2(?:\\uD83C[\\uDDE6\\uDDE8-\\uDDED\\uDDF0-\\uDDFF])|\\uD83C\\uDDF1(?:\\uD83C[\\uDDE6-\\uDDE8\\uDDEE\\uDDF0\\uDDF7-\\uDDFB\\uDDFE])|\\uD83C\\uDDF0(?:\\uD83C[\\uDDEA\\uDDEC-\\uDDEE\\uDDF2\\uDDF3\\uDDF5\\uDDF7\\uDDFC\\uDDFE\\uDDFF])|\\uD83C\\uDDEF(?:\\uD83C[\\uDDEA\\uDDF2\\uDDF4\\uDDF5])|\\uD83C\\uDDEE(?:\\uD83C[\\uDDE8-\\uDDEA\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9])|\\uD83C\\uDDED(?:\\uD83C[\\uDDF0\\uDDF2\\uDDF3\\uDDF7\\uDDF9\\uDDFA])|\\uD83C\\uDDEC(?:\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEE\\uDDF1-\\uDDF3\\uDDF5-\\uDDFA\\uDDFC\\uDDFE])|\\uD83C\\uDDEB(?:\\uD83C[\\uDDEE-\\uDDF0\\uDDF2\\uDDF4\\uDDF7])|\\uD83C\\uDDEA(?:\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDED\\uDDF7-\\uDDFA])|\\uD83C\\uDDE9(?:\\uD83C[\\uDDEA\\uDDEC\\uDDEF\\uDDF0\\uDDF2\\uDDF4\\uDDFF])|\\uD83C\\uDDE8(?:\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDEE\\uDDF0-\\uDDF5\\uDDF7\\uDDFA-\\uDDFF])|\\uD83C\\uDDE7(?:\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEF\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9\\uDDFB\\uDDFC\\uDDFE\\uDDFF])|\\uD83C\\uDDE6(?:\\uD83C[\\uDDE8-\\uDDEC\\uDDEE\\uDDF1\\uDDF2\\uDDF4\\uDDF6-\\uDDFA\\uDDFC\\uDDFD\\uDDFF])|[#*0-9]\\uFE0F\\u20E3|(?:\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD])(?:\\uD83C[\\uDFFB-\\uDFFF])|(?:\\u26F9|\\uD83C[\\uDFCB\\uDFCC]|\\uD83D\\uDD75)(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])|\\uD83C\\uDFF4|(?:[\\u270A\\u270B]|\\uD83C[\\uDF85\\uDFC2\\uDFC7]|\\uD83D[\\uDC42\\uDC43\\uDC46-\\uDC50\\uDC66\\uDC67\\uDC6B-\\uDC6D\\uDC72\\uDC74-\\uDC76\\uDC78\\uDC7C\\uDC83\\uDC85\\uDCAA\\uDD7A\\uDD95\\uDD96\\uDE4C\\uDE4F\\uDEC0\\uDECC]|\\uD83E[\\uDD0C\\uDD0F\\uDD18-\\uDD1C\\uDD1E\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2-\\uDDD5])(?:\\uD83C[\\uDFFB-\\uDFFF])|(?:[\\u261D\\u270C\\u270D]|\\uD83D[\\uDD74\\uDD90])(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])|[\\u270A\\u270B]|\\uD83C[\\uDF85\\uDFC2\\uDFC7]|\\uD83D[\\uDC08\\uDC15\\uDC3B\\uDC42\\uDC43\\uDC46-\\uDC50\\uDC66\\uDC67\\uDC6B-\\uDC6D\\uDC72\\uDC74-\\uDC76\\uDC78\\uDC7C\\uDC83\\uDC85\\uDCAA\\uDD7A\\uDD95\\uDD96\\uDE4C\\uDE4F\\uDEC0\\uDECC]|\\uD83E[\\uDD0C\\uDD0F\\uDD18-\\uDD1C\\uDD1E\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2-\\uDDD5]|\\uD83C[\\uDFC3\\uDFC4\\uDFCA]|\\uD83D[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6]|\\uD83E[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD6-\\uDDDD]|\\uD83D\\uDC6F|\\uD83E[\\uDD3C\\uDDDE\\uDDDF]|[\\u231A\\u231B\\u23E9-\\u23EC\\u23F0\\u23F3\\u25FD\\u25FE\\u2614\\u2615\\u2648-\\u2653\\u267F\\u2693\\u26A1\\u26AA\\u26AB\\u26BD\\u26BE\\u26C4\\u26C5\\u26CE\\u26D4\\u26EA\\u26F2\\u26F3\\u26F5\\u26FA\\u26FD\\u2705\\u2728\\u274C\\u274E\\u2753-\\u2755\\u2757\\u2795-\\u2797\\u27B0\\u27BF\\u2B1B\\u2B1C\\u2B50\\u2B55]|\\uD83C[\\uDC04\\uDCCF\\uDD8E\\uDD91-\\uDD9A\\uDE01\\uDE1A\\uDE2F\\uDE32-\\uDE36\\uDE38-\\uDE3A\\uDE50\\uDE51\\uDF00-\\uDF20\\uDF2D-\\uDF35\\uDF37-\\uDF7C\\uDF7E-\\uDF84\\uDF86-\\uDF93\\uDFA0-\\uDFC1\\uDFC5\\uDFC6\\uDFC8\\uDFC9\\uDFCF-\\uDFD3\\uDFE0-\\uDFF0\\uDFF8-\\uDFFF]|\\uD83D[\\uDC00-\\uDC07\\uDC09-\\uDC14\\uDC16-\\uDC3A\\uDC3C-\\uDC3E\\uDC40\\uDC44\\uDC45\\uDC51-\\uDC65\\uDC6A\\uDC79-\\uDC7B\\uDC7D-\\uDC80\\uDC84\\uDC88-\\uDCA9\\uDCAB-\\uDCFC\\uDCFF-\\uDD3D\\uDD4B-\\uDD4E\\uDD50-\\uDD67\\uDDA4\\uDDFB-\\uDE44\\uDE48-\\uDE4A\\uDE80-\\uDEA2\\uDEA4-\\uDEB3\\uDEB7-\\uDEBF\\uDEC1-\\uDEC5\\uDED0-\\uDED2\\uDED5-\\uDED7\\uDEEB\\uDEEC\\uDEF4-\\uDEFC\\uDFE0-\\uDFEB]|\\uD83E[\\uDD0D\\uDD0E\\uDD10-\\uDD17\\uDD1D\\uDD20-\\uDD25\\uDD27-\\uDD2F\\uDD3A\\uDD3F-\\uDD45\\uDD47-\\uDD76\\uDD78\\uDD7A-\\uDDB4\\uDDB7\\uDDBA\\uDDBC-\\uDDCB\\uDDD0\\uDDE0-\\uDDFF\\uDE70-\\uDE74\\uDE78-\\uDE7A\\uDE80-\\uDE86\\uDE90-\\uDEA8\\uDEB0-\\uDEB6\\uDEC0-\\uDEC2\\uDED0-\\uDED6])+$/;\n\nexport const urlRegex =\n /(?:\\s|^)((?:https?:\\/\\/)?(?:[a-z0-9-]+(?:\\.[a-z0-9-]+)+)(?::[0-9]+)?(?:\\/(?:[^\\s]+)?)?)/g;\n"]}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "4.0.0"
2
+ "version": "4.1.0"
3
3
  }
@@ -1,15 +1,15 @@
1
- import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
2
1
  import type { Attachment as AttachmentType } from 'stream-chat';
3
- import type { DefaultAttachmentType, DefaultChannelType, DefaultCommandType, DefaultEventType, DefaultMessageType, DefaultReactionType, DefaultUserType, UnknownType } from '../../types/types';
2
+ import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
3
+ import type { DefaultStreamChatGenerics } from '../../types/types';
4
4
  export declare type ActionHandler = (name: string, value: string) => void;
5
- export declare type AttachmentPropsWithContext<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'AttachmentActions' | 'Card' | 'FileAttachment' | 'Gallery' | 'Giphy' | 'UrlPreview'> & {
5
+ export declare type AttachmentPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<MessagesContextValue<StreamChatGenerics>, 'AttachmentActions' | 'Card' | 'FileAttachment' | 'Gallery' | 'Giphy' | 'UrlPreview'> & {
6
6
  /**
7
7
  * The attachment to render
8
8
  */
9
- attachment: AttachmentType<At>;
9
+ attachment: AttachmentType<StreamChatGenerics>;
10
10
  };
11
- export declare type AttachmentProps<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Partial<Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'AttachmentActions' | 'Card' | 'FileAttachment' | 'Gallery' | 'Giphy' | 'UrlPreview'>> & Pick<AttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'attachment'>;
11
+ export declare type AttachmentProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Partial<Pick<MessagesContextValue<StreamChatGenerics>, 'AttachmentActions' | 'Card' | 'FileAttachment' | 'Gallery' | 'Giphy' | 'UrlPreview'>> & Pick<AttachmentPropsWithContext<StreamChatGenerics>, 'attachment'>;
12
12
  /**
13
13
  * Attachment - The message attachment
14
14
  */
15
- export declare const Attachment: <At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = import("stream-chat").LiteralStringForUnion, Ev extends UnknownType = UnknownType, Me extends UnknownType = UnknownType, Re extends UnknownType = UnknownType, Us extends UnknownType = DefaultUserType>(props: AttachmentProps<At, Ch, Co, Ev, Me, Re, Us>) => JSX.Element | null;
15
+ export declare const Attachment: <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: AttachmentProps<StreamChatGenerics>) => JSX.Element | null;
@@ -1,20 +1,20 @@
1
1
  import { StyleProp, TextStyle, ViewStyle } from 'react-native';
2
- import { MessageContextValue } from '../../contexts/messageContext/MessageContext';
3
2
  import type { Attachment } from 'stream-chat';
4
- import type { DefaultAttachmentType, DefaultChannelType, DefaultCommandType, DefaultEventType, DefaultMessageType, DefaultReactionType, DefaultUserType, UnknownType } from '../../types/types';
5
- export declare type AttachmentActionsPropsWithContext<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Pick<Attachment<At>, 'actions'> & Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'handleAction'> & {
3
+ import { MessageContextValue } from '../../contexts/messageContext/MessageContext';
4
+ import type { DefaultStreamChatGenerics } from '../../types/types';
5
+ export declare type AttachmentActionsPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<Attachment<StreamChatGenerics>, 'actions'> & Pick<MessageContextValue<StreamChatGenerics>, 'handleAction'> & {
6
6
  styles?: Partial<{
7
7
  actionButton: StyleProp<ViewStyle>;
8
8
  buttonText: StyleProp<TextStyle>;
9
9
  container: StyleProp<ViewStyle>;
10
10
  }>;
11
11
  };
12
- export declare type AttachmentActionsProps<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Attachment<At> & Partial<Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'handleAction'>>;
12
+ export declare type AttachmentActionsProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Attachment<StreamChatGenerics> & Partial<Pick<MessageContextValue<StreamChatGenerics>, 'handleAction'>>;
13
13
  /**
14
14
  * AttachmentActions - The actions you can take on an attachment.
15
15
  * Actions in combination with attachments can be used to build [commands](https://getstream.io/chat/docs/#channel_commands).
16
16
  */
17
17
  export declare const AttachmentActions: {
18
- <At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = import("stream-chat").LiteralStringForUnion, Ev extends UnknownType = UnknownType, Me extends UnknownType = UnknownType, Re extends UnknownType = UnknownType, Us extends UnknownType = DefaultUserType>(props: AttachmentActionsProps<At, Ch, Co, Ev, Me, Re, Us>): JSX.Element;
18
+ <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: AttachmentActionsProps<StreamChatGenerics>): JSX.Element;
19
19
  displayName: string;
20
20
  };
@@ -1,9 +1,11 @@
1
1
  import { ImageStyle, StyleProp, TextStyle, ViewStyle } from 'react-native';
2
+ import type { Attachment } from 'stream-chat';
2
3
  import { MessageContextValue } from '../../contexts/messageContext/MessageContext';
3
4
  import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
4
- import type { Attachment } from 'stream-chat';
5
- import type { DefaultAttachmentType, DefaultChannelType, DefaultCommandType, DefaultEventType, DefaultMessageType, DefaultReactionType, DefaultUserType, UnknownType } from '../../types/types';
6
- export declare type CardPropsWithContext<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Attachment<At> & Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader'> & {
5
+ import type { DefaultStreamChatGenerics } from '../../types/types';
6
+ export declare type CardPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Attachment<StreamChatGenerics> & Pick<MessageContextValue<StreamChatGenerics>, 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader'> & {
7
+ channelId: string | undefined;
8
+ messageId: string | undefined;
7
9
  styles?: Partial<{
8
10
  authorName: StyleProp<TextStyle>;
9
11
  authorNameContainer: StyleProp<ViewStyle>;
@@ -17,11 +19,11 @@ export declare type CardPropsWithContext<At extends UnknownType = DefaultAttachm
17
19
  title: StyleProp<TextStyle>;
18
20
  }>;
19
21
  };
20
- export declare type CardProps<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Attachment<At> & Partial<Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'onLongPress' | 'onPress' | 'onPressIn'> & Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader'>>;
22
+ export declare type CardProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Attachment<StreamChatGenerics> & Partial<Pick<MessageContextValue<StreamChatGenerics>, 'onLongPress' | 'onPress' | 'onPressIn'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader'>>;
21
23
  /**
22
24
  * UI component for card in attachments.
23
25
  */
24
26
  export declare const Card: {
25
- <At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = import("stream-chat").LiteralStringForUnion, Ev extends UnknownType = UnknownType, Me extends UnknownType = UnknownType, Re extends UnknownType = UnknownType, Us extends UnknownType = DefaultUserType>(props: CardProps<At, Ch, Co, Ev, Me, Re, Us>): JSX.Element;
27
+ <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: CardProps<StreamChatGenerics>): JSX.Element;
26
28
  displayName: string;
27
29
  };
@@ -1,11 +1,11 @@
1
1
  import { StyleProp, TextStyle, ViewStyle } from 'react-native';
2
+ import type { Attachment } from 'stream-chat';
2
3
  import { MessageContextValue } from '../../contexts/messageContext/MessageContext';
3
4
  import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
4
- import type { Attachment } from 'stream-chat';
5
- import type { DefaultAttachmentType, DefaultChannelType, DefaultCommandType, DefaultEventType, DefaultMessageType, DefaultReactionType, DefaultUserType, UnknownType } from '../../types/types';
6
- export declare type FileAttachmentPropsWithContext<At extends DefaultAttachmentType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'additionalTouchableProps' | 'AttachmentActions' | 'FileAttachmentIcon'> & {
5
+ import type { DefaultStreamChatGenerics } from '../../types/types';
6
+ export declare type FileAttachmentPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<MessageContextValue<StreamChatGenerics>, 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps' | 'AttachmentActions' | 'FileAttachmentIcon'> & {
7
7
  /** The attachment to render */
8
- attachment: Attachment<At>;
8
+ attachment: Attachment<StreamChatGenerics>;
9
9
  attachmentSize?: number;
10
10
  styles?: Partial<{
11
11
  container: StyleProp<ViewStyle>;
@@ -14,9 +14,9 @@ export declare type FileAttachmentPropsWithContext<At extends DefaultAttachmentT
14
14
  title: StyleProp<TextStyle>;
15
15
  }>;
16
16
  };
17
- export declare type FileAttachmentProps<At extends DefaultAttachmentType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Partial<Omit<FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'attachment'>> & Pick<FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'attachment'>;
17
+ export declare type FileAttachmentProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Partial<Omit<FileAttachmentPropsWithContext<StreamChatGenerics>, 'attachment'>> & Pick<FileAttachmentPropsWithContext<StreamChatGenerics>, 'attachment'>;
18
18
  export declare const FileAttachment: {
19
- <At extends DefaultAttachmentType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = import("stream-chat").LiteralStringForUnion, Ev extends UnknownType = UnknownType, Me extends UnknownType = UnknownType, Re extends UnknownType = UnknownType, Us extends UnknownType = DefaultUserType>(props: FileAttachmentProps<At, Ch, Co, Ev, Me, Re, Us>): JSX.Element;
19
+ <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: FileAttachmentProps<StreamChatGenerics>): JSX.Element;
20
20
  displayName: string;
21
21
  };
22
22
  export declare const getFileSizeDisplayText: (size?: string | number | undefined) => string | undefined;
@@ -1,8 +1,8 @@
1
1
  import { StyleProp, ViewStyle } from 'react-native';
2
2
  import { MessageContextValue } from '../../contexts/messageContext/MessageContext';
3
3
  import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
4
- import type { DefaultAttachmentType, DefaultChannelType, DefaultCommandType, DefaultEventType, DefaultMessageType, DefaultReactionType, DefaultUserType, UnknownType } from '../../types/types';
5
- export declare type FileAttachmentGroupPropsWithContext<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'files'> & Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'Attachment'> & {
4
+ import type { DefaultStreamChatGenerics } from '../../types/types';
5
+ export declare type FileAttachmentGroupPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<MessageContextValue<StreamChatGenerics>, 'files'> & Pick<MessagesContextValue<StreamChatGenerics>, 'Attachment'> & {
6
6
  /**
7
7
  * The unique id for the message with file attachments
8
8
  */
@@ -12,8 +12,8 @@ export declare type FileAttachmentGroupPropsWithContext<At extends UnknownType =
12
12
  container: StyleProp<ViewStyle>;
13
13
  }>;
14
14
  };
15
- export declare type FileAttachmentGroupProps<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Partial<Omit<FileAttachmentGroupPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'messageId'>> & Pick<FileAttachmentGroupPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'messageId'>;
15
+ export declare type FileAttachmentGroupProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Partial<Omit<FileAttachmentGroupPropsWithContext<StreamChatGenerics>, 'messageId'>> & Pick<FileAttachmentGroupPropsWithContext<StreamChatGenerics>, 'messageId'>;
16
16
  export declare const FileAttachmentGroup: {
17
- <At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = import("stream-chat").LiteralStringForUnion, Ev extends UnknownType = UnknownType, Me extends UnknownType = UnknownType, Re extends UnknownType = UnknownType, Us extends UnknownType = DefaultUserType>(props: FileAttachmentGroupProps<At, Ch, Co, Ev, Me, Re, Us>): JSX.Element | null;
17
+ <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: FileAttachmentGroupProps<StreamChatGenerics>): JSX.Element | null;
18
18
  displayName: string;
19
19
  };
@@ -1,18 +1,31 @@
1
+ import type { MessageType } from '../../components/MessageList/hooks/useMessageList';
1
2
  import { ImageGalleryContextValue } from '../../contexts/imageGalleryContext/ImageGalleryContext';
2
3
  import { MessageContextValue } from '../../contexts/messageContext/MessageContext';
3
4
  import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
4
5
  import { OverlayContextValue } from '../../contexts/overlayContext/OverlayContext';
5
- import type { DefaultAttachmentType, DefaultChannelType, DefaultCommandType, DefaultEventType, DefaultMessageType, DefaultReactionType, DefaultUserType, UnknownType } from '../../types/types';
6
- export declare type GalleryPropsWithContext<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Pick<ImageGalleryContextValue, 'setImage'> & Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'alignment' | 'groupStyles' | 'images' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress' | 'threadList'> & Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'additionalTouchableProps'> & Pick<OverlayContextValue, 'setBlurType' | 'setOverlay'> & {
6
+ import type { DefaultStreamChatGenerics } from '../../types/types';
7
+ export declare type GalleryPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<ImageGalleryContextValue<StreamChatGenerics>, 'setImage' | 'setImages'> & Pick<MessageContextValue<StreamChatGenerics>, 'alignment' | 'groupStyles' | 'images' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress' | 'threadList'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps' | 'legacyImageViewerSwipeBehaviour'> & Pick<OverlayContextValue, 'setOverlay'> & {
8
+ channelId: string | undefined;
7
9
  hasThreadReplies?: boolean;
8
- messageId?: string;
9
- messageText?: string;
10
+ /**
11
+ * `message` prop has been introduced here as part of `legacyImageViewerSwipeBehaviour` prop.
12
+ * https://github.com/GetStream/stream-chat-react-native/commit/d5eac6193047916f140efe8e396a671675c9a63f
13
+ * messageId and messageText may seem redundant now, but to avoid breaking change as part
14
+ * of minor release, we are keeping those props.
15
+ *
16
+ * Also `message` type should ideally be imported from MessageContextValue and not be explicitely mentioned
17
+ * here, but due to some circular dependencies within the SDK, it causes "exccesive deep nesting" issue with
18
+ * typescript within Channel component. We should take it as a mini-project and resolve all these circular imports.
19
+ *
20
+ * TODO: Fix circular dependencies of imports
21
+ */
22
+ message?: MessageType<StreamChatGenerics>;
10
23
  };
11
- export declare type GalleryProps<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Partial<GalleryPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;
24
+ export declare type GalleryProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Partial<GalleryPropsWithContext<StreamChatGenerics>>;
12
25
  /**
13
26
  * UI component for card in attachments.
14
27
  */
15
28
  export declare const Gallery: {
16
- <At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = import("stream-chat").LiteralStringForUnion, Ev extends UnknownType = UnknownType, Me extends UnknownType = UnknownType, Re extends UnknownType = UnknownType, Us extends UnknownType = DefaultUserType>(props: Partial<GalleryPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>): JSX.Element | null;
29
+ <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: Partial<GalleryPropsWithContext<StreamChatGenerics>>): JSX.Element | null;
17
30
  displayName: string;
18
31
  };
@@ -1,17 +1,17 @@
1
+ import type { Attachment } from 'stream-chat';
1
2
  import { MessageContextValue } from '../../contexts/messageContext/MessageContext';
2
3
  import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
3
- import type { Attachment } from 'stream-chat';
4
- import type { DefaultAttachmentType, DefaultChannelType, DefaultCommandType, DefaultEventType, DefaultMessageType, DefaultReactionType, DefaultUserType, UnknownType } from '../../types/types';
5
- export declare type GiphyPropsWithContext<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'handleAction' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'additionalTouchableProps'> & {
6
- attachment: Attachment<At>;
4
+ import type { DefaultStreamChatGenerics } from '../../types/types';
5
+ export declare type GiphyPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<MessageContextValue<StreamChatGenerics>, 'handleAction' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps'> & {
6
+ attachment: Attachment<StreamChatGenerics>;
7
7
  };
8
- export declare type GiphyProps<At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = DefaultCommandType, Ev extends UnknownType = DefaultEventType, Me extends UnknownType = DefaultMessageType, Re extends UnknownType = DefaultReactionType, Us extends UnknownType = DefaultUserType> = Partial<Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'onLongPress' | 'onPressIn'> & Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'additionalTouchableProps'>> & {
9
- attachment: Attachment<At>;
8
+ export declare type GiphyProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Partial<Pick<MessageContextValue<StreamChatGenerics>, 'onLongPress' | 'onPressIn'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps'>> & {
9
+ attachment: Attachment<StreamChatGenerics>;
10
10
  };
11
11
  /**
12
12
  * UI component for card in attachments.
13
13
  */
14
14
  export declare const Giphy: {
15
- <At extends UnknownType = DefaultAttachmentType, Ch extends UnknownType = DefaultChannelType, Co extends string = import("stream-chat").LiteralStringForUnion, Ev extends UnknownType = UnknownType, Me extends UnknownType = UnknownType, Re extends UnknownType = UnknownType, Us extends UnknownType = DefaultUserType>(props: GiphyProps<At, Ch, Co, Ev, Me, Re, Us>): JSX.Element;
15
+ <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: GiphyProps<StreamChatGenerics>): JSX.Element;
16
16
  displayName: string;
17
17
  };
@@ -0,0 +1,23 @@
1
+ import type { Attachment } from 'stream-chat';
2
+ import type { GallerySizeAndThumbnailGrid, GallerySizeConfig } from './types';
3
+ import type { DefaultStreamChatGenerics } from '../../../../types/types';
4
+ /**
5
+ * Builds and returns a gallery of optimized images to be rendered on UI.
6
+ * This function take a object parameter with following properties:
7
+ *
8
+ * @param {Attachment[]} images - Array of image attachments
9
+ * @param {GallerySizeConfig} sizeConfig - Theme config for the gallery
10
+ *
11
+ * The returned object contains following properties:
12
+ *
13
+ * - height {number[]} - Height of the gallery
14
+ * - width {number[]} - Width of the gallery
15
+ * - thumbnailGrid {number[][]} - Grid of thumbnail images
16
+ * - invertedDirections {boolean} - Whether to invert the direction of the grid. By default grid is rendered with column as primary direction and row as secondary direction.
17
+ *
18
+ * @return {GallerySizeAndThumbnailGrid}
19
+ */
20
+ export declare function buildGallery<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>({ images, sizeConfig, }: {
21
+ images: Attachment<StreamChatGenerics>[];
22
+ sizeConfig: GallerySizeConfig;
23
+ }): GallerySizeAndThumbnailGrid;
@@ -0,0 +1,7 @@
1
+ import type { Attachment } from 'stream-chat';
2
+ import type { GallerySizeAndThumbnailGrid, GallerySizeConfig } from './types';
3
+ import type { DefaultStreamChatGenerics } from '../../../../types/types';
4
+ export declare function buildGalleryOfSingleImage<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>({ image, sizeConfig, }: {
5
+ image: Attachment<StreamChatGenerics>;
6
+ sizeConfig: GallerySizeConfig;
7
+ }): GallerySizeAndThumbnailGrid;
@@ -0,0 +1,7 @@
1
+ import type { Attachment } from 'stream-chat';
2
+ import type { GallerySizeAndThumbnailGrid, GallerySizeConfig } from './types';
3
+ import type { DefaultStreamChatGenerics } from '../../../../types/types';
4
+ export declare function buildGalleryOfThreeImages<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>({ images, sizeConfig, }: {
5
+ images: Attachment<StreamChatGenerics>[];
6
+ sizeConfig: GallerySizeConfig;
7
+ }): GallerySizeAndThumbnailGrid;
@@ -0,0 +1,7 @@
1
+ import type { Attachment } from 'stream-chat';
2
+ import type { GallerySizeAndThumbnailGrid, GallerySizeConfig } from './types';
3
+ import type { DefaultStreamChatGenerics } from '../../../../types/types';
4
+ export declare function buildGalleryOfTwoImages<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>({ images, sizeConfig, }: {
5
+ images: Attachment<StreamChatGenerics>[];
6
+ sizeConfig: GallerySizeConfig;
7
+ }): GallerySizeAndThumbnailGrid;
@@ -0,0 +1,10 @@
1
+ import type { ImageResizeMode } from 'react-native';
2
+ import type { Attachment } from 'stream-chat';
3
+ import type { Thumbnail } from './types';
4
+ import type { DefaultStreamChatGenerics } from '../../../../types/types';
5
+ export declare function buildThumbnail<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>({ height, image, resizeMode, width, }: {
6
+ height: number;
7
+ image: Attachment<StreamChatGenerics>;
8
+ width: number;
9
+ resizeMode?: ImageResizeMode;
10
+ }): Thumbnail;