stream-chat-react-native-core 4.1.0-next.1 → 4.1.1-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1331) hide show
  1. package/README.md +1 -13
  2. package/lib/commonjs/components/Attachment/Attachment.js +16 -15
  3. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  4. package/lib/commonjs/components/Attachment/AttachmentActions.js +4 -4
  5. package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
  6. package/lib/commonjs/components/Attachment/Card.js +18 -15
  7. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  8. package/lib/commonjs/components/Attachment/FileAttachment.js +8 -8
  9. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  10. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +4 -4
  11. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  12. package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
  13. package/lib/commonjs/components/Attachment/Gallery.js +123 -121
  14. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  15. package/lib/commonjs/components/Attachment/Giphy.js +112 -148
  16. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  17. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  18. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  19. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  20. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  21. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  22. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  23. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  24. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  25. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  26. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  27. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  28. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  29. package/lib/commonjs/components/Attachment/utils/buildGallery/types.js +4 -0
  30. package/lib/commonjs/{styleguideComponents/Reanimated.js.map → components/Attachment/utils/buildGallery/types.js.map} +0 -0
  31. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js +14 -0
  32. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js.map +1 -0
  33. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  34. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  35. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +9 -8
  36. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  37. package/lib/commonjs/components/AttachmentPicker/components/AttachmentSelectionBar.js +11 -8
  38. package/lib/commonjs/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
  39. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +24 -48
  40. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  41. package/lib/commonjs/components/AutoCompleteInput/{CommandsItem.js → AutoCompleteSuggestionCommandIcon.js} +21 -94
  42. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -0
  43. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +145 -0
  44. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -0
  45. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +248 -0
  46. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -0
  47. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +223 -0
  48. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -0
  49. package/lib/commonjs/components/Avatar/Avatar.js +13 -7
  50. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  51. package/lib/commonjs/components/Avatar/GroupAvatar.js +10 -8
  52. package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
  53. package/lib/commonjs/components/Channel/Channel.js +303 -202
  54. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  55. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +7 -5
  56. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  57. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +7 -5
  58. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  59. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +13 -31
  60. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  61. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +35 -0
  62. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -0
  63. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  64. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  65. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  66. package/lib/commonjs/components/ChannelList/ChannelList.js +6 -6
  67. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  68. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js +5 -4
  69. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  70. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
  71. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  72. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +4 -3
  73. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  74. package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js +7 -4
  75. package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  76. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js +17 -17
  77. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
  78. package/lib/commonjs/components/ChannelList/Skeleton.js +14 -13
  79. package/lib/commonjs/components/ChannelList/Skeleton.js.map +1 -1
  80. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  81. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  82. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  83. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  84. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  85. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  86. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  87. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  88. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js +3 -1
  89. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  90. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  91. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  92. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  93. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  94. package/lib/commonjs/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  95. package/lib/commonjs/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  96. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  97. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  98. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +96 -63
  99. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  100. package/lib/commonjs/components/ChannelList/utils.js +1 -1
  101. package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
  102. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js +2 -2
  103. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  104. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +4 -4
  105. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  106. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +5 -5
  107. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  108. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js +49 -20
  109. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  110. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  111. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  112. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  113. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  114. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  115. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  116. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  117. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  118. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js +16 -7
  119. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  120. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  121. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  122. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js +2 -1
  123. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  124. package/lib/commonjs/components/Chat/Chat.js +8 -4
  125. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  126. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  127. package/lib/commonjs/components/Chat/hooks/useIsOnline.js +40 -31
  128. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
  129. package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
  130. package/lib/commonjs/components/ImageGallery/ImageGallery.js +107 -97
  131. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  132. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
  133. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  134. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
  135. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  136. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +31 -16
  137. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  138. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +7 -9
  139. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  140. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js +5 -5
  141. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  142. package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  143. package/lib/commonjs/components/Indicators/LoadingIndicator.js +9 -9
  144. package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
  145. package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js +20 -12
  146. package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
  147. package/lib/commonjs/components/Message/Message.js +152 -854
  148. package/lib/commonjs/components/Message/Message.js.map +1 -1
  149. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js +6 -6
  150. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  151. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +41 -39
  152. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  153. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +8 -6
  154. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  155. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +34 -22
  156. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  157. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +122 -0
  158. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -0
  159. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js +26 -10
  160. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  161. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
  162. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  163. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +31 -14
  164. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  165. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +28 -24
  166. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  167. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +7 -3
  168. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  169. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +86 -113
  170. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
  171. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  172. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  173. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  174. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  175. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +207 -26
  176. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  177. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  178. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  179. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +1 -5
  180. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  181. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +307 -0
  182. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -0
  183. package/lib/commonjs/components/Message/hooks/useMessageActions.js +563 -0
  184. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -0
  185. package/lib/commonjs/components/Message/utils/messageActions.js +17 -15
  186. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  187. package/lib/commonjs/components/Message/utils/removeReservedFields.js.map +1 -1
  188. package/lib/commonjs/components/MessageInput/AttachButton.js +6 -4
  189. package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
  190. package/lib/commonjs/components/MessageInput/CommandsButton.js +3 -3
  191. package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
  192. package/lib/commonjs/components/MessageInput/CooldownTimer.js +78 -0
  193. package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -0
  194. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +32 -27
  195. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  196. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +9 -9
  197. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
  198. package/lib/commonjs/components/MessageInput/InputButtons.js +17 -22
  199. package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
  200. package/lib/commonjs/components/MessageInput/MessageInput.js +93 -65
  201. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  202. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js +3 -3
  203. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
  204. package/lib/commonjs/components/MessageInput/SendButton.js +8 -6
  205. package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
  206. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +71 -0
  207. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -0
  208. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +11 -10
  209. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  210. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js +63 -0
  211. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -0
  212. package/lib/commonjs/components/MessageInput/hooks/useCountdown.js +57 -0
  213. package/lib/commonjs/components/MessageInput/hooks/useCountdown.js.map +1 -0
  214. package/lib/commonjs/components/MessageList/DateHeader.js +2 -2
  215. package/lib/commonjs/components/MessageList/DateHeader.js.map +1 -1
  216. package/lib/commonjs/components/MessageList/InlineDateSeparator.js +4 -3
  217. package/lib/commonjs/components/MessageList/InlineDateSeparator.js.map +1 -1
  218. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
  219. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  220. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
  221. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  222. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
  223. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  224. package/lib/commonjs/components/MessageList/MessageList.js +106 -58
  225. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  226. package/lib/commonjs/components/MessageList/MessageSystem.js +6 -6
  227. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  228. package/lib/commonjs/components/MessageList/ScrollToBottomButton.js +7 -5
  229. package/lib/commonjs/components/MessageList/ScrollToBottomButton.js.map +1 -1
  230. package/lib/commonjs/components/MessageList/TypingIndicator.js +5 -5
  231. package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
  232. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +2 -2
  233. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  234. package/lib/commonjs/components/MessageList/hooks/useMessageList.js +24 -11
  235. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  236. package/lib/commonjs/components/MessageList/hooks/useTypingString.js +2 -2
  237. package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
  238. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  239. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js +2 -1
  240. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
  241. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js +11 -10
  242. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
  243. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  244. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  245. package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
  246. package/lib/{module/components/MessageOverlay/MessageActions.js → commonjs/components/MessageOverlay/MessageActionList.js} +33 -85
  247. package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -0
  248. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +131 -0
  249. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -0
  250. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +110 -115
  251. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
  252. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js +38 -0
  253. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
  254. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +17 -18
  255. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  256. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js +31 -34
  257. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
  258. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  259. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  260. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js +37 -0
  261. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
  262. package/lib/commonjs/components/Reply/Reply.js +25 -19
  263. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  264. package/lib/commonjs/components/Thread/Thread.js +6 -6
  265. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  266. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +13 -12
  267. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  268. package/lib/commonjs/components/docs/ListProps.md +1 -1
  269. package/lib/commonjs/components/docs/data.js +45 -45
  270. package/lib/commonjs/components/docs/data.js.map +1 -1
  271. package/lib/commonjs/components/index.js +133 -55
  272. package/lib/commonjs/components/index.js.map +1 -1
  273. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
  274. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  275. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
  276. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  277. package/lib/commonjs/contexts/channelContext/ChannelContext.js +2 -2
  278. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  279. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js +2 -2
  280. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  281. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +4 -4
  282. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  283. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js +3 -3
  284. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
  285. package/lib/commonjs/contexts/chatContext/ChatContext.js +2 -2
  286. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  287. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  288. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  289. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js +2 -2
  290. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  291. package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
  292. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  293. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +105 -70
  294. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  295. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +9 -5
  296. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  297. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  298. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  299. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
  300. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  301. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  302. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  303. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  304. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  305. package/lib/commonjs/contexts/messagesContext/MessagesContext.js +2 -2
  306. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  307. package/lib/commonjs/contexts/overlayContext/OverlayContext.js +1 -1
  308. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  309. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +49 -51
  310. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  311. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +61 -0
  312. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -0
  313. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  314. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  315. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +20 -33
  316. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  317. package/lib/commonjs/contexts/themeContext/ThemeContext.js +2 -2
  318. package/lib/commonjs/contexts/themeContext/ThemeContext.js.map +1 -1
  319. package/lib/commonjs/contexts/themeContext/utils/theme.js +48 -20
  320. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  321. package/lib/commonjs/contexts/threadContext/ThreadContext.js +2 -2
  322. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  323. package/lib/commonjs/contexts/translationContext/TranslationContext.js +3 -3
  324. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  325. package/lib/commonjs/contexts/typingContext/TypingContext.js +2 -2
  326. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
  327. package/lib/commonjs/contexts/utils/getDisplayName.js.map +1 -1
  328. package/lib/commonjs/emoji-data/compiled.js +0 -315
  329. package/lib/commonjs/emoji-data/compiled.js.map +1 -1
  330. package/lib/commonjs/emoji-data/emojiNames.js +0 -105
  331. package/lib/commonjs/emoji-data/emojiNames.js.map +1 -1
  332. package/lib/commonjs/emoji-data/emojis.js +0 -175
  333. package/lib/commonjs/emoji-data/emojis.js.map +1 -1
  334. package/lib/commonjs/emoji-data/index.js +2 -2
  335. package/lib/commonjs/emoji-data/index.js.map +1 -1
  336. package/lib/commonjs/hooks/useAppStateListener.js +8 -5
  337. package/lib/commonjs/hooks/useAppStateListener.js.map +1 -1
  338. package/lib/commonjs/hooks/useIsMountedRef.js +19 -0
  339. package/lib/commonjs/hooks/useIsMountedRef.js.map +1 -0
  340. package/lib/commonjs/hooks/useStreami18n.js +5 -2
  341. package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
  342. package/lib/commonjs/i18n/en.json +9 -3
  343. package/lib/commonjs/i18n/fr.json +9 -3
  344. package/lib/commonjs/i18n/hi.json +9 -3
  345. package/lib/commonjs/i18n/it.json +9 -3
  346. package/lib/commonjs/i18n/ja.json +9 -0
  347. package/lib/commonjs/i18n/ko.json +9 -0
  348. package/lib/commonjs/i18n/nl.json +9 -3
  349. package/lib/commonjs/i18n/ru.json +9 -3
  350. package/lib/commonjs/i18n/tr.json +10 -4
  351. package/lib/commonjs/icons/Pin.js +42 -0
  352. package/lib/commonjs/icons/Pin.js.map +1 -0
  353. package/lib/commonjs/icons/PinHeader.js +38 -0
  354. package/lib/commonjs/icons/PinHeader.js.map +1 -0
  355. package/lib/commonjs/icons/Unpin.js +38 -0
  356. package/lib/commonjs/icons/Unpin.js.map +1 -0
  357. package/lib/commonjs/icons/UserAdmin.js +62 -0
  358. package/lib/commonjs/icons/UserAdmin.js.map +1 -0
  359. package/lib/commonjs/icons/index.js +39 -26
  360. package/lib/commonjs/icons/index.js.map +1 -1
  361. package/lib/commonjs/icons/utils/base.js +1 -1
  362. package/lib/commonjs/index.js +6 -6
  363. package/lib/commonjs/init.js +13 -0
  364. package/lib/commonjs/init.js.map +1 -0
  365. package/lib/commonjs/mock-builders/api/error.js +1 -1
  366. package/lib/commonjs/mock-builders/api/queryChannels.js +1 -1
  367. package/lib/commonjs/mock-builders/api/queryChannels.js.map +1 -1
  368. package/lib/commonjs/mock-builders/api/sendMessage.js +4 -1
  369. package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
  370. package/lib/commonjs/mock-builders/generator/attachment.js +1 -3
  371. package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
  372. package/lib/commonjs/mock-builders/generator/channel.js +101 -50
  373. package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
  374. package/lib/commonjs/mock-builders/generator/user.js +32 -33
  375. package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
  376. package/lib/commonjs/mock-builders/mock.js +3 -3
  377. package/lib/commonjs/mock-builders/mock.js.map +1 -1
  378. package/lib/commonjs/mock-builders/native/react-native-mock.js +1 -1
  379. package/lib/commonjs/mock-builders/native/react-native-mock.js.map +1 -1
  380. package/lib/commonjs/native.js +1 -7
  381. package/lib/commonjs/native.js.map +1 -1
  382. package/lib/commonjs/utils/Streami18n.js.map +1 -1
  383. package/lib/commonjs/utils/date.js +13 -0
  384. package/lib/commonjs/utils/date.js.map +1 -0
  385. package/lib/commonjs/utils/getResizedImageUrl.js +37 -0
  386. package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -0
  387. package/lib/commonjs/utils/getUrlOfImageAttachment.js +9 -0
  388. package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -0
  389. package/lib/commonjs/utils/utils.js +39 -19
  390. package/lib/commonjs/utils/utils.js.map +1 -1
  391. package/lib/commonjs/version.json +1 -1
  392. package/lib/module/components/Attachment/Attachment.js +16 -15
  393. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  394. package/lib/module/components/Attachment/AttachmentActions.js +4 -4
  395. package/lib/module/components/Attachment/AttachmentActions.js.map +1 -1
  396. package/lib/module/components/Attachment/Card.js +18 -15
  397. package/lib/module/components/Attachment/Card.js.map +1 -1
  398. package/lib/module/components/Attachment/FileAttachment.js +8 -8
  399. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  400. package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -4
  401. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  402. package/lib/module/components/Attachment/FileIcon.js.map +1 -1
  403. package/lib/module/components/Attachment/Gallery.js +123 -121
  404. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  405. package/lib/module/components/Attachment/Giphy.js +112 -148
  406. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  407. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  408. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  409. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  410. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  411. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  412. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  413. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  414. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  415. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  416. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  417. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  418. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  419. package/lib/module/components/Attachment/utils/buildGallery/types.js +4 -0
  420. package/lib/module/{styleguideComponents/Reanimated.js.map → components/Attachment/utils/buildGallery/types.js.map} +0 -0
  421. package/lib/module/components/Attachment/utils/getAspectRatio.js +14 -0
  422. package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -0
  423. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  424. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  425. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +9 -8
  426. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  427. package/lib/module/components/AttachmentPicker/components/AttachmentSelectionBar.js +11 -8
  428. package/lib/module/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
  429. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +24 -48
  430. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  431. package/lib/module/components/AutoCompleteInput/{CommandsItem.js → AutoCompleteSuggestionCommandIcon.js} +21 -94
  432. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -0
  433. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +145 -0
  434. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -0
  435. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +248 -0
  436. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -0
  437. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +223 -0
  438. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -0
  439. package/lib/module/components/Avatar/Avatar.js +13 -7
  440. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  441. package/lib/module/components/Avatar/GroupAvatar.js +10 -8
  442. package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
  443. package/lib/module/components/Channel/Channel.js +303 -202
  444. package/lib/module/components/Channel/Channel.js.map +1 -1
  445. package/lib/module/components/Channel/hooks/useCreateChannelContext.js +7 -5
  446. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  447. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +7 -5
  448. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  449. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +13 -31
  450. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  451. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +35 -0
  452. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -0
  453. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  454. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  455. package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  456. package/lib/module/components/ChannelList/ChannelList.js +6 -6
  457. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  458. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js +5 -4
  459. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  460. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
  461. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  462. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +4 -3
  463. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  464. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js +7 -4
  465. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  466. package/lib/module/components/ChannelList/ChannelListMessenger.js +17 -17
  467. package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
  468. package/lib/module/components/ChannelList/Skeleton.js +14 -13
  469. package/lib/module/components/ChannelList/Skeleton.js.map +1 -1
  470. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  471. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  472. package/lib/module/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  473. package/lib/module/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  474. package/lib/module/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  475. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  476. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  477. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  478. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js +3 -1
  479. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  480. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  481. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  482. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  483. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  484. package/lib/module/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  485. package/lib/module/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  486. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  487. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  488. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +96 -63
  489. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  490. package/lib/module/components/ChannelList/utils.js +1 -1
  491. package/lib/module/components/ChannelList/utils.js.map +1 -1
  492. package/lib/module/components/ChannelPreview/ChannelAvatar.js +2 -2
  493. package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  494. package/lib/module/components/ChannelPreview/ChannelPreview.js +4 -4
  495. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  496. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +5 -5
  497. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  498. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js +49 -20
  499. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  500. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  501. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  502. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  503. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  504. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  505. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  506. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  507. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  508. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js +16 -7
  509. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  510. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  511. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  512. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js +2 -1
  513. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  514. package/lib/module/components/Chat/Chat.js +8 -4
  515. package/lib/module/components/Chat/Chat.js.map +1 -1
  516. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  517. package/lib/module/components/Chat/hooks/useIsOnline.js +40 -31
  518. package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
  519. package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
  520. package/lib/module/components/ImageGallery/ImageGallery.js +107 -97
  521. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  522. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
  523. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  524. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
  525. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  526. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +31 -16
  527. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  528. package/lib/module/components/ImageGallery/components/ImageGrid.js +7 -9
  529. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  530. package/lib/module/components/ImageGallery/components/ImageGridHandle.js +5 -5
  531. package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  532. package/lib/module/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  533. package/lib/module/components/Indicators/LoadingIndicator.js +9 -9
  534. package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
  535. package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js +20 -12
  536. package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
  537. package/lib/module/components/Message/Message.js +152 -854
  538. package/lib/module/components/Message/Message.js.map +1 -1
  539. package/lib/module/components/Message/MessageSimple/MessageAvatar.js +6 -6
  540. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  541. package/lib/module/components/Message/MessageSimple/MessageContent.js +41 -39
  542. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  543. package/lib/module/components/Message/MessageSimple/MessageDeleted.js +8 -6
  544. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  545. package/lib/module/components/Message/MessageSimple/MessageFooter.js +34 -22
  546. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  547. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +122 -0
  548. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -0
  549. package/lib/module/components/Message/MessageSimple/MessageReplies.js +26 -10
  550. package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  551. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
  552. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  553. package/lib/module/components/Message/MessageSimple/MessageSimple.js +31 -14
  554. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  555. package/lib/module/components/Message/MessageSimple/MessageStatus.js +28 -24
  556. package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  557. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +7 -3
  558. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  559. package/lib/module/components/Message/MessageSimple/ReactionList.js +86 -113
  560. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
  561. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  562. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  563. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  564. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  565. package/lib/module/components/Message/MessageSimple/utils/renderText.js +207 -26
  566. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  567. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  568. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  569. package/lib/module/components/Message/hooks/useCreateMessageContext.js +1 -5
  570. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  571. package/lib/module/components/Message/hooks/useMessageActionHandlers.js +307 -0
  572. package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -0
  573. package/lib/module/components/Message/hooks/useMessageActions.js +563 -0
  574. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -0
  575. package/lib/module/components/Message/utils/messageActions.js +17 -15
  576. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  577. package/lib/module/components/Message/utils/removeReservedFields.js.map +1 -1
  578. package/lib/module/components/MessageInput/AttachButton.js +6 -4
  579. package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
  580. package/lib/module/components/MessageInput/CommandsButton.js +3 -3
  581. package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
  582. package/lib/module/components/MessageInput/CooldownTimer.js +78 -0
  583. package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -0
  584. package/lib/module/components/MessageInput/FileUploadPreview.js +32 -27
  585. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  586. package/lib/module/components/MessageInput/ImageUploadPreview.js +9 -9
  587. package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
  588. package/lib/module/components/MessageInput/InputButtons.js +17 -22
  589. package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
  590. package/lib/module/components/MessageInput/MessageInput.js +93 -65
  591. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  592. package/lib/module/components/MessageInput/MoreOptionsButton.js +3 -3
  593. package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
  594. package/lib/module/components/MessageInput/SendButton.js +8 -6
  595. package/lib/module/components/MessageInput/SendButton.js.map +1 -1
  596. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +71 -0
  597. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -0
  598. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +11 -10
  599. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  600. package/lib/module/components/MessageInput/hooks/useCooldown.js +63 -0
  601. package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -0
  602. package/lib/module/components/MessageInput/hooks/useCountdown.js +57 -0
  603. package/lib/module/components/MessageInput/hooks/useCountdown.js.map +1 -0
  604. package/lib/module/components/MessageList/DateHeader.js +2 -2
  605. package/lib/module/components/MessageList/DateHeader.js.map +1 -1
  606. package/lib/module/components/MessageList/InlineDateSeparator.js +4 -3
  607. package/lib/module/components/MessageList/InlineDateSeparator.js.map +1 -1
  608. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
  609. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  610. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
  611. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  612. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
  613. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  614. package/lib/module/components/MessageList/MessageList.js +106 -58
  615. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  616. package/lib/module/components/MessageList/MessageSystem.js +6 -6
  617. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  618. package/lib/module/components/MessageList/ScrollToBottomButton.js +7 -5
  619. package/lib/module/components/MessageList/ScrollToBottomButton.js.map +1 -1
  620. package/lib/module/components/MessageList/TypingIndicator.js +5 -5
  621. package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
  622. package/lib/module/components/MessageList/TypingIndicatorContainer.js +2 -2
  623. package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  624. package/lib/module/components/MessageList/hooks/useMessageList.js +24 -11
  625. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  626. package/lib/module/components/MessageList/hooks/useTypingString.js +2 -2
  627. package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
  628. package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  629. package/lib/module/components/MessageList/utils/getDateSeparators.js +2 -1
  630. package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
  631. package/lib/module/components/MessageList/utils/getGroupStyles.js +11 -10
  632. package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
  633. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  634. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  635. package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
  636. package/lib/{commonjs/components/MessageOverlay/MessageActions.js → module/components/MessageOverlay/MessageActionList.js} +33 -85
  637. package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -0
  638. package/lib/module/components/MessageOverlay/MessageActionListItem.js +131 -0
  639. package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -0
  640. package/lib/module/components/MessageOverlay/MessageOverlay.js +110 -115
  641. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
  642. package/lib/module/components/MessageOverlay/OverlayBackdrop.js +38 -0
  643. package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
  644. package/lib/module/components/MessageOverlay/OverlayReactionList.js +17 -18
  645. package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  646. package/lib/module/components/MessageOverlay/OverlayReactions.js +31 -34
  647. package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
  648. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  649. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  650. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js +37 -0
  651. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
  652. package/lib/module/components/Reply/Reply.js +25 -19
  653. package/lib/module/components/Reply/Reply.js.map +1 -1
  654. package/lib/module/components/Thread/Thread.js +6 -6
  655. package/lib/module/components/Thread/Thread.js.map +1 -1
  656. package/lib/module/components/Thread/components/ThreadFooterComponent.js +13 -12
  657. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  658. package/lib/module/components/docs/ListProps.md +1 -1
  659. package/lib/module/components/docs/data.js +45 -45
  660. package/lib/module/components/docs/data.js.map +1 -1
  661. package/lib/module/components/index.js +133 -55
  662. package/lib/module/components/index.js.map +1 -1
  663. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
  664. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  665. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
  666. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  667. package/lib/module/contexts/channelContext/ChannelContext.js +2 -2
  668. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  669. package/lib/module/contexts/channelsContext/ChannelsContext.js +2 -2
  670. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  671. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +4 -4
  672. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  673. package/lib/module/contexts/channelsStateContext/useChannelState.js +3 -3
  674. package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
  675. package/lib/module/contexts/chatContext/ChatContext.js +2 -2
  676. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  677. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  678. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  679. package/lib/module/contexts/keyboardContext/KeyboardContext.js +2 -2
  680. package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  681. package/lib/module/contexts/messageContext/MessageContext.js +2 -2
  682. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  683. package/lib/module/contexts/messageInputContext/MessageInputContext.js +105 -70
  684. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  685. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +9 -5
  686. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  687. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  688. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  689. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
  690. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  691. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  692. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  693. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  694. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  695. package/lib/module/contexts/messagesContext/MessagesContext.js +2 -2
  696. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  697. package/lib/module/contexts/overlayContext/OverlayContext.js +1 -1
  698. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  699. package/lib/module/contexts/overlayContext/OverlayProvider.js +49 -51
  700. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  701. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +61 -0
  702. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -0
  703. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  704. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  705. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +20 -33
  706. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  707. package/lib/module/contexts/themeContext/ThemeContext.js +2 -2
  708. package/lib/module/contexts/themeContext/ThemeContext.js.map +1 -1
  709. package/lib/module/contexts/themeContext/utils/theme.js +48 -20
  710. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  711. package/lib/module/contexts/threadContext/ThreadContext.js +2 -2
  712. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  713. package/lib/module/contexts/translationContext/TranslationContext.js +3 -3
  714. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  715. package/lib/module/contexts/typingContext/TypingContext.js +2 -2
  716. package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
  717. package/lib/module/contexts/utils/getDisplayName.js.map +1 -1
  718. package/lib/module/emoji-data/compiled.js +0 -315
  719. package/lib/module/emoji-data/compiled.js.map +1 -1
  720. package/lib/module/emoji-data/emojiNames.js +0 -105
  721. package/lib/module/emoji-data/emojiNames.js.map +1 -1
  722. package/lib/module/emoji-data/emojis.js +0 -175
  723. package/lib/module/emoji-data/emojis.js.map +1 -1
  724. package/lib/module/emoji-data/index.js +2 -2
  725. package/lib/module/emoji-data/index.js.map +1 -1
  726. package/lib/module/hooks/useAppStateListener.js +8 -5
  727. package/lib/module/hooks/useAppStateListener.js.map +1 -1
  728. package/lib/module/hooks/useIsMountedRef.js +19 -0
  729. package/lib/module/hooks/useIsMountedRef.js.map +1 -0
  730. package/lib/module/hooks/useStreami18n.js +5 -2
  731. package/lib/module/hooks/useStreami18n.js.map +1 -1
  732. package/lib/module/i18n/en.json +9 -3
  733. package/lib/module/i18n/fr.json +9 -3
  734. package/lib/module/i18n/hi.json +9 -3
  735. package/lib/module/i18n/it.json +9 -3
  736. package/lib/module/i18n/ja.json +9 -0
  737. package/lib/module/i18n/ko.json +9 -0
  738. package/lib/module/i18n/nl.json +9 -3
  739. package/lib/module/i18n/ru.json +9 -3
  740. package/lib/module/i18n/tr.json +10 -4
  741. package/lib/module/icons/Pin.js +42 -0
  742. package/lib/module/icons/Pin.js.map +1 -0
  743. package/lib/module/icons/PinHeader.js +38 -0
  744. package/lib/module/icons/PinHeader.js.map +1 -0
  745. package/lib/module/icons/Unpin.js +38 -0
  746. package/lib/module/icons/Unpin.js.map +1 -0
  747. package/lib/module/icons/UserAdmin.js +62 -0
  748. package/lib/module/icons/UserAdmin.js.map +1 -0
  749. package/lib/module/icons/index.js +39 -26
  750. package/lib/module/icons/index.js.map +1 -1
  751. package/lib/module/icons/utils/base.js +1 -1
  752. package/lib/module/index.js +6 -6
  753. package/lib/module/init.js +13 -0
  754. package/lib/module/init.js.map +1 -0
  755. package/lib/module/mock-builders/api/error.js +1 -1
  756. package/lib/module/mock-builders/api/queryChannels.js +1 -1
  757. package/lib/module/mock-builders/api/queryChannels.js.map +1 -1
  758. package/lib/module/mock-builders/api/sendMessage.js +4 -1
  759. package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
  760. package/lib/module/mock-builders/generator/attachment.js +1 -3
  761. package/lib/module/mock-builders/generator/attachment.js.map +1 -1
  762. package/lib/module/mock-builders/generator/channel.js +101 -50
  763. package/lib/module/mock-builders/generator/channel.js.map +1 -1
  764. package/lib/module/mock-builders/generator/user.js +32 -33
  765. package/lib/module/mock-builders/generator/user.js.map +1 -1
  766. package/lib/module/mock-builders/mock.js +3 -3
  767. package/lib/module/mock-builders/mock.js.map +1 -1
  768. package/lib/module/mock-builders/native/react-native-mock.js +1 -1
  769. package/lib/module/mock-builders/native/react-native-mock.js.map +1 -1
  770. package/lib/module/native.js +1 -7
  771. package/lib/module/native.js.map +1 -1
  772. package/lib/module/utils/Streami18n.js.map +1 -1
  773. package/lib/module/utils/date.js +13 -0
  774. package/lib/module/utils/date.js.map +1 -0
  775. package/lib/module/utils/getResizedImageUrl.js +37 -0
  776. package/lib/module/utils/getResizedImageUrl.js.map +1 -0
  777. package/lib/module/utils/getUrlOfImageAttachment.js +9 -0
  778. package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -0
  779. package/lib/module/utils/utils.js +39 -19
  780. package/lib/module/utils/utils.js.map +1 -1
  781. package/lib/module/version.json +1 -1
  782. package/lib/typescript/components/Attachment/Attachment.d.ts +6 -6
  783. package/lib/typescript/components/Attachment/AttachmentActions.d.ts +5 -5
  784. package/lib/typescript/components/Attachment/Card.d.ts +7 -5
  785. package/lib/typescript/components/Attachment/FileAttachment.d.ts +6 -6
  786. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +4 -4
  787. package/lib/typescript/components/Attachment/Gallery.d.ts +19 -6
  788. package/lib/typescript/components/Attachment/Giphy.d.ts +7 -7
  789. package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts +23 -0
  790. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts +7 -0
  791. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts +7 -0
  792. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts +7 -0
  793. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +10 -0
  794. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts +137 -0
  795. package/lib/typescript/components/Attachment/utils/buildGallery/types.d.ts +23 -0
  796. package/lib/typescript/components/Attachment/utils/getAspectRatio.d.ts +9 -0
  797. package/lib/typescript/components/Attachment/utils/getGalleryImageBorderRadius.d.ts +22 -0
  798. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +10 -4
  799. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +5 -0
  800. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts +8 -0
  801. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +10 -0
  802. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +21 -0
  803. package/lib/typescript/components/Avatar/Avatar.d.ts +1 -1
  804. package/lib/typescript/components/Channel/Channel.d.ts +13 -16
  805. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +2 -2
  806. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +3 -70
  807. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +3 -126
  808. package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +7 -0
  809. package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +3 -3
  810. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +2 -2
  811. package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +2 -2
  812. package/lib/typescript/components/ChannelList/ChannelList.d.ts +15 -15
  813. package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +4 -4
  814. package/lib/typescript/components/ChannelList/hooks/listeners/useAddedToChannelNotification.d.ts +5 -5
  815. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelDeleted.d.ts +5 -5
  816. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelHidden.d.ts +5 -5
  817. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelTruncated.d.ts +5 -5
  818. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +5 -5
  819. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelVisible.d.ts +5 -5
  820. package/lib/typescript/components/ChannelList/hooks/listeners/useConnectionRecovered.d.ts +2 -2
  821. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessage.d.ts +4 -4
  822. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts +5 -5
  823. package/lib/typescript/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.d.ts +5 -5
  824. package/lib/typescript/components/ChannelList/hooks/listeners/useUserPresence.d.ts +4 -4
  825. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +2 -2
  826. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +11 -9
  827. package/lib/typescript/components/ChannelList/utils.d.ts +7 -7
  828. package/lib/typescript/components/ChannelPreview/ChannelAvatar.d.ts +3 -3
  829. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +7 -7
  830. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +4 -5
  831. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts +6 -6
  832. package/lib/typescript/components/ChannelPreview/ChannelPreviewMutedStatus.d.ts +9 -0
  833. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +3 -3
  834. package/lib/typescript/components/ChannelPreview/ChannelPreviewTitle.d.ts +3 -3
  835. package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts +3 -3
  836. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.d.ts +15 -3
  837. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts +4 -4
  838. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts +2 -2
  839. package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +5 -5
  840. package/lib/typescript/components/Chat/Chat.d.ts +3 -3
  841. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +2 -2
  842. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +2 -2
  843. package/lib/typescript/components/Chat/hooks/useMutedUsers.d.ts +2 -2
  844. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +13 -11
  845. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +1 -1
  846. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +10 -10
  847. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +10 -10
  848. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +10 -11
  849. package/lib/typescript/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.d.ts +1 -0
  850. package/lib/typescript/components/Indicators/LoadingErrorIndicator.d.ts +1 -1
  851. package/lib/typescript/components/KeyboardCompatibleView/KeyboardCompatibleView.d.ts +2 -1
  852. package/lib/typescript/components/Message/Message.d.ts +14 -13
  853. package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts +5 -5
  854. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +4 -4
  855. package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts +6 -6
  856. package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +8 -8
  857. package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +8 -0
  858. package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts +4 -4
  859. package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts +3 -3
  860. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +4 -4
  861. package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +4 -4
  862. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +7 -6
  863. package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +5 -4
  864. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.d.ts +7 -0
  865. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.test.d.ts +1 -0
  866. package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +21 -6
  867. package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts +1 -0
  868. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +2 -2
  869. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +15 -0
  870. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +26 -0
  871. package/lib/typescript/components/Message/utils/messageActions.d.ts +22 -21
  872. package/lib/typescript/components/Message/utils/removeReservedFields.d.ts +2 -2
  873. package/lib/typescript/components/MessageInput/AttachButton.d.ts +5 -5
  874. package/lib/typescript/components/MessageInput/CommandsButton.d.ts +5 -5
  875. package/lib/typescript/components/MessageInput/CooldownTimer.d.ts +10 -0
  876. package/lib/typescript/components/MessageInput/FileUploadPreview.d.ts +4 -4
  877. package/lib/typescript/components/MessageInput/ImageUploadPreview.d.ts +4 -4
  878. package/lib/typescript/components/MessageInput/InputButtons.d.ts +5 -5
  879. package/lib/typescript/components/MessageInput/MessageInput.d.ts +4 -4
  880. package/lib/typescript/components/MessageInput/MoreOptionsButton.d.ts +5 -5
  881. package/lib/typescript/components/MessageInput/SendButton.d.ts +4 -4
  882. package/lib/typescript/components/MessageInput/SendMessageDisallowedIndicator.d.ts +1 -0
  883. package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +2 -2
  884. package/lib/typescript/components/MessageInput/hooks/useCooldown.d.ts +9 -0
  885. package/lib/typescript/components/MessageInput/hooks/useCountdown.d.ts +8 -0
  886. package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +2 -2
  887. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +2 -2
  888. package/lib/typescript/components/MessageList/InlineLoadingMoreThreadIndicator.d.ts +2 -2
  889. package/lib/typescript/components/MessageList/MessageList.d.ts +8 -7
  890. package/lib/typescript/components/MessageList/MessageSystem.d.ts +5 -5
  891. package/lib/typescript/components/MessageList/TypingIndicator.d.ts +2 -2
  892. package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +4 -4
  893. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +6 -5
  894. package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts +2 -2
  895. package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +3 -3
  896. package/lib/typescript/components/MessageList/utils/getDateSeparators.d.ts +4 -4
  897. package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts +5 -5
  898. package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +2 -2
  899. package/lib/typescript/components/MessageList/utils/getReadStates.d.ts +8 -5
  900. package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +12 -0
  901. package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts +21 -0
  902. package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +6 -7
  903. package/lib/typescript/components/MessageOverlay/OverlayBackdrop.d.ts +6 -0
  904. package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts +6 -7
  905. package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +3 -1
  906. package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts +7 -0
  907. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +12 -0
  908. package/lib/typescript/components/Reply/Reply.d.ts +5 -5
  909. package/lib/typescript/components/Thread/Thread.d.ts +8 -8
  910. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +2 -2
  911. package/lib/typescript/components/index.d.ts +13 -7
  912. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +2 -2
  913. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +39 -40
  914. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +30 -22
  915. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +19 -19
  916. package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +17 -17
  917. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +11 -11
  918. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +8 -8
  919. package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts +2 -2
  920. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +12 -16
  921. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +53 -42
  922. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +3 -3
  923. package/lib/typescript/contexts/messageInputContext/hooks/useMessageDetailsForState.d.ts +3 -3
  924. package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +31 -32
  925. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.d.ts +12 -0
  926. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.test.d.ts +1 -0
  927. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +77 -166
  928. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +15 -8
  929. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts +2 -2
  930. package/lib/typescript/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.d.ts +25 -0
  931. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +8 -8
  932. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +29 -28
  933. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +48 -17
  934. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +10 -10
  935. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +2 -2
  936. package/lib/typescript/contexts/typingContext/TypingContext.d.ts +8 -8
  937. package/lib/typescript/contexts/utils/getDisplayName.d.ts +2 -2
  938. package/lib/typescript/hooks/useIsMountedRef.d.ts +20 -0
  939. package/lib/typescript/i18n/en.json +9 -3
  940. package/lib/typescript/i18n/fr.json +9 -3
  941. package/lib/typescript/i18n/hi.json +9 -3
  942. package/lib/typescript/i18n/it.json +9 -3
  943. package/lib/typescript/i18n/ja.json +9 -0
  944. package/lib/typescript/i18n/ko.json +9 -0
  945. package/lib/typescript/i18n/nl.json +9 -3
  946. package/lib/typescript/i18n/ru.json +9 -3
  947. package/lib/typescript/i18n/tr.json +10 -4
  948. package/lib/typescript/icons/{Left.d.ts → Pin.d.ts} +1 -1
  949. package/lib/typescript/icons/PinHeader.d.ts +3 -0
  950. package/lib/typescript/icons/{Right.d.ts → Unpin.d.ts} +1 -1
  951. package/lib/typescript/icons/UserAdmin.d.ts +3 -0
  952. package/lib/typescript/icons/index.d.ts +3 -2
  953. package/lib/typescript/init.d.ts +2 -0
  954. package/lib/typescript/native.d.ts +1 -9
  955. package/lib/typescript/types/types.d.ts +16 -13
  956. package/lib/typescript/utils/Streami18n.d.ts +15 -12
  957. package/lib/typescript/utils/date.d.ts +2 -0
  958. package/lib/typescript/utils/getResizedImageUrl.d.ts +20 -0
  959. package/lib/typescript/utils/getUrlOfImageAttachment.d.ts +7 -0
  960. package/lib/typescript/utils/utils.d.ts +36 -30
  961. package/package.json +15 -20
  962. package/src/components/Attachment/Attachment.tsx +20 -61
  963. package/src/components/Attachment/AttachmentActions.tsx +17 -57
  964. package/src/components/Attachment/Card.tsx +22 -52
  965. package/src/components/Attachment/FileAttachment.tsx +16 -51
  966. package/src/components/Attachment/FileAttachmentGroup.tsx +16 -57
  967. package/src/components/Attachment/FileIcon.tsx +2 -2
  968. package/src/components/Attachment/Gallery.tsx +209 -241
  969. package/src/components/Attachment/Giphy.tsx +84 -128
  970. package/src/components/Attachment/__tests__/Attachment.test.js +27 -19
  971. package/src/components/Attachment/__tests__/Gallery.test.js +233 -0
  972. package/src/components/Attachment/__tests__/buildGallery.test.js +131 -0
  973. package/src/components/Attachment/utils/buildGallery/buildGallery.ts +77 -0
  974. package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +91 -0
  975. package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +99 -0
  976. package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +66 -0
  977. package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +48 -0
  978. package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +188 -0
  979. package/src/components/Attachment/utils/buildGallery/types.ts +27 -0
  980. package/src/components/Attachment/utils/getAspectRatio.ts +21 -0
  981. package/src/components/Attachment/utils/getGalleryImageBorderRadius.ts +71 -0
  982. package/src/components/AttachmentPicker/AttachmentPicker.tsx +4 -2
  983. package/src/components/AttachmentPicker/components/AttachmentSelectionBar.tsx +15 -3
  984. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +66 -96
  985. package/src/components/AutoCompleteInput/{CommandsItem.tsx → AutoCompleteSuggestionCommandIcon.tsx} +7 -59
  986. package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +102 -0
  987. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +149 -0
  988. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +209 -0
  989. package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.js +10 -16
  990. package/src/components/Avatar/Avatar.tsx +8 -11
  991. package/src/components/Avatar/GroupAvatar.tsx +7 -21
  992. package/src/components/Avatar/__tests__/Avatar.test.js +2 -33
  993. package/src/components/Channel/Channel.tsx +495 -477
  994. package/src/components/Channel/__tests__/Channel.test.js +63 -100
  995. package/src/components/Channel/__tests__/ownCapabilities.test.js +376 -0
  996. package/src/components/Channel/hooks/useCreateChannelContext.ts +11 -25
  997. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +54 -69
  998. package/src/components/Channel/hooks/useCreateMessagesContext.ts +17 -49
  999. package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +39 -0
  1000. package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +16 -32
  1001. package/src/components/Channel/hooks/useCreateThreadContext.ts +4 -19
  1002. package/src/components/Channel/hooks/useCreateTypingContext.ts +4 -19
  1003. package/src/components/ChannelList/ChannelList.tsx +36 -58
  1004. package/src/components/ChannelList/ChannelListFooterLoadingIndicator.tsx +2 -3
  1005. package/src/components/ChannelList/ChannelListHeaderErrorIndicator.tsx +3 -7
  1006. package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +5 -2
  1007. package/src/components/ChannelList/ChannelListLoadingIndicator.tsx +5 -1
  1008. package/src/components/ChannelList/ChannelListMessenger.tsx +22 -74
  1009. package/src/components/ChannelList/Skeleton.tsx +2 -1
  1010. package/src/components/ChannelList/__tests__/ChannelList.test.js +75 -16
  1011. package/src/components/ChannelList/__tests__/ChannelListMessenger.test.js +46 -14
  1012. package/src/components/ChannelList/hooks/listeners/useAddedToChannelNotification.ts +17 -39
  1013. package/src/components/ChannelList/hooks/listeners/useChannelDeleted.ts +15 -37
  1014. package/src/components/ChannelList/hooks/listeners/useChannelHidden.ts +15 -37
  1015. package/src/components/ChannelList/hooks/listeners/useChannelTruncated.ts +17 -39
  1016. package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +15 -37
  1017. package/src/components/ChannelList/hooks/listeners/useChannelVisible.ts +17 -39
  1018. package/src/components/ChannelList/hooks/listeners/useConnectionRecovered.ts +8 -20
  1019. package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +13 -36
  1020. package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +17 -39
  1021. package/src/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.ts +15 -37
  1022. package/src/components/ChannelList/hooks/listeners/useUserPresence.ts +11 -33
  1023. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +5 -21
  1024. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +95 -70
  1025. package/src/components/ChannelList/utils.ts +9 -42
  1026. package/src/components/ChannelPreview/ChannelAvatar.tsx +6 -29
  1027. package/src/components/ChannelPreview/ChannelPreview.tsx +21 -54
  1028. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +14 -24
  1029. package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +39 -56
  1030. package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +50 -0
  1031. package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +10 -30
  1032. package/src/components/ChannelPreview/ChannelPreviewTitle.tsx +7 -28
  1033. package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +7 -27
  1034. package/src/components/ChannelPreview/__tests__/ChannelPreview.test.js +16 -22
  1035. package/src/components/ChannelPreview/__tests__/ChannelPreviewMessenger.test.js +23 -14
  1036. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.ts +15 -30
  1037. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +8 -30
  1038. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +9 -30
  1039. package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +31 -81
  1040. package/src/components/Chat/Chat.tsx +19 -44
  1041. package/src/components/Chat/__tests__/Chat.test.js +12 -47
  1042. package/src/components/Chat/hooks/useCreateChatContext.ts +4 -19
  1043. package/src/components/Chat/hooks/useIsOnline.ts +45 -56
  1044. package/src/components/Chat/hooks/useMutedUsers.ts +5 -20
  1045. package/src/components/ImageGallery/ImageGallery.tsx +127 -133
  1046. package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +1 -2
  1047. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +20 -15
  1048. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +45 -25
  1049. package/src/components/ImageGallery/components/ImageGrid.tsx +46 -35
  1050. package/src/components/ImageGallery/components/ImageGridHandle.tsx +1 -0
  1051. package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +31 -0
  1052. package/src/components/Indicators/LoadingErrorIndicator.tsx +1 -1
  1053. package/src/components/Indicators/LoadingIndicator.tsx +1 -2
  1054. package/src/components/KeyboardCompatibleView/KeyboardCompatibleView.tsx +9 -2
  1055. package/src/components/Message/Message.tsx +196 -688
  1056. package/src/components/Message/MessageSimple/MessageAvatar.tsx +14 -56
  1057. package/src/components/Message/MessageSimple/MessageContent.tsx +42 -87
  1058. package/src/components/Message/MessageSimple/MessageDeleted.tsx +24 -63
  1059. package/src/components/Message/MessageSimple/MessageFooter.tsx +60 -84
  1060. package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +109 -0
  1061. package/src/components/Message/MessageSimple/MessageReplies.tsx +19 -60
  1062. package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx +7 -29
  1063. package/src/components/Message/MessageSimple/MessageSimple.tsx +64 -78
  1064. package/src/components/Message/MessageSimple/MessageStatus.tsx +35 -88
  1065. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +24 -66
  1066. package/src/components/Message/MessageSimple/ReactionList.tsx +110 -163
  1067. package/src/components/Message/MessageSimple/__tests__/Message.test.js +24 -258
  1068. package/src/components/Message/MessageSimple/__tests__/MessageAvatar.test.js +9 -8
  1069. package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +63 -46
  1070. package/src/components/Message/MessageSimple/__tests__/MessagePinnedHeader.test.js +53 -0
  1071. package/src/components/Message/MessageSimple/__tests__/MessageReplies.test.js +13 -9
  1072. package/src/components/Message/MessageSimple/__tests__/MessageStatus.test.js +11 -47
  1073. package/src/components/Message/MessageSimple/__tests__/MessageTextContainer.test.js +2 -2
  1074. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap +35 -22
  1075. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessagePinnedHeader.test.js.snap +80 -0
  1076. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageReplies.test.js.snap +72 -46
  1077. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageStatus.test.js.snap +77 -48
  1078. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageTextContainer.test.js.snap +6 -18
  1079. package/src/components/Message/MessageSimple/utils/parseLinks.test.ts +100 -0
  1080. package/src/components/Message/MessageSimple/utils/parseLinks.ts +95 -0
  1081. package/src/components/Message/MessageSimple/utils/renderText.test.tsx +70 -0
  1082. package/src/components/Message/MessageSimple/utils/renderText.tsx +138 -63
  1083. package/src/components/Message/hooks/useCreateMessageContext.ts +5 -26
  1084. package/src/components/Message/hooks/useMessageActionHandlers.ts +157 -0
  1085. package/src/components/Message/hooks/useMessageActions.tsx +371 -0
  1086. package/src/components/Message/utils/messageActions.ts +53 -54
  1087. package/src/components/Message/utils/removeReservedFields.ts +3 -18
  1088. package/src/components/MessageInput/AttachButton.tsx +15 -57
  1089. package/src/components/MessageInput/CommandsButton.tsx +16 -58
  1090. package/src/components/MessageInput/CooldownTimer.tsx +67 -0
  1091. package/src/components/MessageInput/FileUploadPreview.tsx +86 -118
  1092. package/src/components/MessageInput/ImageUploadPreview.tsx +15 -58
  1093. package/src/components/MessageInput/InputButtons.tsx +17 -64
  1094. package/src/components/MessageInput/MessageInput.tsx +83 -97
  1095. package/src/components/MessageInput/MoreOptionsButton.tsx +14 -56
  1096. package/src/components/MessageInput/SendButton.tsx +14 -55
  1097. package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +47 -0
  1098. package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +6 -21
  1099. package/src/components/MessageInput/__tests__/AttachButton.test.js +2 -2
  1100. package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +193 -97
  1101. package/src/components/MessageInput/__tests__/ImageUploadPreview.test.js +35 -35
  1102. package/src/components/MessageInput/__tests__/MessageInput.test.js +29 -17
  1103. package/src/components/MessageInput/__tests__/SendButton.test.js +2 -2
  1104. package/src/components/MessageInput/__tests__/UploadProgressIndicator.test.js +2 -2
  1105. package/src/components/MessageInput/__tests__/__snapshots__/AttachButton.test.js.snap +134 -52
  1106. package/src/components/MessageInput/__tests__/__snapshots__/FileUploadPreview.test.js.snap +3955 -1647
  1107. package/src/components/MessageInput/__tests__/__snapshots__/ImageUploadPreview.test.js.snap +1964 -1464
  1108. package/src/components/MessageInput/__tests__/__snapshots__/MessageInput.test.js.snap +633 -326
  1109. package/src/components/MessageInput/__tests__/__snapshots__/SendButton.test.js.snap +224 -124
  1110. package/src/components/MessageInput/__tests__/__snapshots__/UploadProgressIndicator.test.js.snap +85 -17
  1111. package/src/components/MessageInput/hooks/useCooldown.ts +48 -0
  1112. package/src/components/MessageInput/hooks/useCountdown.ts +48 -0
  1113. package/src/components/MessageList/DateHeader.tsx +2 -2
  1114. package/src/components/MessageList/InlineDateSeparator.tsx +5 -2
  1115. package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +3 -18
  1116. package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +3 -18
  1117. package/src/components/MessageList/InlineLoadingMoreThreadIndicator.tsx +3 -18
  1118. package/src/components/MessageList/MessageList.tsx +198 -152
  1119. package/src/components/MessageList/MessageSystem.tsx +7 -28
  1120. package/src/components/MessageList/ScrollToBottomButton.tsx +6 -1
  1121. package/src/components/MessageList/TypingIndicator.tsx +4 -20
  1122. package/src/components/MessageList/TypingIndicatorContainer.tsx +14 -47
  1123. package/src/components/MessageList/__tests__/MessageList.test.js +231 -152
  1124. package/src/components/MessageList/__tests__/MessageSystem.test.js +3 -3
  1125. package/src/components/MessageList/__tests__/ScrollToBottomButton.test.js +13 -8
  1126. package/src/components/MessageList/__tests__/TypingIndicator.test.js +14 -97
  1127. package/src/components/MessageList/__tests__/__snapshots__/MessageSystem.test.js.snap +9 -4
  1128. package/src/components/MessageList/__tests__/__snapshots__/ScrollToBottomButton.test.js.snap +78 -32
  1129. package/src/components/MessageList/__tests__/__snapshots__/TypingIndicator.test.js.snap +60 -57
  1130. package/src/components/MessageList/hooks/useMessageList.ts +39 -62
  1131. package/src/components/MessageList/hooks/useTypingString.ts +6 -22
  1132. package/src/components/MessageList/utils/filterTypingUsers.ts +7 -28
  1133. package/src/components/MessageList/utils/getDateSeparators.ts +10 -30
  1134. package/src/components/MessageList/utils/getGroupStyles.ts +23 -44
  1135. package/src/components/MessageList/utils/getLastReceivedMessage.ts +9 -19
  1136. package/src/components/MessageList/utils/getReadStates.ts +5 -20
  1137. package/src/components/MessageOverlay/MessageActionList.tsx +170 -0
  1138. package/src/components/MessageOverlay/MessageActionListItem.tsx +124 -0
  1139. package/src/components/MessageOverlay/MessageOverlay.tsx +279 -310
  1140. package/src/components/MessageOverlay/OverlayBackdrop.tsx +18 -0
  1141. package/src/components/MessageOverlay/OverlayReactionList.tsx +24 -82
  1142. package/src/components/MessageOverlay/OverlayReactions.tsx +12 -8
  1143. package/src/components/MessageOverlay/OverlayReactionsAvatar.tsx +27 -0
  1144. package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +44 -0
  1145. package/src/components/Reply/Reply.tsx +44 -81
  1146. package/src/components/Thread/Thread.tsx +24 -58
  1147. package/src/components/Thread/__tests__/Thread.test.js +58 -77
  1148. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +874 -1011
  1149. package/src/components/Thread/components/ThreadFooterComponent.tsx +13 -49
  1150. package/src/components/docs/ListProps.md +1 -1
  1151. package/src/components/docs/data.js +38 -37
  1152. package/src/components/index.ts +13 -7
  1153. package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +1 -2
  1154. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +10 -9
  1155. package/src/contexts/channelContext/ChannelContext.tsx +43 -79
  1156. package/src/contexts/channelsContext/ChannelsContext.tsx +37 -63
  1157. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +39 -117
  1158. package/src/contexts/channelsStateContext/useChannelState.ts +29 -61
  1159. package/src/contexts/chatContext/ChatContext.tsx +15 -51
  1160. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +13 -56
  1161. package/src/contexts/keyboardContext/KeyboardContext.tsx +13 -8
  1162. package/src/contexts/messageContext/MessageContext.tsx +16 -57
  1163. package/src/contexts/messageInputContext/MessageInputContext.tsx +146 -157
  1164. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +13 -26
  1165. package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +15 -34
  1166. package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +41 -97
  1167. package/src/contexts/messageOverlayContext/hooks/useResettableState.test.tsx +46 -0
  1168. package/src/contexts/messageOverlayContext/hooks/useResettableState.ts +22 -0
  1169. package/src/contexts/messagesContext/MessagesContext.tsx +96 -234
  1170. package/src/contexts/overlayContext/OverlayContext.tsx +35 -35
  1171. package/src/contexts/overlayContext/OverlayProvider.tsx +50 -62
  1172. package/src/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.tsx +38 -0
  1173. package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +14 -55
  1174. package/src/contexts/suggestionsContext/SuggestionsContext.tsx +59 -80
  1175. package/src/contexts/suggestionsContext/__tests__/Suggestions.test.js +4 -2
  1176. package/src/contexts/themeContext/ThemeContext.tsx +1 -0
  1177. package/src/contexts/themeContext/utils/theme.ts +94 -36
  1178. package/src/contexts/threadContext/ThreadContext.tsx +14 -48
  1179. package/src/contexts/translationContext/TranslationContext.tsx +15 -10
  1180. package/src/contexts/typingContext/TypingContext.tsx +12 -46
  1181. package/src/contexts/utils/getDisplayName.ts +3 -1
  1182. package/src/emoji-data/compiled.ts +1830 -9609
  1183. package/src/emoji-data/emojiNames.ts +0 -140
  1184. package/src/emoji-data/emojis.ts +0 -210
  1185. package/src/emoji-data/index.js +1 -1
  1186. package/src/hooks/useAppStateListener.ts +26 -12
  1187. package/src/hooks/useIsMountedRef.ts +36 -0
  1188. package/src/hooks/useStreami18n.ts +5 -3
  1189. package/src/i18n/en.json +9 -3
  1190. package/src/i18n/fr.json +9 -3
  1191. package/src/i18n/hi.json +9 -3
  1192. package/src/i18n/it.json +9 -3
  1193. package/src/i18n/ja.json +9 -0
  1194. package/src/i18n/ko.json +9 -0
  1195. package/src/i18n/nl.json +9 -3
  1196. package/src/i18n/ru.json +9 -3
  1197. package/src/i18n/tr.json +10 -4
  1198. package/src/icons/Pin.tsx +17 -0
  1199. package/src/icons/PinHeader.tsx +12 -0
  1200. package/src/icons/Unpin.tsx +12 -0
  1201. package/src/icons/UserAdmin.tsx +23 -0
  1202. package/src/icons/index.ts +3 -2
  1203. package/src/init.ts +5 -0
  1204. package/src/mock-builders/api/queryChannels.js +1 -1
  1205. package/src/mock-builders/api/sendMessage.js +3 -1
  1206. package/src/mock-builders/generator/attachment.js +0 -2
  1207. package/src/mock-builders/generator/channel.js +101 -46
  1208. package/src/mock-builders/generator/user.js +33 -26
  1209. package/src/mock-builders/mock.js +2 -2
  1210. package/src/mock-builders/native/react-native-mock.js +1 -1
  1211. package/src/native.ts +2 -13
  1212. package/src/types/types.ts +16 -18
  1213. package/src/utils/Streami18n.ts +6 -6
  1214. package/src/utils/__tests__/Streami18n.test.js +9 -45
  1215. package/src/utils/__tests__/getResizedImageUrl.test.js +57 -0
  1216. package/src/utils/__tests__/utils.test.js +19 -0
  1217. package/src/utils/date.ts +4 -0
  1218. package/src/utils/getResizedImageUrl.ts +59 -0
  1219. package/src/utils/getUrlOfImageAttachment.ts +10 -0
  1220. package/src/utils/utils.ts +97 -142
  1221. package/src/version.json +1 -1
  1222. package/lib/commonjs/components/AutoCompleteInput/CommandsHeader.js +0 -78
  1223. package/lib/commonjs/components/AutoCompleteInput/CommandsHeader.js.map +0 -1
  1224. package/lib/commonjs/components/AutoCompleteInput/CommandsItem.js.map +0 -1
  1225. package/lib/commonjs/components/AutoCompleteInput/EmojisHeader.js +0 -81
  1226. package/lib/commonjs/components/AutoCompleteInput/EmojisHeader.js.map +0 -1
  1227. package/lib/commonjs/components/AutoCompleteInput/EmojisItem.js +0 -75
  1228. package/lib/commonjs/components/AutoCompleteInput/EmojisItem.js.map +0 -1
  1229. package/lib/commonjs/components/AutoCompleteInput/MentionsItem.js +0 -125
  1230. package/lib/commonjs/components/AutoCompleteInput/MentionsItem.js.map +0 -1
  1231. package/lib/commonjs/components/AutoCompleteInput/SuggestionsList.js +0 -199
  1232. package/lib/commonjs/components/AutoCompleteInput/SuggestionsList.js.map +0 -1
  1233. package/lib/commonjs/components/Channel/utils/debounce.js +0 -20
  1234. package/lib/commonjs/components/Channel/utils/debounce.js.map +0 -1
  1235. package/lib/commonjs/components/Channel/utils/throttle.js +0 -20
  1236. package/lib/commonjs/components/Channel/utils/throttle.js.map +0 -1
  1237. package/lib/commonjs/components/MessageOverlay/MessageActions.js.map +0 -1
  1238. package/lib/commonjs/icons/Left.js +0 -38
  1239. package/lib/commonjs/icons/Left.js.map +0 -1
  1240. package/lib/commonjs/icons/Right.js +0 -38
  1241. package/lib/commonjs/icons/Right.js.map +0 -1
  1242. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js +0 -100
  1243. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js.map +0 -1
  1244. package/lib/commonjs/styleguideComponents/BottomSheet.js +0 -25
  1245. package/lib/commonjs/styleguideComponents/BottomSheet.js.map +0 -1
  1246. package/lib/commonjs/styleguideComponents/JsDoc.js +0 -87
  1247. package/lib/commonjs/styleguideComponents/JsDoc.js.map +0 -1
  1248. package/lib/commonjs/styleguideComponents/Markdown.js +0 -12
  1249. package/lib/commonjs/styleguideComponents/Markdown.js.map +0 -1
  1250. package/lib/commonjs/styleguideComponents/PathlineRenderer.js +0 -92
  1251. package/lib/commonjs/styleguideComponents/PathlineRenderer.js.map +0 -1
  1252. package/lib/commonjs/styleguideComponents/PropsRenderer.js +0 -267
  1253. package/lib/commonjs/styleguideComponents/PropsRenderer.js.map +0 -1
  1254. package/lib/commonjs/styleguideComponents/Reanimated.js +0 -2
  1255. package/lib/commonjs/styleguideComponents/Wrapper.js +0 -29
  1256. package/lib/commonjs/styleguideComponents/Wrapper.js.map +0 -1
  1257. package/lib/commonjs/styleguideComponents/register-react-native-web.js +0 -44
  1258. package/lib/commonjs/styleguideComponents/register-react-native-web.js.map +0 -1
  1259. package/lib/commonjs/styleguideComponents/resolveAssetSource.js +0 -11
  1260. package/lib/commonjs/styleguideComponents/resolveAssetSource.js.map +0 -1
  1261. package/lib/module/components/AutoCompleteInput/CommandsHeader.js +0 -78
  1262. package/lib/module/components/AutoCompleteInput/CommandsHeader.js.map +0 -1
  1263. package/lib/module/components/AutoCompleteInput/CommandsItem.js.map +0 -1
  1264. package/lib/module/components/AutoCompleteInput/EmojisHeader.js +0 -81
  1265. package/lib/module/components/AutoCompleteInput/EmojisHeader.js.map +0 -1
  1266. package/lib/module/components/AutoCompleteInput/EmojisItem.js +0 -75
  1267. package/lib/module/components/AutoCompleteInput/EmojisItem.js.map +0 -1
  1268. package/lib/module/components/AutoCompleteInput/MentionsItem.js +0 -125
  1269. package/lib/module/components/AutoCompleteInput/MentionsItem.js.map +0 -1
  1270. package/lib/module/components/AutoCompleteInput/SuggestionsList.js +0 -199
  1271. package/lib/module/components/AutoCompleteInput/SuggestionsList.js.map +0 -1
  1272. package/lib/module/components/Channel/utils/debounce.js +0 -20
  1273. package/lib/module/components/Channel/utils/debounce.js.map +0 -1
  1274. package/lib/module/components/Channel/utils/throttle.js +0 -20
  1275. package/lib/module/components/Channel/utils/throttle.js.map +0 -1
  1276. package/lib/module/components/MessageOverlay/MessageActions.js.map +0 -1
  1277. package/lib/module/icons/Left.js +0 -38
  1278. package/lib/module/icons/Left.js.map +0 -1
  1279. package/lib/module/icons/Right.js +0 -38
  1280. package/lib/module/icons/Right.js.map +0 -1
  1281. package/lib/module/styleguideComponents/ArgumentsRenderer.js +0 -100
  1282. package/lib/module/styleguideComponents/ArgumentsRenderer.js.map +0 -1
  1283. package/lib/module/styleguideComponents/BottomSheet.js +0 -25
  1284. package/lib/module/styleguideComponents/BottomSheet.js.map +0 -1
  1285. package/lib/module/styleguideComponents/JsDoc.js +0 -87
  1286. package/lib/module/styleguideComponents/JsDoc.js.map +0 -1
  1287. package/lib/module/styleguideComponents/Markdown.js +0 -12
  1288. package/lib/module/styleguideComponents/Markdown.js.map +0 -1
  1289. package/lib/module/styleguideComponents/PathlineRenderer.js +0 -92
  1290. package/lib/module/styleguideComponents/PathlineRenderer.js.map +0 -1
  1291. package/lib/module/styleguideComponents/PropsRenderer.js +0 -267
  1292. package/lib/module/styleguideComponents/PropsRenderer.js.map +0 -1
  1293. package/lib/module/styleguideComponents/Reanimated.js +0 -2
  1294. package/lib/module/styleguideComponents/Wrapper.js +0 -29
  1295. package/lib/module/styleguideComponents/Wrapper.js.map +0 -1
  1296. package/lib/module/styleguideComponents/register-react-native-web.js +0 -44
  1297. package/lib/module/styleguideComponents/register-react-native-web.js.map +0 -1
  1298. package/lib/module/styleguideComponents/resolveAssetSource.js +0 -11
  1299. package/lib/module/styleguideComponents/resolveAssetSource.js.map +0 -1
  1300. package/lib/typescript/components/AutoCompleteInput/CommandsHeader.d.ts +0 -2
  1301. package/lib/typescript/components/AutoCompleteInput/CommandsItem.d.ts +0 -15
  1302. package/lib/typescript/components/AutoCompleteInput/EmojisHeader.d.ts +0 -5
  1303. package/lib/typescript/components/AutoCompleteInput/EmojisItem.d.ts +0 -12
  1304. package/lib/typescript/components/AutoCompleteInput/MentionsItem.d.ts +0 -16
  1305. package/lib/typescript/components/AutoCompleteInput/SuggestionsList.d.ts +0 -13
  1306. package/lib/typescript/components/Channel/utils/debounce.d.ts +0 -2
  1307. package/lib/typescript/components/Channel/utils/throttle.d.ts +0 -2
  1308. package/lib/typescript/components/MessageOverlay/MessageActions.d.ts +0 -11
  1309. package/src/components/AutoCompleteInput/CommandsHeader.tsx +0 -43
  1310. package/src/components/AutoCompleteInput/EmojisHeader.tsx +0 -45
  1311. package/src/components/AutoCompleteInput/EmojisItem.tsx +0 -52
  1312. package/src/components/AutoCompleteInput/MentionsItem.tsx +0 -74
  1313. package/src/components/AutoCompleteInput/SuggestionsList.tsx +0 -138
  1314. package/src/components/AutoCompleteInput/__tests__/CommandsItem.test.js +0 -29
  1315. package/src/components/AutoCompleteInput/__tests__/MentionsItem.test.js +0 -62
  1316. package/src/components/Channel/utils/debounce.ts +0 -12
  1317. package/src/components/Channel/utils/throttle.ts +0 -12
  1318. package/src/components/MessageList/__tests__/__snapshots__/MessageList.test.js.snap +0 -983
  1319. package/src/components/MessageOverlay/MessageActions.tsx +0 -243
  1320. package/src/icons/Left.tsx +0 -12
  1321. package/src/icons/Right.tsx +0 -12
  1322. package/src/styleguideComponents/ArgumentsRenderer.tsx +0 -59
  1323. package/src/styleguideComponents/BottomSheet.tsx +0 -3
  1324. package/src/styleguideComponents/JsDoc.tsx +0 -43
  1325. package/src/styleguideComponents/Markdown.tsx +0 -1
  1326. package/src/styleguideComponents/PathlineRenderer.tsx +0 -44
  1327. package/src/styleguideComponents/PropsRenderer.tsx +0 -138
  1328. package/src/styleguideComponents/Reanimated.tsx +0 -0
  1329. package/src/styleguideComponents/Wrapper.tsx +0 -6
  1330. package/src/styleguideComponents/register-react-native-web.js +0 -13
  1331. package/src/styleguideComponents/resolveAssetSource.js +0 -2
@@ -28,6 +28,7 @@ var MessageFooterWithContext = function MessageFooterWithContext(props) {
28
28
  var _message$user;
29
29
 
30
30
  var alignment = props.alignment,
31
+ deletedMessagesVisibilityType = props.deletedMessagesVisibilityType,
31
32
  formattedDate = props.formattedDate,
32
33
  isDeleted = props.isDeleted,
33
34
  lastGroupMessage = props.lastGroupMessage,
@@ -39,7 +40,9 @@ var MessageFooterWithContext = function MessageFooterWithContext(props) {
39
40
 
40
41
  var _useTheme = (0, _ThemeContext.useTheme)(),
41
42
  _useTheme$theme = _useTheme.theme,
42
- grey = _useTheme$theme.colors.grey,
43
+ _useTheme$theme$color = _useTheme$theme.colors,
44
+ grey = _useTheme$theme$color.grey,
45
+ grey_dark = _useTheme$theme$color.grey_dark,
43
46
  _useTheme$theme$messa = _useTheme$theme.messageSimple.content,
44
47
  deletedMetaText = _useTheme$theme$messa.deletedMetaText,
45
48
  eyeIcon = _useTheme$theme$messa.eyeIcon,
@@ -53,34 +56,35 @@ var MessageFooterWithContext = function MessageFooterWithContext(props) {
53
56
  if (isDeleted) {
54
57
  return _react["default"].createElement(_reactNative.View, {
55
58
  style: metaContainer,
56
- testID: "message-footer",
59
+ testID: "message-deleted",
57
60
  __self: _this,
58
61
  __source: {
59
62
  fileName: _jsxFileName,
60
- lineNumber: 96,
63
+ lineNumber: 78,
61
64
  columnNumber: 7
62
65
  }
63
- }, _react["default"].createElement(_icons.Eye, (0, _extends2["default"])({
64
- pathFill: isDeleted ? undefined : grey
66
+ }, deletedMessagesVisibilityType === 'sender' && _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_icons.Eye, (0, _extends2["default"])({
67
+ pathFill: grey_dark
65
68
  }, eyeIcon, {
66
69
  __self: _this,
67
70
  __source: {
68
71
  fileName: _jsxFileName,
69
- lineNumber: 97,
70
- columnNumber: 9
72
+ lineNumber: 81,
73
+ columnNumber: 13
71
74
  }
72
75
  })), _react["default"].createElement(_reactNative.Text, {
73
76
  style: [{
74
- color: grey,
77
+ color: grey_dark,
75
78
  textAlign: alignment
76
79
  }, metaText, deletedMetaText],
80
+ testID: "only-visible-to-you",
77
81
  __self: _this,
78
82
  __source: {
79
83
  fileName: _jsxFileName,
80
- lineNumber: 98,
81
- columnNumber: 9
84
+ lineNumber: 82,
85
+ columnNumber: 13
82
86
  }
83
- }, t('Only visible to you')), _react["default"].createElement(_reactNative.Text, {
87
+ }, t('Only visible to you'))), _react["default"].createElement(_reactNative.Text, {
84
88
  style: [{
85
89
  color: grey,
86
90
  textAlign: alignment
@@ -88,7 +92,7 @@ var MessageFooterWithContext = function MessageFooterWithContext(props) {
88
92
  __self: _this,
89
93
  __source: {
90
94
  fileName: _jsxFileName,
91
- lineNumber: 110,
95
+ lineNumber: 97,
92
96
  columnNumber: 9
93
97
  }
94
98
  }, formattedDate));
@@ -104,25 +108,27 @@ var MessageFooterWithContext = function MessageFooterWithContext(props) {
104
108
  __self: _this,
105
109
  __source: {
106
110
  fileName: _jsxFileName,
107
- lineNumber: 130,
111
+ lineNumber: 117,
108
112
  columnNumber: 5
109
113
  }
110
- }, otherAttachments.length && otherAttachments[0].actions ? _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_icons.Eye, (0, _extends2["default"])({}, eyeIcon, {
114
+ }, otherAttachments.length && otherAttachments[0].actions ? _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_icons.Eye, (0, _extends2["default"])({
115
+ pathFill: grey_dark
116
+ }, eyeIcon, {
111
117
  __self: _this,
112
118
  __source: {
113
119
  fileName: _jsxFileName,
114
- lineNumber: 133,
120
+ lineNumber: 120,
115
121
  columnNumber: 11
116
122
  }
117
123
  })), _react["default"].createElement(_reactNative.Text, {
118
124
  style: [{
119
- color: grey,
125
+ color: grey_dark,
120
126
  textAlign: alignment
121
127
  }, metaText, deletedMetaText],
122
128
  __self: _this,
123
129
  __source: {
124
130
  fileName: _jsxFileName,
125
- lineNumber: 134,
131
+ lineNumber: 121,
126
132
  columnNumber: 11
127
133
  }
128
134
  }, t('Only visible to you'))) : null, Object.keys(members).length > 2 && alignment === 'left' && (_message$user = message.user) != null && _message$user.name ? _react["default"].createElement(_reactNative.Text, {
@@ -132,14 +138,14 @@ var MessageFooterWithContext = function MessageFooterWithContext(props) {
132
138
  __self: _this,
133
139
  __source: {
134
140
  fileName: _jsxFileName,
135
- lineNumber: 149,
141
+ lineNumber: 136,
136
142
  columnNumber: 9
137
143
  }
138
144
  }, message.user.name) : null, showMessageStatus && _react["default"].createElement(MessageStatus, {
139
145
  __self: _this,
140
146
  __source: {
141
147
  fileName: _jsxFileName,
142
- lineNumber: 151,
148
+ lineNumber: 138,
143
149
  columnNumber: 29
144
150
  }
145
151
  }), _react["default"].createElement(_reactNative.Text, {
@@ -150,7 +156,7 @@ var MessageFooterWithContext = function MessageFooterWithContext(props) {
150
156
  __self: _this,
151
157
  __source: {
152
158
  fileName: _jsxFileName,
153
- lineNumber: 152,
159
+ lineNumber: 139,
154
160
  columnNumber: 7
155
161
  }
156
162
  }, formattedDate));
@@ -179,7 +185,11 @@ var areEqual = function areEqual(prevProps, nextProps) {
179
185
  if (!membersEqual) return false;
180
186
  var lastGroupMessageEqual = prevLastGroupMessage === nextLastGroupMessage;
181
187
  if (!lastGroupMessageEqual) return false;
182
- var messageEqual = prevMessage.deleted_at === nextMessage.deleted_at && prevMessage.reply_count === nextMessage.reply_count && prevMessage.status === nextMessage.status && prevMessage.type === nextMessage.type && prevMessage.text === nextMessage.text;
188
+ var deletedMessagesVisibilityTypeEqual = prevProps.deletedMessagesVisibilityType === nextProps.deletedMessagesVisibilityType;
189
+ if (!deletedMessagesVisibilityTypeEqual) return false;
190
+ var isPrevMessageTypeDeleted = prevMessage.type === 'deleted';
191
+ var isNextMessageTypeDeleted = nextMessage.type === 'deleted';
192
+ var messageEqual = isPrevMessageTypeDeleted === isNextMessageTypeDeleted && prevMessage.reply_count === nextMessage.reply_count && prevMessage.status === nextMessage.status && prevMessage.type === nextMessage.type && prevMessage.text === nextMessage.text && prevMessage.pinned === nextMessage.pinned;
183
193
  if (!messageEqual) return false;
184
194
  var otherAttachmentsEqual = prevOtherAttachments.length === nextOtherAttachments.length && (prevOtherAttachments == null ? void 0 : (_prevOtherAttachments = prevOtherAttachments[0]) == null ? void 0 : (_prevOtherAttachments2 = _prevOtherAttachments.actions) == null ? void 0 : _prevOtherAttachments2.length) === (nextOtherAttachments == null ? void 0 : (_nextOtherAttachments = nextOtherAttachments[0]) == null ? void 0 : (_nextOtherAttachments2 = _nextOtherAttachments.actions) == null ? void 0 : _nextOtherAttachments2.length);
185
195
  if (!otherAttachmentsEqual) return false;
@@ -202,10 +212,12 @@ var MessageFooter = function MessageFooter(props) {
202
212
  showMessageStatus = _useMessageContext.showMessageStatus;
203
213
 
204
214
  var _useMessagesContext = (0, _MessagesContext.useMessagesContext)(),
215
+ deletedMessagesVisibilityType = _useMessagesContext.deletedMessagesVisibilityType,
205
216
  MessageStatus = _useMessagesContext.MessageStatus;
206
217
 
207
218
  return _react["default"].createElement(MemoizedMessageFooter, (0, _extends2["default"])({
208
219
  alignment: alignment,
220
+ deletedMessagesVisibilityType: deletedMessagesVisibilityType,
209
221
  lastGroupMessage: lastGroupMessage,
210
222
  members: members,
211
223
  message: message,
@@ -216,7 +228,7 @@ var MessageFooter = function MessageFooter(props) {
216
228
  __self: _this,
217
229
  __source: {
218
230
  fileName: _jsxFileName,
219
- lineNumber: 259,
231
+ lineNumber: 234,
220
232
  columnNumber: 5
221
233
  }
222
234
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageFooter.tsx"],"names":["MessageFooterWithContext","props","alignment","formattedDate","isDeleted","lastGroupMessage","members","message","MessageStatus","otherAttachments","showMessageStatus","theme","grey","colors","messageSimple","content","deletedMetaText","eyeIcon","messageUser","metaContainer","metaText","t","undefined","color","textAlign","length","actions","Object","keys","user","name","areEqual","prevProps","nextProps","prevAlignment","prevFormattedDate","prevLastGroupMessage","prevMembers","prevMessage","prevOtherAttachments","prevShowMessageStatus","nextAlignment","nextFormattedDate","nextLastGroupMessage","nextMembers","nextMessage","nextOtherAttachments","nextShowMessageStatus","alignmentEqual","membersEqual","lastGroupMessageEqual","messageEqual","deleted_at","reply_count","status","type","text","otherAttachmentsEqual","showMessageStatusEqual","formattedDateEqual","MemoizedMessageFooter","React","memo","MessageFooter"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AAKA;;AAKA;;AACA;;AACA;;;;;AA6CA,IAAMA,wBAAwB,GAAG,SAA3BA,wBAA2B,CAS/BC,KAT+B,EAU5B;AAAA;;AACH,MACEC,SADF,GAUID,KAVJ,CACEC,SADF;AAAA,MAEEC,aAFF,GAUIF,KAVJ,CAEEE,aAFF;AAAA,MAGEC,SAHF,GAUIH,KAVJ,CAGEG,SAHF;AAAA,MAIEC,gBAJF,GAUIJ,KAVJ,CAIEI,gBAJF;AAAA,MAKEC,OALF,GAUIL,KAVJ,CAKEK,OALF;AAAA,MAMEC,OANF,GAUIN,KAVJ,CAMEM,OANF;AAAA,MAOEC,aAPF,GAUIP,KAVJ,CAOEO,aAPF;AAAA,MAQEC,gBARF,GAUIR,KAVJ,CAQEQ,gBARF;AAAA,MASEC,iBATF,GAUIT,KAVJ,CASES,iBATF;;AAYA,kBAOI,6BAPJ;AAAA,kCACEC,KADF;AAAA,MAEcC,IAFd,mBAEIC,MAFJ,CAEcD,IAFd;AAAA,8CAGIE,aAHJ,CAIMC,OAJN;AAAA,MAIiBC,eAJjB,yBAIiBA,eAJjB;AAAA,MAIkCC,OAJlC,yBAIkCA,OAJlC;AAAA,MAI2CC,WAJ3C,yBAI2CA,WAJ3C;AAAA,MAIwDC,aAJxD,yBAIwDA,aAJxD;AAAA,MAIuEC,QAJvE,yBAIuEA,QAJvE;;AAQA,8BAAc,gDAAd;AAAA,MAAQC,CAAR,yBAAQA,CAAR;;AAEA,MAAIjB,SAAJ,EAAe;AACb,WACE,gCAAC,iBAAD;AAAM,MAAA,KAAK,EAAEe,aAAb;AAA4B,MAAA,MAAM,EAAC,gBAAnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OACE,gCAAC,UAAD;AAAK,MAAA,QAAQ,EAAEf,SAAS,GAAGkB,SAAH,GAAeV;AAAvC,OAAiDK,OAAjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OADF,EAEE,gCAAC,iBAAD;AACE,MAAA,KAAK,EAAE,CACL;AACEM,QAAAA,KAAK,EAAEX,IADT;AAEEY,QAAAA,SAAS,EAAEtB;AAFb,OADK,EAKLkB,QALK,EAMLJ,eANK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OAUGK,CAAC,CAAC,qBAAD,CAVJ,CAFF,EAcE,gCAAC,iBAAD;AACE,MAAA,KAAK,EAAE,CACL;AACEE,QAAAA,KAAK,EAAEX,IADT;AAEEY,QAAAA,SAAS,EAAEtB;AAFb,OADK,EAKLkB,QALK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OASGjB,aATH,CAdF,CADF;AA4BD;;AAED,MAAIE,gBAAgB,KAAK,KAAzB,EAAgC;AAC9B,WAAO,IAAP;AACD;;AAED,SACE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAEc,aAAb;AAA4B,IAAA,MAAM,EAAC,qBAAnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACGV,gBAAgB,CAACgB,MAAjB,IAA2BhB,gBAAgB,CAAC,CAAD,CAAhB,CAAoBiB,OAA/C,GACC,kEACE,gCAAC,UAAD,gCAAST,OAAT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF,EAEE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AACEM,MAAAA,KAAK,EAAEX,IADT;AAEEY,MAAAA,SAAS,EAAEtB;AAFb,KADK,EAKLkB,QALK,EAMLJ,eANK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAUGK,CAAC,CAAC,qBAAD,CAVJ,CAFF,CADD,GAgBG,IAjBN,EAkBGM,MAAM,CAACC,IAAP,CAAYtB,OAAZ,EAAqBmB,MAArB,GAA8B,CAA9B,IAAmCvB,SAAS,KAAK,MAAjD,qBAA2DK,OAAO,CAACsB,IAAnE,aAA2D,cAAcC,IAAzE,GACC,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAAC;AAAEP,MAAAA,KAAK,EAAEX;AAAT,KAAD,EAAkBM,WAAlB,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAA8CX,OAAO,CAACsB,IAAR,CAAaC,IAA3D,CADD,GAEG,IApBN,EAqBGpB,iBAAiB,IAAI,gCAAC,aAAD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IArBxB,EAsBE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAAC;AAAEa,MAAAA,KAAK,EAAEX,IAAT;AAAeY,MAAAA,SAAS,EAAEtB;AAA1B,KAAD,EAAwCkB,QAAxC,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAiEjB,aAAjE,CAtBF,CADF;AA0BD,CA9FD;;AAgGA,IAAM4B,QAAQ,GAAG,SAAXA,QAAW,CASfC,SATe,EAUfC,SAVe,EAWZ;AAAA;;AACH,MACaC,aADb,GAQIF,SARJ,CACE9B,SADF;AAAA,MAEiBiC,iBAFjB,GAQIH,SARJ,CAEE7B,aAFF;AAAA,MAGoBiC,oBAHpB,GAQIJ,SARJ,CAGE3B,gBAHF;AAAA,MAIWgC,WAJX,GAQIL,SARJ,CAIE1B,OAJF;AAAA,MAKWgC,WALX,GAQIN,SARJ,CAKEzB,OALF;AAAA,MAMoBgC,oBANpB,GAQIP,SARJ,CAMEvB,gBANF;AAAA,MAOqB+B,qBAPrB,GAQIR,SARJ,CAOEtB,iBAPF;AASA,MACa+B,aADb,GAQIR,SARJ,CACE/B,SADF;AAAA,MAEiBwC,iBAFjB,GAQIT,SARJ,CAEE9B,aAFF;AAAA,MAGoBwC,oBAHpB,GAQIV,SARJ,CAGE5B,gBAHF;AAAA,MAIWuC,WAJX,GAQIX,SARJ,CAIE3B,OAJF;AAAA,MAKWuC,WALX,GAQIZ,SARJ,CAKE1B,OALF;AAAA,MAMoBuC,oBANpB,GAQIb,SARJ,CAMExB,gBANF;AAAA,MAOqBsC,qBAPrB,GAQId,SARJ,CAOEvB,iBAPF;AAUA,MAAMsC,cAAc,GAAGd,aAAa,KAAKO,aAAzC;AACA,MAAI,CAACO,cAAL,EAAqB,OAAO,KAAP;AAErB,MAAMC,YAAY,GAAGtB,MAAM,CAACC,IAAP,CAAYS,WAAZ,EAAyBZ,MAAzB,KAAoCE,MAAM,CAACC,IAAP,CAAYgB,WAAZ,EAAyBnB,MAAlF;AACA,MAAI,CAACwB,YAAL,EAAmB,OAAO,KAAP;AAEnB,MAAMC,qBAAqB,GAAGd,oBAAoB,KAAKO,oBAAvD;AACA,MAAI,CAACO,qBAAL,EAA4B,OAAO,KAAP;AAE5B,MAAMC,YAAY,GAChBb,WAAW,CAACc,UAAZ,KAA2BP,WAAW,CAACO,UAAvC,IACAd,WAAW,CAACe,WAAZ,KAA4BR,WAAW,CAACQ,WADxC,IAEAf,WAAW,CAACgB,MAAZ,KAAuBT,WAAW,CAACS,MAFnC,IAGAhB,WAAW,CAACiB,IAAZ,KAAqBV,WAAW,CAACU,IAHjC,IAIAjB,WAAW,CAACkB,IAAZ,KAAqBX,WAAW,CAACW,IALnC;AAMA,MAAI,CAACL,YAAL,EAAmB,OAAO,KAAP;AAEnB,MAAMM,qBAAqB,GACzBlB,oBAAoB,CAACd,MAArB,KAAgCqB,oBAAoB,CAACrB,MAArD,IACA,CAAAc,oBAAoB,QAApB,qCAAAA,oBAAoB,CAAG,CAAH,CAApB,qEAA2Bb,OAA3B,4CAAoCD,MAApC,OAA+CqB,oBAA/C,6CAA+CA,oBAAoB,CAAG,CAAH,CAAnE,+CAA+C,sBAA2BpB,OAA1E,qBAA+C,uBAAoCD,MAAnF,CAFF;AAGA,MAAI,CAACgC,qBAAL,EAA4B,OAAO,KAAP;AAE5B,MAAMC,sBAAsB,GAAGlB,qBAAqB,KAAKO,qBAAzD;AACA,MAAI,CAACW,sBAAL,EAA6B,OAAO,KAAP;AAE7B,MAAMC,kBAAkB,GAAGxB,iBAAiB,KAAKO,iBAAjD;AACA,MAAI,CAACiB,kBAAL,EAAyB,OAAO,KAAP;AAEzB,SAAO,IAAP;AACD,CA5DD;;AA8DA,IAAMC,qBAAqB,GAAGC,kBAAMC,IAAN,CAC5B9D,wBAD4B,EAE5B+B,QAF4B,CAA9B;;AAuBO,IAAMgC,aAAa,GAAG,SAAhBA,aAAgB,CAS3B9D,KAT2B,EAUxB;AACH,2BACE,wCADF;AAAA,MAAQC,SAAR,sBAAQA,SAAR;AAAA,MAAmBG,gBAAnB,sBAAmBA,gBAAnB;AAAA,MAAqCC,OAArC,sBAAqCA,OAArC;AAAA,MAA8CC,OAA9C,sBAA8CA,OAA9C;AAAA,MAAuDE,gBAAvD,sBAAuDA,gBAAvD;AAAA,MAAyEC,iBAAzE,sBAAyEA,iBAAzE;;AAGA,4BAA0B,0CAA1B;AAAA,MAAQF,aAAR,uBAAQA,aAAR;;AAEA,SACE,gCAAC,qBAAD;AAEIN,IAAAA,SAAS,EAATA,SAFJ;AAGIG,IAAAA,gBAAgB,EAAhBA,gBAHJ;AAIIC,IAAAA,OAAO,EAAPA,OAJJ;AAKIC,IAAAA,OAAO,EAAPA,OALJ;AAMIC,IAAAA,aAAa,EAAbA,aANJ;AAOIC,IAAAA,gBAAgB,EAAhBA,gBAPJ;AAQIC,IAAAA,iBAAiB,EAAjBA;AARJ,KAUMT,KAVN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF;AAcD,CA9BM","sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\n\nimport {\n Alignment,\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\n\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport { Eye } from '../../../icons';\n\nimport type { Attachment } from 'stream-chat';\n\nimport type { MessageStatusProps } from './MessageStatus';\n\nimport type { MessageType } from '../../MessageList/hooks/useMessageList';\n\nimport type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\ntype MessageFooterComponentProps = {\n formattedDate: string | Date;\n isDeleted?: boolean;\n};\n\ntype MessageFooterPropsWithContext<\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 | 'members'\n | 'message'\n | 'otherAttachments'\n | 'showMessageStatus'\n | 'lastGroupMessage'\n> &\n Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'MessageStatus'> &\n MessageFooterComponentProps;\n\nconst MessageFooterWithContext = <\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: MessageFooterPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment,\n formattedDate,\n isDeleted,\n lastGroupMessage,\n members,\n message,\n MessageStatus,\n otherAttachments,\n showMessageStatus,\n } = props;\n\n const {\n theme: {\n colors: { grey },\n messageSimple: {\n content: { deletedMetaText, eyeIcon, messageUser, metaContainer, metaText },\n },\n },\n } = useTheme();\n const { t } = useTranslationContext();\n\n if (isDeleted) {\n return (\n <View style={metaContainer} testID='message-footer'>\n <Eye pathFill={isDeleted ? undefined : grey} {...eyeIcon} />\n <Text\n style={[\n {\n color: grey,\n textAlign: alignment,\n },\n metaText,\n deletedMetaText,\n ]}\n >\n {t('Only visible to you')}\n </Text>\n <Text\n style={[\n {\n color: grey,\n textAlign: alignment,\n },\n metaText,\n ]}\n >\n {formattedDate}\n </Text>\n </View>\n );\n }\n\n if (lastGroupMessage === false) {\n return null;\n }\n\n return (\n <View style={metaContainer} testID='message-status-time'>\n {otherAttachments.length && otherAttachments[0].actions ? (\n <>\n <Eye {...eyeIcon} />\n <Text\n style={[\n {\n color: grey,\n textAlign: alignment,\n },\n metaText,\n deletedMetaText,\n ]}\n >\n {t('Only visible to you')}\n </Text>\n </>\n ) : null}\n {Object.keys(members).length > 2 && alignment === 'left' && message.user?.name ? (\n <Text style={[{ color: grey }, messageUser]}>{message.user.name}</Text>\n ) : null}\n {showMessageStatus && <MessageStatus />}\n <Text style={[{ color: grey, textAlign: alignment }, metaText]}>{formattedDate}</Text>\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: MessageFooterPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: MessageFooterPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment: prevAlignment,\n formattedDate: prevFormattedDate,\n lastGroupMessage: prevLastGroupMessage,\n members: prevMembers,\n message: prevMessage,\n otherAttachments: prevOtherAttachments,\n showMessageStatus: prevShowMessageStatus,\n } = prevProps;\n const {\n alignment: nextAlignment,\n formattedDate: nextFormattedDate,\n lastGroupMessage: nextLastGroupMessage,\n members: nextMembers,\n message: nextMessage,\n otherAttachments: nextOtherAttachments,\n showMessageStatus: nextShowMessageStatus,\n } = nextProps;\n\n const alignmentEqual = prevAlignment === nextAlignment;\n if (!alignmentEqual) return false;\n\n const membersEqual = Object.keys(prevMembers).length === Object.keys(nextMembers).length;\n if (!membersEqual) return false;\n\n const lastGroupMessageEqual = prevLastGroupMessage === nextLastGroupMessage;\n if (!lastGroupMessageEqual) return false;\n\n const messageEqual =\n prevMessage.deleted_at === nextMessage.deleted_at &&\n prevMessage.reply_count === nextMessage.reply_count &&\n prevMessage.status === nextMessage.status &&\n prevMessage.type === nextMessage.type &&\n prevMessage.text === nextMessage.text;\n if (!messageEqual) return false;\n\n const otherAttachmentsEqual =\n prevOtherAttachments.length === nextOtherAttachments.length &&\n prevOtherAttachments?.[0]?.actions?.length === nextOtherAttachments?.[0]?.actions?.length;\n if (!otherAttachmentsEqual) return false;\n\n const showMessageStatusEqual = prevShowMessageStatus === nextShowMessageStatus;\n if (!showMessageStatusEqual) return false;\n\n const formattedDateEqual = prevFormattedDate === nextFormattedDate;\n if (!formattedDateEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageFooter = React.memo(\n MessageFooterWithContext,\n areEqual,\n) as typeof MessageFooterWithContext;\n\nexport type MessageFooterProps<\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<Pick<ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'members'>> &\n MessageFooterComponentProps & {\n alignment?: Alignment;\n lastGroupMessage?: boolean;\n message?: MessageType<At, Ch, Co, Ev, Me, Re, Us>;\n MessageStatus?: React.ComponentType<MessageStatusProps<At, Ch, Co, Ev, Me, Re, Us>>;\n otherAttachments?: Attachment<At>[];\n showMessageStatus?: boolean;\n };\n\nexport const MessageFooter = <\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: MessageFooterProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { alignment, lastGroupMessage, members, message, otherAttachments, showMessageStatus } =\n useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n const { MessageStatus } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return (\n <MemoizedMessageFooter\n {...{\n alignment,\n lastGroupMessage,\n members,\n message,\n MessageStatus,\n otherAttachments,\n showMessageStatus,\n }}\n {...props}\n />\n );\n};\n"]}
1
+ {"version":3,"sources":["MessageFooter.tsx"],"names":["MessageFooterWithContext","props","alignment","deletedMessagesVisibilityType","formattedDate","isDeleted","lastGroupMessage","members","message","MessageStatus","otherAttachments","showMessageStatus","theme","colors","grey","grey_dark","messageSimple","content","deletedMetaText","eyeIcon","messageUser","metaContainer","metaText","t","color","textAlign","length","actions","Object","keys","user","name","areEqual","prevProps","nextProps","prevAlignment","prevFormattedDate","prevLastGroupMessage","prevMembers","prevMessage","prevOtherAttachments","prevShowMessageStatus","nextAlignment","nextFormattedDate","nextLastGroupMessage","nextMembers","nextMessage","nextOtherAttachments","nextShowMessageStatus","alignmentEqual","membersEqual","lastGroupMessageEqual","deletedMessagesVisibilityTypeEqual","isPrevMessageTypeDeleted","type","isNextMessageTypeDeleted","messageEqual","reply_count","status","text","pinned","otherAttachmentsEqual","showMessageStatusEqual","formattedDateEqual","MemoizedMessageFooter","React","memo","MessageFooter"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\n\nimport type { Attachment } from 'stream-chat';\n\nimport type { MessageStatusProps } from './MessageStatus';\n\nimport type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';\nimport {\n Alignment,\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\n\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport { Eye } from '../../../icons';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport type { MessageType } from '../../MessageList/hooks/useMessageList';\n\ntype MessageFooterComponentProps = {\n formattedDate: string | Date;\n isDeleted?: boolean;\n};\n\ntype MessageFooterPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n | 'alignment'\n | 'members'\n | 'message'\n | 'otherAttachments'\n | 'showMessageStatus'\n | 'lastGroupMessage'\n> &\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n 'deletedMessagesVisibilityType' | 'MessageStatus'\n > &\n MessageFooterComponentProps;\n\nconst MessageFooterWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageFooterPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n deletedMessagesVisibilityType,\n formattedDate,\n isDeleted,\n lastGroupMessage,\n members,\n message,\n MessageStatus,\n otherAttachments,\n showMessageStatus,\n } = props;\n\n const {\n theme: {\n colors: { grey, grey_dark },\n messageSimple: {\n content: { deletedMetaText, eyeIcon, messageUser, metaContainer, metaText },\n },\n },\n } = useTheme();\n const { t } = useTranslationContext();\n\n if (isDeleted) {\n return (\n <View style={metaContainer} testID='message-deleted'>\n {deletedMessagesVisibilityType === 'sender' && (\n <>\n <Eye pathFill={grey_dark} {...eyeIcon} />\n <Text\n style={[\n {\n color: grey_dark,\n textAlign: alignment,\n },\n metaText,\n deletedMetaText,\n ]}\n testID='only-visible-to-you'\n >\n {t('Only visible to you')}\n </Text>\n </>\n )}\n <Text\n style={[\n {\n color: grey,\n textAlign: alignment,\n },\n metaText,\n ]}\n >\n {formattedDate}\n </Text>\n </View>\n );\n }\n\n if (lastGroupMessage === false) {\n return null;\n }\n\n return (\n <View style={metaContainer} testID='message-status-time'>\n {otherAttachments.length && otherAttachments[0].actions ? (\n <>\n <Eye pathFill={grey_dark} {...eyeIcon} />\n <Text\n style={[\n {\n color: grey_dark,\n textAlign: alignment,\n },\n metaText,\n deletedMetaText,\n ]}\n >\n {t('Only visible to you')}\n </Text>\n </>\n ) : null}\n {Object.keys(members).length > 2 && alignment === 'left' && message.user?.name ? (\n <Text style={[{ color: grey }, messageUser]}>{message.user.name}</Text>\n ) : null}\n {showMessageStatus && <MessageStatus />}\n <Text style={[{ color: grey, textAlign: alignment }, metaText]}>{formattedDate}</Text>\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessageFooterPropsWithContext<StreamChatGenerics>,\n nextProps: MessageFooterPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment: prevAlignment,\n formattedDate: prevFormattedDate,\n lastGroupMessage: prevLastGroupMessage,\n members: prevMembers,\n message: prevMessage,\n otherAttachments: prevOtherAttachments,\n showMessageStatus: prevShowMessageStatus,\n } = prevProps;\n const {\n alignment: nextAlignment,\n formattedDate: nextFormattedDate,\n lastGroupMessage: nextLastGroupMessage,\n members: nextMembers,\n message: nextMessage,\n otherAttachments: nextOtherAttachments,\n showMessageStatus: nextShowMessageStatus,\n } = nextProps;\n\n const alignmentEqual = prevAlignment === nextAlignment;\n if (!alignmentEqual) return false;\n\n const membersEqual = Object.keys(prevMembers).length === Object.keys(nextMembers).length;\n if (!membersEqual) return false;\n\n const lastGroupMessageEqual = prevLastGroupMessage === nextLastGroupMessage;\n if (!lastGroupMessageEqual) return false;\n\n const deletedMessagesVisibilityTypeEqual =\n prevProps.deletedMessagesVisibilityType === nextProps.deletedMessagesVisibilityType;\n if (!deletedMessagesVisibilityTypeEqual) return false;\n\n const isPrevMessageTypeDeleted = prevMessage.type === 'deleted';\n const isNextMessageTypeDeleted = nextMessage.type === 'deleted';\n\n const messageEqual =\n isPrevMessageTypeDeleted === isNextMessageTypeDeleted &&\n prevMessage.reply_count === nextMessage.reply_count &&\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 otherAttachmentsEqual =\n prevOtherAttachments.length === nextOtherAttachments.length &&\n prevOtherAttachments?.[0]?.actions?.length === nextOtherAttachments?.[0]?.actions?.length;\n if (!otherAttachmentsEqual) return false;\n\n const showMessageStatusEqual = prevShowMessageStatus === nextShowMessageStatus;\n if (!showMessageStatusEqual) return false;\n\n const formattedDateEqual = prevFormattedDate === nextFormattedDate;\n if (!formattedDateEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageFooter = React.memo(\n MessageFooterWithContext,\n areEqual,\n) as typeof MessageFooterWithContext;\n\nexport type MessageFooterProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Pick<ChannelContextValue<StreamChatGenerics>, 'members'>> &\n MessageFooterComponentProps & {\n alignment?: Alignment;\n lastGroupMessage?: boolean;\n message?: MessageType<StreamChatGenerics>;\n MessageStatus?: React.ComponentType<MessageStatusProps<StreamChatGenerics>>;\n otherAttachments?: Attachment<StreamChatGenerics>[];\n showMessageStatus?: boolean;\n };\n\nexport const MessageFooter = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageFooterProps<StreamChatGenerics>,\n) => {\n const { alignment, lastGroupMessage, members, message, otherAttachments, showMessageStatus } =\n useMessageContext<StreamChatGenerics>();\n\n const { deletedMessagesVisibilityType, MessageStatus } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedMessageFooter\n {...{\n alignment,\n deletedMessagesVisibilityType,\n lastGroupMessage,\n members,\n message,\n MessageStatus,\n otherAttachments,\n showMessageStatus,\n }}\n {...props}\n />\n );\n};\n"]}
@@ -0,0 +1,122 @@
1
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MessagePinnedHeader = void 0;
7
+
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _reactNative = require("react-native");
13
+
14
+ var _ChatContext = require("../../../contexts/chatContext/ChatContext");
15
+
16
+ var _MessageContext = require("../../../contexts/messageContext/MessageContext");
17
+
18
+ var _ThemeContext = require("../../../contexts/themeContext/ThemeContext");
19
+
20
+ var _TranslationContext = require("../../../contexts/translationContext/TranslationContext");
21
+
22
+ var _icons = require("../../../icons");
23
+
24
+ var _this = this,
25
+ _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx";
26
+
27
+ var styles = _reactNative.StyleSheet.create({
28
+ container: {
29
+ display: 'flex',
30
+ flexDirection: 'row',
31
+ marginBottom: 8,
32
+ marginLeft: 30,
33
+ marginTop: 5
34
+ },
35
+ label: {}
36
+ });
37
+
38
+ var MessagePinnedHeaderWithContext = function MessagePinnedHeaderWithContext(props) {
39
+ var _message$pinned_by, _client$user, _message$pinned_by2;
40
+
41
+ var alignment = props.alignment,
42
+ message = props.message;
43
+
44
+ var _useTheme = (0, _ThemeContext.useTheme)(),
45
+ _useTheme$theme = _useTheme.theme,
46
+ grey = _useTheme$theme.colors.grey,
47
+ pinnedHeader = _useTheme$theme.messageSimple.pinnedHeader;
48
+
49
+ var container = pinnedHeader.container,
50
+ label = pinnedHeader.label;
51
+
52
+ var _useTranslationContex = (0, _TranslationContext.useTranslationContext)(),
53
+ t = _useTranslationContex.t;
54
+
55
+ var _useChatContext = (0, _ChatContext.useChatContext)(),
56
+ client = _useChatContext.client;
57
+
58
+ return _react["default"].createElement(_reactNative.View, {
59
+ style: [styles.container, {
60
+ justifyContent: alignment === 'left' ? 'flex-start' : 'flex-end'
61
+ }, container],
62
+ testID: "message-pinned",
63
+ __self: _this,
64
+ __source: {
65
+ fileName: _jsxFileName,
66
+ lineNumber: 46,
67
+ columnNumber: 5
68
+ }
69
+ }, _react["default"].createElement(_icons.PinHeader, {
70
+ pathFill: grey,
71
+ __self: _this,
72
+ __source: {
73
+ fileName: _jsxFileName,
74
+ lineNumber: 56,
75
+ columnNumber: 7
76
+ }
77
+ }), _react["default"].createElement(_reactNative.Text, {
78
+ style: [{
79
+ color: grey
80
+ }, styles.label, label],
81
+ __self: _this,
82
+ __source: {
83
+ fileName: _jsxFileName,
84
+ lineNumber: 57,
85
+ columnNumber: 7
86
+ }
87
+ }, "Pinned by", ' ', (message == null ? void 0 : (_message$pinned_by = message.pinned_by) == null ? void 0 : _message$pinned_by.id) === (client == null ? void 0 : (_client$user = client.user) == null ? void 0 : _client$user.id) ? t('You') : message == null ? void 0 : (_message$pinned_by2 = message.pinned_by) == null ? void 0 : _message$pinned_by2.name));
88
+ };
89
+
90
+ var areEqual = function areEqual(prevProps, nextProps) {
91
+ var prevMessage = prevProps.message;
92
+ var nextMessage = nextProps.message;
93
+ var messageEqual = prevMessage.deleted_at === nextMessage.deleted_at && prevMessage.status === nextMessage.status && prevMessage.type === nextMessage.type && prevMessage.text === nextMessage.text && prevMessage.pinned === nextMessage.pinned;
94
+ if (!messageEqual) return false;
95
+ return true;
96
+ };
97
+
98
+ var MemoizedMessagePinnedHeader = _react["default"].memo(MessagePinnedHeaderWithContext, areEqual);
99
+
100
+ var MessagePinnedHeader = function MessagePinnedHeader(props) {
101
+ var _useMessageContext = (0, _MessageContext.useMessageContext)(),
102
+ alignment = _useMessageContext.alignment,
103
+ lastGroupMessage = _useMessageContext.lastGroupMessage,
104
+ message = _useMessageContext.message;
105
+
106
+ return _react["default"].createElement(MemoizedMessagePinnedHeader, (0, _extends2["default"])({
107
+ alignment: alignment,
108
+ lastGroupMessage: lastGroupMessage,
109
+ message: message
110
+ }, props, {
111
+ __self: _this,
112
+ __source: {
113
+ fileName: _jsxFileName,
114
+ lineNumber: 98,
115
+ columnNumber: 5
116
+ }
117
+ }));
118
+ };
119
+
120
+ exports.MessagePinnedHeader = MessagePinnedHeader;
121
+ MessagePinnedHeader.displayName = 'MessagePinnedHeader{messageSimple{pinned}}';
122
+ //# sourceMappingURL=MessagePinnedHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MessagePinnedHeader.tsx"],"names":["styles","StyleSheet","create","container","display","flexDirection","marginBottom","marginLeft","marginTop","label","MessagePinnedHeaderWithContext","props","alignment","message","theme","grey","colors","pinnedHeader","messageSimple","t","client","justifyContent","color","pinned_by","id","user","name","areEqual","prevProps","nextProps","prevMessage","nextMessage","messageEqual","deleted_at","status","type","text","pinned","MemoizedMessagePinnedHeader","React","memo","MessagePinnedHeader","lastGroupMessage","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AAIA;;AACA;;AACA;;;;;AAEA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,OAAO,EAAE,MADA;AAETC,IAAAA,aAAa,EAAE,KAFN;AAGTC,IAAAA,YAAY,EAAE,CAHL;AAITC,IAAAA,UAAU,EAAE,EAJH;AAKTC,IAAAA,SAAS,EAAE;AALF,GADoB;AAQ/BC,EAAAA,KAAK,EAAE;AARwB,CAAlB,CAAf;;AAiBA,IAAMC,8BAA8B,GAAG,SAAjCA,8BAAiC,CAGrCC,KAHqC,EAIlC;AAAA;;AACH,MAAQC,SAAR,GAA+BD,KAA/B,CAAQC,SAAR;AAAA,MAAmBC,OAAnB,GAA+BF,KAA/B,CAAmBE,OAAnB;;AACA,kBAKI,6BALJ;AAAA,kCACEC,KADF;AAAA,MAEcC,IAFd,mBAEIC,MAFJ,CAEcD,IAFd;AAAA,MAGqBE,YAHrB,mBAGIC,aAHJ,CAGqBD,YAHrB;;AAMA,MAAQd,SAAR,GAA6Bc,YAA7B,CAAQd,SAAR;AAAA,MAAmBM,KAAnB,GAA6BQ,YAA7B,CAAmBR,KAAnB;;AACA,8BAAc,gDAAd;AAAA,MAAQU,CAAR,yBAAQA,CAAR;;AACA,wBAAmB,kCAAnB;AAAA,MAAQC,MAAR,mBAAQA,MAAR;;AACA,SACE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACLpB,MAAM,CAACG,SADF,EAEL;AACEkB,MAAAA,cAAc,EAAET,SAAS,KAAK,MAAd,GAAuB,YAAvB,GAAsC;AADxD,KAFK,EAKLT,SALK,CADT;AAQE,IAAA,MAAM,EAAC,gBART;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAUE,gCAAC,gBAAD;AAAW,IAAA,QAAQ,EAAEY,IAArB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAVF,EAWE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAAC;AAAEO,MAAAA,KAAK,EAAEP;AAAT,KAAD,EAAkBf,MAAM,CAACS,KAAzB,EAAgCA,KAAhC,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBACY,GADZ,EAEG,CAAAI,OAAO,QAAP,kCAAAA,OAAO,CAAEU,SAAT,wCAAoBC,EAApB,OAA2BJ,MAA3B,oCAA2BA,MAAM,CAAEK,IAAnC,qBAA2B,aAAcD,EAAzC,IAA8CL,CAAC,CAAC,KAAD,CAA/C,GAAyDN,OAAzD,2CAAyDA,OAAO,CAAEU,SAAlE,qBAAyD,oBAAoBG,IAFhF,CAXF,CADF;AAkBD,CAjCD;;AAmCA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CACfC,SADe,EAEfC,SAFe,EAGZ;AACH,MAAiBC,WAAjB,GAAiCF,SAAjC,CAAQf,OAAR;AACA,MAAiBkB,WAAjB,GAAiCF,SAAjC,CAAQhB,OAAR;AACA,MAAMmB,YAAY,GAChBF,WAAW,CAACG,UAAZ,KAA2BF,WAAW,CAACE,UAAvC,IACAH,WAAW,CAACI,MAAZ,KAAuBH,WAAW,CAACG,MADnC,IAEAJ,WAAW,CAACK,IAAZ,KAAqBJ,WAAW,CAACI,IAFjC,IAGAL,WAAW,CAACM,IAAZ,KAAqBL,WAAW,CAACK,IAHjC,IAIAN,WAAW,CAACO,MAAZ,KAAuBN,WAAW,CAACM,MALrC;AAMA,MAAI,CAACL,YAAL,EAAmB,OAAO,KAAP;AACnB,SAAO,IAAP;AACD,CAdD;;AAgBA,IAAMM,2BAA2B,GAAGC,kBAAMC,IAAN,CAClC9B,8BADkC,EAElCiB,QAFkC,CAApC;;AASO,IAAMc,mBAAmB,GAAG,SAAtBA,mBAAsB,CAGjC9B,KAHiC,EAI9B;AACH,2BAAiD,wCAAjD;AAAA,MAAQC,SAAR,sBAAQA,SAAR;AAAA,MAAmB8B,gBAAnB,sBAAmBA,gBAAnB;AAAA,MAAqC7B,OAArC,sBAAqCA,OAArC;;AAEA,SACE,gCAAC,2BAAD;AAEID,IAAAA,SAAS,EAATA,SAFJ;AAGI8B,IAAAA,gBAAgB,EAAhBA,gBAHJ;AAII7B,IAAAA,OAAO,EAAPA;AAJJ,KAMMF,KANN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF;AAUD,CAjBM;;;AAmBP8B,mBAAmB,CAACE,WAApB,GAAkC,4CAAlC","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { useChatContext } from '../../../contexts/chatContext/ChatContext';\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport { PinHeader } from '../../../icons';\n\nconst styles = StyleSheet.create({\n container: {\n display: 'flex',\n flexDirection: 'row',\n marginBottom: 8,\n marginLeft: 30,\n marginTop: 5,\n },\n label: {},\n});\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\nexport type MessagePinnedHeaderPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageContextValue<StreamChatGenerics>, 'alignment' | 'message'>;\n\nconst MessagePinnedHeaderWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessagePinnedHeaderPropsWithContext<StreamChatGenerics>,\n) => {\n const { alignment, message } = props;\n const {\n theme: {\n colors: { grey },\n messageSimple: { pinnedHeader },\n },\n } = useTheme();\n const { container, label } = pinnedHeader;\n const { t } = useTranslationContext();\n const { client } = useChatContext();\n return (\n <View\n style={[\n styles.container,\n {\n justifyContent: alignment === 'left' ? 'flex-start' : 'flex-end',\n },\n container,\n ]}\n testID='message-pinned'\n >\n <PinHeader pathFill={grey} />\n <Text style={[{ color: grey }, styles.label, label]}>\n Pinned by{' '}\n {message?.pinned_by?.id === client?.user?.id ? t('You') : message?.pinned_by?.name}\n </Text>\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessagePinnedHeaderPropsWithContext<StreamChatGenerics>,\n nextProps: MessagePinnedHeaderPropsWithContext<StreamChatGenerics>,\n) => {\n const { message: prevMessage } = prevProps;\n const { message: nextMessage } = nextProps;\n const messageEqual =\n prevMessage.deleted_at === nextMessage.deleted_at &&\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 return true;\n};\n\nconst MemoizedMessagePinnedHeader = React.memo(\n MessagePinnedHeaderWithContext,\n areEqual,\n) as typeof MessagePinnedHeaderWithContext;\n\nexport type MessagePinnedHeaderProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<MessagePinnedHeaderPropsWithContext<StreamChatGenerics>>;\n\nexport const MessagePinnedHeader = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessagePinnedHeaderProps<StreamChatGenerics>,\n) => {\n const { alignment, lastGroupMessage, message } = useMessageContext<StreamChatGenerics>();\n\n return (\n <MemoizedMessagePinnedHeader\n {...{\n alignment,\n lastGroupMessage,\n message,\n }}\n {...props}\n />\n );\n};\n\nMessagePinnedHeader.displayName = 'MessagePinnedHeader{messageSimple{pinned}}';\n"]}
@@ -91,17 +91,25 @@ 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
- }, alignment === 'left' && _react["default"].createElement(_react["default"].Fragment, null, !noBorder && _react["default"].createElement(_reactNative.View, {
97
+ }, alignment === 'left' && _react["default"].createElement(_reactNative.View, {
98
+ testID: "message-replies-left",
99
+ __self: _this,
100
+ __source: {
101
+ fileName: _jsxFileName,
102
+ lineNumber: 115,
103
+ columnNumber: 9
104
+ }
105
+ }, !noBorder && _react["default"].createElement(_reactNative.View, {
98
106
  style: [{
99
107
  borderColor: repliesCurveColor
100
108
  }, styles.messageRepliesCurve, styles.leftMessageRepliesCurve, leftCurve],
101
109
  __self: _this,
102
110
  __source: {
103
111
  fileName: _jsxFileName,
104
- lineNumber: 138,
112
+ lineNumber: 117,
105
113
  columnNumber: 13
106
114
  }
107
115
  }), _react["default"].createElement(MessageRepliesAvatars, {
@@ -110,7 +118,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
110
118
  __self: _this,
111
119
  __source: {
112
120
  fileName: _jsxFileName,
113
- lineNumber: 147,
121
+ lineNumber: 126,
114
122
  columnNumber: 11
115
123
  }
116
124
  })), _react["default"].createElement(_reactNative.TouchableOpacity, {
@@ -146,7 +154,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
146
154
  __self: _this,
147
155
  __source: {
148
156
  fileName: _jsxFileName,
149
- lineNumber: 150,
157
+ lineNumber: 129,
150
158
  columnNumber: 7
151
159
  }
152
160
  }, _react["default"].createElement(_reactNative.Text, {
@@ -156,18 +164,26 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
156
164
  __self: _this,
157
165
  __source: {
158
166
  fileName: _jsxFileName,
159
- lineNumber: 181,
167
+ lineNumber: 160,
160
168
  columnNumber: 9
161
169
  }
162
170
  }, message.reply_count === 1 ? t('1 Thread Reply') : t('{{ replyCount }} Thread Replies', {
163
171
  replyCount: message.reply_count
164
- }))), alignment === 'right' && _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(MessageRepliesAvatars, {
172
+ }))), alignment === 'right' && _react["default"].createElement(_reactNative.View, {
173
+ testID: "message-replies-right",
174
+ __self: _this,
175
+ __source: {
176
+ fileName: _jsxFileName,
177
+ lineNumber: 169,
178
+ columnNumber: 9
179
+ }
180
+ }, _react["default"].createElement(MessageRepliesAvatars, {
165
181
  alignment: alignment,
166
182
  message: message,
167
183
  __self: _this,
168
184
  __source: {
169
185
  fileName: _jsxFileName,
170
- lineNumber: 191,
186
+ lineNumber: 170,
171
187
  columnNumber: 11
172
188
  }
173
189
  }), !noBorder && _react["default"].createElement(_reactNative.View, {
@@ -177,7 +193,7 @@ var MessageRepliesWithContext = function MessageRepliesWithContext(props) {
177
193
  __self: _this,
178
194
  __source: {
179
195
  fileName: _jsxFileName,
180
- lineNumber: 193,
196
+ lineNumber: 172,
181
197
  columnNumber: 13
182
198
  }
183
199
  })));
@@ -241,7 +257,7 @@ var MessageReplies = function MessageReplies(props) {
241
257
  __self: _this,
242
258
  __source: {
243
259
  fileName: _jsxFileName,
244
- lineNumber: 293,
260
+ lineNumber: 252,
245
261
  columnNumber: 5
246
262
  }
247
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":";;;;;;;;;AAAA;;AACA;;AAEA;;AAIA;;AAIA;;AACA;;;;;AAgBA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,QADH;AAETC,IAAAA,aAAa,EAAE,KAFN;AAGTC,IAAAA,SAAS,EAAE;AAHF,GADoB;AAM/BC,EAAAA,cAAc,EAAE;AACdF,IAAAA,aAAa,EAAE;AADD,GANe;AAS/BG,EAAAA,uBAAuB;AACrBC,IAAAA,sBAAsB,EAAE,EADH;AAErBC,IAAAA,gBAAgB,EAAE;AAFG,KAGlBC,sBAASC,MAAT,CAAgB;AACjBC,IAAAA,OAAO,EAAE;AACPC,MAAAA,gBAAgB,EAAE;AADX;AADQ,GAAhB,CAHkB,CATQ;AAkB/BC,EAAAA,mBAAmB,EAAE;AACnBC,IAAAA,cAAc,EAAE,aADG;AAEnBC,IAAAA,cAAc,EAAE,CAFG;AAGnBC,IAAAA,WAAW,EAAE,CAHM;AAInBC,IAAAA,MAAM,EAAE,EAJW;AAKnBC,IAAAA,KAAK,EAAE;AALY,GAlBU;AAyB/BC,EAAAA,kBAAkB,EAAE;AAClBC,IAAAA,QAAQ,EAAE,EADQ;AAElBC,IAAAA,UAAU,EAAE,KAFM;AAGlBC,IAAAA,aAAa,EAAE,CAHG;AAIlBC,IAAAA,WAAW,EAAE;AAJK,GAzBW;AA+B/BC,EAAAA,wBAAwB;AACtBC,IAAAA,uBAAuB,EAAE,EADH;AAEtBC,IAAAA,eAAe,EAAE;AAFK,KAGnBjB,sBAASC,MAAT,CAAgB;AACjBC,IAAAA,OAAO,EAAE;AACPgB,MAAAA,eAAe,EAAE;AADV;AADQ,GAAhB,CAHmB;AA/BO,CAAlB,CAAf;;AAmEA,IAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,CAShCC,KATgC,EAU7B;AACH,MACEC,SADF,GAaID,KAbJ,CACEC,SADF;AAAA,MAEEC,OAFF,GAaIF,KAbJ,CAEEE,OAFF;AAAA,MAGEC,qBAHF,GAaIH,KAbJ,CAGEG,qBAHF;AAAA,MAIEC,QAJF,GAaIJ,KAbJ,CAIEI,QAJF;AAAA,MAKEC,YALF,GAaIL,KAbJ,CAKEK,WALF;AAAA,MAMEC,YANF,GAaIN,KAbJ,CAMEM,YANF;AAAA,MAOEC,QAPF,GAaIP,KAbJ,CAOEO,OAPF;AAAA,MAQEC,UARF,GAaIR,KAbJ,CAQEQ,SARF;AAAA,MASEC,YATF,GAaIT,KAbJ,CASES,YATF;AAAA,MAUEC,iBAVF,GAaIV,KAbJ,CAUEU,iBAVF;AAAA,MAWEC,CAXF,GAaIX,KAbJ,CAWEW,CAXF;AAAA,MAYEC,UAZF,GAaIZ,KAbJ,CAYEY,UAZF;;AAeA,kBAOI,6BAPJ;AAAA,kCACEC,KADF;AAAA,MAEcC,WAFd,mBAEIC,MAFJ,CAEcD,WAFd;AAAA,8CAGIE,aAHJ,CAIMC,OAJN;AAAA,MAIiB7C,SAJjB,yBAIiBA,SAJjB;AAAA,MAI4B8C,SAJ5B,yBAI4BA,SAJ5B;AAAA,MAIuC5B,kBAJvC,yBAIuCA,kBAJvC;AAAA,MAI2D6B,UAJ3D,yBAI2DA,UAJ3D;;AASA,MAAIP,UAAU,IAAI,CAACV,OAAO,CAACkB,WAA3B,EAAwC,OAAO,IAAP;AAExC,SACE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAEnD,MAAM,CAACO,cAApB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACGyB,SAAS,KAAK,MAAd,IACC,kEACG,CAACG,QAAD,IACC,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AAAEiB,MAAAA,WAAW,EAAEX;AAAf,KADK,EAELzC,MAAM,CAACe,mBAFF,EAGLf,MAAM,CAACQ,uBAHF,EAILyC,SAJK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAFJ,EAWE,gCAAC,qBAAD;AAAuB,IAAA,SAAS,EAAEjB,SAAlC;AAA6C,IAAA,OAAO,EAAEC,OAAtD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAXF,CAFJ,EAgBE,gCAAC,6BAAD;AACE,IAAA,QAAQ,EAAEO,YADZ;AAEE,IAAA,WAAW,EAAE,qBAACa,KAAD,EAAW;AACtB,UAAIjB,YAAJ,EAAiB;AACfA,QAAAA,YAAW,CAAC;AACVkB,UAAAA,OAAO,EAAE,gBADC;AAEVD,UAAAA,KAAK,EAALA;AAFU,SAAD,CAAX;AAID;AACF,KATH;AAUE,IAAA,OAAO,EAAE,iBAACA,KAAD,EAAW;AAClB,UAAIf,QAAJ,EAAa;AACXA,QAAAA,QAAO,CAAC;AACNiB,UAAAA,cAAc,EAAElB,YADV;AAENiB,UAAAA,OAAO,EAAE,gBAFH;AAGND,UAAAA,KAAK,EAALA;AAHM,SAAD,CAAP;AAKD;AACF,KAlBH;AAmBE,IAAA,SAAS,EAAE,mBAACA,KAAD,EAAW;AACpB,UAAId,UAAJ,EAAe;AACbA,QAAAA,UAAS,CAAC;AACRgB,UAAAA,cAAc,EAAElB,YADR;AAERiB,UAAAA,OAAO,EAAE,gBAFD;AAGRD,UAAAA,KAAK,EAALA;AAHQ,SAAD,CAAT;AAKD;AACF,KA3BH;AA4BE,IAAA,KAAK,EAAE,CAACrD,MAAM,CAACG,SAAR,EAAmBA,SAAnB,CA5BT;AA6BE,IAAA,MAAM,EAAC,iBA7BT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KA+BE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACH,MAAM,CAACqB,kBAAR,EAA4B;AAAEmC,MAAAA,KAAK,EAAEX;AAAT,KAA5B,EAAoDxB,kBAApD,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACGY,OAAO,CAACkB,WAAR,KAAwB,CAAxB,GACGT,CAAC,CAAC,gBAAD,CADJ,GAEGA,CAAC,CAAC,iCAAD,EAAoC;AACnCe,IAAAA,UAAU,EAAExB,OAAO,CAACkB;AADe,GAApC,CAHP,CA/BF,CAhBF,EAuDGnB,SAAS,KAAK,OAAd,IACC,kEACE,gCAAC,qBAAD;AAAuB,IAAA,SAAS,EAAEA,SAAlC;AAA6C,IAAA,OAAO,EAAEC,OAAtD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IADF,EAEG,CAACE,QAAD,IACC,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AAAEiB,MAAAA,WAAW,EAAEX;AAAf,KADK,EAELzC,MAAM,CAACe,mBAFF,EAGLf,MAAM,CAAC0B,wBAHF,EAILwB,UAJK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAHJ,CAxDJ,CADF;AAyED,CA9GD;;AAgHA,IAAMQ,QAAQ,GAAG,SAAXA,QAAW,CASfC,SATe,EAUfC,SAVe,EAWZ;AACH,MACWC,WADX,GAMIF,SANJ,CACE1B,OADF;AAAA,MAEY6B,YAFZ,GAMIH,SANJ,CAEExB,QAFF;AAAA,MAGgB4B,gBAHhB,GAMIJ,SANJ,CAGEtB,YAHF;AAAA,MAIK2B,KAJL,GAMIL,SANJ,CAIEjB,CAJF;AAAA,MAKcuB,cALd,GAMIN,SANJ,CAKEhB,UALF;AAOA,MACWuB,WADX,GAMIN,SANJ,CACE3B,OADF;AAAA,MAEYkC,YAFZ,GAMIP,SANJ,CAEEzB,QAFF;AAAA,MAGgBiC,gBAHhB,GAMIR,SANJ,CAGEvB,YAHF;AAAA,MAIKgC,KAJL,GAMIT,SANJ,CAIElB,CAJF;AAAA,MAKc4B,cALd,GAMIV,SANJ,CAKEjB,UALF;AAQA,MAAM4B,eAAe,GAAGN,cAAc,KAAKK,cAA3C;AACA,MAAI,CAACC,eAAL,EAAsB,OAAO,KAAP;AAEtB,MAAMC,sBAAsB,GAAGX,WAAW,CAACV,WAAZ,KAA4Be,WAAW,CAACf,WAAvE;AACA,MAAI,CAACqB,sBAAL,EAA6B,OAAO,KAAP;AAE7B,MAAMC,aAAa,GAAGX,YAAY,KAAKK,YAAvC;AACA,MAAI,CAACM,aAAL,EAAoB,OAAO,KAAP;AAEpB,MAAMC,MAAM,GAAGV,KAAK,KAAKK,KAAzB;AACA,MAAI,CAACK,MAAL,EAAa,OAAO,KAAP;AAEb,MAAMC,iBAAiB,GAAGZ,gBAAgB,KAAKK,gBAA/C;AACA,MAAI,CAACO,iBAAL,EAAwB,OAAO,KAAP;AAExB,SAAO,IAAP;AACD,CA3CD;;AA6CA,IAAMC,sBAAsB,GAAGC,kBAAMC,IAAN,CAC7BhD,yBAD6B,EAE7B4B,QAF6B,CAA/B;;AAeO,IAAMqB,cAAc,GAAG,SAAjBA,cAAiB,CAS5BhD,KAT4B,EAUzB;AACH,2BASI,wCATJ;AAAA,MACEC,SADF,sBACEA,SADF;AAAA,MAEEC,OAFF,sBAEEA,OAFF;AAAA,MAGEG,WAHF,sBAGEA,WAHF;AAAA,MAIEC,YAJF,sBAIEA,YAJF;AAAA,MAKEC,OALF,sBAKEA,OALF;AAAA,MAMEC,SANF,sBAMEA,SANF;AAAA,MAOEC,YAPF,sBAOEA,YAPF;AAAA,MAQEG,UARF,sBAQEA,UARF;;AAUA,4BAAkC,0CAAlC;AAAA,MAAQT,qBAAR,uBAAQA,qBAAR;;AACA,8BAAc,gDAAd;AAAA,MAAQQ,CAAR,yBAAQA,CAAR;;AAEA,SACE,gCAAC,sBAAD;AAEIV,IAAAA,SAAS,EAATA,SAFJ;AAGIC,IAAAA,OAAO,EAAPA,OAHJ;AAIIC,IAAAA,qBAAqB,EAArBA,qBAJJ;AAKIE,IAAAA,WAAW,EAAXA,WALJ;AAMIC,IAAAA,YAAY,EAAZA,YANJ;AAOIC,IAAAA,OAAO,EAAPA,OAPJ;AAQIC,IAAAA,SAAS,EAATA,SARJ;AASIC,IAAAA,YAAY,EAAZA,YATJ;AAUIE,IAAAA,CAAC,EAADA,CAVJ;AAWIC,IAAAA,UAAU,EAAVA;AAXJ,KAaMZ,KAbN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF;AAiBD,CAzCM;;;AA2CPgD,cAAc,CAACC,WAAf,GAA6B,wCAA7B","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 <>\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 </>\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 <>\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 </>\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":";;;;;;;;;AAAA;;AACA;;AAEA;;AAIA;;AAIA;;AACA;;;;;AAOA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,QADH;AAETC,IAAAA,aAAa,EAAE,KAFN;AAGTC,IAAAA,SAAS,EAAE;AAHF,GADoB;AAM/BC,EAAAA,cAAc,EAAE;AACdF,IAAAA,aAAa,EAAE;AADD,GANe;AAS/BG,EAAAA,uBAAuB;AACrBC,IAAAA,sBAAsB,EAAE,EADH;AAErBC,IAAAA,gBAAgB,EAAE;AAFG,KAGlBC,sBAASC,MAAT,CAAgB;AACjBC,IAAAA,OAAO,EAAE;AACPC,MAAAA,gBAAgB,EAAE;AADX;AADQ,GAAhB,CAHkB,CATQ;AAkB/BC,EAAAA,mBAAmB,EAAE;AACnBC,IAAAA,cAAc,EAAE,aADG;AAEnBC,IAAAA,cAAc,EAAE,CAFG;AAGnBC,IAAAA,WAAW,EAAE,CAHM;AAInBC,IAAAA,MAAM,EAAE,EAJW;AAKnBC,IAAAA,KAAK,EAAE;AALY,GAlBU;AAyB/BC,EAAAA,kBAAkB,EAAE;AAClBC,IAAAA,QAAQ,EAAE,EADQ;AAElBC,IAAAA,UAAU,EAAE,KAFM;AAGlBC,IAAAA,aAAa,EAAE,CAHG;AAIlBC,IAAAA,WAAW,EAAE;AAJK,GAzBW;AA+B/BC,EAAAA,wBAAwB;AACtBC,IAAAA,uBAAuB,EAAE,EADH;AAEtBC,IAAAA,eAAe,EAAE;AAFK,KAGnBjB,sBAASC,MAAT,CAAgB;AACjBC,IAAAA,OAAO,EAAE;AACPgB,MAAAA,eAAe,EAAE;AADV;AADQ,GAAhB,CAHmB;AA/BO,CAAlB,CAAf;;AA6DA,IAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,CAGhCC,KAHgC,EAI7B;AACH,MACEC,SADF,GAaID,KAbJ,CACEC,SADF;AAAA,MAEEC,OAFF,GAaIF,KAbJ,CAEEE,OAFF;AAAA,MAGEC,qBAHF,GAaIH,KAbJ,CAGEG,qBAHF;AAAA,MAIEC,QAJF,GAaIJ,KAbJ,CAIEI,QAJF;AAAA,MAKEC,YALF,GAaIL,KAbJ,CAKEK,WALF;AAAA,MAMEC,YANF,GAaIN,KAbJ,CAMEM,YANF;AAAA,MAOEC,QAPF,GAaIP,KAbJ,CAOEO,OAPF;AAAA,MAQEC,UARF,GAaIR,KAbJ,CAQEQ,SARF;AAAA,MASEC,YATF,GAaIT,KAbJ,CASES,YATF;AAAA,MAUEC,iBAVF,GAaIV,KAbJ,CAUEU,iBAVF;AAAA,MAWEC,CAXF,GAaIX,KAbJ,CAWEW,CAXF;AAAA,MAYEC,UAZF,GAaIZ,KAbJ,CAYEY,UAZF;;AAeA,kBAOI,6BAPJ;AAAA,kCACEC,KADF;AAAA,MAEcC,WAFd,mBAEIC,MAFJ,CAEcD,WAFd;AAAA,8CAGIE,aAHJ,CAIMC,OAJN;AAAA,MAIiB7C,SAJjB,yBAIiBA,SAJjB;AAAA,MAI4B8C,SAJ5B,yBAI4BA,SAJ5B;AAAA,MAIuC5B,kBAJvC,yBAIuCA,kBAJvC;AAAA,MAI2D6B,UAJ3D,yBAI2DA,UAJ3D;;AASA,MAAIP,UAAU,IAAI,CAACV,OAAO,CAACkB,WAA3B,EAAwC,OAAO,IAAP;AAExC,SACE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAEnD,MAAM,CAACO,cAApB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACGyB,SAAS,KAAK,MAAd,IACC,gCAAC,iBAAD;AAAM,IAAA,MAAM,EAAC,sBAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACG,CAACG,QAAD,IACC,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AAAEiB,MAAAA,WAAW,EAAEX;AAAf,KADK,EAELzC,MAAM,CAACe,mBAFF,EAGLf,MAAM,CAACQ,uBAHF,EAILyC,SAJK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAFJ,EAWE,gCAAC,qBAAD;AAAuB,IAAA,SAAS,EAAEjB,SAAlC;AAA6C,IAAA,OAAO,EAAEC,OAAtD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAXF,CAFJ,EAgBE,gCAAC,6BAAD;AACE,IAAA,QAAQ,EAAEO,YADZ;AAEE,IAAA,WAAW,EAAE,qBAACa,KAAD,EAAW;AACtB,UAAIjB,YAAJ,EAAiB;AACfA,QAAAA,YAAW,CAAC;AACVkB,UAAAA,OAAO,EAAE,gBADC;AAEVD,UAAAA,KAAK,EAALA;AAFU,SAAD,CAAX;AAID;AACF,KATH;AAUE,IAAA,OAAO,EAAE,iBAACA,KAAD,EAAW;AAClB,UAAIf,QAAJ,EAAa;AACXA,QAAAA,QAAO,CAAC;AACNiB,UAAAA,cAAc,EAAElB,YADV;AAENiB,UAAAA,OAAO,EAAE,gBAFH;AAGND,UAAAA,KAAK,EAALA;AAHM,SAAD,CAAP;AAKD;AACF,KAlBH;AAmBE,IAAA,SAAS,EAAE,mBAACA,KAAD,EAAW;AACpB,UAAId,UAAJ,EAAe;AACbA,QAAAA,UAAS,CAAC;AACRgB,UAAAA,cAAc,EAAElB,YADR;AAERiB,UAAAA,OAAO,EAAE,gBAFD;AAGRD,UAAAA,KAAK,EAALA;AAHQ,SAAD,CAAT;AAKD;AACF,KA3BH;AA4BE,IAAA,KAAK,EAAE,CAACrD,MAAM,CAACG,SAAR,EAAmBA,SAAnB,CA5BT;AA6BE,IAAA,MAAM,EAAC,iBA7BT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KA+BE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACH,MAAM,CAACqB,kBAAR,EAA4B;AAAEmC,MAAAA,KAAK,EAAEX;AAAT,KAA5B,EAAoDxB,kBAApD,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACGY,OAAO,CAACkB,WAAR,KAAwB,CAAxB,GACGT,CAAC,CAAC,gBAAD,CADJ,GAEGA,CAAC,CAAC,iCAAD,EAAoC;AACnCe,IAAAA,UAAU,EAAExB,OAAO,CAACkB;AADe,GAApC,CAHP,CA/BF,CAhBF,EAuDGnB,SAAS,KAAK,OAAd,IACC,gCAAC,iBAAD;AAAM,IAAA,MAAM,EAAC,uBAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACE,gCAAC,qBAAD;AAAuB,IAAA,SAAS,EAAEA,SAAlC;AAA6C,IAAA,OAAO,EAAEC,OAAtD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IADF,EAEG,CAACE,QAAD,IACC,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AAAEiB,MAAAA,WAAW,EAAEX;AAAf,KADK,EAELzC,MAAM,CAACe,mBAFF,EAGLf,MAAM,CAAC0B,wBAHF,EAILwB,UAJK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAHJ,CAxDJ,CADF;AAyED,CAxGD;;AA0GA,IAAMQ,QAAQ,GAAG,SAAXA,QAAW,CACfC,SADe,EAEfC,SAFe,EAGZ;AACH,MACWC,WADX,GAMIF,SANJ,CACE1B,OADF;AAAA,MAEY6B,YAFZ,GAMIH,SANJ,CAEExB,QAFF;AAAA,MAGgB4B,gBAHhB,GAMIJ,SANJ,CAGEtB,YAHF;AAAA,MAIK2B,KAJL,GAMIL,SANJ,CAIEjB,CAJF;AAAA,MAKcuB,cALd,GAMIN,SANJ,CAKEhB,UALF;AAOA,MACWuB,WADX,GAMIN,SANJ,CACE3B,OADF;AAAA,MAEYkC,YAFZ,GAMIP,SANJ,CAEEzB,QAFF;AAAA,MAGgBiC,gBAHhB,GAMIR,SANJ,CAGEvB,YAHF;AAAA,MAIKgC,KAJL,GAMIT,SANJ,CAIElB,CAJF;AAAA,MAKc4B,cALd,GAMIV,SANJ,CAKEjB,UALF;AAQA,MAAM4B,eAAe,GAAGN,cAAc,KAAKK,cAA3C;AACA,MAAI,CAACC,eAAL,EAAsB,OAAO,KAAP;AAEtB,MAAMC,sBAAsB,GAAGX,WAAW,CAACV,WAAZ,KAA4Be,WAAW,CAACf,WAAvE;AACA,MAAI,CAACqB,sBAAL,EAA6B,OAAO,KAAP;AAE7B,MAAMC,aAAa,GAAGX,YAAY,KAAKK,YAAvC;AACA,MAAI,CAACM,aAAL,EAAoB,OAAO,KAAP;AAEpB,MAAMC,MAAM,GAAGV,KAAK,KAAKK,KAAzB;AACA,MAAI,CAACK,MAAL,EAAa,OAAO,KAAP;AAEb,MAAMC,iBAAiB,GAAGZ,gBAAgB,KAAKK,gBAA/C;AACA,MAAI,CAACO,iBAAL,EAAwB,OAAO,KAAP;AAExB,SAAO,IAAP;AACD,CAnCD;;AAqCA,IAAMC,sBAAsB,GAAGC,kBAAMC,IAAN,CAC7BhD,yBAD6B,EAE7B4B,QAF6B,CAA/B;;AASO,IAAMqB,cAAc,GAAG,SAAjBA,cAAiB,CAG5BhD,KAH4B,EAIzB;AACH,2BASI,wCATJ;AAAA,MACEC,SADF,sBACEA,SADF;AAAA,MAEEC,OAFF,sBAEEA,OAFF;AAAA,MAGEG,WAHF,sBAGEA,WAHF;AAAA,MAIEC,YAJF,sBAIEA,YAJF;AAAA,MAKEC,OALF,sBAKEA,OALF;AAAA,MAMEC,SANF,sBAMEA,SANF;AAAA,MAOEC,YAPF,sBAOEA,YAPF;AAAA,MAQEG,UARF,sBAQEA,UARF;;AAUA,4BAAkC,0CAAlC;AAAA,MAAQT,qBAAR,uBAAQA,qBAAR;;AACA,8BAAc,gDAAd;AAAA,MAAQQ,CAAR,yBAAQA,CAAR;;AAEA,SACE,gCAAC,sBAAD;AAEIV,IAAAA,SAAS,EAATA,SAFJ;AAGIC,IAAAA,OAAO,EAAPA,OAHJ;AAIIC,IAAAA,qBAAqB,EAArBA,qBAJJ;AAKIE,IAAAA,WAAW,EAAXA,WALJ;AAMIC,IAAAA,YAAY,EAAZA,YANJ;AAOIC,IAAAA,OAAO,EAAPA,OAPJ;AAQIC,IAAAA,SAAS,EAATA,SARJ;AASIC,IAAAA,YAAY,EAAZA,YATJ;AAUIE,IAAAA,CAAC,EAADA,CAVJ;AAWIC,IAAAA,UAAU,EAAVA;AAXJ,KAaMZ,KAbN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF;AAiBD,CAnCM;;;AAqCPgD,cAAc,CAACC,WAAf,GAA6B,wCAA7B","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"]}