stream-chat-react-native-core 4.0.0-beta.2 → 4.0.0-beta.6

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 (1049) hide show
  1. package/lib/commonjs/components/Attachment/Attachment.js +12 -12
  2. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/AttachmentActions.js +4 -4
  4. package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
  5. package/lib/commonjs/components/Attachment/Card.js +15 -15
  6. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  7. package/lib/commonjs/components/Attachment/FileAttachment.js +8 -8
  8. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  9. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +4 -4
  10. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  11. package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
  12. package/lib/commonjs/components/Attachment/Gallery.js +97 -106
  13. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  14. package/lib/commonjs/components/Attachment/Giphy.js +112 -148
  15. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  16. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  17. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  18. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  19. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  20. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  21. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  22. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  23. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  24. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  25. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  26. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  27. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  28. package/lib/commonjs/components/Attachment/utils/buildGallery/types.js +4 -0
  29. package/lib/commonjs/components/Attachment/utils/buildGallery/types.js.map +1 -0
  30. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js +14 -0
  31. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js.map +1 -0
  32. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  33. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  34. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +9 -8
  35. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  36. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  37. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  38. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +16 -16
  39. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  40. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
  41. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  42. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
  43. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  44. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +11 -11
  45. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  46. package/lib/commonjs/components/Avatar/Avatar.js +13 -7
  47. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  48. package/lib/commonjs/components/Avatar/GroupAvatar.js +10 -4
  49. package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
  50. package/lib/commonjs/components/Channel/Channel.js +64 -64
  51. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  52. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  53. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  54. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  55. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  56. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  57. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  58. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  59. package/lib/commonjs/components/ChannelList/ChannelList.js +6 -6
  60. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  61. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js +4 -4
  62. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  63. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
  64. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  65. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -2
  66. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  67. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js +17 -17
  68. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
  69. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  70. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  71. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  72. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  73. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  74. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  75. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  76. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  77. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  78. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  79. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  80. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  81. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  82. package/lib/commonjs/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  83. package/lib/commonjs/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  84. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  85. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  86. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +83 -70
  87. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  88. package/lib/commonjs/components/ChannelList/utils.js +1 -1
  89. package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
  90. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js +2 -2
  91. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  92. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +4 -4
  93. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  94. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
  95. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  96. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js +48 -20
  97. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  98. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  99. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  100. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  101. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  102. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  103. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  104. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  105. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  106. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  107. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  108. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  109. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  110. package/lib/commonjs/components/Chat/Chat.js +4 -4
  111. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  112. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  113. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
  114. package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
  115. package/lib/commonjs/components/ImageGallery/ImageGallery.js +89 -56
  116. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  117. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
  118. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  119. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
  120. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  121. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
  122. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  123. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +7 -7
  124. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  125. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js +5 -5
  126. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  127. package/lib/commonjs/components/Indicators/LoadingIndicator.js +9 -9
  128. package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
  129. package/lib/commonjs/components/Message/Message.js +19 -15
  130. package/lib/commonjs/components/Message/Message.js.map +1 -1
  131. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js +6 -6
  132. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  133. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +19 -19
  134. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  135. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +5 -5
  136. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  137. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +20 -16
  138. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  139. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +6 -6
  140. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  141. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js +10 -10
  142. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  143. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
  144. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  145. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +6 -6
  146. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  147. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +15 -13
  148. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  149. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +3 -3
  150. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  151. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +51 -51
  152. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
  153. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  154. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  155. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  156. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  157. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +151 -81
  158. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  159. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  160. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  161. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  162. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +16 -3
  163. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  164. package/lib/commonjs/components/Message/hooks/useMessageActions.js +18 -14
  165. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
  166. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  167. package/lib/commonjs/components/Message/utils/removeReservedFields.js.map +1 -1
  168. package/lib/commonjs/components/MessageInput/AttachButton.js +3 -3
  169. package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
  170. package/lib/commonjs/components/MessageInput/CommandsButton.js +3 -3
  171. package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
  172. package/lib/commonjs/components/MessageInput/CooldownTimer.js +2 -2
  173. package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -1
  174. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +13 -13
  175. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  176. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +7 -7
  177. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
  178. package/lib/commonjs/components/MessageInput/InputButtons.js +9 -9
  179. package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
  180. package/lib/commonjs/components/MessageInput/MessageInput.js +40 -40
  181. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  182. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js +3 -3
  183. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
  184. package/lib/commonjs/components/MessageInput/SendButton.js +5 -5
  185. package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
  186. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +2 -2
  187. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  188. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -10
  189. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  190. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -1
  191. package/lib/commonjs/components/MessageInput/hooks/useCountdown.js.map +1 -1
  192. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
  193. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  194. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
  195. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  196. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
  197. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  198. package/lib/commonjs/components/MessageList/MessageList.js +28 -28
  199. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  200. package/lib/commonjs/components/MessageList/MessageSystem.js +6 -6
  201. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  202. package/lib/commonjs/components/MessageList/TypingIndicator.js +5 -5
  203. package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
  204. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +2 -2
  205. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  206. package/lib/commonjs/components/MessageList/hooks/useMessageList.js +7 -7
  207. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  208. package/lib/commonjs/components/MessageList/hooks/useTypingString.js +2 -2
  209. package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
  210. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  211. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
  212. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
  213. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  214. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  215. package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
  216. package/lib/commonjs/components/MessageOverlay/MessageActionList.js +5 -5
  217. package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -1
  218. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +8 -8
  219. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  220. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +41 -34
  221. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
  222. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js +1 -1
  223. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
  224. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +16 -16
  225. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  226. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js +31 -34
  227. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
  228. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  229. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  230. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
  231. package/lib/commonjs/components/Reply/Reply.js +25 -19
  232. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  233. package/lib/commonjs/components/Thread/Thread.js +6 -6
  234. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  235. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +12 -12
  236. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  237. package/lib/commonjs/components/docs/data.js +45 -45
  238. package/lib/commonjs/components/docs/data.js.map +1 -1
  239. package/lib/commonjs/components/index.js +26 -0
  240. package/lib/commonjs/components/index.js.map +1 -1
  241. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
  242. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  243. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
  244. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  245. package/lib/commonjs/contexts/channelContext/ChannelContext.js +2 -2
  246. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  247. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js +2 -2
  248. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  249. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
  250. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  251. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
  252. package/lib/commonjs/contexts/chatContext/ChatContext.js +2 -2
  253. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  254. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  255. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  256. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js +2 -2
  257. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  258. package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
  259. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  260. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +18 -14
  261. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  262. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  263. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  264. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  265. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
  266. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  267. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  268. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  269. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  270. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  271. package/lib/commonjs/contexts/messagesContext/MessagesContext.js +2 -2
  272. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  273. package/lib/commonjs/contexts/overlayContext/OverlayContext.js +1 -1
  274. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  275. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +33 -31
  276. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  277. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +1 -1
  278. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  279. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  280. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +2 -2
  281. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  282. package/lib/commonjs/contexts/themeContext/ThemeContext.js +2 -2
  283. package/lib/commonjs/contexts/themeContext/ThemeContext.js.map +1 -1
  284. package/lib/commonjs/contexts/themeContext/utils/theme.js +20 -11
  285. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  286. package/lib/commonjs/contexts/threadContext/ThreadContext.js +2 -2
  287. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  288. package/lib/commonjs/contexts/translationContext/TranslationContext.js +3 -3
  289. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  290. package/lib/commonjs/contexts/typingContext/TypingContext.js +2 -2
  291. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
  292. package/lib/commonjs/contexts/utils/getDisplayName.js.map +1 -1
  293. package/lib/commonjs/emoji-data/index.js +2 -2
  294. package/lib/commonjs/emoji-data/index.js.map +1 -1
  295. package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
  296. package/lib/commonjs/icons/UserAdmin.js +62 -0
  297. package/lib/commonjs/icons/UserAdmin.js.map +1 -0
  298. package/lib/commonjs/icons/index.js +0 -26
  299. package/lib/commonjs/icons/index.js.map +1 -1
  300. package/lib/commonjs/icons/utils/base.js +1 -1
  301. package/lib/commonjs/index.js +6 -6
  302. package/lib/commonjs/mock-builders/api/error.js +1 -1
  303. package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
  304. package/lib/commonjs/mock-builders/generator/attachment.js +1 -3
  305. package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
  306. package/lib/commonjs/mock-builders/generator/channel.js +101 -51
  307. package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
  308. package/lib/commonjs/mock-builders/generator/user.js +32 -33
  309. package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
  310. package/lib/commonjs/mock-builders/mock.js +1 -1
  311. package/lib/commonjs/native.js +1 -1
  312. package/lib/commonjs/native.js.map +1 -1
  313. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js +7 -7
  314. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js.map +1 -1
  315. package/lib/commonjs/styleguideComponents/JsDoc.js +4 -4
  316. package/lib/commonjs/styleguideComponents/JsDoc.js.map +1 -1
  317. package/lib/commonjs/styleguideComponents/PathlineRenderer.js +7 -7
  318. package/lib/commonjs/styleguideComponents/PathlineRenderer.js.map +1 -1
  319. package/lib/commonjs/styleguideComponents/PropsRenderer.js +25 -25
  320. package/lib/commonjs/styleguideComponents/PropsRenderer.js.map +1 -1
  321. package/lib/commonjs/styleguideComponents/Wrapper.js +1 -1
  322. package/lib/commonjs/styleguideComponents/Wrapper.js.map +1 -1
  323. package/lib/commonjs/utils/Streami18n.js.map +1 -1
  324. package/lib/commonjs/utils/getResizedImageUrl.js +26 -0
  325. package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -0
  326. package/lib/commonjs/utils/getUrlOfImageAttachment.js +9 -0
  327. package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -0
  328. package/lib/commonjs/utils/utils.js +9 -3
  329. package/lib/commonjs/utils/utils.js.map +1 -1
  330. package/lib/commonjs/version.json +1 -1
  331. package/lib/module/components/Attachment/Attachment.js +12 -12
  332. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  333. package/lib/module/components/Attachment/AttachmentActions.js +4 -4
  334. package/lib/module/components/Attachment/AttachmentActions.js.map +1 -1
  335. package/lib/module/components/Attachment/Card.js +15 -15
  336. package/lib/module/components/Attachment/Card.js.map +1 -1
  337. package/lib/module/components/Attachment/FileAttachment.js +8 -8
  338. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  339. package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -4
  340. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  341. package/lib/module/components/Attachment/FileIcon.js.map +1 -1
  342. package/lib/module/components/Attachment/Gallery.js +97 -106
  343. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  344. package/lib/module/components/Attachment/Giphy.js +112 -148
  345. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  346. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  347. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  348. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  349. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  350. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  351. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  352. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  353. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  354. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  355. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  356. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  357. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  358. package/lib/module/components/Attachment/utils/buildGallery/types.js +4 -0
  359. package/lib/module/components/Attachment/utils/buildGallery/types.js.map +1 -0
  360. package/lib/module/components/Attachment/utils/getAspectRatio.js +14 -0
  361. package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -0
  362. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  363. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  364. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +9 -8
  365. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  366. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  367. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  368. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +16 -16
  369. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  370. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
  371. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  372. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
  373. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  374. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +11 -11
  375. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  376. package/lib/module/components/Avatar/Avatar.js +13 -7
  377. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  378. package/lib/module/components/Avatar/GroupAvatar.js +10 -4
  379. package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
  380. package/lib/module/components/Channel/Channel.js +64 -64
  381. package/lib/module/components/Channel/Channel.js.map +1 -1
  382. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  383. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  384. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  385. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  386. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  387. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  388. package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  389. package/lib/module/components/ChannelList/ChannelList.js +6 -6
  390. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  391. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js +4 -4
  392. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  393. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
  394. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  395. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -2
  396. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  397. package/lib/module/components/ChannelList/ChannelListMessenger.js +17 -17
  398. package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
  399. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  400. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  401. package/lib/module/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  402. package/lib/module/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  403. package/lib/module/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  404. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  405. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  406. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  407. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  408. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  409. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  410. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  411. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  412. package/lib/module/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  413. package/lib/module/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  414. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  415. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  416. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +83 -70
  417. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  418. package/lib/module/components/ChannelList/utils.js +1 -1
  419. package/lib/module/components/ChannelList/utils.js.map +1 -1
  420. package/lib/module/components/ChannelPreview/ChannelAvatar.js +2 -2
  421. package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  422. package/lib/module/components/ChannelPreview/ChannelPreview.js +4 -4
  423. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  424. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
  425. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  426. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js +48 -20
  427. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  428. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  429. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  430. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  431. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  432. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  433. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  434. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  435. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  436. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  437. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  438. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  439. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  440. package/lib/module/components/Chat/Chat.js +4 -4
  441. package/lib/module/components/Chat/Chat.js.map +1 -1
  442. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  443. package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
  444. package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
  445. package/lib/module/components/ImageGallery/ImageGallery.js +89 -56
  446. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  447. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
  448. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  449. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
  450. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  451. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
  452. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  453. package/lib/module/components/ImageGallery/components/ImageGrid.js +7 -7
  454. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  455. package/lib/module/components/ImageGallery/components/ImageGridHandle.js +5 -5
  456. package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  457. package/lib/module/components/Indicators/LoadingIndicator.js +9 -9
  458. package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
  459. package/lib/module/components/Message/Message.js +19 -15
  460. package/lib/module/components/Message/Message.js.map +1 -1
  461. package/lib/module/components/Message/MessageSimple/MessageAvatar.js +6 -6
  462. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  463. package/lib/module/components/Message/MessageSimple/MessageContent.js +19 -19
  464. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  465. package/lib/module/components/Message/MessageSimple/MessageDeleted.js +5 -5
  466. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  467. package/lib/module/components/Message/MessageSimple/MessageFooter.js +20 -16
  468. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  469. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +6 -6
  470. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  471. package/lib/module/components/Message/MessageSimple/MessageReplies.js +10 -10
  472. package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  473. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
  474. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  475. package/lib/module/components/Message/MessageSimple/MessageSimple.js +6 -6
  476. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  477. package/lib/module/components/Message/MessageSimple/MessageStatus.js +15 -13
  478. package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  479. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +3 -3
  480. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  481. package/lib/module/components/Message/MessageSimple/ReactionList.js +51 -51
  482. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
  483. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  484. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  485. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  486. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  487. package/lib/module/components/Message/MessageSimple/utils/renderText.js +151 -81
  488. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  489. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  490. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  491. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  492. package/lib/module/components/Message/hooks/useMessageActionHandlers.js +16 -3
  493. package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  494. package/lib/module/components/Message/hooks/useMessageActions.js +18 -14
  495. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
  496. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  497. package/lib/module/components/Message/utils/removeReservedFields.js.map +1 -1
  498. package/lib/module/components/MessageInput/AttachButton.js +3 -3
  499. package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
  500. package/lib/module/components/MessageInput/CommandsButton.js +3 -3
  501. package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
  502. package/lib/module/components/MessageInput/CooldownTimer.js +2 -2
  503. package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -1
  504. package/lib/module/components/MessageInput/FileUploadPreview.js +13 -13
  505. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  506. package/lib/module/components/MessageInput/ImageUploadPreview.js +7 -7
  507. package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
  508. package/lib/module/components/MessageInput/InputButtons.js +9 -9
  509. package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
  510. package/lib/module/components/MessageInput/MessageInput.js +40 -40
  511. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  512. package/lib/module/components/MessageInput/MoreOptionsButton.js +3 -3
  513. package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
  514. package/lib/module/components/MessageInput/SendButton.js +5 -5
  515. package/lib/module/components/MessageInput/SendButton.js.map +1 -1
  516. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +2 -2
  517. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  518. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -10
  519. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  520. package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -1
  521. package/lib/module/components/MessageInput/hooks/useCountdown.js.map +1 -1
  522. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
  523. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  524. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
  525. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  526. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
  527. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  528. package/lib/module/components/MessageList/MessageList.js +28 -28
  529. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  530. package/lib/module/components/MessageList/MessageSystem.js +6 -6
  531. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  532. package/lib/module/components/MessageList/TypingIndicator.js +5 -5
  533. package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
  534. package/lib/module/components/MessageList/TypingIndicatorContainer.js +2 -2
  535. package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  536. package/lib/module/components/MessageList/hooks/useMessageList.js +7 -7
  537. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  538. package/lib/module/components/MessageList/hooks/useTypingString.js +2 -2
  539. package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
  540. package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  541. package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
  542. package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
  543. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  544. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  545. package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
  546. package/lib/module/components/MessageOverlay/MessageActionList.js +5 -5
  547. package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -1
  548. package/lib/module/components/MessageOverlay/MessageActionListItem.js +8 -8
  549. package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  550. package/lib/module/components/MessageOverlay/MessageOverlay.js +41 -34
  551. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
  552. package/lib/module/components/MessageOverlay/OverlayBackdrop.js +1 -1
  553. package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
  554. package/lib/module/components/MessageOverlay/OverlayReactionList.js +16 -16
  555. package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  556. package/lib/module/components/MessageOverlay/OverlayReactions.js +31 -34
  557. package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
  558. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  559. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  560. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
  561. package/lib/module/components/Reply/Reply.js +25 -19
  562. package/lib/module/components/Reply/Reply.js.map +1 -1
  563. package/lib/module/components/Thread/Thread.js +6 -6
  564. package/lib/module/components/Thread/Thread.js.map +1 -1
  565. package/lib/module/components/Thread/components/ThreadFooterComponent.js +12 -12
  566. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  567. package/lib/module/components/docs/data.js +45 -45
  568. package/lib/module/components/docs/data.js.map +1 -1
  569. package/lib/module/components/index.js +26 -0
  570. package/lib/module/components/index.js.map +1 -1
  571. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
  572. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  573. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
  574. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  575. package/lib/module/contexts/channelContext/ChannelContext.js +2 -2
  576. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  577. package/lib/module/contexts/channelsContext/ChannelsContext.js +2 -2
  578. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  579. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
  580. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  581. package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
  582. package/lib/module/contexts/chatContext/ChatContext.js +2 -2
  583. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  584. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  585. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  586. package/lib/module/contexts/keyboardContext/KeyboardContext.js +2 -2
  587. package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  588. package/lib/module/contexts/messageContext/MessageContext.js +2 -2
  589. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  590. package/lib/module/contexts/messageInputContext/MessageInputContext.js +18 -14
  591. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  592. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  593. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  594. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  595. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
  596. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  597. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  598. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  599. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  600. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  601. package/lib/module/contexts/messagesContext/MessagesContext.js +2 -2
  602. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  603. package/lib/module/contexts/overlayContext/OverlayContext.js +1 -1
  604. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  605. package/lib/module/contexts/overlayContext/OverlayProvider.js +33 -31
  606. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  607. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +1 -1
  608. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  609. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  610. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +2 -2
  611. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  612. package/lib/module/contexts/themeContext/ThemeContext.js +2 -2
  613. package/lib/module/contexts/themeContext/ThemeContext.js.map +1 -1
  614. package/lib/module/contexts/themeContext/utils/theme.js +20 -11
  615. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  616. package/lib/module/contexts/threadContext/ThreadContext.js +2 -2
  617. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  618. package/lib/module/contexts/translationContext/TranslationContext.js +3 -3
  619. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  620. package/lib/module/contexts/typingContext/TypingContext.js +2 -2
  621. package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
  622. package/lib/module/contexts/utils/getDisplayName.js.map +1 -1
  623. package/lib/module/emoji-data/index.js +2 -2
  624. package/lib/module/emoji-data/index.js.map +1 -1
  625. package/lib/module/hooks/useStreami18n.js.map +1 -1
  626. package/lib/module/icons/UserAdmin.js +62 -0
  627. package/lib/module/icons/UserAdmin.js.map +1 -0
  628. package/lib/module/icons/index.js +0 -26
  629. package/lib/module/icons/index.js.map +1 -1
  630. package/lib/module/icons/utils/base.js +1 -1
  631. package/lib/module/index.js +6 -6
  632. package/lib/module/mock-builders/api/error.js +1 -1
  633. package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
  634. package/lib/module/mock-builders/generator/attachment.js +1 -3
  635. package/lib/module/mock-builders/generator/attachment.js.map +1 -1
  636. package/lib/module/mock-builders/generator/channel.js +101 -51
  637. package/lib/module/mock-builders/generator/channel.js.map +1 -1
  638. package/lib/module/mock-builders/generator/user.js +32 -33
  639. package/lib/module/mock-builders/generator/user.js.map +1 -1
  640. package/lib/module/mock-builders/mock.js +1 -1
  641. package/lib/module/native.js +1 -1
  642. package/lib/module/native.js.map +1 -1
  643. package/lib/module/styleguideComponents/ArgumentsRenderer.js +7 -7
  644. package/lib/module/styleguideComponents/ArgumentsRenderer.js.map +1 -1
  645. package/lib/module/styleguideComponents/JsDoc.js +4 -4
  646. package/lib/module/styleguideComponents/JsDoc.js.map +1 -1
  647. package/lib/module/styleguideComponents/PathlineRenderer.js +7 -7
  648. package/lib/module/styleguideComponents/PathlineRenderer.js.map +1 -1
  649. package/lib/module/styleguideComponents/PropsRenderer.js +25 -25
  650. package/lib/module/styleguideComponents/PropsRenderer.js.map +1 -1
  651. package/lib/module/styleguideComponents/Wrapper.js +1 -1
  652. package/lib/module/styleguideComponents/Wrapper.js.map +1 -1
  653. package/lib/module/utils/Streami18n.js.map +1 -1
  654. package/lib/module/utils/getResizedImageUrl.js +26 -0
  655. package/lib/module/utils/getResizedImageUrl.js.map +1 -0
  656. package/lib/module/utils/getUrlOfImageAttachment.js +9 -0
  657. package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -0
  658. package/lib/module/utils/utils.js +9 -3
  659. package/lib/module/utils/utils.js.map +1 -1
  660. package/lib/module/version.json +1 -1
  661. package/lib/typescript/components/Attachment/Attachment.d.ts +6 -6
  662. package/lib/typescript/components/Attachment/AttachmentActions.d.ts +5 -5
  663. package/lib/typescript/components/Attachment/Card.d.ts +5 -5
  664. package/lib/typescript/components/Attachment/FileAttachment.d.ts +6 -6
  665. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +4 -4
  666. package/lib/typescript/components/Attachment/Gallery.d.ts +6 -9
  667. package/lib/typescript/components/Attachment/Giphy.d.ts +7 -7
  668. package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts +23 -0
  669. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts +7 -0
  670. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts +7 -0
  671. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts +7 -0
  672. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +10 -0
  673. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts +137 -0
  674. package/lib/typescript/components/Attachment/utils/buildGallery/types.d.ts +23 -0
  675. package/lib/typescript/components/Attachment/utils/getAspectRatio.d.ts +9 -0
  676. package/lib/typescript/components/Attachment/utils/getGalleryImageBorderRadius.d.ts +22 -0
  677. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +4 -4
  678. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +3 -2
  679. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts +4 -4
  680. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +5 -5
  681. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +10 -11
  682. package/lib/typescript/components/Avatar/Avatar.d.ts +1 -1
  683. package/lib/typescript/components/Channel/Channel.d.ts +10 -10
  684. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +2 -2
  685. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +3 -3
  686. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +3 -3
  687. package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +4 -4
  688. package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +3 -3
  689. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +2 -2
  690. package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +2 -2
  691. package/lib/typescript/components/ChannelList/ChannelList.d.ts +15 -15
  692. package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +4 -4
  693. package/lib/typescript/components/ChannelList/hooks/listeners/useAddedToChannelNotification.d.ts +5 -5
  694. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelDeleted.d.ts +5 -5
  695. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelHidden.d.ts +5 -5
  696. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelTruncated.d.ts +5 -5
  697. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +5 -5
  698. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelVisible.d.ts +5 -5
  699. package/lib/typescript/components/ChannelList/hooks/listeners/useConnectionRecovered.d.ts +2 -2
  700. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessage.d.ts +4 -4
  701. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts +5 -5
  702. package/lib/typescript/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.d.ts +5 -5
  703. package/lib/typescript/components/ChannelList/hooks/listeners/useUserPresence.d.ts +4 -4
  704. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +2 -2
  705. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +11 -9
  706. package/lib/typescript/components/ChannelList/utils.d.ts +7 -7
  707. package/lib/typescript/components/ChannelPreview/ChannelAvatar.d.ts +3 -3
  708. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +7 -7
  709. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +4 -5
  710. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts +6 -6
  711. package/lib/typescript/components/ChannelPreview/ChannelPreviewMutedStatus.d.ts +9 -0
  712. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +3 -3
  713. package/lib/typescript/components/ChannelPreview/ChannelPreviewTitle.d.ts +3 -3
  714. package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts +3 -3
  715. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.d.ts +3 -3
  716. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts +4 -4
  717. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts +2 -2
  718. package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +5 -5
  719. package/lib/typescript/components/Chat/Chat.d.ts +3 -3
  720. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +2 -2
  721. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +2 -2
  722. package/lib/typescript/components/Chat/hooks/useMutedUsers.d.ts +2 -2
  723. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +12 -10
  724. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +1 -1
  725. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +10 -10
  726. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +10 -10
  727. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +10 -10
  728. package/lib/typescript/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.d.ts +1 -0
  729. package/lib/typescript/components/Message/Message.d.ts +12 -12
  730. package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts +5 -5
  731. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +4 -4
  732. package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts +6 -6
  733. package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +8 -8
  734. package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +4 -4
  735. package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts +4 -4
  736. package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts +3 -3
  737. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +4 -4
  738. package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +4 -4
  739. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +6 -6
  740. package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +4 -4
  741. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.d.ts +7 -0
  742. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.test.d.ts +1 -0
  743. package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +20 -6
  744. package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts +1 -0
  745. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +2 -2
  746. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +2 -2
  747. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +5 -5
  748. package/lib/typescript/components/Message/utils/messageActions.d.ts +7 -7
  749. package/lib/typescript/components/Message/utils/removeReservedFields.d.ts +2 -2
  750. package/lib/typescript/components/MessageInput/AttachButton.d.ts +5 -5
  751. package/lib/typescript/components/MessageInput/CommandsButton.d.ts +5 -5
  752. package/lib/typescript/components/MessageInput/FileUploadPreview.d.ts +4 -4
  753. package/lib/typescript/components/MessageInput/ImageUploadPreview.d.ts +4 -4
  754. package/lib/typescript/components/MessageInput/InputButtons.d.ts +5 -5
  755. package/lib/typescript/components/MessageInput/MessageInput.d.ts +4 -4
  756. package/lib/typescript/components/MessageInput/MoreOptionsButton.d.ts +5 -5
  757. package/lib/typescript/components/MessageInput/SendButton.d.ts +4 -4
  758. package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +2 -2
  759. package/lib/typescript/components/MessageInput/hooks/useCooldown.d.ts +2 -2
  760. package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +2 -2
  761. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +2 -2
  762. package/lib/typescript/components/MessageList/InlineLoadingMoreThreadIndicator.d.ts +2 -2
  763. package/lib/typescript/components/MessageList/MessageList.d.ts +7 -7
  764. package/lib/typescript/components/MessageList/MessageSystem.d.ts +5 -5
  765. package/lib/typescript/components/MessageList/TypingIndicator.d.ts +2 -2
  766. package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +4 -4
  767. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +5 -5
  768. package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts +2 -2
  769. package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +3 -3
  770. package/lib/typescript/components/MessageList/utils/getDateSeparators.d.ts +4 -4
  771. package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts +5 -5
  772. package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +2 -2
  773. package/lib/typescript/components/MessageList/utils/getReadStates.d.ts +8 -5
  774. package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +4 -4
  775. package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts +4 -3
  776. package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +4 -4
  777. package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts +6 -6
  778. package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +3 -1
  779. package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts +7 -0
  780. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +1 -1
  781. package/lib/typescript/components/Reply/Reply.d.ts +5 -5
  782. package/lib/typescript/components/Thread/Thread.d.ts +8 -8
  783. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +2 -2
  784. package/lib/typescript/components/index.d.ts +2 -0
  785. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +2 -2
  786. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +12 -12
  787. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +30 -22
  788. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +19 -19
  789. package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +17 -17
  790. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +11 -11
  791. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +8 -8
  792. package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts +2 -2
  793. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +12 -12
  794. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +39 -37
  795. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +3 -3
  796. package/lib/typescript/contexts/messageInputContext/hooks/useMessageDetailsForState.d.ts +3 -3
  797. package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +27 -25
  798. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.d.ts +12 -0
  799. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.test.d.ts +1 -0
  800. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +67 -67
  801. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +8 -8
  802. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts +2 -2
  803. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +8 -8
  804. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +21 -21
  805. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +17 -8
  806. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +10 -10
  807. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +2 -2
  808. package/lib/typescript/contexts/typingContext/TypingContext.d.ts +8 -8
  809. package/lib/typescript/hooks/useStreami18n.d.ts +1 -1
  810. package/lib/typescript/icons/{Left.d.ts → UserAdmin.d.ts} +1 -1
  811. package/lib/typescript/icons/index.d.ts +0 -2
  812. package/lib/typescript/types/types.d.ts +16 -13
  813. package/lib/typescript/utils/Streami18n.d.ts +6 -6
  814. package/lib/typescript/utils/getResizedImageUrl.d.ts +19 -0
  815. package/lib/typescript/utils/getUrlOfImageAttachment.d.ts +7 -0
  816. package/lib/typescript/utils/utils.d.ts +27 -22
  817. package/package.json +9 -13
  818. package/src/components/Attachment/Attachment.tsx +18 -59
  819. package/src/components/Attachment/AttachmentActions.tsx +17 -57
  820. package/src/components/Attachment/Card.tsx +17 -51
  821. package/src/components/Attachment/FileAttachment.tsx +16 -51
  822. package/src/components/Attachment/FileAttachmentGroup.tsx +16 -57
  823. package/src/components/Attachment/FileIcon.tsx +2 -2
  824. package/src/components/Attachment/Gallery.tsx +177 -242
  825. package/src/components/Attachment/Giphy.tsx +84 -128
  826. package/src/components/Attachment/__tests__/Attachment.test.js +11 -10
  827. package/src/components/Attachment/__tests__/Gallery.test.js +233 -0
  828. package/src/components/Attachment/__tests__/buildGallery.test.js +131 -0
  829. package/src/components/Attachment/utils/buildGallery/buildGallery.ts +77 -0
  830. package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +91 -0
  831. package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +99 -0
  832. package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +66 -0
  833. package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +48 -0
  834. package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +188 -0
  835. package/src/components/Attachment/utils/buildGallery/types.ts +27 -0
  836. package/src/components/Attachment/utils/getAspectRatio.ts +21 -0
  837. package/src/components/Attachment/utils/getGalleryImageBorderRadius.ts +71 -0
  838. package/src/components/AttachmentPicker/AttachmentPicker.tsx +4 -2
  839. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +23 -62
  840. package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +6 -4
  841. package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +13 -20
  842. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +20 -25
  843. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +25 -29
  844. package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.js +6 -8
  845. package/src/components/Avatar/Avatar.tsx +8 -11
  846. package/src/components/Avatar/GroupAvatar.tsx +7 -2
  847. package/src/components/Avatar/__tests__/Avatar.test.js +2 -2
  848. package/src/components/Channel/Channel.tsx +237 -313
  849. package/src/components/Channel/__tests__/Channel.test.js +10 -10
  850. package/src/components/Channel/__tests__/ownCapabilities.test.js +8 -8
  851. package/src/components/Channel/hooks/useCreateChannelContext.ts +4 -19
  852. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +52 -68
  853. package/src/components/Channel/hooks/useCreateMessagesContext.ts +4 -19
  854. package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +5 -19
  855. package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +16 -32
  856. package/src/components/Channel/hooks/useCreateThreadContext.ts +4 -19
  857. package/src/components/Channel/hooks/useCreateTypingContext.ts +4 -19
  858. package/src/components/ChannelList/ChannelList.tsx +36 -58
  859. package/src/components/ChannelList/ChannelListFooterLoadingIndicator.tsx +1 -2
  860. package/src/components/ChannelList/ChannelListHeaderErrorIndicator.tsx +3 -7
  861. package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +2 -2
  862. package/src/components/ChannelList/ChannelListMessenger.tsx +22 -74
  863. package/src/components/ChannelList/__tests__/ChannelList.test.js +73 -13
  864. package/src/components/ChannelList/__tests__/ChannelListMessenger.test.js +11 -12
  865. package/src/components/ChannelList/hooks/listeners/useAddedToChannelNotification.ts +17 -39
  866. package/src/components/ChannelList/hooks/listeners/useChannelDeleted.ts +15 -37
  867. package/src/components/ChannelList/hooks/listeners/useChannelHidden.ts +15 -37
  868. package/src/components/ChannelList/hooks/listeners/useChannelTruncated.ts +17 -39
  869. package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +15 -37
  870. package/src/components/ChannelList/hooks/listeners/useChannelVisible.ts +17 -39
  871. package/src/components/ChannelList/hooks/listeners/useConnectionRecovered.ts +3 -18
  872. package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +13 -36
  873. package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +17 -39
  874. package/src/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.ts +15 -37
  875. package/src/components/ChannelList/hooks/listeners/useUserPresence.ts +11 -33
  876. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +5 -21
  877. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +89 -77
  878. package/src/components/ChannelList/utils.ts +9 -42
  879. package/src/components/ChannelPreview/ChannelAvatar.tsx +6 -29
  880. package/src/components/ChannelPreview/ChannelPreview.tsx +21 -54
  881. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +13 -23
  882. package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +35 -55
  883. package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +50 -0
  884. package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +10 -30
  885. package/src/components/ChannelPreview/ChannelPreviewTitle.tsx +7 -28
  886. package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +7 -27
  887. package/src/components/ChannelPreview/__tests__/ChannelPreview.test.js +8 -9
  888. package/src/components/ChannelPreview/__tests__/ChannelPreviewMessenger.test.js +8 -9
  889. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.ts +9 -30
  890. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +8 -30
  891. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +9 -30
  892. package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +29 -80
  893. package/src/components/Chat/Chat.tsx +17 -45
  894. package/src/components/Chat/__tests__/Chat.test.js +5 -5
  895. package/src/components/Chat/hooks/useCreateChatContext.ts +4 -19
  896. package/src/components/Chat/hooks/useIsOnline.ts +8 -22
  897. package/src/components/Chat/hooks/useMutedUsers.ts +5 -20
  898. package/src/components/ImageGallery/ImageGallery.tsx +109 -86
  899. package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +1 -2
  900. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +20 -15
  901. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +42 -21
  902. package/src/components/ImageGallery/components/ImageGrid.tsx +47 -33
  903. package/src/components/ImageGallery/components/ImageGridHandle.tsx +1 -0
  904. package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +31 -0
  905. package/src/components/Indicators/LoadingIndicator.tsx +1 -2
  906. package/src/components/Message/Message.tsx +59 -112
  907. package/src/components/Message/MessageSimple/MessageAvatar.tsx +14 -56
  908. package/src/components/Message/MessageSimple/MessageContent.tsx +20 -64
  909. package/src/components/Message/MessageSimple/MessageDeleted.tsx +19 -61
  910. package/src/components/Message/MessageSimple/MessageFooter.tsx +28 -71
  911. package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +15 -56
  912. package/src/components/Message/MessageSimple/MessageReplies.tsx +15 -56
  913. package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx +7 -29
  914. package/src/components/Message/MessageSimple/MessageSimple.tsx +16 -57
  915. package/src/components/Message/MessageSimple/MessageStatus.tsx +21 -58
  916. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +19 -66
  917. package/src/components/Message/MessageSimple/ReactionList.tsx +47 -88
  918. package/src/components/Message/MessageSimple/__tests__/Message.test.js +9 -9
  919. package/src/components/Message/MessageSimple/__tests__/MessageAvatar.test.js +2 -2
  920. package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +9 -26
  921. package/src/components/Message/MessageSimple/__tests__/MessagePinnedHeader.test.js +2 -2
  922. package/src/components/Message/MessageSimple/__tests__/MessageReplies.test.js +2 -2
  923. package/src/components/Message/MessageSimple/__tests__/MessageStatus.test.js +4 -5
  924. package/src/components/Message/MessageSimple/__tests__/MessageTextContainer.test.js +2 -2
  925. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap +1 -1
  926. package/src/components/Message/MessageSimple/utils/parseLinks.test.ts +100 -0
  927. package/src/components/Message/MessageSimple/utils/parseLinks.ts +95 -0
  928. package/src/components/Message/MessageSimple/utils/renderText.test.tsx +70 -0
  929. package/src/components/Message/MessageSimple/utils/renderText.tsx +97 -94
  930. package/src/components/Message/hooks/useCreateMessageContext.ts +5 -21
  931. package/src/components/Message/hooks/useMessageActionHandlers.ts +21 -27
  932. package/src/components/Message/hooks/useMessageActions.tsx +21 -31
  933. package/src/components/Message/utils/messageActions.ts +9 -36
  934. package/src/components/Message/utils/removeReservedFields.ts +3 -18
  935. package/src/components/MessageInput/AttachButton.tsx +14 -56
  936. package/src/components/MessageInput/CommandsButton.tsx +16 -58
  937. package/src/components/MessageInput/CooldownTimer.tsx +1 -0
  938. package/src/components/MessageInput/FileUploadPreview.tsx +16 -58
  939. package/src/components/MessageInput/ImageUploadPreview.tsx +13 -56
  940. package/src/components/MessageInput/InputButtons.tsx +14 -55
  941. package/src/components/MessageInput/MessageInput.tsx +30 -72
  942. package/src/components/MessageInput/MoreOptionsButton.tsx +14 -56
  943. package/src/components/MessageInput/SendButton.tsx +13 -54
  944. package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +1 -1
  945. package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +5 -20
  946. package/src/components/MessageInput/__tests__/AttachButton.test.js +2 -2
  947. package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +15 -17
  948. package/src/components/MessageInput/__tests__/ImageUploadPreview.test.js +3 -3
  949. package/src/components/MessageInput/__tests__/MessageInput.test.js +8 -8
  950. package/src/components/MessageInput/__tests__/SendButton.test.js +2 -2
  951. package/src/components/MessageInput/__tests__/UploadProgressIndicator.test.js +2 -2
  952. package/src/components/MessageInput/__tests__/__snapshots__/FileUploadPreview.test.js.snap +1604 -4172
  953. package/src/components/MessageInput/__tests__/__snapshots__/MessageInput.test.js.snap +1 -643
  954. package/src/components/MessageInput/hooks/useCooldown.ts +7 -19
  955. package/src/components/MessageInput/hooks/useCountdown.ts +1 -0
  956. package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +3 -18
  957. package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +3 -18
  958. package/src/components/MessageList/InlineLoadingMoreThreadIndicator.tsx +3 -18
  959. package/src/components/MessageList/MessageList.tsx +37 -79
  960. package/src/components/MessageList/MessageSystem.tsx +7 -28
  961. package/src/components/MessageList/TypingIndicator.tsx +4 -20
  962. package/src/components/MessageList/TypingIndicatorContainer.tsx +14 -47
  963. package/src/components/MessageList/__tests__/MessageList.test.js +17 -17
  964. package/src/components/MessageList/__tests__/MessageSystem.test.js +3 -3
  965. package/src/components/MessageList/__tests__/ScrollToBottomButton.test.js +3 -3
  966. package/src/components/MessageList/__tests__/TypingIndicator.test.js +5 -6
  967. package/src/components/MessageList/__tests__/__snapshots__/TypingIndicator.test.js.snap +1 -1
  968. package/src/components/MessageList/hooks/useMessageList.ts +24 -59
  969. package/src/components/MessageList/hooks/useTypingString.ts +6 -22
  970. package/src/components/MessageList/utils/filterTypingUsers.ts +7 -28
  971. package/src/components/MessageList/utils/getDateSeparators.ts +6 -27
  972. package/src/components/MessageList/utils/getGroupStyles.ts +7 -29
  973. package/src/components/MessageList/utils/getLastReceivedMessage.ts +9 -19
  974. package/src/components/MessageList/utils/getReadStates.ts +5 -20
  975. package/src/components/MessageOverlay/MessageActionList.tsx +17 -58
  976. package/src/components/MessageOverlay/MessageActionListItem.tsx +23 -10
  977. package/src/components/MessageOverlay/MessageOverlay.tsx +56 -95
  978. package/src/components/MessageOverlay/OverlayBackdrop.tsx +1 -0
  979. package/src/components/MessageOverlay/OverlayReactionList.tsx +23 -78
  980. package/src/components/MessageOverlay/OverlayReactions.tsx +12 -8
  981. package/src/components/MessageOverlay/OverlayReactionsAvatar.tsx +27 -0
  982. package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +1 -0
  983. package/src/components/Reply/Reply.tsx +44 -81
  984. package/src/components/Thread/Thread.tsx +24 -58
  985. package/src/components/Thread/__tests__/Thread.test.js +12 -14
  986. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +13 -13
  987. package/src/components/Thread/components/ThreadFooterComponent.tsx +12 -48
  988. package/src/components/docs/data.js +38 -37
  989. package/src/components/index.ts +2 -0
  990. package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +1 -2
  991. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +10 -9
  992. package/src/contexts/channelContext/ChannelContext.tsx +16 -50
  993. package/src/contexts/channelsContext/ChannelsContext.tsx +37 -63
  994. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +38 -116
  995. package/src/contexts/channelsStateContext/useChannelState.ts +28 -60
  996. package/src/contexts/chatContext/ChatContext.tsx +15 -51
  997. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +13 -56
  998. package/src/contexts/keyboardContext/KeyboardContext.tsx +13 -8
  999. package/src/contexts/messageContext/MessageContext.tsx +16 -50
  1000. package/src/contexts/messageInputContext/MessageInputContext.tsx +88 -134
  1001. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +6 -23
  1002. package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +15 -34
  1003. package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +34 -90
  1004. package/src/contexts/messageOverlayContext/hooks/useResettableState.test.tsx +46 -0
  1005. package/src/contexts/messageOverlayContext/hooks/useResettableState.ts +22 -0
  1006. package/src/contexts/messagesContext/MessagesContext.tsx +73 -112
  1007. package/src/contexts/overlayContext/OverlayContext.tsx +28 -34
  1008. package/src/contexts/overlayContext/OverlayProvider.tsx +36 -46
  1009. package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +14 -55
  1010. package/src/contexts/suggestionsContext/SuggestionsContext.tsx +42 -42
  1011. package/src/contexts/suggestionsContext/__tests__/Suggestions.test.js +1 -0
  1012. package/src/contexts/themeContext/ThemeContext.tsx +1 -0
  1013. package/src/contexts/themeContext/utils/theme.ts +36 -19
  1014. package/src/contexts/threadContext/ThreadContext.tsx +14 -48
  1015. package/src/contexts/translationContext/TranslationContext.tsx +14 -9
  1016. package/src/contexts/typingContext/TypingContext.tsx +12 -46
  1017. package/src/contexts/utils/getDisplayName.ts +1 -0
  1018. package/src/emoji-data/index.js +1 -1
  1019. package/src/hooks/useStreami18n.ts +1 -1
  1020. package/src/icons/UserAdmin.tsx +23 -0
  1021. package/src/icons/index.ts +0 -2
  1022. package/src/mock-builders/api/sendMessage.js +1 -0
  1023. package/src/mock-builders/generator/attachment.js +0 -2
  1024. package/src/mock-builders/generator/channel.js +101 -64
  1025. package/src/mock-builders/generator/user.js +33 -26
  1026. package/src/native.ts +1 -0
  1027. package/src/styleguideComponents/ArgumentsRenderer.tsx +2 -1
  1028. package/src/styleguideComponents/JsDoc.tsx +3 -1
  1029. package/src/styleguideComponents/PathlineRenderer.tsx +2 -1
  1030. package/src/styleguideComponents/PropsRenderer.tsx +7 -4
  1031. package/src/styleguideComponents/Wrapper.tsx +1 -0
  1032. package/src/types/types.ts +16 -18
  1033. package/src/utils/Streami18n.ts +6 -6
  1034. package/src/utils/__tests__/Streami18n.test.js +1 -2
  1035. package/src/utils/getResizedImageUrl.ts +43 -0
  1036. package/src/utils/getUrlOfImageAttachment.ts +10 -0
  1037. package/src/utils/utils.ts +72 -132
  1038. package/src/version.json +1 -1
  1039. package/lib/commonjs/icons/Left.js +0 -38
  1040. package/lib/commonjs/icons/Left.js.map +0 -1
  1041. package/lib/commonjs/icons/Right.js +0 -38
  1042. package/lib/commonjs/icons/Right.js.map +0 -1
  1043. package/lib/module/icons/Left.js +0 -38
  1044. package/lib/module/icons/Left.js.map +0 -1
  1045. package/lib/module/icons/Right.js +0 -38
  1046. package/lib/module/icons/Right.js.map +0 -1
  1047. package/lib/typescript/icons/Right.d.ts +0 -3
  1048. package/src/icons/Left.tsx +0 -12
  1049. package/src/icons/Right.tsx +0 -12
@@ -91,7 +91,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
91
91
  __self: _this,
92
92
  __source: {
93
93
  fileName: _jsxFileName,
94
- lineNumber: 134,
94
+ lineNumber: 113,
95
95
  columnNumber: 5
96
96
  }
97
97
  }, alignment === 'left' && _react["default"].createElement(_reactNative.View, {
@@ -99,7 +99,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
99
99
  __self: _this,
100
100
  __source: {
101
101
  fileName: _jsxFileName,
102
- lineNumber: 136,
102
+ lineNumber: 115,
103
103
  columnNumber: 9
104
104
  }
105
105
  }, !noBorder && _react["default"].createElement(_reactNative.View, {
@@ -109,7 +109,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
109
109
  __self: _this,
110
110
  __source: {
111
111
  fileName: _jsxFileName,
112
- lineNumber: 138,
112
+ lineNumber: 117,
113
113
  columnNumber: 13
114
114
  }
115
115
  }), _react["default"].createElement(MessageRepliesAvatars, {
@@ -118,7 +118,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
118
118
  __self: _this,
119
119
  __source: {
120
120
  fileName: _jsxFileName,
121
- lineNumber: 147,
121
+ lineNumber: 126,
122
122
  columnNumber: 11
123
123
  }
124
124
  })), _react["default"].createElement(_reactNative.TouchableOpacity, {
@@ -154,7 +154,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
154
154
  __self: _this,
155
155
  __source: {
156
156
  fileName: _jsxFileName,
157
- lineNumber: 150,
157
+ lineNumber: 129,
158
158
  columnNumber: 7
159
159
  }
160
160
  }, _react["default"].createElement(_reactNative.Text, {
@@ -164,7 +164,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
164
164
  __self: _this,
165
165
  __source: {
166
166
  fileName: _jsxFileName,
167
- lineNumber: 181,
167
+ lineNumber: 160,
168
168
  columnNumber: 9
169
169
  }
170
170
  }, message.reply_count === 1 ? t('1 Thread Reply') : t('{{ replyCount }} Thread Replies', {
@@ -174,7 +174,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
174
174
  __self: _this,
175
175
  __source: {
176
176
  fileName: _jsxFileName,
177
- lineNumber: 190,
177
+ lineNumber: 169,
178
178
  columnNumber: 9
179
179
  }
180
180
  }, _react["default"].createElement(MessageRepliesAvatars, {
@@ -183,7 +183,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
183
183
  __self: _this,
184
184
  __source: {
185
185
  fileName: _jsxFileName,
186
- lineNumber: 191,
186
+ lineNumber: 170,
187
187
  columnNumber: 11
188
188
  }
189
189
  }), !noBorder && _react["default"].createElement(_reactNative.View, {
@@ -193,7 +193,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
193
193
  __self: _this,
194
194
  __source: {
195
195
  fileName: _jsxFileName,
196
- lineNumber: 193,
196
+ lineNumber: 172,
197
197
  columnNumber: 13
198
198
  }
199
199
  })));
@@ -257,7 +257,7 @@ var MessageReplies = function MessageReplies(props) {
257
257
  __self: _this,
258
258
  __source: {
259
259
  fileName: _jsxFileName,
260
- lineNumber: 293,
260
+ lineNumber: 252,
261
261
  columnNumber: 5
262
262
  }
263
263
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageReplies.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","marginTop","curveContainer","leftMessageRepliesCurve","borderBottomLeftRadius","borderRightColor","Platform","select","android","borderRightWidth","messageRepliesCurve","borderTopColor","borderTopWidth","borderWidth","height","width","messageRepliesText","fontSize","fontWeight","paddingBottom","paddingLeft","rightMessageRepliesCurve","borderBottomRightRadius","borderLeftColor","borderLeftWidth","MessageRepliesWithContext","props","alignment","message","MessageRepliesAvatars","noBorder","onLongPress","onOpenThread","onPress","onPressIn","preventPress","repliesCurveColor","t","threadList","theme","accent_blue","colors","messageSimple","replies","leftCurve","rightCurve","reply_count","borderColor","event","emitter","defaultHandler","color","replyCount","areEqual","prevProps","nextProps","prevMessage","prevNoBorder","prevOnOpenThread","prevT","prevThreadList","nextMessage","nextNoBorder","nextOnOpenThread","nextT","nextThreadList","threadListEqual","messageReplyCountEqual","noBorderEqual","tEqual","onOpenThreadEqual","MemoizedMessageReplies","React","memo","MessageReplies","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { ColorValue, Platform, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../../contexts/translationContext/TranslationContext';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n flexDirection: 'row',\n marginTop: 8,\n },\n curveContainer: {\n flexDirection: 'row',\n },\n leftMessageRepliesCurve: {\n borderBottomLeftRadius: 16,\n borderRightColor: 'transparent',\n ...Platform.select({\n android: {\n borderRightWidth: 0,\n },\n }),\n },\n messageRepliesCurve: {\n borderTopColor: 'transparent',\n borderTopWidth: 0,\n borderWidth: 1,\n height: 16,\n width: 16,\n },\n messageRepliesText: {\n fontSize: 12,\n fontWeight: '700',\n paddingBottom: 5,\n paddingLeft: 8,\n },\n rightMessageRepliesCurve: {\n borderBottomRightRadius: 16,\n borderLeftColor: 'transparent',\n ...Platform.select({\n android: {\n borderLeftWidth: 0,\n },\n }),\n },\n});\n\nexport type MessageRepliesPropsWithContext<\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 | 'message'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'onOpenThread'\n | 'preventPress'\n | 'threadList'\n> &\n Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'MessageRepliesAvatars'> &\n Pick<TranslationContextValue, 't'> & {\n noBorder?: boolean;\n repliesCurveColor?: ColorValue;\n };\n\nconst MessageRepliesWithContext = <\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: MessageRepliesPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment,\n message,\n MessageRepliesAvatars,\n noBorder,\n onLongPress,\n onOpenThread,\n onPress,\n onPressIn,\n preventPress,\n repliesCurveColor,\n t,\n threadList,\n } = props;\n\n const {\n theme: {\n colors: { accent_blue },\n messageSimple: {\n replies: { container, leftCurve, messageRepliesText, rightCurve },\n },\n },\n } = useTheme();\n\n if (threadList || !message.reply_count) return null;\n\n return (\n <View style={styles.curveContainer}>\n {alignment === 'left' && (\n <View testID='message-replies-left'>\n {!noBorder && (\n <View\n style={[\n { borderColor: repliesCurveColor },\n styles.messageRepliesCurve,\n styles.leftMessageRepliesCurve,\n leftCurve,\n ]}\n />\n )}\n <MessageRepliesAvatars alignment={alignment} message={message} />\n </View>\n )}\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'messageReplies',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: onOpenThread,\n emitter: 'messageReplies',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: onOpenThread,\n emitter: 'messageReplies',\n event,\n });\n }\n }}\n style={[styles.container, container]}\n testID='message-replies'\n >\n <Text style={[styles.messageRepliesText, { color: accent_blue }, messageRepliesText]}>\n {message.reply_count === 1\n ? t('1 Thread Reply')\n : t('{{ replyCount }} Thread Replies', {\n replyCount: message.reply_count,\n })}\n </Text>\n </TouchableOpacity>\n {alignment === 'right' && (\n <View testID='message-replies-right'>\n <MessageRepliesAvatars alignment={alignment} message={message} />\n {!noBorder && (\n <View\n style={[\n { borderColor: repliesCurveColor },\n styles.messageRepliesCurve,\n styles.rightMessageRepliesCurve,\n rightCurve,\n ]}\n />\n )}\n </View>\n )}\n </View>\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: MessageRepliesPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: MessageRepliesPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n message: prevMessage,\n noBorder: prevNoBorder,\n onOpenThread: prevOnOpenThread,\n t: prevT,\n threadList: prevThreadList,\n } = prevProps;\n const {\n message: nextMessage,\n noBorder: nextNoBorder,\n onOpenThread: nextOnOpenThread,\n t: nextT,\n threadList: nextThreadList,\n } = nextProps;\n\n const threadListEqual = prevThreadList === nextThreadList;\n if (!threadListEqual) return false;\n\n const messageReplyCountEqual = prevMessage.reply_count === nextMessage.reply_count;\n if (!messageReplyCountEqual) return false;\n\n const noBorderEqual = prevNoBorder === nextNoBorder;\n if (!noBorderEqual) return false;\n\n const tEqual = prevT === nextT;\n if (!tEqual) return false;\n\n const onOpenThreadEqual = prevOnOpenThread === nextOnOpenThread;\n if (!onOpenThreadEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageReplies = React.memo(\n MessageRepliesWithContext,\n areEqual,\n) as typeof MessageRepliesWithContext;\n\nexport type MessageRepliesProps<\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<MessageRepliesPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;\n\nexport const MessageReplies = <\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: MessageRepliesProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment,\n message,\n onLongPress,\n onOpenThread,\n onPress,\n onPressIn,\n preventPress,\n threadList,\n } = useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { MessageRepliesAvatars } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { t } = useTranslationContext();\n\n return (\n <MemoizedMessageReplies\n {...{\n alignment,\n message,\n MessageRepliesAvatars,\n onLongPress,\n onOpenThread,\n onPress,\n onPressIn,\n preventPress,\n t,\n threadList,\n }}\n {...props}\n />\n );\n};\n\nMessageReplies.displayName = 'MessageReplies{messageSimple{replies}}';\n"]}
1
+ {"version":3,"sources":["MessageReplies.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","marginTop","curveContainer","leftMessageRepliesCurve","borderBottomLeftRadius","borderRightColor","Platform","select","android","borderRightWidth","messageRepliesCurve","borderTopColor","borderTopWidth","borderWidth","height","width","messageRepliesText","fontSize","fontWeight","paddingBottom","paddingLeft","rightMessageRepliesCurve","borderBottomRightRadius","borderLeftColor","borderLeftWidth","MessageRepliesWithContext","props","alignment","message","MessageRepliesAvatars","noBorder","onLongPress","onOpenThread","onPress","onPressIn","preventPress","repliesCurveColor","t","threadList","theme","accent_blue","colors","messageSimple","replies","leftCurve","rightCurve","reply_count","borderColor","event","emitter","defaultHandler","color","replyCount","areEqual","prevProps","nextProps","prevMessage","prevNoBorder","prevOnOpenThread","prevT","prevThreadList","nextMessage","nextNoBorder","nextOnOpenThread","nextT","nextThreadList","threadListEqual","messageReplyCountEqual","noBorderEqual","tEqual","onOpenThreadEqual","MemoizedMessageReplies","React","memo","MessageReplies","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { ColorValue, Platform, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../../contexts/translationContext/TranslationContext';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n flexDirection: 'row',\n marginTop: 8,\n },\n curveContainer: {\n flexDirection: 'row',\n },\n leftMessageRepliesCurve: {\n borderBottomLeftRadius: 16,\n borderRightColor: 'transparent',\n ...Platform.select({\n android: {\n borderRightWidth: 0,\n },\n }),\n },\n messageRepliesCurve: {\n borderTopColor: 'transparent',\n borderTopWidth: 0,\n borderWidth: 1,\n height: 16,\n width: 16,\n },\n messageRepliesText: {\n fontSize: 12,\n fontWeight: '700',\n paddingBottom: 5,\n paddingLeft: 8,\n },\n rightMessageRepliesCurve: {\n borderBottomRightRadius: 16,\n borderLeftColor: 'transparent',\n ...Platform.select({\n android: {\n borderLeftWidth: 0,\n },\n }),\n },\n});\n\nexport type MessageRepliesPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n | 'alignment'\n | 'message'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'onOpenThread'\n | 'preventPress'\n | 'threadList'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'MessageRepliesAvatars'> &\n Pick<TranslationContextValue, 't'> & {\n noBorder?: boolean;\n repliesCurveColor?: ColorValue;\n };\n\nconst MessageRepliesWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageRepliesPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n message,\n MessageRepliesAvatars,\n noBorder,\n onLongPress,\n onOpenThread,\n onPress,\n onPressIn,\n preventPress,\n repliesCurveColor,\n t,\n threadList,\n } = props;\n\n const {\n theme: {\n colors: { accent_blue },\n messageSimple: {\n replies: { container, leftCurve, messageRepliesText, rightCurve },\n },\n },\n } = useTheme();\n\n if (threadList || !message.reply_count) return null;\n\n return (\n <View style={styles.curveContainer}>\n {alignment === 'left' && (\n <View testID='message-replies-left'>\n {!noBorder && (\n <View\n style={[\n { borderColor: repliesCurveColor },\n styles.messageRepliesCurve,\n styles.leftMessageRepliesCurve,\n leftCurve,\n ]}\n />\n )}\n <MessageRepliesAvatars alignment={alignment} message={message} />\n </View>\n )}\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'messageReplies',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: onOpenThread,\n emitter: 'messageReplies',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: onOpenThread,\n emitter: 'messageReplies',\n event,\n });\n }\n }}\n style={[styles.container, container]}\n testID='message-replies'\n >\n <Text style={[styles.messageRepliesText, { color: accent_blue }, messageRepliesText]}>\n {message.reply_count === 1\n ? t('1 Thread Reply')\n : t('{{ replyCount }} Thread Replies', {\n replyCount: message.reply_count,\n })}\n </Text>\n </TouchableOpacity>\n {alignment === 'right' && (\n <View testID='message-replies-right'>\n <MessageRepliesAvatars alignment={alignment} message={message} />\n {!noBorder && (\n <View\n style={[\n { borderColor: repliesCurveColor },\n styles.messageRepliesCurve,\n styles.rightMessageRepliesCurve,\n rightCurve,\n ]}\n />\n )}\n </View>\n )}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessageRepliesPropsWithContext<StreamChatGenerics>,\n nextProps: MessageRepliesPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n message: prevMessage,\n noBorder: prevNoBorder,\n onOpenThread: prevOnOpenThread,\n t: prevT,\n threadList: prevThreadList,\n } = prevProps;\n const {\n message: nextMessage,\n noBorder: nextNoBorder,\n onOpenThread: nextOnOpenThread,\n t: nextT,\n threadList: nextThreadList,\n } = nextProps;\n\n const threadListEqual = prevThreadList === nextThreadList;\n if (!threadListEqual) return false;\n\n const messageReplyCountEqual = prevMessage.reply_count === nextMessage.reply_count;\n if (!messageReplyCountEqual) return false;\n\n const noBorderEqual = prevNoBorder === nextNoBorder;\n if (!noBorderEqual) return false;\n\n const tEqual = prevT === nextT;\n if (!tEqual) return false;\n\n const onOpenThreadEqual = prevOnOpenThread === nextOnOpenThread;\n if (!onOpenThreadEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageReplies = React.memo(\n MessageRepliesWithContext,\n areEqual,\n) as typeof MessageRepliesWithContext;\n\nexport type MessageRepliesProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<MessageRepliesPropsWithContext<StreamChatGenerics>>;\n\nexport const MessageReplies = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageRepliesProps<StreamChatGenerics>,\n) => {\n const {\n alignment,\n message,\n onLongPress,\n onOpenThread,\n onPress,\n onPressIn,\n preventPress,\n threadList,\n } = useMessageContext<StreamChatGenerics>();\n const { MessageRepliesAvatars } = useMessagesContext<StreamChatGenerics>();\n const { t } = useTranslationContext();\n\n return (\n <MemoizedMessageReplies\n {...{\n alignment,\n message,\n MessageRepliesAvatars,\n onLongPress,\n onOpenThread,\n onPress,\n onPressIn,\n preventPress,\n t,\n threadList,\n }}\n {...props}\n />\n );\n};\n\nMessageReplies.displayName = 'MessageReplies{messageSimple{replies}}';\n"]}
@@ -11,10 +11,10 @@ var _react = _interopRequireDefault(require("react"));
11
11
 
12
12
  var _reactNative = require("react-native");
13
13
 
14
- var _Avatar = require("../../Avatar/Avatar");
15
-
16
14
  var _ThemeContext = require("../../../contexts/themeContext/ThemeContext");
17
15
 
16
+ var _Avatar = require("../../Avatar/Avatar");
17
+
18
18
  var _this = this,
19
19
  _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx";
20
20
 
@@ -56,7 +56,7 @@ var MessageRepliesAvatars = function MessageRepliesAvatars(props) {
56
56
  __self: _this,
57
57
  __source: {
58
58
  fileName: _jsxFileName,
59
- lineNumber: 75,
59
+ lineNumber: 53,
60
60
  columnNumber: 5
61
61
  }
62
62
  }, avatars.map(function (user, i) {
@@ -68,7 +68,7 @@ var MessageRepliesAvatars = function MessageRepliesAvatars(props) {
68
68
  __self: _this,
69
69
  __source: {
70
70
  fileName: _jsxFileName,
71
- lineNumber: 82,
71
+ lineNumber: 60,
72
72
  columnNumber: 9
73
73
  }
74
74
  }, _react["default"].createElement(_Avatar.Avatar, {
@@ -82,7 +82,7 @@ var MessageRepliesAvatars = function MessageRepliesAvatars(props) {
82
82
  __self: _this,
83
83
  __source: {
84
84
  fileName: _jsxFileName,
85
- lineNumber: 93,
85
+ lineNumber: 71,
86
86
  columnNumber: 11
87
87
  }
88
88
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageRepliesAvatars.tsx"],"names":["styles","StyleSheet","create","avatarContainer","alignItems","flexDirection","paddingTop","topAvatar","position","MessageRepliesAvatars","props","alignment","message","theme","white_snow","colors","messageSimple","replies","avatar","avatarContainerMultiple","avatarContainerSingle","avatarSize","leftAvatarsContainer","rightAvatarsContainer","avatars","thread_participants","slice","hasMoreThanOneReply","length","marginLeft","map","user","i","id","paddingLeft","borderColor","borderWidth","image","name"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AAEA;;;;;AAcA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,eAAe,EAAE;AACfC,IAAAA,UAAU,EAAE,QADG;AAEfC,IAAAA,aAAa,EAAE,KAFA;AAGfC,IAAAA,UAAU,EAAE;AAHG,GADc;AAM/BC,EAAAA,SAAS,EAAE;AACTD,IAAAA,UAAU,EAAE,CADH;AAETE,IAAAA,QAAQ,EAAE;AAFD;AANoB,CAAlB,CAAf;;AAsBO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CASnCC,KATmC,EAUhC;AAAA;;AACH,MAAQC,SAAR,GAA+BD,KAA/B,CAAQC,SAAR;AAAA,MAAmBC,OAAnB,GAA+BF,KAA/B,CAAmBE,OAAnB;;AAEA,kBAcI,6BAdJ;AAAA,kCACEC,KADF;AAAA,MAEcC,UAFd,mBAEIC,MAFJ,CAEcD,UAFd;AAAA,8CAGIE,aAHJ,CAIMC,OAJN;AAAA,MAKQC,MALR,yBAKQA,MALR;AAAA,MAMQC,uBANR,yBAMQA,uBANR;AAAA,MAOQC,qBAPR,yBAOQA,qBAPR;AAAA,MAQQC,UARR,yBAQQA,UARR;AAAA,MASQC,oBATR,yBASQA,oBATR;AAAA,MAUQC,qBAVR,yBAUQA,qBAVR;;AAgBA,MAAMC,OAAO,GAAG,0BAAAZ,OAAO,CAACa,mBAAR,2CAA6BC,KAA7B,CAAmC,CAAC,CAApC,MAA0C,EAA1D;AACA,MAAMC,mBAAmB,GAAGH,OAAO,CAACI,MAAR,GAAiB,CAA7C;AAEA,SACE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL5B,MAAM,CAACG,eADF,EAELQ,SAAS,KAAK,OAAd;AAA0BkB,MAAAA,UAAU,EAAE;AAAtC,OAA4CN,qBAA5C,IAAsED,oBAFjE,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAMGE,OAAO,CAACM,GAAR,CAAY,UAACC,IAAD,EAAOC,CAAP;AAAA,WACX,gCAAC,iBAAD;AACE,MAAA,GAAG,EAAED,IAAI,CAACE,EADZ;AAEE,MAAA,KAAK,EACHD,CAAC,KAAK,CAAN,iCACShC,MAAM,CAACO,SADhB,EAC8Ba,qBAD9B;AAGMc,QAAAA,WAAW,EAAEP,mBAAmB,GAAG,CAAH,GAAO;AAH7C,SAISR,uBAJT,CAHJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OAWE,gCAAC,cAAD;AACE,MAAA,cAAc,EAAE,CACda,CAAC,KAAK,CAAN,IAAW;AACTG,QAAAA,WAAW,EAAErB,UADJ;AAETsB,QAAAA,WAAW,EAAE;AAFJ,OADG,EAKdlB,MALc,CADlB;AAQE,MAAA,KAAK,EAAEa,IAAI,CAACM,KARd;AASE,MAAA,IAAI,EAAEN,IAAI,CAACO,IATb;AAUE,MAAA,IAAI,EAAEjB,UAAU,GAAGA,UAAH,GAAgBW,CAAC,KAAK,CAAN,GAAU,EAAV,GAAe,EAVjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAXF,CADW;AAAA,GAAZ,CANH,CADF;AAmCD,CAnEM","sourcesContent":["import React from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport { Avatar } from '../../Avatar/Avatar';\n\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport type { MessageContextValue } from '../../../contexts/messageContext/MessageContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nconst styles = StyleSheet.create({\n avatarContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n paddingTop: 2,\n },\n topAvatar: {\n paddingTop: 2,\n position: 'absolute',\n },\n});\n\nexport type MessageRepliesAvatarsProps<\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<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'alignment' | 'message'>;\n\nexport const MessageRepliesAvatars = <\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 DefaultUserType = DefaultUserType,\n>(\n props: MessageRepliesAvatarsProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { alignment, message } = props;\n\n const {\n theme: {\n colors: { white_snow },\n messageSimple: {\n replies: {\n avatar,\n avatarContainerMultiple,\n avatarContainerSingle,\n avatarSize,\n leftAvatarsContainer,\n rightAvatarsContainer,\n },\n },\n },\n } = useTheme();\n\n const avatars = message.thread_participants?.slice(-2) || [];\n const hasMoreThanOneReply = avatars.length > 1;\n\n return (\n <View\n style={[\n styles.avatarContainer,\n alignment === 'right' ? { marginLeft: 8, ...rightAvatarsContainer } : leftAvatarsContainer,\n ]}\n >\n {avatars.map((user, i) => (\n <View\n key={user.id}\n style={\n i === 1\n ? { ...styles.topAvatar, ...avatarContainerSingle }\n : {\n paddingLeft: hasMoreThanOneReply ? 8 : 0,\n ...avatarContainerMultiple,\n }\n }\n >\n <Avatar\n containerStyle={[\n i === 1 && {\n borderColor: white_snow,\n borderWidth: 1,\n },\n avatar,\n ]}\n image={user.image}\n name={user.name}\n size={avatarSize ? avatarSize : i === 1 ? 18 : 16}\n />\n </View>\n ))}\n </View>\n );\n};\n"]}
1
+ {"version":3,"sources":["MessageRepliesAvatars.tsx"],"names":["styles","StyleSheet","create","avatarContainer","alignItems","flexDirection","paddingTop","topAvatar","position","MessageRepliesAvatars","props","alignment","message","theme","white_snow","colors","messageSimple","replies","avatar","avatarContainerMultiple","avatarContainerSingle","avatarSize","leftAvatarsContainer","rightAvatarsContainer","avatars","thread_participants","slice","hasMoreThanOneReply","length","marginLeft","map","user","i","id","paddingLeft","borderColor","borderWidth","image","name"],"mappings":";;;;;;;;;AAAA;;AACA;;AAGA;;AAGA;;;;;AAEA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,eAAe,EAAE;AACfC,IAAAA,UAAU,EAAE,QADG;AAEfC,IAAAA,aAAa,EAAE,KAFA;AAGfC,IAAAA,UAAU,EAAE;AAHG,GADc;AAM/BC,EAAAA,SAAS,EAAE;AACTD,IAAAA,UAAU,EAAE,CADH;AAETE,IAAAA,QAAQ,EAAE;AAFD;AANoB,CAAlB,CAAf;;AAgBO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAGnCC,KAHmC,EAIhC;AAAA;;AACH,MAAQC,SAAR,GAA+BD,KAA/B,CAAQC,SAAR;AAAA,MAAmBC,OAAnB,GAA+BF,KAA/B,CAAmBE,OAAnB;;AAEA,kBAcI,6BAdJ;AAAA,kCACEC,KADF;AAAA,MAEcC,UAFd,mBAEIC,MAFJ,CAEcD,UAFd;AAAA,8CAGIE,aAHJ,CAIMC,OAJN;AAAA,MAKQC,MALR,yBAKQA,MALR;AAAA,MAMQC,uBANR,yBAMQA,uBANR;AAAA,MAOQC,qBAPR,yBAOQA,qBAPR;AAAA,MAQQC,UARR,yBAQQA,UARR;AAAA,MASQC,oBATR,yBASQA,oBATR;AAAA,MAUQC,qBAVR,yBAUQA,qBAVR;;AAgBA,MAAMC,OAAO,GAAG,0BAAAZ,OAAO,CAACa,mBAAR,2CAA6BC,KAA7B,CAAmC,CAAC,CAApC,MAA0C,EAA1D;AACA,MAAMC,mBAAmB,GAAGH,OAAO,CAACI,MAAR,GAAiB,CAA7C;AAEA,SACE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL5B,MAAM,CAACG,eADF,EAELQ,SAAS,KAAK,OAAd;AAA0BkB,MAAAA,UAAU,EAAE;AAAtC,OAA4CN,qBAA5C,IAAsED,oBAFjE,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAMGE,OAAO,CAACM,GAAR,CAAY,UAACC,IAAD,EAAOC,CAAP;AAAA,WACX,gCAAC,iBAAD;AACE,MAAA,GAAG,EAAED,IAAI,CAACE,EADZ;AAEE,MAAA,KAAK,EACHD,CAAC,KAAK,CAAN,iCACShC,MAAM,CAACO,SADhB,EAC8Ba,qBAD9B;AAGMc,QAAAA,WAAW,EAAEP,mBAAmB,GAAG,CAAH,GAAO;AAH7C,SAISR,uBAJT,CAHJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OAWE,gCAAC,cAAD;AACE,MAAA,cAAc,EAAE,CACda,CAAC,KAAK,CAAN,IAAW;AACTG,QAAAA,WAAW,EAAErB,UADJ;AAETsB,QAAAA,WAAW,EAAE;AAFJ,OADG,EAKdlB,MALc,CADlB;AAQE,MAAA,KAAK,EAAEa,IAAI,CAACM,KARd;AASE,MAAA,IAAI,EAAEN,IAAI,CAACO,IATb;AAUE,MAAA,IAAI,EAAEjB,UAAU,GAAGA,UAAH,GAAgBW,CAAC,KAAK,CAAN,GAAU,EAAV,GAAe,EAVjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAXF,CADW;AAAA,GAAZ,CANH,CADF;AAmCD,CA7DM","sourcesContent":["import React from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport type { MessageContextValue } from '../../../contexts/messageContext/MessageContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { Avatar } from '../../Avatar/Avatar';\n\nconst styles = StyleSheet.create({\n avatarContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n paddingTop: 2,\n },\n topAvatar: {\n paddingTop: 2,\n position: 'absolute',\n },\n});\n\nexport type MessageRepliesAvatarsProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageContextValue<StreamChatGenerics>, 'alignment' | 'message'>;\n\nexport const MessageRepliesAvatars = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageRepliesAvatarsProps<StreamChatGenerics>,\n) => {\n const { alignment, message } = props;\n\n const {\n theme: {\n colors: { white_snow },\n messageSimple: {\n replies: {\n avatar,\n avatarContainerMultiple,\n avatarContainerSingle,\n avatarSize,\n leftAvatarsContainer,\n rightAvatarsContainer,\n },\n },\n },\n } = useTheme();\n\n const avatars = message.thread_participants?.slice(-2) || [];\n const hasMoreThanOneReply = avatars.length > 1;\n\n return (\n <View\n style={[\n styles.avatarContainer,\n alignment === 'right' ? { marginLeft: 8, ...rightAvatarsContainer } : leftAvatarsContainer,\n ]}\n >\n {avatars.map((user, i) => (\n <View\n key={user.id}\n style={\n i === 1\n ? { ...styles.topAvatar, ...avatarContainerSingle }\n : {\n paddingLeft: hasMoreThanOneReply ? 8 : 0,\n ...avatarContainerMultiple,\n }\n }\n >\n <Avatar\n containerStyle={[\n i === 1 && {\n borderColor: white_snow,\n borderWidth: 1,\n },\n avatar,\n ]}\n image={user.image}\n name={user.name}\n size={avatarSize ? avatarSize : i === 1 ? 18 : 16}\n />\n </View>\n ))}\n </View>\n );\n};\n"]}
@@ -64,7 +64,7 @@ var MessageSimpleWithContext = function MessageSimpleWithContext(props) {
64
64
  __self: _this,
65
65
  __source: {
66
66
  fileName: _jsxFileName,
67
- lineNumber: 94,
67
+ lineNumber: 73,
68
68
  columnNumber: 26
69
69
  }
70
70
  }), _react["default"].createElement(_reactNative.View, {
@@ -77,14 +77,14 @@ var MessageSimpleWithContext = function MessageSimpleWithContext(props) {
77
77
  __self: _this,
78
78
  __source: {
79
79
  fileName: _jsxFileName,
80
- lineNumber: 95,
80
+ lineNumber: 74,
81
81
  columnNumber: 7
82
82
  }
83
83
  }, alignment === 'left' && _react["default"].createElement(MessageAvatar, {
84
84
  __self: _this,
85
85
  __source: {
86
86
  fileName: _jsxFileName,
87
- lineNumber: 111,
87
+ lineNumber: 90,
88
88
  columnNumber: 34
89
89
  }
90
90
  }), _react["default"].createElement(MessageContent, {
@@ -92,7 +92,7 @@ var MessageSimpleWithContext = function MessageSimpleWithContext(props) {
92
92
  __self: _this,
93
93
  __source: {
94
94
  fileName: _jsxFileName,
95
- lineNumber: 112,
95
+ lineNumber: 91,
96
96
  columnNumber: 9
97
97
  }
98
98
  }), showReactions && _react["default"].createElement(ReactionList, {
@@ -100,7 +100,7 @@ var MessageSimpleWithContext = function MessageSimpleWithContext(props) {
100
100
  __self: _this,
101
101
  __source: {
102
102
  fileName: _jsxFileName,
103
- lineNumber: 113,
103
+ lineNumber: 92,
104
104
  columnNumber: 27
105
105
  }
106
106
  })));
@@ -181,7 +181,7 @@ var MessageSimple = function MessageSimple(props) {
181
181
  __self: _this,
182
182
  __source: {
183
183
  fileName: _jsxFileName,
184
- lineNumber: 243,
184
+ lineNumber: 202,
185
185
  columnNumber: 5
186
186
  }
187
187
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageSimple.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","MessageSimpleWithContext","props","alignment","channel","enableMessageGroupingByUser","groupStyles","hasReactions","message","MessageAvatar","MessageContent","MessagePinnedHeader","ReactionList","theme","messageSimple","messageContentWidth","setMessageContentWidth","isVeryLastMessage","state","messages","length","id","hasMarginBottom","includes","showReactions","pinned","justifyContent","marginBottom","marginTop","areEqual","prevProps","nextProps","prevChannel","prevGroupStyles","prevHasReactions","prevMessage","nextChannel","nextGroupStyles","nextHasReactions","nextMessage","hasReactionsEqual","repliesEqual","reply_count","groupStylesEqual","JSON","stringify","isPrevMessageTypeDeleted","type","isNextMessageTypeDeleted","messageEqual","status","text","isPrevQuotedMessageTypeDeleted","quoted_message","isNextQuotedMessageTypeDeleted","quotedMessageEqual","channelEqual","prevAttachments","attachments","nextAttachments","attachmentsEqual","Array","isArray","every","attachment","index","image_url","og_scrape_url","thumb_url","latestReactionsEqual","latest_reactions","MemoizedMessageSimple","React","memo","MessageSimple","displayName"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AAIA;;AAIA;;;;;;;;;AAaA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,UADH;AAETC,IAAAA,aAAa,EAAE;AAFN;AADoB,CAAlB,CAAf;;AA4BA,IAAMC,wBAAwB,GAAG,SAA3BA,wBAA2B,CAS/BC,KAT+B,EAU5B;AAAA;;AACH,MACEC,SADF,GAWID,KAXJ,CACEC,SADF;AAAA,MAEEC,OAFF,GAWIF,KAXJ,CAEEE,OAFF;AAAA,MAGEC,2BAHF,GAWIH,KAXJ,CAGEG,2BAHF;AAAA,MAIEC,WAJF,GAWIJ,KAXJ,CAIEI,WAJF;AAAA,MAKEC,YALF,GAWIL,KAXJ,CAKEK,YALF;AAAA,MAMEC,OANF,GAWIN,KAXJ,CAMEM,OANF;AAAA,MAOEC,aAPF,GAWIP,KAXJ,CAOEO,aAPF;AAAA,MAQEC,cARF,GAWIR,KAXJ,CAQEQ,cARF;AAAA,MASEC,mBATF,GAWIT,KAXJ,CASES,mBATF;AAAA,MAUEC,YAVF,GAWIV,KAXJ,CAUEU,YAVF;;AAaA,kBAII,6BAJJ;AAAA,MAEqBd,SAFrB,aACEe,KADF,CAEIC,aAFJ,CAEqBhB,SAFrB;;AAMA,kBAAsD,qBAAS,CAAT,CAAtD;AAAA;AAAA,MAAOiB,mBAAP;AAAA,MAA4BC,sBAA5B;;AAEA,MAAMC,iBAAiB,GACrB,CAAAb,OAAO,QAAP,qCAAAA,OAAO,CAAEc,KAAT,CAAeC,QAAf,CAAwB,CAAAf,OAAO,QAAP,YAAAA,OAAO,CAAEc,KAAT,CAAeC,QAAf,CAAwBC,MAAxB,IAAiC,CAAzD,4CAA6DC,EAA7D,MAAoEb,OAAO,CAACa,EAD9E;AAGA,MAAMC,eAAe,GAAGhB,WAAW,CAACiB,QAAZ,CAAqB,QAArB,KAAkCjB,WAAW,CAACiB,QAAZ,CAAqB,QAArB,CAA1D;AAEA,MAAMC,aAAa,GAAGjB,YAAY,IAAIK,YAAtC;AAEA,SACE,kEACGJ,OAAO,CAACiB,MAAR,IAAkB,gCAAC,mBAAD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IADrB,EAEE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL9B,MAAM,CAACG,SADF,EAEL;AACE4B,MAAAA,cAAc,EAAEvB,SAAS,KAAK,MAAd,GAAuB,YAAvB,GAAsC,UADxD;AAEEwB,MAAAA,YAAY,EAAEL,eAAe,GACzBL,iBAAiB,IAAIZ,2BAArB,GACE,EADF,GAEE,CAHuB,GAIzB,CANN;AAOEuB,MAAAA,SAAS,EAAEJ,aAAa,GAAG,CAAH,GAAO;AAPjC,KAFK,EAWL1B,SAXK,CADT;AAcE,IAAA,MAAM,EAAC,wBAdT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAgBGK,SAAS,KAAK,MAAd,IAAwB,gCAAC,aAAD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAhB3B,EAiBE,gCAAC,cAAD;AAAgB,IAAA,sBAAsB,EAAEa,sBAAxC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAjBF,EAkBGQ,aAAa,IAAI,gCAAC,YAAD;AAAc,IAAA,mBAAmB,EAAET,mBAAnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAlBpB,CAFF,CADF;AAyBD,CAhED;;AAkEA,IAAMc,QAAQ,GAAG,SAAXA,QAAW,CASfC,SATe,EAUfC,SAVe,EAWZ;AAAA;;AACH,MACWC,WADX,GAKIF,SALJ,CACE1B,OADF;AAAA,MAEe6B,eAFf,GAKIH,SALJ,CAEExB,WAFF;AAAA,MAGgB4B,gBAHhB,GAKIJ,SALJ,CAGEvB,YAHF;AAAA,MAIW4B,WAJX,GAKIL,SALJ,CAIEtB,OAJF;AAMA,MACW4B,WADX,GAKIL,SALJ,CACE3B,OADF;AAAA,MAEeiC,eAFf,GAKIN,SALJ,CAEEzB,WAFF;AAAA,MAGgBgC,gBAHhB,GAKIP,SALJ,CAGExB,YAHF;AAAA,MAIWgC,WAJX,GAKIR,SALJ,CAIEvB,OAJF;AAOA,MAAMgC,iBAAiB,GAAGN,gBAAgB,KAAKI,gBAA/C;AACA,MAAI,CAACE,iBAAL,EAAwB,OAAO,KAAP;AAExB,MAAMC,YAAY,GAAGN,WAAW,CAACO,WAAZ,KAA4BH,WAAW,CAACG,WAA7D;AACA,MAAI,CAACD,YAAL,EAAmB,OAAO,KAAP;AAEnB,MAAME,gBAAgB,GAAGC,IAAI,CAACC,SAAL,CAAeZ,eAAf,MAAoCW,IAAI,CAACC,SAAL,CAAeR,eAAf,CAA7D;AACA,MAAI,CAACM,gBAAL,EAAuB,OAAO,KAAP;AAEvB,MAAMG,wBAAwB,GAAGX,WAAW,CAACY,IAAZ,KAAqB,SAAtD;AACA,MAAMC,wBAAwB,GAAGT,WAAW,CAACQ,IAAZ,KAAqB,SAAtD;AAEA,MAAME,YAAY,GAChBH,wBAAwB,KAAKE,wBAA7B,IACAb,WAAW,CAACe,MAAZ,KAAuBX,WAAW,CAACW,MADnC,IAEAf,WAAW,CAACY,IAAZ,KAAqBR,WAAW,CAACQ,IAFjC,IAGAZ,WAAW,CAACgB,IAAZ,KAAqBZ,WAAW,CAACY,IAHjC,IAIAhB,WAAW,CAACV,MAAZ,KAAuBc,WAAW,CAACd,MALrC;AAMA,MAAI,CAACwB,YAAL,EAAmB,OAAO,KAAP;AAEnB,MAAMG,8BAA8B,GAAG,0BAAAjB,WAAW,CAACkB,cAAZ,2CAA4BN,IAA5B,MAAqC,SAA5E;AACA,MAAMO,8BAA8B,GAAG,0BAAAf,WAAW,CAACc,cAAZ,2CAA4BN,IAA5B,MAAqC,SAA5E;AAEA,MAAMQ,kBAAkB,GACtB,2BAAApB,WAAW,CAACkB,cAAZ,4CAA4BhC,EAA5B,iCAAmCkB,WAAW,CAACc,cAA/C,qBAAmC,uBAA4BhC,EAA/D,KACA+B,8BAA8B,KAAKE,8BAFrC;AAIA,MAAI,CAACC,kBAAL,EAAyB,OAAO,KAAP;AAEzB,MAAMC,YAAY,GAAG,CAAAxB,WAAW,QAAX,YAAAA,WAAW,CAAEd,KAAb,CAAmBC,QAAnB,CAA4BC,MAA5B,OAAuCgB,WAAvC,oBAAuCA,WAAW,CAAElB,KAAb,CAAmBC,QAAnB,CAA4BC,MAAnE,CAArB;AACA,MAAI,CAACoC,YAAL,EAAmB,OAAO,KAAP;AAEnB,MAAMC,eAAe,GAAGtB,WAAW,CAACuB,WAApC;AACA,MAAMC,eAAe,GAAGpB,WAAW,CAACmB,WAApC;AACA,MAAME,gBAAgB,GACpBC,KAAK,CAACC,OAAN,CAAcL,eAAd,KAAkCI,KAAK,CAACC,OAAN,CAAcH,eAAd,CAAlC,GACIF,eAAe,CAACrC,MAAhB,KAA2BuC,eAAe,CAACvC,MAA3C,IACAqC,eAAe,CAACM,KAAhB,CACE,UAACC,UAAD,EAAaC,KAAb;AAAA,WACED,UAAU,CAACE,SAAX,KAAyBP,eAAe,CAACM,KAAD,CAAf,CAAuBC,SAAhD,IACAF,UAAU,CAACG,aAAX,KAA6BR,eAAe,CAACM,KAAD,CAAf,CAAuBE,aADpD,IAEAH,UAAU,CAACI,SAAX,KAAyBT,eAAe,CAACM,KAAD,CAAf,CAAuBG,SAHlD;AAAA,GADF,CAFJ,GAQIX,eAAe,KAAKE,eAT1B;AAUA,MAAI,CAACC,gBAAL,EAAuB,OAAO,KAAP;AAEvB,MAAMS,oBAAoB,GACxBR,KAAK,CAACC,OAAN,CAAc3B,WAAW,CAACmC,gBAA1B,KAA+CT,KAAK,CAACC,OAAN,CAAcvB,WAAW,CAAC+B,gBAA1B,CAA/C,GACInC,WAAW,CAACmC,gBAAZ,CAA6BlD,MAA7B,KAAwCmB,WAAW,CAAC+B,gBAAZ,CAA6BlD,MAArE,IACAe,WAAW,CAACmC,gBAAZ,CAA6BP,KAA7B,CACE,gBAAWE,KAAX;AAAA;;AAAA,QAAGlB,IAAH,QAAGA,IAAH;AAAA,WAAqBA,IAAI,+BAAKR,WAAW,CAAC+B,gBAAjB,qBAAK,sBAA+BL,KAA/B,EAAsClB,IAA3C,CAAzB;AAAA,GADF,CAFJ,GAKIZ,WAAW,CAACmC,gBAAZ,KAAiC/B,WAAW,CAAC+B,gBANnD;AAOA,MAAI,CAACD,oBAAL,EAA2B,OAAO,KAAP;AAE3B,SAAO,IAAP;AACD,CAjFD;;AAmFA,IAAME,qBAAqB,GAAGC,kBAAMC,IAAN,CAC5BxE,wBAD4B,EAE5B4B,QAF4B,CAA9B;;AAmBO,IAAM6C,aAAa,GAAG,SAAhBA,aAAgB,CAS3BxE,KAT2B,EAUxB;AACH,2BACE,wCADF;AAAA,MAAQC,SAAR,sBAAQA,SAAR;AAAA,MAAmBC,OAAnB,sBAAmBA,OAAnB;AAAA,MAA4BE,WAA5B,sBAA4BA,WAA5B;AAAA,MAAyCC,YAAzC,sBAAyCA,YAAzC;AAAA,MAAuDC,OAAvD,sBAAuDA,OAAvD;;AAEA,4BAMI,0CANJ;AAAA,MACEH,2BADF,uBACEA,2BADF;AAAA,MAEEI,aAFF,uBAEEA,aAFF;AAAA,MAGEC,cAHF,uBAGEA,cAHF;AAAA,MAIEC,mBAJF,uBAIEA,mBAJF;AAAA,MAKEC,YALF,uBAKEA,YALF;;AAQA,SACE,gCAAC,qBAAD;AAEIT,IAAAA,SAAS,EAATA,SAFJ;AAGIC,IAAAA,OAAO,EAAPA,OAHJ;AAIIC,IAAAA,2BAA2B,EAA3BA,2BAJJ;AAKIC,IAAAA,WAAW,EAAXA,WALJ;AAMIC,IAAAA,YAAY,EAAZA,YANJ;AAOIC,IAAAA,OAAO,EAAPA,OAPJ;AAQIC,IAAAA,aAAa,EAAbA,aARJ;AASIC,IAAAA,cAAc,EAAdA,cATJ;AAUIC,IAAAA,mBAAmB,EAAnBA,mBAVJ;AAWIC,IAAAA,YAAY,EAAZA;AAXJ,KAaMV,KAbN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF;AAiBD,CAtCM;;;AAwCPwE,aAAa,CAACC,WAAd,GAA4B,yCAA5B","sourcesContent":["import React, { useState } from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport {\n MessageContextValue,\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 type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n },\n});\n\nexport type MessageSimplePropsWithContext<\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' | 'channel' | 'groupStyles' | 'hasReactions' | 'message'\n> &\n Pick<\n MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n | 'enableMessageGroupingByUser'\n | 'MessageAvatar'\n | 'MessageContent'\n | 'MessagePinnedHeader'\n | 'ReactionList'\n >;\n\nconst MessageSimpleWithContext = <\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: MessageSimplePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment,\n channel,\n enableMessageGroupingByUser,\n groupStyles,\n hasReactions,\n message,\n MessageAvatar,\n MessageContent,\n MessagePinnedHeader,\n ReactionList,\n } = props;\n\n const {\n theme: {\n messageSimple: { container },\n },\n } = useTheme();\n\n const [messageContentWidth, setMessageContentWidth] = useState(0);\n\n const isVeryLastMessage =\n channel?.state.messages[channel?.state.messages.length - 1]?.id === message.id;\n\n const hasMarginBottom = groupStyles.includes('single') || groupStyles.includes('bottom');\n\n const showReactions = hasReactions && ReactionList;\n\n return (\n <>\n {message.pinned && <MessagePinnedHeader />}\n <View\n style={[\n styles.container,\n {\n justifyContent: alignment === 'left' ? 'flex-start' : 'flex-end',\n marginBottom: hasMarginBottom\n ? isVeryLastMessage && enableMessageGroupingByUser\n ? 30\n : 8\n : 0,\n marginTop: showReactions ? 2 : 0,\n },\n container,\n ]}\n testID='message-simple-wrapper'\n >\n {alignment === 'left' && <MessageAvatar />}\n <MessageContent setMessageContentWidth={setMessageContentWidth} />\n {showReactions && <ReactionList messageContentWidth={messageContentWidth} />}\n </View>\n </>\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: MessageSimplePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: MessageSimplePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n channel: prevChannel,\n groupStyles: prevGroupStyles,\n hasReactions: prevHasReactions,\n message: prevMessage,\n } = prevProps;\n const {\n channel: nextChannel,\n groupStyles: nextGroupStyles,\n hasReactions: nextHasReactions,\n message: nextMessage,\n } = nextProps;\n\n const hasReactionsEqual = prevHasReactions === nextHasReactions;\n if (!hasReactionsEqual) return false;\n\n const repliesEqual = prevMessage.reply_count === nextMessage.reply_count;\n if (!repliesEqual) return false;\n\n const groupStylesEqual = JSON.stringify(prevGroupStyles) === JSON.stringify(nextGroupStyles);\n if (!groupStylesEqual) return false;\n\n const isPrevMessageTypeDeleted = prevMessage.type === 'deleted';\n const isNextMessageTypeDeleted = nextMessage.type === 'deleted';\n\n const messageEqual =\n isPrevMessageTypeDeleted === isNextMessageTypeDeleted &&\n prevMessage.status === nextMessage.status &&\n prevMessage.type === nextMessage.type &&\n prevMessage.text === nextMessage.text &&\n prevMessage.pinned === nextMessage.pinned;\n if (!messageEqual) return false;\n\n const isPrevQuotedMessageTypeDeleted = prevMessage.quoted_message?.type === 'deleted';\n const isNextQuotedMessageTypeDeleted = nextMessage.quoted_message?.type === 'deleted';\n\n const quotedMessageEqual =\n prevMessage.quoted_message?.id === nextMessage.quoted_message?.id &&\n isPrevQuotedMessageTypeDeleted === isNextQuotedMessageTypeDeleted;\n\n if (!quotedMessageEqual) return false;\n\n const channelEqual = prevChannel?.state.messages.length === nextChannel?.state.messages.length;\n if (!channelEqual) return false;\n\n const prevAttachments = prevMessage.attachments;\n const nextAttachments = nextMessage.attachments;\n const attachmentsEqual =\n Array.isArray(prevAttachments) && Array.isArray(nextAttachments)\n ? prevAttachments.length === nextAttachments.length &&\n prevAttachments.every(\n (attachment, index) =>\n attachment.image_url === nextAttachments[index].image_url &&\n attachment.og_scrape_url === nextAttachments[index].og_scrape_url &&\n attachment.thumb_url === nextAttachments[index].thumb_url,\n )\n : prevAttachments === nextAttachments;\n if (!attachmentsEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageSimple = React.memo(\n MessageSimpleWithContext,\n areEqual,\n) as typeof MessageSimpleWithContext;\n\nexport type MessageSimpleProps<\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<MessageSimplePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;\n\n/**\n *\n * Message UI component\n */\nexport const MessageSimple = <\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: MessageSimpleProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { alignment, channel, groupStyles, hasReactions, message } =\n useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n const {\n enableMessageGroupingByUser,\n MessageAvatar,\n MessageContent,\n MessagePinnedHeader,\n ReactionList,\n } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return (\n <MemoizedMessageSimple<At, Ch, Co, Ev, Me, Re, Us>\n {...{\n alignment,\n channel,\n enableMessageGroupingByUser,\n groupStyles,\n hasReactions,\n message,\n MessageAvatar,\n MessageContent,\n MessagePinnedHeader,\n ReactionList,\n }}\n {...props}\n />\n );\n};\n\nMessageSimple.displayName = 'MessageSimple{messageSimple{container}}';\n"]}
1
+ {"version":3,"sources":["MessageSimple.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","MessageSimpleWithContext","props","alignment","channel","enableMessageGroupingByUser","groupStyles","hasReactions","message","MessageAvatar","MessageContent","MessagePinnedHeader","ReactionList","theme","messageSimple","messageContentWidth","setMessageContentWidth","isVeryLastMessage","state","messages","length","id","hasMarginBottom","includes","showReactions","pinned","justifyContent","marginBottom","marginTop","areEqual","prevProps","nextProps","prevChannel","prevGroupStyles","prevHasReactions","prevMessage","nextChannel","nextGroupStyles","nextHasReactions","nextMessage","hasReactionsEqual","repliesEqual","reply_count","groupStylesEqual","JSON","stringify","isPrevMessageTypeDeleted","type","isNextMessageTypeDeleted","messageEqual","status","text","isPrevQuotedMessageTypeDeleted","quoted_message","isNextQuotedMessageTypeDeleted","quotedMessageEqual","channelEqual","prevAttachments","attachments","nextAttachments","attachmentsEqual","Array","isArray","every","attachment","index","image_url","og_scrape_url","thumb_url","latestReactionsEqual","latest_reactions","MemoizedMessageSimple","React","memo","MessageSimple","displayName"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport {\n MessageContextValue,\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 type { DefaultStreamChatGenerics } from '../../../types/types';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n },\n});\n\nexport type MessageSimplePropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n 'alignment' | 'channel' | 'groupStyles' | 'hasReactions' | 'message'\n> &\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'enableMessageGroupingByUser'\n | 'MessageAvatar'\n | 'MessageContent'\n | 'MessagePinnedHeader'\n | 'ReactionList'\n >;\n\nconst MessageSimpleWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageSimplePropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n channel,\n enableMessageGroupingByUser,\n groupStyles,\n hasReactions,\n message,\n MessageAvatar,\n MessageContent,\n MessagePinnedHeader,\n ReactionList,\n } = props;\n\n const {\n theme: {\n messageSimple: { container },\n },\n } = useTheme();\n\n const [messageContentWidth, setMessageContentWidth] = useState(0);\n\n const isVeryLastMessage =\n channel?.state.messages[channel?.state.messages.length - 1]?.id === message.id;\n\n const hasMarginBottom = groupStyles.includes('single') || groupStyles.includes('bottom');\n\n const showReactions = hasReactions && ReactionList;\n\n return (\n <>\n {message.pinned && <MessagePinnedHeader />}\n <View\n style={[\n styles.container,\n {\n justifyContent: alignment === 'left' ? 'flex-start' : 'flex-end',\n marginBottom: hasMarginBottom\n ? isVeryLastMessage && enableMessageGroupingByUser\n ? 30\n : 8\n : 0,\n marginTop: showReactions ? 2 : 0,\n },\n container,\n ]}\n testID='message-simple-wrapper'\n >\n {alignment === 'left' && <MessageAvatar />}\n <MessageContent setMessageContentWidth={setMessageContentWidth} />\n {showReactions && <ReactionList messageContentWidth={messageContentWidth} />}\n </View>\n </>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessageSimplePropsWithContext<StreamChatGenerics>,\n nextProps: MessageSimplePropsWithContext<StreamChatGenerics>,\n) => {\n const {\n channel: prevChannel,\n groupStyles: prevGroupStyles,\n hasReactions: prevHasReactions,\n message: prevMessage,\n } = prevProps;\n const {\n channel: nextChannel,\n groupStyles: nextGroupStyles,\n hasReactions: nextHasReactions,\n message: nextMessage,\n } = nextProps;\n\n const hasReactionsEqual = prevHasReactions === nextHasReactions;\n if (!hasReactionsEqual) return false;\n\n const repliesEqual = prevMessage.reply_count === nextMessage.reply_count;\n if (!repliesEqual) return false;\n\n const groupStylesEqual = JSON.stringify(prevGroupStyles) === JSON.stringify(nextGroupStyles);\n if (!groupStylesEqual) return false;\n\n const isPrevMessageTypeDeleted = prevMessage.type === 'deleted';\n const isNextMessageTypeDeleted = nextMessage.type === 'deleted';\n\n const messageEqual =\n isPrevMessageTypeDeleted === isNextMessageTypeDeleted &&\n prevMessage.status === nextMessage.status &&\n prevMessage.type === nextMessage.type &&\n prevMessage.text === nextMessage.text &&\n prevMessage.pinned === nextMessage.pinned;\n if (!messageEqual) return false;\n\n const isPrevQuotedMessageTypeDeleted = prevMessage.quoted_message?.type === 'deleted';\n const isNextQuotedMessageTypeDeleted = nextMessage.quoted_message?.type === 'deleted';\n\n const quotedMessageEqual =\n prevMessage.quoted_message?.id === nextMessage.quoted_message?.id &&\n isPrevQuotedMessageTypeDeleted === isNextQuotedMessageTypeDeleted;\n\n if (!quotedMessageEqual) return false;\n\n const channelEqual = prevChannel?.state.messages.length === nextChannel?.state.messages.length;\n if (!channelEqual) return false;\n\n const prevAttachments = prevMessage.attachments;\n const nextAttachments = nextMessage.attachments;\n const attachmentsEqual =\n Array.isArray(prevAttachments) && Array.isArray(nextAttachments)\n ? prevAttachments.length === nextAttachments.length &&\n prevAttachments.every(\n (attachment, index) =>\n attachment.image_url === nextAttachments[index].image_url &&\n attachment.og_scrape_url === nextAttachments[index].og_scrape_url &&\n attachment.thumb_url === nextAttachments[index].thumb_url,\n )\n : prevAttachments === nextAttachments;\n if (!attachmentsEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageSimple = React.memo(\n MessageSimpleWithContext,\n areEqual,\n) as typeof MessageSimpleWithContext;\n\nexport type MessageSimpleProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<MessageSimplePropsWithContext<StreamChatGenerics>>;\n\n/**\n *\n * Message UI component\n */\nexport const MessageSimple = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageSimpleProps<StreamChatGenerics>,\n) => {\n const { alignment, channel, groupStyles, hasReactions, message } =\n useMessageContext<StreamChatGenerics>();\n const {\n enableMessageGroupingByUser,\n MessageAvatar,\n MessageContent,\n MessagePinnedHeader,\n ReactionList,\n } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedMessageSimple<StreamChatGenerics>\n {...{\n alignment,\n channel,\n enableMessageGroupingByUser,\n groupStyles,\n hasReactions,\n message,\n MessageAvatar,\n MessageContent,\n MessagePinnedHeader,\n ReactionList,\n }}\n {...props}\n />\n );\n};\n\nMessageSimple.displayName = 'MessageSimple{messageSimple{container}}';\n"]}
@@ -11,8 +11,6 @@ var _react = _interopRequireDefault(require("react"));
11
11
 
12
12
  var _reactNative = require("react-native");
13
13
 
14
- var _useMessageList = require("../../MessageList/hooks/useMessageList");
15
-
16
14
  var _MessageContext = require("../../../contexts/messageContext/MessageContext");
17
15
 
18
16
  var _ThemeContext = require("../../../contexts/themeContext/ThemeContext");
@@ -23,6 +21,10 @@ var _CheckAll = require("../../../icons/CheckAll");
23
21
 
24
22
  var _Time = require("../../../icons/Time");
25
23
 
24
+ var _utils = require("../../../utils/utils");
25
+
26
+ var _useMessageList = require("../../MessageList/hooks/useMessageList");
27
+
26
28
  var _this = this,
27
29
  _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/Message/MessageSimple/MessageStatus.tsx";
28
30
 
@@ -56,21 +58,21 @@ var MessageStatusWithContext = function MessageStatusWithContext(props) {
56
58
  statusContainer = _useTheme$theme$messa.statusContainer,
57
59
  timeIcon = _useTheme$theme$messa.timeIcon;
58
60
 
59
- if (message.status === 'sending') {
61
+ if (message.status === _utils.MessageStatusTypes.SENDING) {
60
62
  return _react["default"].createElement(_reactNative.View, {
61
63
  style: [styles.statusContainer, statusContainer],
62
64
  testID: "sending-container",
63
65
  __self: _this,
64
66
  __source: {
65
67
  fileName: _jsxFileName,
66
- lineNumber: 74,
68
+ lineNumber: 53,
67
69
  columnNumber: 7
68
70
  }
69
71
  }, _react["default"].createElement(_Time.Time, (0, _extends2["default"])({}, timeIcon, {
70
72
  __self: _this,
71
73
  __source: {
72
74
  fileName: _jsxFileName,
73
- lineNumber: 75,
75
+ lineNumber: 54,
74
76
  columnNumber: 9
75
77
  }
76
78
  })));
@@ -82,7 +84,7 @@ var MessageStatusWithContext = function MessageStatusWithContext(props) {
82
84
  __self: _this,
83
85
  __source: {
84
86
  fileName: _jsxFileName,
85
- lineNumber: 82,
87
+ lineNumber: 61,
86
88
  columnNumber: 7
87
89
  }
88
90
  }, typeof message.readBy === 'number' ? _react["default"].createElement(_reactNative.Text, {
@@ -93,7 +95,7 @@ var MessageStatusWithContext = function MessageStatusWithContext(props) {
93
95
  __self: _this,
94
96
  __source: {
95
97
  fileName: _jsxFileName,
96
- lineNumber: 84,
98
+ lineNumber: 63,
97
99
  columnNumber: 11
98
100
  }
99
101
  }, message.readBy) : null, typeof message.readBy === 'number' || message.readBy === true ? _react["default"].createElement(_CheckAll.CheckAll, (0, _extends2["default"])({
@@ -102,7 +104,7 @@ var MessageStatusWithContext = function MessageStatusWithContext(props) {
102
104
  __self: _this,
103
105
  __source: {
104
106
  fileName: _jsxFileName,
105
- lineNumber: 92,
107
+ lineNumber: 71,
106
108
  columnNumber: 11
107
109
  }
108
110
  })) : _react["default"].createElement(_Check.Check, (0, _extends2["default"])({
@@ -111,20 +113,20 @@ var MessageStatusWithContext = function MessageStatusWithContext(props) {
111
113
  __self: _this,
112
114
  __source: {
113
115
  fileName: _jsxFileName,
114
- lineNumber: 94,
116
+ lineNumber: 73,
115
117
  columnNumber: 11
116
118
  }
117
119
  })));
118
120
  }
119
121
 
120
- if (message.status === 'received' && message.type !== 'ephemeral' && !threadList) {
122
+ if (message.status === _utils.MessageStatusTypes.RECEIVED && message.type !== 'ephemeral' && !threadList) {
121
123
  return _react["default"].createElement(_reactNative.View, {
122
124
  style: [styles.statusContainer, statusContainer],
123
125
  testID: "delivered-container",
124
126
  __self: _this,
125
127
  __source: {
126
128
  fileName: _jsxFileName,
127
- lineNumber: 102,
129
+ lineNumber: 85,
128
130
  columnNumber: 7
129
131
  }
130
132
  }, _react["default"].createElement(_Check.Check, (0, _extends2["default"])({
@@ -133,7 +135,7 @@ var MessageStatusWithContext = function MessageStatusWithContext(props) {
133
135
  __self: _this,
134
136
  __source: {
135
137
  fileName: _jsxFileName,
136
- lineNumber: 103,
138
+ lineNumber: 86,
137
139
  columnNumber: 9
138
140
  }
139
141
  })));
@@ -168,7 +170,7 @@ var MessageStatus = function MessageStatus(props) {
168
170
  __self: _this,
169
171
  __source: {
170
172
  fileName: _jsxFileName,
171
- lineNumber: 167,
173
+ lineNumber: 130,
172
174
  columnNumber: 10
173
175
  }
174
176
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageStatus.tsx"],"names":["styles","StyleSheet","create","readByCount","fontSize","fontWeight","paddingRight","statusContainer","alignItems","flexDirection","justifyContent","MessageStatusWithContext","props","message","threadList","theme","colors","accent_blue","grey_dark","messageSimple","status","checkAllIcon","checkIcon","timeIcon","readBy","color","type","areEqual","prevProps","nextProps","prevMessage","prevThreadList","nextMessage","nextThreadList","threadListEqual","messageEqual","MemoizedMessageStatus","React","memo","MessageStatus","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { isMessageWithStylesReadByAndDateSeparator } from '../../MessageList/hooks/useMessageList';\n\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport { Check } from '../../../icons/Check';\nimport { CheckAll } from '../../../icons/CheckAll';\nimport { Time } from '../../../icons/Time';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nconst styles = StyleSheet.create({\n readByCount: {\n fontSize: 11,\n fontWeight: '700',\n paddingRight: 3,\n },\n statusContainer: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n justifyContent: 'center',\n paddingRight: 3,\n },\n});\n\nexport type MessageStatusPropsWithContext<\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 DefaultUserType = DefaultUserType,\n> = Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'message' | 'threadList'>;\n\nconst MessageStatusWithContext = <\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 DefaultUserType = DefaultUserType,\n>(\n props: MessageStatusPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { message, threadList } = props;\n\n const {\n theme: {\n colors: { accent_blue, grey_dark },\n messageSimple: {\n status: { checkAllIcon, checkIcon, readByCount, statusContainer, timeIcon },\n },\n },\n } = useTheme();\n\n if (message.status === 'sending') {\n return (\n <View style={[styles.statusContainer, statusContainer]} testID='sending-container'>\n <Time {...timeIcon} />\n </View>\n );\n }\n\n if (isMessageWithStylesReadByAndDateSeparator(message) && !threadList) {\n return (\n <View style={[styles.statusContainer, statusContainer]}>\n {typeof message.readBy === 'number' ? (\n <Text\n style={[styles.readByCount, { color: accent_blue }, readByCount]}\n testID='read-by-container'\n >\n {message.readBy}\n </Text>\n ) : null}\n {typeof message.readBy === 'number' || message.readBy === true ? (\n <CheckAll pathFill={accent_blue} {...checkAllIcon} />\n ) : (\n <Check pathFill={grey_dark} {...checkIcon} />\n )}\n </View>\n );\n }\n\n if (message.status === 'received' && message.type !== 'ephemeral' && !threadList) {\n return (\n <View style={[styles.statusContainer, statusContainer]} testID='delivered-container'>\n <Check pathFill={grey_dark} {...checkIcon} />\n </View>\n );\n }\n\n return null;\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: MessageStatusPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: MessageStatusPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { message: prevMessage, threadList: prevThreadList } = prevProps;\n const { message: nextMessage, threadList: nextThreadList } = nextProps;\n\n const threadListEqual = prevThreadList === nextThreadList;\n if (!threadListEqual) return false;\n\n const messageEqual =\n prevMessage.status === nextMessage.status &&\n prevMessage.type === nextMessage.type &&\n (isMessageWithStylesReadByAndDateSeparator(prevMessage) && prevMessage.readBy) ===\n (isMessageWithStylesReadByAndDateSeparator(nextMessage) && nextMessage.readBy);\n if (!messageEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageStatus = React.memo(\n MessageStatusWithContext,\n areEqual,\n) as typeof MessageStatusWithContext;\n\nexport type MessageStatusProps<\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 DefaultUserType = DefaultUserType,\n> = Partial<MessageStatusPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;\n\nexport const MessageStatus = <\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 DefaultUserType = DefaultUserType,\n>(\n props: MessageStatusProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { message, threadList } = useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return <MemoizedMessageStatus {...{ message, threadList }} {...props} />;\n};\n\nMessageStatus.displayName = 'MessageStatus{messageSimple{status}}';\n"]}
1
+ {"version":3,"sources":["MessageStatus.tsx"],"names":["styles","StyleSheet","create","readByCount","fontSize","fontWeight","paddingRight","statusContainer","alignItems","flexDirection","justifyContent","MessageStatusWithContext","props","message","threadList","theme","colors","accent_blue","grey_dark","messageSimple","status","checkAllIcon","checkIcon","timeIcon","MessageStatusTypes","SENDING","readBy","color","RECEIVED","type","areEqual","prevProps","nextProps","prevMessage","prevThreadList","nextMessage","nextThreadList","threadListEqual","messageEqual","MemoizedMessageStatus","React","memo","MessageStatus","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport { Check } from '../../../icons/Check';\nimport { CheckAll } from '../../../icons/CheckAll';\nimport { Time } from '../../../icons/Time';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { MessageStatusTypes } from '../../../utils/utils';\n\nimport { isMessageWithStylesReadByAndDateSeparator } from '../../MessageList/hooks/useMessageList';\n\nconst styles = StyleSheet.create({\n readByCount: {\n fontSize: 11,\n fontWeight: '700',\n paddingRight: 3,\n },\n statusContainer: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n justifyContent: 'center',\n paddingRight: 3,\n },\n});\n\nexport type MessageStatusPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageContextValue<StreamChatGenerics>, 'message' | 'threadList'>;\n\nconst MessageStatusWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageStatusPropsWithContext<StreamChatGenerics>,\n) => {\n const { message, threadList } = props;\n\n const {\n theme: {\n colors: { accent_blue, grey_dark },\n messageSimple: {\n status: { checkAllIcon, checkIcon, readByCount, statusContainer, timeIcon },\n },\n },\n } = useTheme();\n\n if (message.status === MessageStatusTypes.SENDING) {\n return (\n <View style={[styles.statusContainer, statusContainer]} testID='sending-container'>\n <Time {...timeIcon} />\n </View>\n );\n }\n\n if (isMessageWithStylesReadByAndDateSeparator(message) && !threadList) {\n return (\n <View style={[styles.statusContainer, statusContainer]}>\n {typeof message.readBy === 'number' ? (\n <Text\n style={[styles.readByCount, { color: accent_blue }, readByCount]}\n testID='read-by-container'\n >\n {message.readBy}\n </Text>\n ) : null}\n {typeof message.readBy === 'number' || message.readBy === true ? (\n <CheckAll pathFill={accent_blue} {...checkAllIcon} />\n ) : (\n <Check pathFill={grey_dark} {...checkIcon} />\n )}\n </View>\n );\n }\n\n if (\n message.status === MessageStatusTypes.RECEIVED &&\n message.type !== 'ephemeral' &&\n !threadList\n ) {\n return (\n <View style={[styles.statusContainer, statusContainer]} testID='delivered-container'>\n <Check pathFill={grey_dark} {...checkIcon} />\n </View>\n );\n }\n\n return null;\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessageStatusPropsWithContext<StreamChatGenerics>,\n nextProps: MessageStatusPropsWithContext<StreamChatGenerics>,\n) => {\n const { message: prevMessage, threadList: prevThreadList } = prevProps;\n const { message: nextMessage, threadList: nextThreadList } = nextProps;\n\n const threadListEqual = prevThreadList === nextThreadList;\n if (!threadListEqual) return false;\n\n const messageEqual =\n prevMessage.status === nextMessage.status &&\n prevMessage.type === nextMessage.type &&\n (isMessageWithStylesReadByAndDateSeparator(prevMessage) && prevMessage.readBy) ===\n (isMessageWithStylesReadByAndDateSeparator(nextMessage) && nextMessage.readBy);\n if (!messageEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageStatus = React.memo(\n MessageStatusWithContext,\n areEqual,\n) as typeof MessageStatusWithContext;\n\nexport type MessageStatusProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<MessageStatusPropsWithContext<StreamChatGenerics>>;\n\nexport const MessageStatus = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageStatusProps<StreamChatGenerics>,\n) => {\n const { message, threadList } = useMessageContext<StreamChatGenerics>();\n\n return <MemoizedMessageStatus {...{ message, threadList }} {...props} />;\n};\n\nMessageStatus.displayName = 'MessageStatus{messageSimple{status}}';\n"]}
@@ -63,7 +63,7 @@ var MessageTextContainerWithContext = function MessageTextContainerWithContext(p
63
63
  __self: _this,
64
64
  __source: {
65
65
  fileName: _jsxFileName,
66
- lineNumber: 110,
66
+ lineNumber: 83,
67
67
  columnNumber: 5
68
68
  }
69
69
  }, MessageText ? _react["default"].createElement(MessageText, (0, _extends2["default"])({}, props, {
@@ -72,7 +72,7 @@ var MessageTextContainerWithContext = function MessageTextContainerWithContext(p
72
72
  __self: _this,
73
73
  __source: {
74
74
  fileName: _jsxFileName,
75
- lineNumber: 115,
75
+ lineNumber: 88,
76
76
  columnNumber: 9
77
77
  }
78
78
  })) : (0, _renderText.renderText)({
@@ -133,7 +133,7 @@ var MessageTextContainer = function MessageTextContainer(props) {
133
133
  __self: _this,
134
134
  __source: {
135
135
  fileName: _jsxFileName,
136
- lineNumber: 201,
136
+ lineNumber: 154,
137
137
  columnNumber: 5
138
138
  }
139
139
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageTextContainer.tsx"],"names":["styles","StyleSheet","create","textContainer","maxWidth","paddingHorizontal","MessageTextContainerWithContext","props","theme","markdownRules","markdownStyles","markdownStylesProp","message","messageOverlay","MessageText","messageTextNumberOfLines","onLongPress","onlyEmojis","onPress","preventPress","stylesProp","colors","messageSimple","content","markdown","onlyEmojiMarkdown","text","renderText","areEqual","prevProps","nextProps","prevMessage","prevOnlyEmojis","nextMessage","nextOnlyEmojis","messageTextEqual","onlyEmojisEqual","mentionedUsersEqual","mentioned_users","length","name","MemoizedMessageTextContainer","React","memo","MessageTextContainer","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { renderText, RenderTextParams } from './utils/renderText';\n\nimport {\n MessageContextValue,\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 type { MarkdownStyle, Theme } from '../../../contexts/themeContext/utils/theme';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nconst styles = StyleSheet.create({\n textContainer: { maxWidth: 250, paddingHorizontal: 16 },\n});\n\nexport type MessageTextProps<\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> = MessageTextContainerProps<At, Ch, Co, Ev, Me, Re, Us> & {\n renderText: (params: RenderTextParams<At, Ch, Co, Ev, Me, Re, Us>) => JSX.Element | null;\n theme: { theme: Theme };\n};\n\nexport type MessageTextContainerPropsWithContext<\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 'message' | 'onLongPress' | 'onlyEmojis' | 'onPress' | 'preventPress'\n> &\n Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'markdownRules' | 'MessageText'> & {\n markdownStyles?: MarkdownStyle;\n messageOverlay?: boolean;\n messageTextNumberOfLines?: number;\n styles?: Partial<{\n textContainer: StyleProp<ViewStyle>;\n }>;\n };\n\nconst MessageTextContainerWithContext = <\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: MessageTextContainerPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const theme = useTheme();\n\n const {\n markdownRules,\n markdownStyles: markdownStylesProp = {},\n message,\n messageOverlay,\n MessageText,\n messageTextNumberOfLines,\n onLongPress,\n onlyEmojis,\n onPress,\n preventPress,\n styles: stylesProp = {},\n } = props;\n\n const {\n theme: {\n colors,\n messageSimple: {\n content: {\n markdown,\n textContainer: { onlyEmojiMarkdown, ...textContainer },\n },\n },\n },\n } = theme;\n\n if (!message.text) return null;\n\n const markdownStyles = { ...markdown, ...markdownStylesProp };\n\n return (\n <View\n style={[styles.textContainer, textContainer, stylesProp.textContainer]}\n testID='message-text-container'\n >\n {MessageText ? (\n <MessageText {...props} renderText={renderText} theme={theme} />\n ) : (\n renderText<At, Ch, Co, Ev, Me, Re, Us>({\n colors,\n markdownRules,\n markdownStyles: {\n ...markdownStyles,\n ...(onlyEmojis ? onlyEmojiMarkdown : {}),\n },\n message,\n messageOverlay,\n messageTextNumberOfLines,\n onLongPress,\n onlyEmojis,\n onPress,\n preventPress,\n })\n )}\n </View>\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: MessageTextContainerPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: MessageTextContainerPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { message: prevMessage, onlyEmojis: prevOnlyEmojis } = prevProps;\n const { message: nextMessage, onlyEmojis: nextOnlyEmojis } = nextProps;\n\n const messageTextEqual = prevMessage.text === nextMessage.text;\n if (!messageTextEqual) return false;\n\n const onlyEmojisEqual = prevOnlyEmojis === nextOnlyEmojis;\n if (!onlyEmojisEqual) return false;\n\n const mentionedUsersEqual =\n prevMessage.mentioned_users?.length === nextMessage.mentioned_users?.length &&\n (nextMessage.mentioned_users?.length === 0 ||\n (prevMessage.mentioned_users?.length &&\n nextMessage.mentioned_users?.length &&\n prevMessage.mentioned_users[0].name === nextMessage.mentioned_users[0].name));\n if (!mentionedUsersEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageTextContainer = React.memo(\n MessageTextContainerWithContext,\n areEqual,\n) as typeof MessageTextContainerWithContext;\n\nexport type MessageTextContainerProps<\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<MessageTextContainerPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;\n\nexport const MessageTextContainer = <\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: MessageTextContainerProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { message, onLongPress, onlyEmojis, onPress, preventPress } =\n useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { markdownRules, MessageText } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { messageTextNumberOfLines } = props;\n\n return (\n <MemoizedMessageTextContainer\n {...{\n markdownRules,\n message,\n MessageText,\n messageTextNumberOfLines,\n onLongPress,\n onlyEmojis,\n onPress,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nMessageTextContainer.displayName = 'MessageTextContainer{messageSimple{content}}';\n"]}
1
+ {"version":3,"sources":["MessageTextContainer.tsx"],"names":["styles","StyleSheet","create","textContainer","maxWidth","paddingHorizontal","MessageTextContainerWithContext","props","theme","markdownRules","markdownStyles","markdownStylesProp","message","messageOverlay","MessageText","messageTextNumberOfLines","onLongPress","onlyEmojis","onPress","preventPress","stylesProp","colors","messageSimple","content","markdown","onlyEmojiMarkdown","text","renderText","areEqual","prevProps","nextProps","prevMessage","prevOnlyEmojis","nextMessage","nextOnlyEmojis","messageTextEqual","onlyEmojisEqual","mentionedUsersEqual","mentioned_users","length","name","MemoizedMessageTextContainer","React","memo","MessageTextContainer","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { renderText, RenderTextParams } from './utils/renderText';\n\nimport {\n MessageContextValue,\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 type { MarkdownStyle, Theme } from '../../../contexts/themeContext/utils/theme';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\nconst styles = StyleSheet.create({\n textContainer: { maxWidth: 250, paddingHorizontal: 16 },\n});\n\nexport type MessageTextProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = MessageTextContainerProps<StreamChatGenerics> & {\n renderText: (params: RenderTextParams<StreamChatGenerics>) => JSX.Element | null;\n theme: { theme: Theme };\n};\n\nexport type MessageTextContainerPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n 'message' | 'onLongPress' | 'onlyEmojis' | 'onPress' | 'preventPress'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'markdownRules' | 'MessageText'> & {\n markdownStyles?: MarkdownStyle;\n messageOverlay?: boolean;\n messageTextNumberOfLines?: number;\n styles?: Partial<{\n textContainer: StyleProp<ViewStyle>;\n }>;\n };\n\nconst MessageTextContainerWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageTextContainerPropsWithContext<StreamChatGenerics>,\n) => {\n const theme = useTheme();\n\n const {\n markdownRules,\n markdownStyles: markdownStylesProp = {},\n message,\n messageOverlay,\n MessageText,\n messageTextNumberOfLines,\n onLongPress,\n onlyEmojis,\n onPress,\n preventPress,\n styles: stylesProp = {},\n } = props;\n\n const {\n theme: {\n colors,\n messageSimple: {\n content: {\n markdown,\n textContainer: { onlyEmojiMarkdown, ...textContainer },\n },\n },\n },\n } = theme;\n\n if (!message.text) return null;\n\n const markdownStyles = { ...markdown, ...markdownStylesProp };\n\n return (\n <View\n style={[styles.textContainer, textContainer, stylesProp.textContainer]}\n testID='message-text-container'\n >\n {MessageText ? (\n <MessageText {...props} renderText={renderText} theme={theme} />\n ) : (\n renderText<StreamChatGenerics>({\n colors,\n markdownRules,\n markdownStyles: {\n ...markdownStyles,\n ...(onlyEmojis ? onlyEmojiMarkdown : {}),\n },\n message,\n messageOverlay,\n messageTextNumberOfLines,\n onLongPress,\n onlyEmojis,\n onPress,\n preventPress,\n })\n )}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessageTextContainerPropsWithContext<StreamChatGenerics>,\n nextProps: MessageTextContainerPropsWithContext<StreamChatGenerics>,\n) => {\n const { message: prevMessage, onlyEmojis: prevOnlyEmojis } = prevProps;\n const { message: nextMessage, onlyEmojis: nextOnlyEmojis } = nextProps;\n\n const messageTextEqual = prevMessage.text === nextMessage.text;\n if (!messageTextEqual) return false;\n\n const onlyEmojisEqual = prevOnlyEmojis === nextOnlyEmojis;\n if (!onlyEmojisEqual) return false;\n\n const mentionedUsersEqual =\n prevMessage.mentioned_users?.length === nextMessage.mentioned_users?.length &&\n (nextMessage.mentioned_users?.length === 0 ||\n (prevMessage.mentioned_users?.length &&\n nextMessage.mentioned_users?.length &&\n prevMessage.mentioned_users[0].name === nextMessage.mentioned_users[0].name));\n if (!mentionedUsersEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageTextContainer = React.memo(\n MessageTextContainerWithContext,\n areEqual,\n) as typeof MessageTextContainerWithContext;\n\nexport type MessageTextContainerProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<MessageTextContainerPropsWithContext<StreamChatGenerics>>;\n\nexport const MessageTextContainer = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageTextContainerProps<StreamChatGenerics>,\n) => {\n const { message, onLongPress, onlyEmojis, onPress, preventPress } =\n useMessageContext<StreamChatGenerics>();\n const { markdownRules, MessageText } = useMessagesContext<StreamChatGenerics>();\n const { messageTextNumberOfLines } = props;\n\n return (\n <MemoizedMessageTextContainer\n {...{\n markdownRules,\n message,\n MessageText,\n messageTextNumberOfLines,\n onLongPress,\n onlyEmojis,\n onPress,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nMessageTextContainer.displayName = 'MessageTextContainer{messageSimple{content}}';\n"]}