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
@@ -9,12 +9,10 @@ exports.ReactionList = void 0;
9
9
 
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
 
12
- var _react = _interopRequireWildcard(require("react"));
12
+ var _react = _interopRequireDefault(require("react"));
13
13
 
14
14
  var _reactNative = require("react-native");
15
15
 
16
- var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
17
-
18
16
  var _reactNativeSvg = _interopRequireWildcard(require("react-native-svg"));
19
17
 
20
18
  var _MessageContext = require("../../../contexts/messageContext/MessageContext");
@@ -26,7 +24,7 @@ var _ThemeContext = require("../../../contexts/themeContext/ThemeContext");
26
24
  var _Unknown = require("../../../icons/Unknown");
27
25
 
28
26
  var _this = this,
29
- _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/Message/MessageSimple/ReactionList.tsx";
27
+ _jsxFileName = "/Users/vishalnarkhede/projects/stream-chat-react-native/package/src/components/Message/MessageSimple/ReactionList.tsx";
30
28
 
31
29
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
32
30
 
@@ -60,36 +58,11 @@ var Icon = function Icon(_ref) {
60
58
  var ReactionIcon = ((_supportedReactions$f = supportedReactions.find(function (reaction) {
61
59
  return reaction.type === type;
62
60
  })) == null ? void 0 : _supportedReactions$f.Icon) || _Unknown.Unknown;
63
- var scale = (0, _reactNativeReanimated.useSharedValue)(0);
64
-
65
- var showReaction = function showReaction() {
66
- 'worklet';
67
-
68
- scale.value = (0, _reactNativeReanimated.withSequence)((0, _reactNativeReanimated.withDelay)(250, (0, _reactNativeReanimated.withTiming)(0.5, {
69
- duration: 100
70
- })), (0, _reactNativeReanimated.withTiming)(1.5, {
71
- duration: 400
72
- }), (0, _reactNativeReanimated.withTiming)(1, {
73
- duration: 500
74
- }));
75
- };
76
-
77
- (0, _react.useEffect)(function () {
78
- showReaction();
79
- }, []);
80
- var animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(function () {
81
- return {
82
- transform: [{
83
- scale: scale.value
84
- }]
85
- };
86
- }, []);
87
- return _react["default"].createElement(_reactNativeReanimated["default"].View, {
88
- style: animatedStyle,
61
+ return _react["default"].createElement(_reactNative.View, {
89
62
  __self: _this,
90
63
  __source: {
91
64
  fileName: _jsxFileName,
92
- lineNumber: 94,
65
+ lineNumber: 56,
93
66
  columnNumber: 5
94
67
  }
95
68
  }, _react["default"].createElement(ReactionIcon, {
@@ -100,7 +73,7 @@ var Icon = function Icon(_ref) {
100
73
  __self: _this,
101
74
  __source: {
102
75
  fileName: _jsxFileName,
103
- lineNumber: 95,
76
+ lineNumber: 57,
104
77
  columnNumber: 7
105
78
  }
106
79
  }));
@@ -109,6 +82,7 @@ var Icon = function Icon(_ref) {
109
82
  var ReactionListWithContext = function ReactionListWithContext(props) {
110
83
  var alignment = props.alignment,
111
84
  propFill = props.fill,
85
+ message = props.message,
112
86
  messageContentWidth = props.messageContentWidth,
113
87
  _onLongPress = props.onLongPress,
114
88
  _onPress = props.onPress,
@@ -120,7 +94,8 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
120
94
  showMessageOverlay = props.showMessageOverlay,
121
95
  propStroke = props.stroke,
122
96
  propStrokeSize = props.strokeSize,
123
- supportedReactions = props.supportedReactions;
97
+ supportedReactions = props.supportedReactions,
98
+ targetedMessage = props.targetedMessage;
124
99
 
125
100
  var _useTheme = (0, _ThemeContext.useTheme)(),
126
101
  _useTheme$theme = _useTheme.theme,
@@ -129,7 +104,9 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
129
104
  grey = _useTheme$theme$color.grey,
130
105
  grey_gainsboro = _useTheme$theme$color.grey_gainsboro,
131
106
  grey_whisper = _useTheme$theme$color.grey_whisper,
107
+ targetedMessageBackground = _useTheme$theme$color.targetedMessageBackground,
132
108
  white = _useTheme$theme$color.white,
109
+ white_snow = _useTheme$theme$color.white_snow,
133
110
  _useTheme$theme$messa = _useTheme$theme.messageSimple,
134
111
  _useTheme$theme$messa2 = _useTheme$theme$messa.avatarWrapper,
135
112
  leftAlign = _useTheme$theme$messa2.leftAlign,
@@ -144,7 +121,6 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
144
121
  themeStrokeSize = _useTheme$theme$messa3.strokeSize,
145
122
  screenPadding = _useTheme$theme.screenPadding;
146
123
 
147
- var opacity = (0, _reactNativeReanimated.useSharedValue)(0);
148
124
  var width = (0, _reactNative.useWindowDimensions)().width;
149
125
  var supportedReactionTypes = supportedReactions.map(function (supportedReaction) {
150
126
  return supportedReaction.type;
@@ -153,23 +129,6 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
153
129
  return supportedReactionTypes.includes(reaction.type);
154
130
  });
155
131
 
156
- var showReactions = function showReactions(show) {
157
- 'worklet';
158
-
159
- opacity.value = show ? (0, _reactNativeReanimated.withDelay)(250, (0, _reactNativeReanimated.withTiming)(1, {
160
- duration: 500
161
- })) : 0;
162
- };
163
-
164
- (0, _react.useEffect)(function () {
165
- showReactions(hasSupportedReactions && messageContentWidth !== 0);
166
- }, [hasSupportedReactions, messageContentWidth]);
167
- var animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(function () {
168
- return {
169
- opacity: opacity.value
170
- };
171
- }, []);
172
-
173
132
  if (!hasSupportedReactions || messageContentWidth === 0) {
174
133
  return null;
175
134
  }
@@ -178,7 +137,8 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
178
137
  var fill = propFill || alignmentLeft ? grey_gainsboro : grey_whisper;
179
138
  var radius = propRadius || themeRadius;
180
139
  var reactionSize = propReactionSize || themeReactionSize;
181
- var stroke = propStroke || white;
140
+ var highlighted = message.pinned || targetedMessage === message.id;
141
+ var stroke = propStroke || (highlighted ? targetedMessageBackground : white_snow);
182
142
  var strokeSize = propStrokeSize || themeStrokeSize;
183
143
  var x1 = alignmentLeft ? messageContentWidth + (Number(leftAlign.marginRight) || 0) + (Number(spacer.width) || 0) - radius * 0.5 : width - screenPadding * 2 - messageContentWidth;
184
144
  var x2 = x1 + radius * 2 * (alignmentLeft ? 1 : -1);
@@ -187,61 +147,31 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
187
147
  var insideLeftBound = x2 - reactionSize * reactions.length / 2 > screenPadding;
188
148
  var insideRightBound = x2 + strokeSize + reactionSize * reactions.length / 2 < width - screenPadding * 2;
189
149
  var left = reactions.length === 1 ? x1 + (alignmentLeft ? -radius : radius - reactionSize) : !insideLeftBound ? screenPadding : !insideRightBound ? width - screenPadding * 2 - reactionSize * reactions.length - strokeSize : x2 - reactionSize * reactions.length / 2 - strokeSize;
190
- return _react["default"].createElement(_reactNative.TouchableOpacity, {
191
- disabled: preventPress,
192
- onLongPress: function onLongPress(event) {
193
- if (_onLongPress) {
194
- _onLongPress({
195
- emitter: 'reactionList',
196
- event: event
197
- });
198
- }
199
- },
200
- onPress: function onPress(event) {
201
- if (_onPress) {
202
- _onPress({
203
- defaultHandler: function defaultHandler() {
204
- return showMessageOverlay(true);
205
- },
206
- emitter: 'reactionList',
207
- event: event
208
- });
209
- }
210
- },
211
- onPressIn: function onPressIn(event) {
212
- if (_onPressIn) {
213
- _onPressIn({
214
- defaultHandler: function defaultHandler() {
215
- return showMessageOverlay(true);
216
- },
217
- emitter: 'reactionList',
218
- event: event
219
- });
220
- }
221
- },
150
+ return _react["default"].createElement(_reactNative.View, {
222
151
  style: [styles.container, {
223
152
  height: reactionSize + radius * 5,
224
153
  width: width
225
154
  }, container],
155
+ testID: "reaction-list",
226
156
  __self: _this,
227
157
  __source: {
228
158
  fileName: _jsxFileName,
229
- lineNumber: 235,
159
+ lineNumber: 180,
230
160
  columnNumber: 5
231
161
  }
232
- }, reactions.length ? _react["default"].createElement(_reactNativeReanimated["default"].View, {
233
- style: [_reactNative.StyleSheet.absoluteFill, animatedStyle],
162
+ }, reactions.length ? _react["default"].createElement(_reactNative.View, {
163
+ style: [_reactNative.StyleSheet.absoluteFill],
234
164
  __self: _this,
235
165
  __source: {
236
166
  fileName: _jsxFileName,
237
- lineNumber: 273,
167
+ lineNumber: 192,
238
168
  columnNumber: 9
239
169
  }
240
170
  }, _react["default"].createElement(_reactNativeSvg["default"], {
241
171
  __self: _this,
242
172
  __source: {
243
173
  fileName: _jsxFileName,
244
- lineNumber: 274,
174
+ lineNumber: 193,
245
175
  columnNumber: 11
246
176
  }
247
177
  }, _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -252,7 +182,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
252
182
  __self: _this,
253
183
  __source: {
254
184
  fileName: _jsxFileName,
255
- lineNumber: 275,
185
+ lineNumber: 194,
256
186
  columnNumber: 13
257
187
  }
258
188
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -263,7 +193,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
263
193
  __self: _this,
264
194
  __source: {
265
195
  fileName: _jsxFileName,
266
- lineNumber: 276,
196
+ lineNumber: 195,
267
197
  columnNumber: 13
268
198
  }
269
199
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -274,7 +204,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
274
204
  __self: _this,
275
205
  __source: {
276
206
  fileName: _jsxFileName,
277
- lineNumber: 277,
207
+ lineNumber: 196,
278
208
  columnNumber: 13
279
209
  }
280
210
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -285,34 +215,34 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
285
215
  __self: _this,
286
216
  __source: {
287
217
  fileName: _jsxFileName,
288
- lineNumber: 278,
218
+ lineNumber: 197,
289
219
  columnNumber: 13
290
220
  }
291
221
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
292
222
  cx: x1,
293
223
  cy: y1,
294
- fill: alignmentLeft ? fill : stroke,
224
+ fill: alignmentLeft ? fill : white,
295
225
  r: radius,
296
226
  __self: _this,
297
227
  __source: {
298
228
  fileName: _jsxFileName,
299
- lineNumber: 279,
229
+ lineNumber: 198,
300
230
  columnNumber: 13
301
231
  }
302
232
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
303
233
  cx: x2,
304
234
  cy: y2,
305
- fill: alignmentLeft ? fill : stroke,
235
+ fill: alignmentLeft ? fill : white,
306
236
  r: radius * 2,
307
237
  __self: _this,
308
238
  __source: {
309
239
  fileName: _jsxFileName,
310
- lineNumber: 280,
240
+ lineNumber: 199,
311
241
  columnNumber: 13
312
242
  }
313
243
  })), _react["default"].createElement(_reactNative.View, {
314
244
  style: [styles.reactionBubbleBackground, {
315
- backgroundColor: alignmentLeft ? fill : stroke,
245
+ backgroundColor: alignmentLeft ? fill : white,
316
246
  borderColor: fill,
317
247
  borderRadius: reactionSize,
318
248
  borderWidth: strokeSize,
@@ -323,7 +253,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
323
253
  __self: _this,
324
254
  __source: {
325
255
  fileName: _jsxFileName,
326
- lineNumber: 282,
256
+ lineNumber: 201,
327
257
  columnNumber: 11
328
258
  }
329
259
  }), _react["default"].createElement(_reactNative.View, {
@@ -331,30 +261,61 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
331
261
  __self: _this,
332
262
  __source: {
333
263
  fileName: _jsxFileName,
334
- lineNumber: 297,
264
+ lineNumber: 216,
335
265
  columnNumber: 11
336
266
  }
337
267
  }, _react["default"].createElement(_reactNativeSvg["default"], {
338
268
  __self: _this,
339
269
  __source: {
340
270
  fileName: _jsxFileName,
341
- lineNumber: 298,
271
+ lineNumber: 217,
342
272
  columnNumber: 13
343
273
  }
344
274
  }, _react["default"].createElement(_reactNativeSvg.Circle, {
345
275
  cx: x2,
346
276
  cy: y2,
347
- fill: alignmentLeft ? fill : stroke,
277
+ fill: alignmentLeft ? fill : white,
348
278
  r: radius * 2,
349
279
  __self: _this,
350
280
  __source: {
351
281
  fileName: _jsxFileName,
352
- lineNumber: 299,
282
+ lineNumber: 218,
353
283
  columnNumber: 15
354
284
  }
355
- }))), _react["default"].createElement(_reactNative.View, {
285
+ }))), _react["default"].createElement(_reactNative.TouchableOpacity, {
286
+ disabled: preventPress,
287
+ onLongPress: function onLongPress(event) {
288
+ if (_onLongPress) {
289
+ _onLongPress({
290
+ emitter: 'reactionList',
291
+ event: event
292
+ });
293
+ }
294
+ },
295
+ onPress: function onPress(event) {
296
+ if (_onPress) {
297
+ _onPress({
298
+ defaultHandler: function defaultHandler() {
299
+ return showMessageOverlay(true);
300
+ },
301
+ emitter: 'reactionList',
302
+ event: event
303
+ });
304
+ }
305
+ },
306
+ onPressIn: function onPressIn(event) {
307
+ if (_onPressIn) {
308
+ _onPressIn({
309
+ defaultHandler: function defaultHandler() {
310
+ return showMessageOverlay(true);
311
+ },
312
+ emitter: 'reactionList',
313
+ event: event
314
+ });
315
+ }
316
+ },
356
317
  style: [styles.reactionBubble, {
357
- backgroundColor: alignmentLeft ? fill : stroke,
318
+ backgroundColor: alignmentLeft ? fill : white,
358
319
  borderRadius: reactionSize - strokeSize * 2,
359
320
  height: reactionSize - strokeSize * 2,
360
321
  left: left + strokeSize,
@@ -364,7 +325,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
364
325
  __self: _this,
365
326
  __source: {
366
327
  fileName: _jsxFileName,
367
- lineNumber: 302,
328
+ lineNumber: 221,
368
329
  columnNumber: 11
369
330
  }
370
331
  }, reactions.map(function (reaction) {
@@ -378,7 +339,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
378
339
  __self: _this,
379
340
  __source: {
380
341
  fileName: _jsxFileName,
381
- lineNumber: 317,
342
+ lineNumber: 263,
382
343
  columnNumber: 15
383
344
  }
384
345
  });
@@ -386,12 +347,20 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
386
347
  };
387
348
 
388
349
  var areEqual = function areEqual(prevProps, nextProps) {
389
- var prevMessageContentWidth = prevProps.messageContentWidth,
390
- prevReactions = prevProps.reactions;
391
- var nextMessageContentWidth = nextProps.messageContentWidth,
392
- nextReactions = nextProps.reactions;
350
+ var prevMessage = prevProps.message,
351
+ prevMessageContentWidth = prevProps.messageContentWidth,
352
+ prevReactions = prevProps.reactions,
353
+ prevTargetedMessage = prevProps.targetedMessage;
354
+ var nextMessage = nextProps.message,
355
+ nextMessageContentWidth = nextProps.messageContentWidth,
356
+ nextReactions = nextProps.reactions,
357
+ nextTargetedMessage = nextProps.targetedMessage;
393
358
  var messageContentWidthEqual = prevMessageContentWidth === nextMessageContentWidth;
394
359
  if (!messageContentWidthEqual) return false;
360
+ var messagePinnedEqual = prevMessage.pinned === nextMessage.pinned;
361
+ if (!messagePinnedEqual) return false;
362
+ var targetedMessageEqual = prevTargetedMessage === nextTargetedMessage;
363
+ if (!targetedMessageEqual) return false;
395
364
  var reactionsEqual = prevReactions.length === nextReactions.length && prevReactions.every(function (latestReaction, index) {
396
365
  return nextReactions[index].own === latestReaction.own && nextReactions[index].type === latestReaction.type;
397
366
  });
@@ -404,6 +373,7 @@ var MemoizedReactionList = _react["default"].memo(ReactionListWithContext, areEq
404
373
  var ReactionList = function ReactionList(props) {
405
374
  var _useMessageContext = (0, _MessageContext.useMessageContext)(),
406
375
  alignment = _useMessageContext.alignment,
376
+ message = _useMessageContext.message,
407
377
  onLongPress = _useMessageContext.onLongPress,
408
378
  onPress = _useMessageContext.onPress,
409
379
  onPressIn = _useMessageContext.onPressIn,
@@ -412,22 +382,25 @@ var ReactionList = function ReactionList(props) {
412
382
  showMessageOverlay = _useMessageContext.showMessageOverlay;
413
383
 
414
384
  var _useMessagesContext = (0, _MessagesContext.useMessagesContext)(),
415
- supportedReactions = _useMessagesContext.supportedReactions;
385
+ supportedReactions = _useMessagesContext.supportedReactions,
386
+ targetedMessage = _useMessagesContext.targetedMessage;
416
387
 
417
388
  return _react["default"].createElement(MemoizedReactionList, (0, _extends2["default"])({
418
389
  alignment: alignment,
390
+ message: message,
419
391
  onLongPress: onLongPress,
420
392
  onPress: onPress,
421
393
  onPressIn: onPressIn,
422
394
  preventPress: preventPress,
423
395
  reactions: reactions,
424
396
  showMessageOverlay: showMessageOverlay,
425
- supportedReactions: supportedReactions
397
+ supportedReactions: supportedReactions,
398
+ targetedMessage: targetedMessage
426
399
  }, props, {
427
400
  __self: _this,
428
401
  __source: {
429
402
  fileName: _jsxFileName,
430
- lineNumber: 405,
403
+ lineNumber: 350,
431
404
  columnNumber: 5
432
405
  }
433
406
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["ReactionList.tsx"],"names":["styles","StyleSheet","create","container","left","position","top","reactionBubble","alignItems","flexDirection","justifyContent","reactionBubbleBackground","Icon","pathFill","size","style","supportedReactions","type","ReactionIcon","find","reaction","Unknown","scale","showReaction","value","duration","animatedStyle","transform","ReactionListWithContext","props","alignment","propFill","fill","messageContentWidth","onLongPress","onPress","onPressIn","preventPress","propRadius","radius","reactions","propReactionSize","reactionSize","showMessageOverlay","propStroke","stroke","propStrokeSize","strokeSize","theme","colors","accent_blue","grey","grey_gainsboro","grey_whisper","white","messageSimple","avatarWrapper","leftAlign","spacer","reactionList","middleIcon","themeRadius","themeReactionSize","themeStrokeSize","screenPadding","opacity","width","supportedReactionTypes","map","supportedReaction","hasSupportedReactions","some","includes","showReactions","show","alignmentLeft","x1","Number","marginRight","x2","y1","y2","insideLeftBound","length","insideRightBound","event","emitter","defaultHandler","height","absoluteFill","backgroundColor","borderColor","borderRadius","borderWidth","own","areEqual","prevProps","nextProps","prevMessageContentWidth","prevReactions","nextMessageContentWidth","nextReactions","messageContentWidthEqual","reactionsEqual","every","latestReaction","index","MemoizedReactionList","React","memo","ReactionList"],"mappings":"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","sourcesContent":["import React, { useEffect } from 'react';\nimport { StyleSheet, TouchableOpacity, useWindowDimensions, View, ViewStyle } from 'react-native';\nimport Animated, {\n useAnimatedStyle,\n useSharedValue,\n withDelay,\n withSequence,\n withTiming,\n} from 'react-native-reanimated';\nimport Svg, { Circle } from 'react-native-svg';\n\nimport {\n MessageContextValue,\n Reactions,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport { useMessagesContext } from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Unknown } from '../../../icons/Unknown';\n\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';\nimport type { ReactionData } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n container: {\n left: 0,\n position: 'absolute',\n top: 0,\n },\n reactionBubble: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'space-evenly',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n position: 'absolute',\n },\n});\n\nexport type MessageReactions = {\n reactions: Reactions;\n supportedReactions?: ReactionData[];\n};\n\nconst Icon: React.FC<\n Pick<IconProps, 'pathFill' | 'style'> & {\n size: number;\n supportedReactions: ReactionData[];\n type: string;\n }\n> = ({ pathFill, size, style, supportedReactions, type }) => {\n const ReactionIcon =\n supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n\n const scale = useSharedValue(0);\n\n const showReaction = () => {\n 'worklet';\n scale.value = withSequence(\n withDelay(250, withTiming(0.5, { duration: 100 })),\n withTiming(1.5, { duration: 400 }),\n withTiming(1, { duration: 500 }),\n );\n };\n\n useEffect(() => {\n showReaction();\n }, []);\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n scale: scale.value,\n },\n ],\n }),\n [],\n );\n\n return (\n <Animated.View style={animatedStyle}>\n <ReactionIcon height={size} pathFill={pathFill} style={style} width={size} />\n </Animated.View>\n );\n};\n\nexport type ReactionListPropsWithContext<\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> = Pick<\n MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n | 'alignment'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'preventPress'\n | 'reactions'\n | 'showMessageOverlay'\n> & {\n messageContentWidth: number;\n supportedReactions: ReactionData[];\n fill?: string;\n radius?: number; // not recommended to change this\n reactionSize?: number;\n stroke?: string;\n strokeSize?: number; // not recommended to change this\n};\n\nconst ReactionListWithContext = <\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 props: ReactionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment,\n fill: propFill,\n messageContentWidth,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n radius: propRadius,\n reactions,\n reactionSize: propReactionSize,\n showMessageOverlay,\n stroke: propStroke,\n strokeSize: propStrokeSize,\n supportedReactions,\n } = props;\n\n const {\n theme: {\n colors: { accent_blue, grey, grey_gainsboro, grey_whisper, white },\n messageSimple: {\n avatarWrapper: { leftAlign, spacer },\n reactionList: {\n container,\n middleIcon,\n radius: themeRadius,\n reactionBubble,\n reactionBubbleBackground,\n reactionSize: themeReactionSize,\n strokeSize: themeStrokeSize,\n },\n },\n screenPadding,\n },\n } = useTheme();\n\n const opacity = useSharedValue(0);\n\n const width = useWindowDimensions().width;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n const hasSupportedReactions = reactions.some((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n const showReactions = (show: boolean) => {\n 'worklet';\n opacity.value = show ? withDelay(250, withTiming(1, { duration: 500 })) : 0;\n };\n\n useEffect(() => {\n showReactions(hasSupportedReactions && messageContentWidth !== 0);\n }, [hasSupportedReactions, messageContentWidth]);\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n opacity: opacity.value,\n }),\n [],\n );\n\n if (!hasSupportedReactions || messageContentWidth === 0) {\n return null;\n }\n\n const alignmentLeft = alignment === 'left';\n const fill = propFill || alignmentLeft ? grey_gainsboro : grey_whisper;\n const radius = propRadius || themeRadius;\n const reactionSize = propReactionSize || themeReactionSize;\n const stroke = propStroke || white;\n const strokeSize = propStrokeSize || themeStrokeSize;\n\n const x1 = alignmentLeft\n ? messageContentWidth +\n (Number(leftAlign.marginRight) || 0) +\n (Number(spacer.width) || 0) -\n radius * 0.5\n : width - screenPadding * 2 - messageContentWidth;\n const x2 = x1 + radius * 2 * (alignmentLeft ? 1 : -1);\n const y1 = reactionSize + radius * 2;\n const y2 = reactionSize - radius;\n\n const insideLeftBound = x2 - (reactionSize * reactions.length) / 2 > screenPadding;\n const insideRightBound =\n x2 + strokeSize + (reactionSize * reactions.length) / 2 < width - screenPadding * 2;\n const left =\n reactions.length === 1\n ? x1 + (alignmentLeft ? -radius : radius - reactionSize)\n : !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding * 2 - reactionSize * reactions.length - strokeSize\n : x2 - (reactionSize * reactions.length) / 2 - strokeSize;\n\n return (\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n style={[\n styles.container,\n {\n height: reactionSize + radius * 5,\n width,\n },\n container,\n ]}\n >\n {reactions.length ? (\n <Animated.View style={[StyleSheet.absoluteFill, animatedStyle]}>\n <Svg>\n <Circle cx={x1} cy={y1} fill={stroke} r={radius + strokeSize * 3} />\n <Circle cx={x2} cy={y2} fill={stroke} r={radius * 2 + strokeSize * 3} />\n <Circle cx={x1} cy={y1} fill={fill} r={radius + strokeSize} />\n <Circle cx={x2} cy={y2} fill={fill} r={radius * 2 + strokeSize} />\n <Circle cx={x1} cy={y1} fill={alignmentLeft ? fill : stroke} r={radius} />\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : stroke} r={radius * 2} />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignmentLeft ? fill : stroke,\n borderColor: fill,\n borderRadius: reactionSize,\n borderWidth: strokeSize,\n height: reactionSize,\n left,\n width: reactionSize * reactions.length,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : stroke} r={radius * 2} />\n </Svg>\n </View>\n <View\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignmentLeft ? fill : stroke,\n borderRadius: reactionSize - strokeSize * 2,\n height: reactionSize - strokeSize * 2,\n left: left + strokeSize,\n top: strokeSize,\n width: reactionSize * reactions.length - strokeSize * 2,\n },\n reactionBubble,\n ]}\n >\n {reactions.map((reaction) => (\n <Icon\n key={reaction.type}\n pathFill={reaction.own ? accent_blue : grey}\n size={reactionSize / 2}\n style={middleIcon}\n supportedReactions={supportedReactions}\n type={reaction.type}\n />\n ))}\n </View>\n </Animated.View>\n ) : null}\n </TouchableOpacity>\n );\n};\n\nconst areEqual = <\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 prevProps: ReactionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: ReactionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { messageContentWidth: prevMessageContentWidth, reactions: prevReactions } = prevProps;\n const { messageContentWidth: nextMessageContentWidth, reactions: nextReactions } = nextProps;\n\n const messageContentWidthEqual = prevMessageContentWidth === nextMessageContentWidth;\n if (!messageContentWidthEqual) return false;\n\n const reactionsEqual =\n prevReactions.length === nextReactions.length &&\n prevReactions.every(\n (latestReaction, index) =>\n nextReactions[index].own === latestReaction.own &&\n nextReactions[index].type === latestReaction.type,\n );\n if (!reactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedReactionList = React.memo(\n ReactionListWithContext,\n areEqual,\n) as typeof ReactionListWithContext;\n\nexport type ReactionListProps<\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> = Partial<Omit<ReactionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'messageContentWidth'>> &\n Pick<ReactionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'messageContentWidth'>;\n\n/**\n * ReactionList - A high level component which implements all the logic required for a message reaction list\n */\nexport const ReactionList = <\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 props: ReactionListProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n } = useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { supportedReactions } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return (\n <MemoizedReactionList\n {...{\n alignment,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n supportedReactions,\n }}\n {...props}\n />\n );\n};\n"]}
1
+ {"version":3,"sources":["ReactionList.tsx"],"names":["styles","StyleSheet","create","container","left","position","top","reactionBubble","alignItems","flexDirection","justifyContent","reactionBubbleBackground","Icon","pathFill","size","style","supportedReactions","type","ReactionIcon","find","reaction","Unknown","ReactionListWithContext","props","alignment","propFill","fill","message","messageContentWidth","onLongPress","onPress","onPressIn","preventPress","propRadius","radius","reactions","propReactionSize","reactionSize","showMessageOverlay","propStroke","stroke","propStrokeSize","strokeSize","targetedMessage","theme","colors","accent_blue","grey","grey_gainsboro","grey_whisper","targetedMessageBackground","white","white_snow","messageSimple","avatarWrapper","leftAlign","spacer","reactionList","middleIcon","themeRadius","themeReactionSize","themeStrokeSize","screenPadding","width","supportedReactionTypes","map","supportedReaction","hasSupportedReactions","some","includes","alignmentLeft","highlighted","pinned","id","x1","Number","marginRight","x2","y1","y2","insideLeftBound","length","insideRightBound","height","absoluteFill","backgroundColor","borderColor","borderRadius","borderWidth","event","emitter","defaultHandler","own","areEqual","prevProps","nextProps","prevMessage","prevMessageContentWidth","prevReactions","prevTargetedMessage","nextMessage","nextMessageContentWidth","nextReactions","nextTargetedMessage","messageContentWidthEqual","messagePinnedEqual","targetedMessageEqual","reactionsEqual","every","latestReaction","index","MemoizedReactionList","React","memo","ReactionList"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, TouchableOpacity, useWindowDimensions, View } from 'react-native';\n\nimport Svg, { Circle } from 'react-native-svg';\n\nimport {\n MessageContextValue,\n Reactions,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Unknown } from '../../../icons/Unknown';\n\nimport type { IconProps } from '../../../icons/utils/base';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport type { ReactionData } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n container: {\n left: 0,\n position: 'absolute',\n top: 0,\n },\n reactionBubble: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'space-evenly',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n position: 'absolute',\n },\n});\n\nexport type MessageReactions = {\n reactions: Reactions;\n supportedReactions?: ReactionData[];\n};\n\nconst Icon: React.FC<\n Pick<IconProps, 'pathFill' | 'style'> & {\n size: number;\n supportedReactions: ReactionData[];\n type: string;\n }\n> = ({ pathFill, size, style, supportedReactions, type }) => {\n const ReactionIcon =\n supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n\n return (\n <View>\n <ReactionIcon height={size} pathFill={pathFill} style={style} width={size} />\n </View>\n );\n};\n\nexport type ReactionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n | 'alignment'\n | 'message'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'preventPress'\n | 'reactions'\n | 'showMessageOverlay'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'targetedMessage'> & {\n messageContentWidth: number;\n supportedReactions: ReactionData[];\n fill?: string;\n radius?: number; // not recommended to change this\n reactionSize?: number;\n stroke?: string;\n strokeSize?: number; // not recommended to change this\n };\n\nconst ReactionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n fill: propFill,\n message,\n messageContentWidth,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n radius: propRadius,\n reactions,\n reactionSize: propReactionSize,\n showMessageOverlay,\n stroke: propStroke,\n strokeSize: propStrokeSize,\n supportedReactions,\n targetedMessage,\n } = props;\n\n const {\n theme: {\n colors: {\n accent_blue,\n grey,\n grey_gainsboro,\n grey_whisper,\n targetedMessageBackground,\n white,\n white_snow,\n },\n messageSimple: {\n avatarWrapper: { leftAlign, spacer },\n reactionList: {\n container,\n middleIcon,\n radius: themeRadius,\n reactionBubble,\n reactionBubbleBackground,\n reactionSize: themeReactionSize,\n strokeSize: themeStrokeSize,\n },\n },\n screenPadding,\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n const hasSupportedReactions = reactions.some((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n if (!hasSupportedReactions || messageContentWidth === 0) {\n return null;\n }\n\n const alignmentLeft = alignment === 'left';\n const fill = propFill || alignmentLeft ? grey_gainsboro : grey_whisper;\n const radius = propRadius || themeRadius;\n const reactionSize = propReactionSize || themeReactionSize;\n const highlighted = message.pinned || targetedMessage === message.id;\n const stroke = propStroke || (highlighted ? targetedMessageBackground : white_snow);\n const strokeSize = propStrokeSize || themeStrokeSize;\n\n const x1 = alignmentLeft\n ? messageContentWidth +\n (Number(leftAlign.marginRight) || 0) +\n (Number(spacer.width) || 0) -\n radius * 0.5\n : width - screenPadding * 2 - messageContentWidth;\n const x2 = x1 + radius * 2 * (alignmentLeft ? 1 : -1);\n const y1 = reactionSize + radius * 2;\n const y2 = reactionSize - radius;\n\n const insideLeftBound = x2 - (reactionSize * reactions.length) / 2 > screenPadding;\n const insideRightBound =\n x2 + strokeSize + (reactionSize * reactions.length) / 2 < width - screenPadding * 2;\n const left =\n reactions.length === 1\n ? x1 + (alignmentLeft ? -radius : radius - reactionSize)\n : !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding * 2 - reactionSize * reactions.length - strokeSize\n : x2 - (reactionSize * reactions.length) / 2 - strokeSize;\n\n return (\n <View\n style={[\n styles.container,\n {\n height: reactionSize + radius * 5,\n width,\n },\n container,\n ]}\n testID='reaction-list'\n >\n {reactions.length ? (\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x1} cy={y1} fill={stroke} r={radius + strokeSize * 3} />\n <Circle cx={x2} cy={y2} fill={stroke} r={radius * 2 + strokeSize * 3} />\n <Circle cx={x1} cy={y1} fill={fill} r={radius + strokeSize} />\n <Circle cx={x2} cy={y2} fill={fill} r={radius * 2 + strokeSize} />\n <Circle cx={x1} cy={y1} fill={alignmentLeft ? fill : white} r={radius} />\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderColor: fill,\n borderRadius: reactionSize,\n borderWidth: strokeSize,\n height: reactionSize,\n left,\n width: reactionSize * reactions.length,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n </View>\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderRadius: reactionSize - strokeSize * 2,\n height: reactionSize - strokeSize * 2,\n left: left + strokeSize,\n top: strokeSize,\n width: reactionSize * reactions.length - strokeSize * 2,\n },\n reactionBubble,\n ]}\n >\n {reactions.map((reaction) => (\n <Icon\n key={reaction.type}\n pathFill={reaction.own ? accent_blue : grey}\n size={reactionSize / 2}\n style={middleIcon}\n supportedReactions={supportedReactions}\n type={reaction.type}\n />\n ))}\n </TouchableOpacity>\n </View>\n ) : null}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReactionListPropsWithContext<StreamChatGenerics>,\n nextProps: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n message: prevMessage,\n messageContentWidth: prevMessageContentWidth,\n reactions: prevReactions,\n targetedMessage: prevTargetedMessage,\n } = prevProps;\n const {\n message: nextMessage,\n messageContentWidth: nextMessageContentWidth,\n reactions: nextReactions,\n targetedMessage: nextTargetedMessage,\n } = nextProps;\n\n const messageContentWidthEqual = prevMessageContentWidth === nextMessageContentWidth;\n if (!messageContentWidthEqual) return false;\n\n const messagePinnedEqual = prevMessage.pinned === nextMessage.pinned;\n\n if (!messagePinnedEqual) return false;\n\n const targetedMessageEqual = prevTargetedMessage === nextTargetedMessage;\n\n if (!targetedMessageEqual) return false;\n\n const reactionsEqual =\n prevReactions.length === nextReactions.length &&\n prevReactions.every(\n (latestReaction, index) =>\n nextReactions[index].own === latestReaction.own &&\n nextReactions[index].type === latestReaction.type,\n );\n if (!reactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedReactionList = React.memo(\n ReactionListWithContext,\n areEqual,\n) as typeof ReactionListWithContext;\n\nexport type ReactionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Omit<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>> &\n Pick<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>;\n\n/**\n * ReactionList - A high level component which implements all the logic required for a message reaction list\n */\nexport const ReactionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListProps<StreamChatGenerics>,\n) => {\n const {\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n } = useMessageContext<StreamChatGenerics>();\n const { supportedReactions, targetedMessage } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedReactionList\n {...{\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n supportedReactions,\n targetedMessage,\n }}\n {...props}\n />\n );\n};\n"]}
@@ -0,0 +1,89 @@
1
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.parseLinksFromText = void 0;
7
+
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+
10
+ var emailUserName = '[\\w+\\.~$_-]+';
11
+ var schema = "(\\w{2,15}:\\/\\/)";
12
+ var domain = "((?:\\w+\\.\\w+)+(?:[^:\\/\\s]+))";
13
+ var port = "(:[0-9]{1,5})";
14
+ var path = "((?:\\/)?[^?#\\s]+)";
15
+ var queryString = "(\\?[^#\\s]+)";
16
+ var fragment = "(#[\\w_-]+)";
17
+ var emailPattern = "(mailto:)?((?:" + emailUserName + ")@(?:" + domain + "))";
18
+ var schemePrefixedLinkPattern = schema + "(\\S+)";
19
+ var fqdnLinkPattern = schema + "?" + domain + port + "?" + path + "?" + queryString + "?" + fragment + "?";
20
+
21
+ var removeMarkdownLinksFromText = function removeMarkdownLinksFromText(input) {
22
+ return input.replace(/\[[\w\s]+\]\(.*\)/g, '');
23
+ };
24
+
25
+ var parseLinksFromText = function parseLinksFromText(input) {
26
+ var matches;
27
+ var inputWithoutMarkdownLinks = removeMarkdownLinksFromText(input);
28
+ var results = [];
29
+ var emailRegExp = new RegExp(emailPattern, 'gi');
30
+
31
+ while ((matches = emailRegExp.exec(input)) !== null) {
32
+ var _matches = matches,
33
+ _matches2 = (0, _slicedToArray2["default"])(_matches, 3),
34
+ raw = _matches2[0],
35
+ _matches2$ = _matches2[1],
36
+ scheme = _matches2$ === void 0 ? 'mailto:' : _matches2$,
37
+ displayValue = _matches2[2];
38
+
39
+ results.push({
40
+ encoded: encodeURI(displayValue),
41
+ raw: raw,
42
+ scheme: scheme
43
+ });
44
+ }
45
+
46
+ var linkRegex = new RegExp(fqdnLinkPattern + "|" + schemePrefixedLinkPattern, 'gi');
47
+
48
+ while ((matches = linkRegex.exec(inputWithoutMarkdownLinks)) !== null) {
49
+ var _matches3 = matches,
50
+ _matches4 = (0, _slicedToArray2["default"])(_matches3, 9),
51
+ _raw = _matches4[0],
52
+ _matches4$ = _matches4[1],
53
+ fqdnScheme = _matches4$ === void 0 ? '' : _matches4$,
54
+ _matches4$2 = _matches4[2],
55
+ fqdnDomainName = _matches4$2 === void 0 ? '' : _matches4$2,
56
+ _matches4$3 = _matches4[3],
57
+ fqdnPort = _matches4$3 === void 0 ? '' : _matches4$3,
58
+ _matches4$4 = _matches4[4],
59
+ fqdnPath = _matches4$4 === void 0 ? '' : _matches4$4,
60
+ _matches4$5 = _matches4[5],
61
+ fqdnQueryStraing = _matches4$5 === void 0 ? '' : _matches4$5,
62
+ _matches4$6 = _matches4[6],
63
+ fqdnFragment = _matches4$6 === void 0 ? '' : _matches4$6,
64
+ _matches4$7 = _matches4[7],
65
+ schemePrefixedScheme = _matches4$7 === void 0 ? '' : _matches4$7,
66
+ _matches4$8 = _matches4[8],
67
+ schemePrefixedPath = _matches4$8 === void 0 ? '' : _matches4$8;
68
+
69
+ if (schemePrefixedScheme !== '') {
70
+ results.push({
71
+ encoded: encodeURI(schemePrefixedPath),
72
+ raw: _raw,
73
+ scheme: schemePrefixedScheme
74
+ });
75
+ continue;
76
+ }
77
+
78
+ results.push({
79
+ encoded: encodeURI([fqdnDomainName, fqdnPort, fqdnPath, fqdnQueryStraing, fqdnFragment].join('')),
80
+ raw: _raw,
81
+ scheme: fqdnScheme
82
+ });
83
+ }
84
+
85
+ return results;
86
+ };
87
+
88
+ exports.parseLinksFromText = parseLinksFromText;
89
+ //# sourceMappingURL=parseLinks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["parseLinks.ts"],"names":["emailUserName","schema","domain","port","path","queryString","fragment","emailPattern","schemePrefixedLinkPattern","fqdnLinkPattern","removeMarkdownLinksFromText","input","replace","parseLinksFromText","matches","inputWithoutMarkdownLinks","results","emailRegExp","RegExp","exec","raw","scheme","displayValue","push","encoded","encodeURI","linkRegex","fqdnScheme","fqdnDomainName","fqdnPort","fqdnPath","fqdnQueryStraing","fqdnFragment","schemePrefixedScheme","schemePrefixedPath","join"],"mappings":";;;;;;;;;AAQA,IAAMA,aAAa,GAAG,gBAAtB;AACA,IAAMC,MAAM,uBAAZ;AACA,IAAMC,MAAM,sCAAZ;AACA,IAAMC,IAAI,kBAAV;AACA,IAAMC,IAAI,wBAAV;AACA,IAAMC,WAAW,kBAAjB;AACA,IAAMC,QAAQ,gBAAd;AAKA,IAAMC,YAAY,sBAAoBP,aAApB,aAAyCE,MAAzC,OAAlB;AAKA,IAAMM,yBAAyB,GAAMP,MAAN,WAA/B;AAMA,IAAMQ,eAAe,GAAMR,MAAN,SAAgBC,MAAhB,GAAyBC,IAAzB,SAAiCC,IAAjC,SAAyCC,WAAzC,SAAwDC,QAAxD,MAArB;;AAYA,IAAMI,2BAA2B,GAAG,SAA9BA,2BAA8B,CAACC,KAAD;AAAA,SAAmBA,KAAK,CAACC,OAAN,CAAc,oBAAd,EAAoC,EAApC,CAAnB;AAAA,CAApC;;AAEO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACF,KAAD,EAA2B;AAC3D,MAAIG,OAAJ;AAEA,MAAMC,yBAAyB,GAAGL,2BAA2B,CAACC,KAAD,CAA7D;AAEA,MAAMK,OAAe,GAAG,EAAxB;AAEA,MAAMC,WAAW,GAAG,IAAIC,MAAJ,CAAWX,YAAX,EAAyB,IAAzB,CAApB;;AACA,SAAO,CAACO,OAAO,GAAGG,WAAW,CAACE,IAAZ,CAAiBR,KAAjB,CAAX,MAAwC,IAA/C,EAAqD;AACnD,mBAAgDG,OAAhD;AAAA;AAAA,QAAOM,GAAP;AAAA;AAAA,QAAYC,MAAZ,2BAAqB,SAArB;AAAA,QAAgCC,YAAhC;;AACAN,IAAAA,OAAO,CAACO,IAAR,CAAa;AAAEC,MAAAA,OAAO,EAAEC,SAAS,CAACH,YAAD,CAApB;AAAoCF,MAAAA,GAAG,EAAHA,GAApC;AAAyCC,MAAAA,MAAM,EAANA;AAAzC,KAAb;AACD;;AAMD,MAAMK,SAAS,GAAG,IAAIR,MAAJ,CAAcT,eAAd,SAAiCD,yBAAjC,EAA8D,IAA9D,CAAlB;;AACA,SAAO,CAACM,OAAO,GAAGY,SAAS,CAACP,IAAV,CAAeJ,yBAAf,CAAX,MAA0D,IAAjE,EAAuE;AACrE,oBAUID,OAVJ;AAAA;AAAA,QACEM,IADF;AAAA;AAAA,QAEEO,UAFF,2BAEe,EAFf;AAAA;AAAA,QAGEC,cAHF,4BAGmB,EAHnB;AAAA;AAAA,QAIEC,QAJF,4BAIa,EAJb;AAAA;AAAA,QAKEC,QALF,4BAKa,EALb;AAAA;AAAA,QAMEC,gBANF,4BAMqB,EANrB;AAAA;AAAA,QAOEC,YAPF,4BAOiB,EAPjB;AAAA;AAAA,QAQEC,oBARF,4BAQyB,EARzB;AAAA;AAAA,QASEC,kBATF,4BASuB,EATvB;;AAYA,QAAID,oBAAoB,KAAK,EAA7B,EAAiC;AAC/BjB,MAAAA,OAAO,CAACO,IAAR,CAAa;AACXC,QAAAA,OAAO,EAAEC,SAAS,CAACS,kBAAD,CADP;AAEXd,QAAAA,GAAG,EAAHA,IAFW;AAGXC,QAAAA,MAAM,EAAEY;AAHG,OAAb;AAKA;AACD;;AAEDjB,IAAAA,OAAO,CAACO,IAAR,CAAa;AACXC,MAAAA,OAAO,EAAEC,SAAS,CAChB,CAACG,cAAD,EAAiBC,QAAjB,EAA2BC,QAA3B,EAAqCC,gBAArC,EAAuDC,YAAvD,EAAqEG,IAArE,CAA0E,EAA1E,CADgB,CADP;AAIXf,MAAAA,GAAG,EAAHA,IAJW;AAKXC,MAAAA,MAAM,EAAEM;AALG,KAAb;AAOD;;AAED,SAAOX,OAAP;AACD,CAlDM","sourcesContent":["/**\n * 📣 Note: Do not use named capture groups, as\n * it is not yet available in Hermes.\n *\n * These helpers indend to make it easier to skim read\n * the patterns below, but note that some are optional,\n * specified in the patterns these are added to.\n * */\nconst emailUserName = '[\\\\w+\\\\.~$_-]+';\nconst schema = `(\\\\w{2,15}:\\\\/\\\\/)`;\nconst domain = `((?:\\\\w+\\\\.\\\\w+)+(?:[^:\\\\/\\\\s]+))`;\nconst port = `(:[0-9]{1,5})`;\nconst path = `((?:\\\\/)?[^?#\\\\s]+)`;\nconst queryString = `(\\\\?[^#\\\\s]+)`;\nconst fragment = `(#[\\\\w_-]+)`;\n\n/**\n * Match any email address, with and without `mailto:`\n */\nconst emailPattern = `(mailto:)?((?:${emailUserName})@(?:${domain}))`;\n\n/**\n * Match any string starting with something that seems like it's a schema.\n * */\nconst schemePrefixedLinkPattern = `${schema}(\\\\S+)`;\n\n/**\n * Match as much as possible of a fqdn, at least with a domain name formed as\n * something.tld\n */\nconst fqdnLinkPattern = `${schema}?${domain}${port}?${path}?${queryString}?${fragment}?`;\n\ninterface Link {\n encoded: string;\n raw: string;\n scheme: string;\n}\n\n/**\n * This is done separately because of the version of javascript run\n * for expo\n * */\nconst removeMarkdownLinksFromText = (input: string) => input.replace(/\\[[\\w\\s]+\\]\\(.*\\)/g, '');\n\nexport const parseLinksFromText = (input: string): Link[] => {\n let matches;\n\n const inputWithoutMarkdownLinks = removeMarkdownLinksFromText(input);\n\n const results: Link[] = [];\n\n const emailRegExp = new RegExp(emailPattern, 'gi');\n while ((matches = emailRegExp.exec(input)) !== null) {\n const [raw, scheme = 'mailto:', displayValue] = matches;\n results.push({ encoded: encodeURI(displayValue), raw, scheme });\n }\n\n /**\n * The two link patterns are checked with an \"or\" (`|`)\n * to avoid overlapping matches being duplicated in the output.\n * */\n const linkRegex = new RegExp(`${fqdnLinkPattern}|${schemePrefixedLinkPattern}`, 'gi');\n while ((matches = linkRegex.exec(inputWithoutMarkdownLinks)) !== null) {\n const [\n raw,\n fqdnScheme = '',\n fqdnDomainName = '',\n fqdnPort = '',\n fqdnPath = '',\n fqdnQueryStraing = '',\n fqdnFragment = '',\n schemePrefixedScheme = '',\n schemePrefixedPath = '',\n ] = matches;\n\n if (schemePrefixedScheme !== '') {\n results.push({\n encoded: encodeURI(schemePrefixedPath),\n raw,\n scheme: schemePrefixedScheme,\n });\n continue;\n }\n\n results.push({\n encoded: encodeURI(\n [fqdnDomainName, fqdnPort, fqdnPath, fqdnQueryStraing, fqdnFragment].join(''),\n ),\n raw,\n scheme: fqdnScheme,\n });\n }\n\n return results;\n};\n"]}