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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1049) hide show
  1. package/lib/commonjs/components/Attachment/Attachment.js +12 -12
  2. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/AttachmentActions.js +4 -4
  4. package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
  5. package/lib/commonjs/components/Attachment/Card.js +15 -15
  6. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  7. package/lib/commonjs/components/Attachment/FileAttachment.js +8 -8
  8. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  9. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +4 -4
  10. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  11. package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
  12. package/lib/commonjs/components/Attachment/Gallery.js +97 -106
  13. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  14. package/lib/commonjs/components/Attachment/Giphy.js +112 -148
  15. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  16. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  17. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  18. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  19. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  20. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  21. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  22. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  23. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  24. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  25. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  26. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  27. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  28. package/lib/commonjs/components/Attachment/utils/buildGallery/types.js +4 -0
  29. package/lib/commonjs/components/Attachment/utils/buildGallery/types.js.map +1 -0
  30. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js +14 -0
  31. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js.map +1 -0
  32. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  33. package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  34. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +9 -8
  35. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  36. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  37. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  38. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +16 -16
  39. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  40. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
  41. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  42. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
  43. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  44. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +11 -11
  45. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  46. package/lib/commonjs/components/Avatar/Avatar.js +13 -7
  47. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  48. package/lib/commonjs/components/Avatar/GroupAvatar.js +10 -4
  49. package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
  50. package/lib/commonjs/components/Channel/Channel.js +64 -64
  51. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  52. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  53. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  54. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  55. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  56. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  57. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  58. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  59. package/lib/commonjs/components/ChannelList/ChannelList.js +6 -6
  60. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  61. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js +4 -4
  62. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  63. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
  64. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  65. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -2
  66. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  67. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js +17 -17
  68. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
  69. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  70. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  71. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  72. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  73. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  74. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  75. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  76. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  77. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  78. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  79. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  80. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  81. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  82. package/lib/commonjs/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  83. package/lib/commonjs/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  84. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  85. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  86. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +83 -70
  87. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  88. package/lib/commonjs/components/ChannelList/utils.js +1 -1
  89. package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
  90. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js +2 -2
  91. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  92. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +4 -4
  93. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  94. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
  95. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  96. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js +48 -20
  97. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  98. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  99. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  100. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  101. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  102. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  103. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  104. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  105. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  106. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  107. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  108. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  109. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  110. package/lib/commonjs/components/Chat/Chat.js +4 -4
  111. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  112. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  113. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
  114. package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
  115. package/lib/commonjs/components/ImageGallery/ImageGallery.js +89 -56
  116. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  117. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
  118. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  119. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
  120. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  121. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
  122. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  123. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +7 -7
  124. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  125. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js +5 -5
  126. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  127. package/lib/commonjs/components/Indicators/LoadingIndicator.js +9 -9
  128. package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
  129. package/lib/commonjs/components/Message/Message.js +19 -15
  130. package/lib/commonjs/components/Message/Message.js.map +1 -1
  131. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js +6 -6
  132. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  133. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +19 -19
  134. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  135. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +5 -5
  136. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  137. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +20 -16
  138. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  139. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +6 -6
  140. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  141. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js +10 -10
  142. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  143. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
  144. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  145. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +6 -6
  146. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  147. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +15 -13
  148. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  149. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +3 -3
  150. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  151. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +51 -51
  152. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
  153. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  154. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  155. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  156. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  157. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +151 -81
  158. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  159. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  160. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  161. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  162. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +16 -3
  163. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  164. package/lib/commonjs/components/Message/hooks/useMessageActions.js +18 -14
  165. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
  166. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  167. package/lib/commonjs/components/Message/utils/removeReservedFields.js.map +1 -1
  168. package/lib/commonjs/components/MessageInput/AttachButton.js +3 -3
  169. package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
  170. package/lib/commonjs/components/MessageInput/CommandsButton.js +3 -3
  171. package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
  172. package/lib/commonjs/components/MessageInput/CooldownTimer.js +2 -2
  173. package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -1
  174. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +13 -13
  175. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  176. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +7 -7
  177. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
  178. package/lib/commonjs/components/MessageInput/InputButtons.js +9 -9
  179. package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
  180. package/lib/commonjs/components/MessageInput/MessageInput.js +40 -40
  181. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  182. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js +3 -3
  183. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
  184. package/lib/commonjs/components/MessageInput/SendButton.js +5 -5
  185. package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
  186. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +2 -2
  187. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  188. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -10
  189. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  190. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -1
  191. package/lib/commonjs/components/MessageInput/hooks/useCountdown.js.map +1 -1
  192. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
  193. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  194. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
  195. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  196. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
  197. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  198. package/lib/commonjs/components/MessageList/MessageList.js +28 -28
  199. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  200. package/lib/commonjs/components/MessageList/MessageSystem.js +6 -6
  201. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  202. package/lib/commonjs/components/MessageList/TypingIndicator.js +5 -5
  203. package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
  204. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +2 -2
  205. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  206. package/lib/commonjs/components/MessageList/hooks/useMessageList.js +7 -7
  207. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  208. package/lib/commonjs/components/MessageList/hooks/useTypingString.js +2 -2
  209. package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
  210. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  211. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
  212. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
  213. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  214. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  215. package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
  216. package/lib/commonjs/components/MessageOverlay/MessageActionList.js +5 -5
  217. package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -1
  218. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +8 -8
  219. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  220. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +41 -34
  221. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
  222. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js +1 -1
  223. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
  224. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +16 -16
  225. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  226. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js +31 -34
  227. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
  228. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  229. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  230. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
  231. package/lib/commonjs/components/Reply/Reply.js +25 -19
  232. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  233. package/lib/commonjs/components/Thread/Thread.js +6 -6
  234. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  235. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +12 -12
  236. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  237. package/lib/commonjs/components/docs/data.js +45 -45
  238. package/lib/commonjs/components/docs/data.js.map +1 -1
  239. package/lib/commonjs/components/index.js +26 -0
  240. package/lib/commonjs/components/index.js.map +1 -1
  241. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
  242. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  243. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
  244. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  245. package/lib/commonjs/contexts/channelContext/ChannelContext.js +2 -2
  246. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  247. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js +2 -2
  248. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  249. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
  250. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  251. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
  252. package/lib/commonjs/contexts/chatContext/ChatContext.js +2 -2
  253. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  254. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  255. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  256. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js +2 -2
  257. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  258. package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
  259. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  260. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +18 -14
  261. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  262. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  263. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  264. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  265. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
  266. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  267. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  268. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  269. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  270. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  271. package/lib/commonjs/contexts/messagesContext/MessagesContext.js +2 -2
  272. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  273. package/lib/commonjs/contexts/overlayContext/OverlayContext.js +1 -1
  274. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  275. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +33 -31
  276. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  277. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +1 -1
  278. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  279. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  280. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +2 -2
  281. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  282. package/lib/commonjs/contexts/themeContext/ThemeContext.js +2 -2
  283. package/lib/commonjs/contexts/themeContext/ThemeContext.js.map +1 -1
  284. package/lib/commonjs/contexts/themeContext/utils/theme.js +20 -11
  285. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  286. package/lib/commonjs/contexts/threadContext/ThreadContext.js +2 -2
  287. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  288. package/lib/commonjs/contexts/translationContext/TranslationContext.js +3 -3
  289. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  290. package/lib/commonjs/contexts/typingContext/TypingContext.js +2 -2
  291. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
  292. package/lib/commonjs/contexts/utils/getDisplayName.js.map +1 -1
  293. package/lib/commonjs/emoji-data/index.js +2 -2
  294. package/lib/commonjs/emoji-data/index.js.map +1 -1
  295. package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
  296. package/lib/commonjs/icons/UserAdmin.js +62 -0
  297. package/lib/commonjs/icons/UserAdmin.js.map +1 -0
  298. package/lib/commonjs/icons/index.js +0 -26
  299. package/lib/commonjs/icons/index.js.map +1 -1
  300. package/lib/commonjs/icons/utils/base.js +1 -1
  301. package/lib/commonjs/index.js +6 -6
  302. package/lib/commonjs/mock-builders/api/error.js +1 -1
  303. package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
  304. package/lib/commonjs/mock-builders/generator/attachment.js +1 -3
  305. package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
  306. package/lib/commonjs/mock-builders/generator/channel.js +101 -51
  307. package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
  308. package/lib/commonjs/mock-builders/generator/user.js +32 -33
  309. package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
  310. package/lib/commonjs/mock-builders/mock.js +1 -1
  311. package/lib/commonjs/native.js +1 -1
  312. package/lib/commonjs/native.js.map +1 -1
  313. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js +7 -7
  314. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js.map +1 -1
  315. package/lib/commonjs/styleguideComponents/JsDoc.js +4 -4
  316. package/lib/commonjs/styleguideComponents/JsDoc.js.map +1 -1
  317. package/lib/commonjs/styleguideComponents/PathlineRenderer.js +7 -7
  318. package/lib/commonjs/styleguideComponents/PathlineRenderer.js.map +1 -1
  319. package/lib/commonjs/styleguideComponents/PropsRenderer.js +25 -25
  320. package/lib/commonjs/styleguideComponents/PropsRenderer.js.map +1 -1
  321. package/lib/commonjs/styleguideComponents/Wrapper.js +1 -1
  322. package/lib/commonjs/styleguideComponents/Wrapper.js.map +1 -1
  323. package/lib/commonjs/utils/Streami18n.js.map +1 -1
  324. package/lib/commonjs/utils/getResizedImageUrl.js +26 -0
  325. package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -0
  326. package/lib/commonjs/utils/getUrlOfImageAttachment.js +9 -0
  327. package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -0
  328. package/lib/commonjs/utils/utils.js +9 -3
  329. package/lib/commonjs/utils/utils.js.map +1 -1
  330. package/lib/commonjs/version.json +1 -1
  331. package/lib/module/components/Attachment/Attachment.js +12 -12
  332. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  333. package/lib/module/components/Attachment/AttachmentActions.js +4 -4
  334. package/lib/module/components/Attachment/AttachmentActions.js.map +1 -1
  335. package/lib/module/components/Attachment/Card.js +15 -15
  336. package/lib/module/components/Attachment/Card.js.map +1 -1
  337. package/lib/module/components/Attachment/FileAttachment.js +8 -8
  338. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  339. package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -4
  340. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  341. package/lib/module/components/Attachment/FileIcon.js.map +1 -1
  342. package/lib/module/components/Attachment/Gallery.js +97 -106
  343. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  344. package/lib/module/components/Attachment/Giphy.js +112 -148
  345. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  346. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
  347. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
  348. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
  349. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
  350. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
  351. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
  352. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
  353. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
  354. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
  355. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
  356. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
  357. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
  358. package/lib/module/components/Attachment/utils/buildGallery/types.js +4 -0
  359. package/lib/module/components/Attachment/utils/buildGallery/types.js.map +1 -0
  360. package/lib/module/components/Attachment/utils/getAspectRatio.js +14 -0
  361. package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -0
  362. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
  363. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
  364. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +9 -8
  365. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  366. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  367. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  368. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +16 -16
  369. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  370. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
  371. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  372. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
  373. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  374. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +11 -11
  375. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  376. package/lib/module/components/Avatar/Avatar.js +13 -7
  377. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  378. package/lib/module/components/Avatar/GroupAvatar.js +10 -4
  379. package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
  380. package/lib/module/components/Channel/Channel.js +64 -64
  381. package/lib/module/components/Channel/Channel.js.map +1 -1
  382. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  383. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  384. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  385. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  386. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  387. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  388. package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  389. package/lib/module/components/ChannelList/ChannelList.js +6 -6
  390. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  391. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js +4 -4
  392. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  393. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
  394. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  395. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -2
  396. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  397. package/lib/module/components/ChannelList/ChannelListMessenger.js +17 -17
  398. package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
  399. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
  400. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  401. package/lib/module/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  402. package/lib/module/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  403. package/lib/module/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  404. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  405. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
  406. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  407. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  408. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
  409. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  410. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
  411. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  412. package/lib/module/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  413. package/lib/module/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  414. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
  415. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  416. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +83 -70
  417. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  418. package/lib/module/components/ChannelList/utils.js +1 -1
  419. package/lib/module/components/ChannelList/utils.js.map +1 -1
  420. package/lib/module/components/ChannelPreview/ChannelAvatar.js +2 -2
  421. package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  422. package/lib/module/components/ChannelPreview/ChannelPreview.js +4 -4
  423. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  424. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
  425. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  426. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js +48 -20
  427. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  428. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
  429. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
  430. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  431. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  432. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  433. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  434. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  435. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  436. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  437. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  438. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  439. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  440. package/lib/module/components/Chat/Chat.js +4 -4
  441. package/lib/module/components/Chat/Chat.js.map +1 -1
  442. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  443. package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
  444. package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
  445. package/lib/module/components/ImageGallery/ImageGallery.js +89 -56
  446. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  447. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
  448. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  449. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
  450. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  451. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
  452. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  453. package/lib/module/components/ImageGallery/components/ImageGrid.js +7 -7
  454. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  455. package/lib/module/components/ImageGallery/components/ImageGridHandle.js +5 -5
  456. package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  457. package/lib/module/components/Indicators/LoadingIndicator.js +9 -9
  458. package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
  459. package/lib/module/components/Message/Message.js +19 -15
  460. package/lib/module/components/Message/Message.js.map +1 -1
  461. package/lib/module/components/Message/MessageSimple/MessageAvatar.js +6 -6
  462. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  463. package/lib/module/components/Message/MessageSimple/MessageContent.js +19 -19
  464. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  465. package/lib/module/components/Message/MessageSimple/MessageDeleted.js +5 -5
  466. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  467. package/lib/module/components/Message/MessageSimple/MessageFooter.js +20 -16
  468. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  469. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +6 -6
  470. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  471. package/lib/module/components/Message/MessageSimple/MessageReplies.js +10 -10
  472. package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  473. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
  474. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  475. package/lib/module/components/Message/MessageSimple/MessageSimple.js +6 -6
  476. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  477. package/lib/module/components/Message/MessageSimple/MessageStatus.js +15 -13
  478. package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  479. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +3 -3
  480. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  481. package/lib/module/components/Message/MessageSimple/ReactionList.js +51 -51
  482. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
  483. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js +89 -0
  484. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
  485. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
  486. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
  487. package/lib/module/components/Message/MessageSimple/utils/renderText.js +151 -81
  488. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  489. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  490. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  491. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  492. package/lib/module/components/Message/hooks/useMessageActionHandlers.js +16 -3
  493. package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  494. package/lib/module/components/Message/hooks/useMessageActions.js +18 -14
  495. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
  496. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  497. package/lib/module/components/Message/utils/removeReservedFields.js.map +1 -1
  498. package/lib/module/components/MessageInput/AttachButton.js +3 -3
  499. package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
  500. package/lib/module/components/MessageInput/CommandsButton.js +3 -3
  501. package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
  502. package/lib/module/components/MessageInput/CooldownTimer.js +2 -2
  503. package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -1
  504. package/lib/module/components/MessageInput/FileUploadPreview.js +13 -13
  505. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  506. package/lib/module/components/MessageInput/ImageUploadPreview.js +7 -7
  507. package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
  508. package/lib/module/components/MessageInput/InputButtons.js +9 -9
  509. package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
  510. package/lib/module/components/MessageInput/MessageInput.js +40 -40
  511. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  512. package/lib/module/components/MessageInput/MoreOptionsButton.js +3 -3
  513. package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
  514. package/lib/module/components/MessageInput/SendButton.js +5 -5
  515. package/lib/module/components/MessageInput/SendButton.js.map +1 -1
  516. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +2 -2
  517. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  518. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -10
  519. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  520. package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -1
  521. package/lib/module/components/MessageInput/hooks/useCountdown.js.map +1 -1
  522. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
  523. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  524. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
  525. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  526. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
  527. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  528. package/lib/module/components/MessageList/MessageList.js +28 -28
  529. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  530. package/lib/module/components/MessageList/MessageSystem.js +6 -6
  531. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  532. package/lib/module/components/MessageList/TypingIndicator.js +5 -5
  533. package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
  534. package/lib/module/components/MessageList/TypingIndicatorContainer.js +2 -2
  535. package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  536. package/lib/module/components/MessageList/hooks/useMessageList.js +7 -7
  537. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  538. package/lib/module/components/MessageList/hooks/useTypingString.js +2 -2
  539. package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
  540. package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  541. package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
  542. package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
  543. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +3 -1
  544. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  545. package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
  546. package/lib/module/components/MessageOverlay/MessageActionList.js +5 -5
  547. package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -1
  548. package/lib/module/components/MessageOverlay/MessageActionListItem.js +8 -8
  549. package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  550. package/lib/module/components/MessageOverlay/MessageOverlay.js +41 -34
  551. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
  552. package/lib/module/components/MessageOverlay/OverlayBackdrop.js +1 -1
  553. package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
  554. package/lib/module/components/MessageOverlay/OverlayReactionList.js +16 -16
  555. package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  556. package/lib/module/components/MessageOverlay/OverlayReactions.js +31 -34
  557. package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
  558. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
  559. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  560. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
  561. package/lib/module/components/Reply/Reply.js +25 -19
  562. package/lib/module/components/Reply/Reply.js.map +1 -1
  563. package/lib/module/components/Thread/Thread.js +6 -6
  564. package/lib/module/components/Thread/Thread.js.map +1 -1
  565. package/lib/module/components/Thread/components/ThreadFooterComponent.js +12 -12
  566. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  567. package/lib/module/components/docs/data.js +45 -45
  568. package/lib/module/components/docs/data.js.map +1 -1
  569. package/lib/module/components/index.js +26 -0
  570. package/lib/module/components/index.js.map +1 -1
  571. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
  572. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  573. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
  574. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  575. package/lib/module/contexts/channelContext/ChannelContext.js +2 -2
  576. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  577. package/lib/module/contexts/channelsContext/ChannelsContext.js +2 -2
  578. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  579. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
  580. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  581. package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
  582. package/lib/module/contexts/chatContext/ChatContext.js +2 -2
  583. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  584. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  585. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  586. package/lib/module/contexts/keyboardContext/KeyboardContext.js +2 -2
  587. package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  588. package/lib/module/contexts/messageContext/MessageContext.js +2 -2
  589. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  590. package/lib/module/contexts/messageInputContext/MessageInputContext.js +18 -14
  591. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  592. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  593. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
  594. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  595. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
  596. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  597. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
  598. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  599. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
  600. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  601. package/lib/module/contexts/messagesContext/MessagesContext.js +2 -2
  602. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  603. package/lib/module/contexts/overlayContext/OverlayContext.js +1 -1
  604. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  605. package/lib/module/contexts/overlayContext/OverlayProvider.js +33 -31
  606. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  607. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +1 -1
  608. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  609. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  610. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +2 -2
  611. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  612. package/lib/module/contexts/themeContext/ThemeContext.js +2 -2
  613. package/lib/module/contexts/themeContext/ThemeContext.js.map +1 -1
  614. package/lib/module/contexts/themeContext/utils/theme.js +20 -11
  615. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  616. package/lib/module/contexts/threadContext/ThreadContext.js +2 -2
  617. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  618. package/lib/module/contexts/translationContext/TranslationContext.js +3 -3
  619. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  620. package/lib/module/contexts/typingContext/TypingContext.js +2 -2
  621. package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
  622. package/lib/module/contexts/utils/getDisplayName.js.map +1 -1
  623. package/lib/module/emoji-data/index.js +2 -2
  624. package/lib/module/emoji-data/index.js.map +1 -1
  625. package/lib/module/hooks/useStreami18n.js.map +1 -1
  626. package/lib/module/icons/UserAdmin.js +62 -0
  627. package/lib/module/icons/UserAdmin.js.map +1 -0
  628. package/lib/module/icons/index.js +0 -26
  629. package/lib/module/icons/index.js.map +1 -1
  630. package/lib/module/icons/utils/base.js +1 -1
  631. package/lib/module/index.js +6 -6
  632. package/lib/module/mock-builders/api/error.js +1 -1
  633. package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
  634. package/lib/module/mock-builders/generator/attachment.js +1 -3
  635. package/lib/module/mock-builders/generator/attachment.js.map +1 -1
  636. package/lib/module/mock-builders/generator/channel.js +101 -51
  637. package/lib/module/mock-builders/generator/channel.js.map +1 -1
  638. package/lib/module/mock-builders/generator/user.js +32 -33
  639. package/lib/module/mock-builders/generator/user.js.map +1 -1
  640. package/lib/module/mock-builders/mock.js +1 -1
  641. package/lib/module/native.js +1 -1
  642. package/lib/module/native.js.map +1 -1
  643. package/lib/module/styleguideComponents/ArgumentsRenderer.js +7 -7
  644. package/lib/module/styleguideComponents/ArgumentsRenderer.js.map +1 -1
  645. package/lib/module/styleguideComponents/JsDoc.js +4 -4
  646. package/lib/module/styleguideComponents/JsDoc.js.map +1 -1
  647. package/lib/module/styleguideComponents/PathlineRenderer.js +7 -7
  648. package/lib/module/styleguideComponents/PathlineRenderer.js.map +1 -1
  649. package/lib/module/styleguideComponents/PropsRenderer.js +25 -25
  650. package/lib/module/styleguideComponents/PropsRenderer.js.map +1 -1
  651. package/lib/module/styleguideComponents/Wrapper.js +1 -1
  652. package/lib/module/styleguideComponents/Wrapper.js.map +1 -1
  653. package/lib/module/utils/Streami18n.js.map +1 -1
  654. package/lib/module/utils/getResizedImageUrl.js +26 -0
  655. package/lib/module/utils/getResizedImageUrl.js.map +1 -0
  656. package/lib/module/utils/getUrlOfImageAttachment.js +9 -0
  657. package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -0
  658. package/lib/module/utils/utils.js +9 -3
  659. package/lib/module/utils/utils.js.map +1 -1
  660. package/lib/module/version.json +1 -1
  661. package/lib/typescript/components/Attachment/Attachment.d.ts +6 -6
  662. package/lib/typescript/components/Attachment/AttachmentActions.d.ts +5 -5
  663. package/lib/typescript/components/Attachment/Card.d.ts +5 -5
  664. package/lib/typescript/components/Attachment/FileAttachment.d.ts +6 -6
  665. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +4 -4
  666. package/lib/typescript/components/Attachment/Gallery.d.ts +6 -9
  667. package/lib/typescript/components/Attachment/Giphy.d.ts +7 -7
  668. package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts +23 -0
  669. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts +7 -0
  670. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts +7 -0
  671. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts +7 -0
  672. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +10 -0
  673. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts +137 -0
  674. package/lib/typescript/components/Attachment/utils/buildGallery/types.d.ts +23 -0
  675. package/lib/typescript/components/Attachment/utils/getAspectRatio.d.ts +9 -0
  676. package/lib/typescript/components/Attachment/utils/getGalleryImageBorderRadius.d.ts +22 -0
  677. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +4 -4
  678. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +3 -2
  679. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts +4 -4
  680. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +5 -5
  681. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +10 -11
  682. package/lib/typescript/components/Avatar/Avatar.d.ts +1 -1
  683. package/lib/typescript/components/Channel/Channel.d.ts +10 -10
  684. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +2 -2
  685. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +3 -3
  686. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +3 -3
  687. package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +4 -4
  688. package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +3 -3
  689. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +2 -2
  690. package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +2 -2
  691. package/lib/typescript/components/ChannelList/ChannelList.d.ts +15 -15
  692. package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +4 -4
  693. package/lib/typescript/components/ChannelList/hooks/listeners/useAddedToChannelNotification.d.ts +5 -5
  694. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelDeleted.d.ts +5 -5
  695. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelHidden.d.ts +5 -5
  696. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelTruncated.d.ts +5 -5
  697. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +5 -5
  698. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelVisible.d.ts +5 -5
  699. package/lib/typescript/components/ChannelList/hooks/listeners/useConnectionRecovered.d.ts +2 -2
  700. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessage.d.ts +4 -4
  701. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts +5 -5
  702. package/lib/typescript/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.d.ts +5 -5
  703. package/lib/typescript/components/ChannelList/hooks/listeners/useUserPresence.d.ts +4 -4
  704. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +2 -2
  705. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +11 -9
  706. package/lib/typescript/components/ChannelList/utils.d.ts +7 -7
  707. package/lib/typescript/components/ChannelPreview/ChannelAvatar.d.ts +3 -3
  708. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +7 -7
  709. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +4 -5
  710. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts +6 -6
  711. package/lib/typescript/components/ChannelPreview/ChannelPreviewMutedStatus.d.ts +9 -0
  712. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +3 -3
  713. package/lib/typescript/components/ChannelPreview/ChannelPreviewTitle.d.ts +3 -3
  714. package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts +3 -3
  715. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.d.ts +3 -3
  716. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts +4 -4
  717. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts +2 -2
  718. package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +5 -5
  719. package/lib/typescript/components/Chat/Chat.d.ts +3 -3
  720. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +2 -2
  721. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +2 -2
  722. package/lib/typescript/components/Chat/hooks/useMutedUsers.d.ts +2 -2
  723. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +12 -10
  724. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +1 -1
  725. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +10 -10
  726. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +10 -10
  727. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +10 -10
  728. package/lib/typescript/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.d.ts +1 -0
  729. package/lib/typescript/components/Message/Message.d.ts +12 -12
  730. package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts +5 -5
  731. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +4 -4
  732. package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts +6 -6
  733. package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +8 -8
  734. package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +4 -4
  735. package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts +4 -4
  736. package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts +3 -3
  737. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +4 -4
  738. package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +4 -4
  739. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +6 -6
  740. package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +4 -4
  741. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.d.ts +7 -0
  742. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.test.d.ts +1 -0
  743. package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +20 -6
  744. package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts +1 -0
  745. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +2 -2
  746. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +2 -2
  747. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +5 -5
  748. package/lib/typescript/components/Message/utils/messageActions.d.ts +7 -7
  749. package/lib/typescript/components/Message/utils/removeReservedFields.d.ts +2 -2
  750. package/lib/typescript/components/MessageInput/AttachButton.d.ts +5 -5
  751. package/lib/typescript/components/MessageInput/CommandsButton.d.ts +5 -5
  752. package/lib/typescript/components/MessageInput/FileUploadPreview.d.ts +4 -4
  753. package/lib/typescript/components/MessageInput/ImageUploadPreview.d.ts +4 -4
  754. package/lib/typescript/components/MessageInput/InputButtons.d.ts +5 -5
  755. package/lib/typescript/components/MessageInput/MessageInput.d.ts +4 -4
  756. package/lib/typescript/components/MessageInput/MoreOptionsButton.d.ts +5 -5
  757. package/lib/typescript/components/MessageInput/SendButton.d.ts +4 -4
  758. package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +2 -2
  759. package/lib/typescript/components/MessageInput/hooks/useCooldown.d.ts +2 -2
  760. package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +2 -2
  761. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +2 -2
  762. package/lib/typescript/components/MessageList/InlineLoadingMoreThreadIndicator.d.ts +2 -2
  763. package/lib/typescript/components/MessageList/MessageList.d.ts +7 -7
  764. package/lib/typescript/components/MessageList/MessageSystem.d.ts +5 -5
  765. package/lib/typescript/components/MessageList/TypingIndicator.d.ts +2 -2
  766. package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +4 -4
  767. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +5 -5
  768. package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts +2 -2
  769. package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +3 -3
  770. package/lib/typescript/components/MessageList/utils/getDateSeparators.d.ts +4 -4
  771. package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts +5 -5
  772. package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +2 -2
  773. package/lib/typescript/components/MessageList/utils/getReadStates.d.ts +8 -5
  774. package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +4 -4
  775. package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts +4 -3
  776. package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +4 -4
  777. package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts +6 -6
  778. package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +3 -1
  779. package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts +7 -0
  780. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +1 -1
  781. package/lib/typescript/components/Reply/Reply.d.ts +5 -5
  782. package/lib/typescript/components/Thread/Thread.d.ts +8 -8
  783. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +2 -2
  784. package/lib/typescript/components/index.d.ts +2 -0
  785. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +2 -2
  786. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +12 -12
  787. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +30 -22
  788. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +19 -19
  789. package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +17 -17
  790. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +11 -11
  791. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +8 -8
  792. package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts +2 -2
  793. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +12 -12
  794. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +39 -37
  795. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +3 -3
  796. package/lib/typescript/contexts/messageInputContext/hooks/useMessageDetailsForState.d.ts +3 -3
  797. package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +27 -25
  798. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.d.ts +12 -0
  799. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.test.d.ts +1 -0
  800. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +67 -67
  801. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +8 -8
  802. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts +2 -2
  803. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +8 -8
  804. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +21 -21
  805. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +17 -8
  806. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +10 -10
  807. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +2 -2
  808. package/lib/typescript/contexts/typingContext/TypingContext.d.ts +8 -8
  809. package/lib/typescript/hooks/useStreami18n.d.ts +1 -1
  810. package/lib/typescript/icons/{Left.d.ts → UserAdmin.d.ts} +1 -1
  811. package/lib/typescript/icons/index.d.ts +0 -2
  812. package/lib/typescript/types/types.d.ts +16 -13
  813. package/lib/typescript/utils/Streami18n.d.ts +6 -6
  814. package/lib/typescript/utils/getResizedImageUrl.d.ts +19 -0
  815. package/lib/typescript/utils/getUrlOfImageAttachment.d.ts +7 -0
  816. package/lib/typescript/utils/utils.d.ts +27 -22
  817. package/package.json +9 -13
  818. package/src/components/Attachment/Attachment.tsx +18 -59
  819. package/src/components/Attachment/AttachmentActions.tsx +17 -57
  820. package/src/components/Attachment/Card.tsx +17 -51
  821. package/src/components/Attachment/FileAttachment.tsx +16 -51
  822. package/src/components/Attachment/FileAttachmentGroup.tsx +16 -57
  823. package/src/components/Attachment/FileIcon.tsx +2 -2
  824. package/src/components/Attachment/Gallery.tsx +177 -242
  825. package/src/components/Attachment/Giphy.tsx +84 -128
  826. package/src/components/Attachment/__tests__/Attachment.test.js +11 -10
  827. package/src/components/Attachment/__tests__/Gallery.test.js +233 -0
  828. package/src/components/Attachment/__tests__/buildGallery.test.js +131 -0
  829. package/src/components/Attachment/utils/buildGallery/buildGallery.ts +77 -0
  830. package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +91 -0
  831. package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +99 -0
  832. package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +66 -0
  833. package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +48 -0
  834. package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +188 -0
  835. package/src/components/Attachment/utils/buildGallery/types.ts +27 -0
  836. package/src/components/Attachment/utils/getAspectRatio.ts +21 -0
  837. package/src/components/Attachment/utils/getGalleryImageBorderRadius.ts +71 -0
  838. package/src/components/AttachmentPicker/AttachmentPicker.tsx +4 -2
  839. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +23 -62
  840. package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +6 -4
  841. package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +13 -20
  842. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +20 -25
  843. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +25 -29
  844. package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.js +6 -8
  845. package/src/components/Avatar/Avatar.tsx +8 -11
  846. package/src/components/Avatar/GroupAvatar.tsx +7 -2
  847. package/src/components/Avatar/__tests__/Avatar.test.js +2 -2
  848. package/src/components/Channel/Channel.tsx +237 -313
  849. package/src/components/Channel/__tests__/Channel.test.js +10 -10
  850. package/src/components/Channel/__tests__/ownCapabilities.test.js +8 -8
  851. package/src/components/Channel/hooks/useCreateChannelContext.ts +4 -19
  852. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +52 -68
  853. package/src/components/Channel/hooks/useCreateMessagesContext.ts +4 -19
  854. package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +5 -19
  855. package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +16 -32
  856. package/src/components/Channel/hooks/useCreateThreadContext.ts +4 -19
  857. package/src/components/Channel/hooks/useCreateTypingContext.ts +4 -19
  858. package/src/components/ChannelList/ChannelList.tsx +36 -58
  859. package/src/components/ChannelList/ChannelListFooterLoadingIndicator.tsx +1 -2
  860. package/src/components/ChannelList/ChannelListHeaderErrorIndicator.tsx +3 -7
  861. package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +2 -2
  862. package/src/components/ChannelList/ChannelListMessenger.tsx +22 -74
  863. package/src/components/ChannelList/__tests__/ChannelList.test.js +73 -13
  864. package/src/components/ChannelList/__tests__/ChannelListMessenger.test.js +11 -12
  865. package/src/components/ChannelList/hooks/listeners/useAddedToChannelNotification.ts +17 -39
  866. package/src/components/ChannelList/hooks/listeners/useChannelDeleted.ts +15 -37
  867. package/src/components/ChannelList/hooks/listeners/useChannelHidden.ts +15 -37
  868. package/src/components/ChannelList/hooks/listeners/useChannelTruncated.ts +17 -39
  869. package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +15 -37
  870. package/src/components/ChannelList/hooks/listeners/useChannelVisible.ts +17 -39
  871. package/src/components/ChannelList/hooks/listeners/useConnectionRecovered.ts +3 -18
  872. package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +13 -36
  873. package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +17 -39
  874. package/src/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.ts +15 -37
  875. package/src/components/ChannelList/hooks/listeners/useUserPresence.ts +11 -33
  876. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +5 -21
  877. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +89 -77
  878. package/src/components/ChannelList/utils.ts +9 -42
  879. package/src/components/ChannelPreview/ChannelAvatar.tsx +6 -29
  880. package/src/components/ChannelPreview/ChannelPreview.tsx +21 -54
  881. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +13 -23
  882. package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +35 -55
  883. package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +50 -0
  884. package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +10 -30
  885. package/src/components/ChannelPreview/ChannelPreviewTitle.tsx +7 -28
  886. package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +7 -27
  887. package/src/components/ChannelPreview/__tests__/ChannelPreview.test.js +8 -9
  888. package/src/components/ChannelPreview/__tests__/ChannelPreviewMessenger.test.js +8 -9
  889. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.ts +9 -30
  890. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +8 -30
  891. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +9 -30
  892. package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +29 -80
  893. package/src/components/Chat/Chat.tsx +17 -45
  894. package/src/components/Chat/__tests__/Chat.test.js +5 -5
  895. package/src/components/Chat/hooks/useCreateChatContext.ts +4 -19
  896. package/src/components/Chat/hooks/useIsOnline.ts +8 -22
  897. package/src/components/Chat/hooks/useMutedUsers.ts +5 -20
  898. package/src/components/ImageGallery/ImageGallery.tsx +109 -86
  899. package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +1 -2
  900. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +20 -15
  901. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +42 -21
  902. package/src/components/ImageGallery/components/ImageGrid.tsx +47 -33
  903. package/src/components/ImageGallery/components/ImageGridHandle.tsx +1 -0
  904. package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +31 -0
  905. package/src/components/Indicators/LoadingIndicator.tsx +1 -2
  906. package/src/components/Message/Message.tsx +59 -112
  907. package/src/components/Message/MessageSimple/MessageAvatar.tsx +14 -56
  908. package/src/components/Message/MessageSimple/MessageContent.tsx +20 -64
  909. package/src/components/Message/MessageSimple/MessageDeleted.tsx +19 -61
  910. package/src/components/Message/MessageSimple/MessageFooter.tsx +28 -71
  911. package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +15 -56
  912. package/src/components/Message/MessageSimple/MessageReplies.tsx +15 -56
  913. package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx +7 -29
  914. package/src/components/Message/MessageSimple/MessageSimple.tsx +16 -57
  915. package/src/components/Message/MessageSimple/MessageStatus.tsx +21 -58
  916. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +19 -66
  917. package/src/components/Message/MessageSimple/ReactionList.tsx +47 -88
  918. package/src/components/Message/MessageSimple/__tests__/Message.test.js +9 -9
  919. package/src/components/Message/MessageSimple/__tests__/MessageAvatar.test.js +2 -2
  920. package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +9 -26
  921. package/src/components/Message/MessageSimple/__tests__/MessagePinnedHeader.test.js +2 -2
  922. package/src/components/Message/MessageSimple/__tests__/MessageReplies.test.js +2 -2
  923. package/src/components/Message/MessageSimple/__tests__/MessageStatus.test.js +4 -5
  924. package/src/components/Message/MessageSimple/__tests__/MessageTextContainer.test.js +2 -2
  925. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap +1 -1
  926. package/src/components/Message/MessageSimple/utils/parseLinks.test.ts +100 -0
  927. package/src/components/Message/MessageSimple/utils/parseLinks.ts +95 -0
  928. package/src/components/Message/MessageSimple/utils/renderText.test.tsx +70 -0
  929. package/src/components/Message/MessageSimple/utils/renderText.tsx +97 -94
  930. package/src/components/Message/hooks/useCreateMessageContext.ts +5 -21
  931. package/src/components/Message/hooks/useMessageActionHandlers.ts +21 -27
  932. package/src/components/Message/hooks/useMessageActions.tsx +21 -31
  933. package/src/components/Message/utils/messageActions.ts +9 -36
  934. package/src/components/Message/utils/removeReservedFields.ts +3 -18
  935. package/src/components/MessageInput/AttachButton.tsx +14 -56
  936. package/src/components/MessageInput/CommandsButton.tsx +16 -58
  937. package/src/components/MessageInput/CooldownTimer.tsx +1 -0
  938. package/src/components/MessageInput/FileUploadPreview.tsx +16 -58
  939. package/src/components/MessageInput/ImageUploadPreview.tsx +13 -56
  940. package/src/components/MessageInput/InputButtons.tsx +14 -55
  941. package/src/components/MessageInput/MessageInput.tsx +30 -72
  942. package/src/components/MessageInput/MoreOptionsButton.tsx +14 -56
  943. package/src/components/MessageInput/SendButton.tsx +13 -54
  944. package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +1 -1
  945. package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +5 -20
  946. package/src/components/MessageInput/__tests__/AttachButton.test.js +2 -2
  947. package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +15 -17
  948. package/src/components/MessageInput/__tests__/ImageUploadPreview.test.js +3 -3
  949. package/src/components/MessageInput/__tests__/MessageInput.test.js +8 -8
  950. package/src/components/MessageInput/__tests__/SendButton.test.js +2 -2
  951. package/src/components/MessageInput/__tests__/UploadProgressIndicator.test.js +2 -2
  952. package/src/components/MessageInput/__tests__/__snapshots__/FileUploadPreview.test.js.snap +1604 -4172
  953. package/src/components/MessageInput/__tests__/__snapshots__/MessageInput.test.js.snap +1 -643
  954. package/src/components/MessageInput/hooks/useCooldown.ts +7 -19
  955. package/src/components/MessageInput/hooks/useCountdown.ts +1 -0
  956. package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +3 -18
  957. package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +3 -18
  958. package/src/components/MessageList/InlineLoadingMoreThreadIndicator.tsx +3 -18
  959. package/src/components/MessageList/MessageList.tsx +37 -79
  960. package/src/components/MessageList/MessageSystem.tsx +7 -28
  961. package/src/components/MessageList/TypingIndicator.tsx +4 -20
  962. package/src/components/MessageList/TypingIndicatorContainer.tsx +14 -47
  963. package/src/components/MessageList/__tests__/MessageList.test.js +17 -17
  964. package/src/components/MessageList/__tests__/MessageSystem.test.js +3 -3
  965. package/src/components/MessageList/__tests__/ScrollToBottomButton.test.js +3 -3
  966. package/src/components/MessageList/__tests__/TypingIndicator.test.js +5 -6
  967. package/src/components/MessageList/__tests__/__snapshots__/TypingIndicator.test.js.snap +1 -1
  968. package/src/components/MessageList/hooks/useMessageList.ts +24 -59
  969. package/src/components/MessageList/hooks/useTypingString.ts +6 -22
  970. package/src/components/MessageList/utils/filterTypingUsers.ts +7 -28
  971. package/src/components/MessageList/utils/getDateSeparators.ts +6 -27
  972. package/src/components/MessageList/utils/getGroupStyles.ts +7 -29
  973. package/src/components/MessageList/utils/getLastReceivedMessage.ts +9 -19
  974. package/src/components/MessageList/utils/getReadStates.ts +5 -20
  975. package/src/components/MessageOverlay/MessageActionList.tsx +17 -58
  976. package/src/components/MessageOverlay/MessageActionListItem.tsx +23 -10
  977. package/src/components/MessageOverlay/MessageOverlay.tsx +56 -95
  978. package/src/components/MessageOverlay/OverlayBackdrop.tsx +1 -0
  979. package/src/components/MessageOverlay/OverlayReactionList.tsx +23 -78
  980. package/src/components/MessageOverlay/OverlayReactions.tsx +12 -8
  981. package/src/components/MessageOverlay/OverlayReactionsAvatar.tsx +27 -0
  982. package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +1 -0
  983. package/src/components/Reply/Reply.tsx +44 -81
  984. package/src/components/Thread/Thread.tsx +24 -58
  985. package/src/components/Thread/__tests__/Thread.test.js +12 -14
  986. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +13 -13
  987. package/src/components/Thread/components/ThreadFooterComponent.tsx +12 -48
  988. package/src/components/docs/data.js +38 -37
  989. package/src/components/index.ts +2 -0
  990. package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +1 -2
  991. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +10 -9
  992. package/src/contexts/channelContext/ChannelContext.tsx +16 -50
  993. package/src/contexts/channelsContext/ChannelsContext.tsx +37 -63
  994. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +38 -116
  995. package/src/contexts/channelsStateContext/useChannelState.ts +28 -60
  996. package/src/contexts/chatContext/ChatContext.tsx +15 -51
  997. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +13 -56
  998. package/src/contexts/keyboardContext/KeyboardContext.tsx +13 -8
  999. package/src/contexts/messageContext/MessageContext.tsx +16 -50
  1000. package/src/contexts/messageInputContext/MessageInputContext.tsx +88 -134
  1001. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +6 -23
  1002. package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +15 -34
  1003. package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +34 -90
  1004. package/src/contexts/messageOverlayContext/hooks/useResettableState.test.tsx +46 -0
  1005. package/src/contexts/messageOverlayContext/hooks/useResettableState.ts +22 -0
  1006. package/src/contexts/messagesContext/MessagesContext.tsx +73 -112
  1007. package/src/contexts/overlayContext/OverlayContext.tsx +28 -34
  1008. package/src/contexts/overlayContext/OverlayProvider.tsx +36 -46
  1009. package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +14 -55
  1010. package/src/contexts/suggestionsContext/SuggestionsContext.tsx +42 -42
  1011. package/src/contexts/suggestionsContext/__tests__/Suggestions.test.js +1 -0
  1012. package/src/contexts/themeContext/ThemeContext.tsx +1 -0
  1013. package/src/contexts/themeContext/utils/theme.ts +36 -19
  1014. package/src/contexts/threadContext/ThreadContext.tsx +14 -48
  1015. package/src/contexts/translationContext/TranslationContext.tsx +14 -9
  1016. package/src/contexts/typingContext/TypingContext.tsx +12 -46
  1017. package/src/contexts/utils/getDisplayName.ts +1 -0
  1018. package/src/emoji-data/index.js +1 -1
  1019. package/src/hooks/useStreami18n.ts +1 -1
  1020. package/src/icons/UserAdmin.tsx +23 -0
  1021. package/src/icons/index.ts +0 -2
  1022. package/src/mock-builders/api/sendMessage.js +1 -0
  1023. package/src/mock-builders/generator/attachment.js +0 -2
  1024. package/src/mock-builders/generator/channel.js +101 -64
  1025. package/src/mock-builders/generator/user.js +33 -26
  1026. package/src/native.ts +1 -0
  1027. package/src/styleguideComponents/ArgumentsRenderer.tsx +2 -1
  1028. package/src/styleguideComponents/JsDoc.tsx +3 -1
  1029. package/src/styleguideComponents/PathlineRenderer.tsx +2 -1
  1030. package/src/styleguideComponents/PropsRenderer.tsx +7 -4
  1031. package/src/styleguideComponents/Wrapper.tsx +1 -0
  1032. package/src/types/types.ts +16 -18
  1033. package/src/utils/Streami18n.ts +6 -6
  1034. package/src/utils/__tests__/Streami18n.test.js +1 -2
  1035. package/src/utils/getResizedImageUrl.ts +43 -0
  1036. package/src/utils/getUrlOfImageAttachment.ts +10 -0
  1037. package/src/utils/utils.ts +72 -132
  1038. package/src/version.json +1 -1
  1039. package/lib/commonjs/icons/Left.js +0 -38
  1040. package/lib/commonjs/icons/Left.js.map +0 -1
  1041. package/lib/commonjs/icons/Right.js +0 -38
  1042. package/lib/commonjs/icons/Right.js.map +0 -1
  1043. package/lib/module/icons/Left.js +0 -38
  1044. package/lib/module/icons/Left.js.map +0 -1
  1045. package/lib/module/icons/Right.js +0 -38
  1046. package/lib/module/icons/Right.js.map +0 -1
  1047. package/lib/typescript/icons/Right.d.ts +0 -3
  1048. package/src/icons/Left.tsx +0 -12
  1049. package/src/icons/Right.tsx +0 -12
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageSystem.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","justifyContent","marginBottom","line","flex","height","text","fontSize","fontWeight","textAlign","textContainer","marginTop","MessageSystem","props","formatDate","message","style","theme","colors","grey","grey_whisper","messageList","messageSystem","dateText","tDateTimeParser","createdAt","created_at","parsedDate","date","calendar","toUpperCase","backgroundColor","color","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleProp, StyleSheet, Text, View, ViewStyle } from 'react-native';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n isDayOrMoment,\n TDateTimeParserInput,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\n\nimport type { MessageType } from './hooks/useMessageList';\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 justifyContent: 'center',\n marginBottom: 10,\n },\n line: {\n flex: 1,\n height: 0.5,\n },\n text: {\n fontSize: 10,\n fontWeight: 'bold',\n textAlign: 'center',\n },\n textContainer: {\n flex: 3,\n marginTop: 10,\n },\n});\n\nexport type MessageSystemProps<\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 /** Current [message object](https://getstream.io/chat/docs/#message_format) */\n message: MessageType<At, Ch, Co, Ev, Me, Re, Us>;\n /**\n * Formatter function for date object.\n *\n * @param date TDateTimeParserInput object of message\n * @returns string\n */\n formatDate?: (date: TDateTimeParserInput) => string;\n style?: StyleProp<ViewStyle>;\n};\n\n/**\n * A component to display system message. e.g, when someone updates the channel,\n * they can attach a message with that update. That message will be available\n * in message list as (type) system message.\n */\nexport const MessageSystem = <\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: MessageSystemProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { formatDate, message, style } = props;\n\n const {\n theme: {\n colors: { grey, grey_whisper },\n messageList: {\n messageSystem: { container, dateText, line, text, textContainer },\n },\n },\n } = useTheme();\n const { tDateTimeParser } = useTranslationContext();\n\n const createdAt = message.created_at;\n const parsedDate = tDateTimeParser(createdAt);\n const date =\n formatDate && createdAt\n ? formatDate(createdAt)\n : parsedDate && isDayOrMoment(parsedDate)\n ? parsedDate.calendar().toUpperCase()\n : parsedDate;\n\n return (\n <View style={[styles.container, style, container]} testID='message-system'>\n <View style={[styles.line, { backgroundColor: grey_whisper }, line]} />\n <View style={[styles.textContainer, textContainer]}>\n <Text style={[styles.text, { color: grey }, text]}>\n {message.text?.toUpperCase() || ''}\n </Text>\n <Text style={[styles.text, { color: grey }, dateText]}>{date}</Text>\n </View>\n <View style={[styles.line, { backgroundColor: grey_whisper }, line]} />\n </View>\n );\n};\n\nMessageSystem.displayName = 'MessageSystem{messageList{messageSystem}}';\n"]}
1
+ {"version":3,"sources":["MessageSystem.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","justifyContent","marginBottom","line","flex","height","text","fontSize","fontWeight","textAlign","textContainer","marginTop","MessageSystem","props","formatDate","message","style","theme","colors","grey","grey_whisper","messageList","messageSystem","dateText","tDateTimeParser","createdAt","created_at","parsedDate","date","calendar","toUpperCase","backgroundColor","color","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleProp, StyleSheet, Text, View, ViewStyle } from 'react-native';\n\nimport type { MessageType } from './hooks/useMessageList';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n isDayOrMoment,\n TDateTimeParserInput,\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 justifyContent: 'center',\n marginBottom: 10,\n },\n line: {\n flex: 1,\n height: 0.5,\n },\n text: {\n fontSize: 10,\n fontWeight: 'bold',\n textAlign: 'center',\n },\n textContainer: {\n flex: 3,\n marginTop: 10,\n },\n});\n\nexport type MessageSystemProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n /** Current [message object](https://getstream.io/chat/docs/#message_format) */\n message: MessageType<StreamChatGenerics>;\n /**\n * Formatter function for date object.\n *\n * @param date TDateTimeParserInput object of message\n * @returns string\n */\n formatDate?: (date: TDateTimeParserInput) => string;\n style?: StyleProp<ViewStyle>;\n};\n\n/**\n * A component to display system message. e.g, when someone updates the channel,\n * they can attach a message with that update. That message will be available\n * in message list as (type) system message.\n */\nexport const MessageSystem = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageSystemProps<StreamChatGenerics>,\n) => {\n const { formatDate, message, style } = props;\n\n const {\n theme: {\n colors: { grey, grey_whisper },\n messageList: {\n messageSystem: { container, dateText, line, text, textContainer },\n },\n },\n } = useTheme();\n const { tDateTimeParser } = useTranslationContext();\n\n const createdAt = message.created_at;\n const parsedDate = tDateTimeParser(createdAt);\n const date =\n formatDate && createdAt\n ? formatDate(createdAt)\n : parsedDate && isDayOrMoment(parsedDate)\n ? parsedDate.calendar().toUpperCase()\n : parsedDate;\n\n return (\n <View style={[styles.container, style, container]} testID='message-system'>\n <View style={[styles.line, { backgroundColor: grey_whisper }, line]} />\n <View style={[styles.textContainer, textContainer]}>\n <Text style={[styles.text, { color: grey }, text]}>\n {message.text?.toUpperCase() || ''}\n </Text>\n <Text style={[styles.text, { color: grey }, dateText]}>{date}</Text>\n </View>\n <View style={[styles.line, { backgroundColor: grey_whisper }, line]} />\n </View>\n );\n};\n\nMessageSystem.displayName = 'MessageSystem{messageList{messageSystem}}';\n"]}
@@ -11,10 +11,10 @@ var _reactNative = require("react-native");
11
11
 
12
12
  var _useTypingString = require("./hooks/useTypingString");
13
13
 
14
- var _LoadingDots = require("../Indicators/LoadingDots");
15
-
16
14
  var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
17
15
 
16
+ var _LoadingDots = require("../Indicators/LoadingDots");
17
+
18
18
  var _this = this,
19
19
  _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/MessageList/TypingIndicator.tsx";
20
20
 
@@ -52,7 +52,7 @@ var TypingIndicator = function TypingIndicator() {
52
52
  __self: _this,
53
53
  __source: {
54
54
  fileName: _jsxFileName,
55
- lineNumber: 54,
55
+ lineNumber: 38,
56
56
  columnNumber: 5
57
57
  }
58
58
  }, _react["default"].createElement(_LoadingDots.LoadingDots, {
@@ -60,7 +60,7 @@ var TypingIndicator = function TypingIndicator() {
60
60
  __self: _this,
61
61
  __source: {
62
62
  fileName: _jsxFileName,
63
- lineNumber: 58,
63
+ lineNumber: 42,
64
64
  columnNumber: 7
65
65
  }
66
66
  }), _react["default"].createElement(_reactNative.Text, {
@@ -70,7 +70,7 @@ var TypingIndicator = function TypingIndicator() {
70
70
  __self: _this,
71
71
  __source: {
72
72
  fileName: _jsxFileName,
73
- lineNumber: 59,
73
+ lineNumber: 43,
74
74
  columnNumber: 7
75
75
  }
76
76
  }, typingString));
@@ -1 +1 @@
1
- {"version":3,"sources":["TypingIndicator.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","height","justifyContent","loadingDots","marginLeft","typingText","TypingIndicator","theme","colors","grey","white_snow","typingIndicator","text","typingString","backgroundColor","color","displayName"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AAEA;;AAEA;;;;;AAaA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,QADH;AAETC,IAAAA,aAAa,EAAE,KAFN;AAGTC,IAAAA,MAAM,EAAE,EAHC;AAITC,IAAAA,cAAc,EAAE;AAJP,GADoB;AAO/BC,EAAAA,WAAW,EAAE;AACXC,IAAAA,UAAU,EAAE;AADD,GAPkB;AAU/BC,EAAAA,UAAU,EAAE;AACVD,IAAAA,UAAU,EAAE;AADF;AAVmB,CAAlB,CAAf;;AAeO,IAAME,eAAe,GAAG,SAAlBA,eAAkB,GAQxB;AACL,kBAKI,6BALJ;AAAA,kCACEC,KADF;AAAA,8CAEIC,MAFJ;AAAA,MAEcC,IAFd,yBAEcA,IAFd;AAAA,MAEoBC,UAFpB,yBAEoBA,UAFpB;AAAA,8CAGIC,eAHJ;AAAA,MAGuBb,SAHvB,yBAGuBA,SAHvB;AAAA,MAGkCc,IAHlC,yBAGkCA,IAHlC;;AAMA,MAAMC,YAAY,GAAG,uCAArB;AAEA,SACE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CAAClB,MAAM,CAACG,SAAR,EAAmB;AAAEgB,MAAAA,eAAe,EAAKJ,UAAL;AAAjB,KAAnB,EAA2DZ,SAA3D,CADT;AAEE,IAAA,MAAM,EAAC,kBAFT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAIE,gCAAC,wBAAD;AAAa,IAAA,KAAK,EAAEH,MAAM,CAACQ,WAA3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAJF,EAKE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACR,MAAM,CAACU,UAAR,EAAoB;AAAEU,MAAAA,KAAK,EAAEN;AAAT,KAApB,EAAqCG,IAArC,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAA0DC,YAA1D,CALF,CADF;AASD,CA1BM;;;AA4BPP,eAAe,CAACU,WAAhB,GAA8B,kCAA9B","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { useTypingString } from './hooks/useTypingString';\n\nimport { LoadingDots } from '../Indicators/LoadingDots';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../types/types';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n flexDirection: 'row',\n height: 24,\n justifyContent: 'flex-start',\n },\n loadingDots: {\n marginLeft: 8,\n },\n typingText: {\n marginLeft: 8,\n },\n});\n\nexport const TypingIndicator = <\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 const {\n theme: {\n colors: { grey, white_snow },\n typingIndicator: { container, text },\n },\n } = useTheme();\n const typingString = useTypingString<At, Ch, Co, Ev, Me, Re, Us>();\n\n return (\n <View\n style={[styles.container, { backgroundColor: `${white_snow}E6` }, container]}\n testID='typing-indicator'\n >\n <LoadingDots style={styles.loadingDots} />\n <Text style={[styles.typingText, { color: grey }, text]}>{typingString}</Text>\n </View>\n );\n};\n\nTypingIndicator.displayName = 'TypingIndicator{typingIndicator}';\n"]}
1
+ {"version":3,"sources":["TypingIndicator.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","height","justifyContent","loadingDots","marginLeft","typingText","TypingIndicator","theme","colors","grey","white_snow","typingIndicator","text","typingString","backgroundColor","color","displayName"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AAEA;;AAGA;;;;;AAEA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,QADH;AAETC,IAAAA,aAAa,EAAE,KAFN;AAGTC,IAAAA,MAAM,EAAE,EAHC;AAITC,IAAAA,cAAc,EAAE;AAJP,GADoB;AAO/BC,EAAAA,WAAW,EAAE;AACXC,IAAAA,UAAU,EAAE;AADD,GAPkB;AAU/BC,EAAAA,UAAU,EAAE;AACVD,IAAAA,UAAU,EAAE;AADF;AAVmB,CAAlB,CAAf;;AAeO,IAAME,eAAe,GAAG,SAAlBA,eAAkB,GAExB;AACL,kBAKI,6BALJ;AAAA,kCACEC,KADF;AAAA,8CAEIC,MAFJ;AAAA,MAEcC,IAFd,yBAEcA,IAFd;AAAA,MAEoBC,UAFpB,yBAEoBA,UAFpB;AAAA,8CAGIC,eAHJ;AAAA,MAGuBb,SAHvB,yBAGuBA,SAHvB;AAAA,MAGkCc,IAHlC,yBAGkCA,IAHlC;;AAMA,MAAMC,YAAY,GAAG,uCAArB;AAEA,SACE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CAAClB,MAAM,CAACG,SAAR,EAAmB;AAAEgB,MAAAA,eAAe,EAAKJ,UAAL;AAAjB,KAAnB,EAA2DZ,SAA3D,CADT;AAEE,IAAA,MAAM,EAAC,kBAFT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAIE,gCAAC,wBAAD;AAAa,IAAA,KAAK,EAAEH,MAAM,CAACQ,WAA3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAJF,EAKE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACR,MAAM,CAACU,UAAR,EAAoB;AAAEU,MAAAA,KAAK,EAAEN;AAAT,KAApB,EAAqCG,IAArC,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAA0DC,YAA1D,CALF,CADF;AASD,CApBM;;;AAsBPP,eAAe,CAACU,WAAhB,GAA8B,kCAA9B","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { useTypingString } from './hooks/useTypingString';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { LoadingDots } from '../Indicators/LoadingDots';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n flexDirection: 'row',\n height: 24,\n justifyContent: 'flex-start',\n },\n loadingDots: {\n marginLeft: 8,\n },\n typingText: {\n marginLeft: 8,\n },\n});\n\nexport const TypingIndicator = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>() => {\n const {\n theme: {\n colors: { grey, white_snow },\n typingIndicator: { container, text },\n },\n } = useTheme();\n const typingString = useTypingString<StreamChatGenerics>();\n\n return (\n <View\n style={[styles.container, { backgroundColor: `${white_snow}E6` }, container]}\n testID='typing-indicator'\n >\n <LoadingDots style={styles.loadingDots} />\n <Text style={[styles.typingText, { color: grey }, text]}>{typingString}</Text>\n </View>\n );\n};\n\nTypingIndicator.displayName = 'TypingIndicator{typingIndicator}';\n"]}
@@ -57,7 +57,7 @@ var TypingIndicatorContainerWithContext = function TypingIndicatorContainerWithC
57
57
  __self: _this,
58
58
  __source: {
59
59
  fileName: _jsxFileName,
60
- lineNumber: 67,
60
+ lineNumber: 46,
61
61
  columnNumber: 5
62
62
  }
63
63
  }, children);
@@ -81,7 +81,7 @@ var TypingIndicatorContainer = function TypingIndicatorContainer(props) {
81
81
  __self: _this,
82
82
  __source: {
83
83
  fileName: _jsxFileName,
84
- lineNumber: 98,
84
+ lineNumber: 65,
85
85
  columnNumber: 10
86
86
  }
87
87
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["TypingIndicatorContainer.tsx"],"names":["styles","StyleSheet","create","container","bottom","position","width","TypingIndicatorContainerWithContext","props","children","client","thread","typing","typingIndicatorContainer","theme","messageList","typingUsers","length","TypingIndicatorContainer","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;;;;AAaA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,MAAM,EAAE,CADC;AAETC,IAAAA,QAAQ,EAAE,UAFD;AAGTC,IAAAA,KAAK,EAAE;AAHE;AADoB,CAAlB,CAAf;;AAoBA,IAAMC,mCAAmC,GAAG,SAAtCA,mCAAsC,CAS1CC,KAT0C,EAUvC;AACH,MAAQC,QAAR,GAA6CD,KAA7C,CAAQC,QAAR;AAAA,MAAkBC,MAAlB,GAA6CF,KAA7C,CAAkBE,MAAlB;AAAA,MAA0BC,MAA1B,GAA6CH,KAA7C,CAA0BG,MAA1B;AAAA,MAAkCC,MAAlC,GAA6CJ,KAA7C,CAAkCI,MAAlC;;AAEA,kBAII,6BAJJ;AAAA,MAEmBC,wBAFnB,aACEC,KADF,CAEIC,WAFJ,CAEmBF,wBAFnB;;AAKA,MAAMG,WAAW,GAAG,0CAAkB;AAAEN,IAAAA,MAAM,EAANA,MAAF;AAAUC,IAAAA,MAAM,EAANA,MAAV;AAAkBC,IAAAA,MAAM,EAANA;AAAlB,GAAlB,CAApB;;AAEA,MAAI,CAACI,WAAW,CAACC,MAAjB,EAAyB;AACvB,WAAO,IAAP;AACD;;AAED,SACE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACjB,MAAM,CAACG,SAAR,EAAmBU,wBAAnB,CAAb;AAA2D,IAAA,MAAM,EAAC,4BAAlE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACGJ,QADH,CADF;AAKD,CA7BD;;AAyCO,IAAMS,wBAAwB,GAAG,SAA3BA,wBAA2B,CAStCV,KATsC,EAUnC;AACH,0BAAmB,sCAAnB;AAAA,MAAQI,MAAR,qBAAQA,MAAR;;AACA,wBAAmB,kCAAnB;AAAA,MAAQF,MAAR,mBAAQA,MAAR;;AACA,0BAAmB,sCAAnB;AAAA,MAAQC,MAAR,qBAAQA,MAAR;;AAEA,SAAO,gCAAC,mCAAD;AAA2CD,IAAAA,MAAM,EAANA,MAA3C;AAAmDC,IAAAA,MAAM,EAANA,MAAnD;AAA2DC,IAAAA,MAAM,EAANA;AAA3D,KAAyEJ,KAAzE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAP;AACD,CAhBM;;;AAkBPU,wBAAwB,CAACC,WAAzB,GACE,iEADF","sourcesContent":["import React, { PropsWithChildren } from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport { filterTypingUsers } from './utils/filterTypingUsers';\n\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { ThreadContextValue, useThreadContext } from '../../contexts/threadContext/ThreadContext';\nimport { TypingContextValue, useTypingContext } from '../../contexts/typingContext/TypingContext';\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 bottom: 0,\n position: 'absolute',\n width: '100%',\n },\n});\n\ntype TypingIndicatorContainerPropsWithContext<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends DefaultUserType = DefaultUserType,\n> = Pick<TypingContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'typing'> &\n Pick<ChatContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'client'> &\n Pick<ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'thread'>;\n\nconst TypingIndicatorContainerWithContext = <\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: PropsWithChildren<TypingIndicatorContainerPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>,\n) => {\n const { children, client, thread, typing } = props;\n\n const {\n theme: {\n messageList: { typingIndicatorContainer },\n },\n } = useTheme();\n const typingUsers = filterTypingUsers({ client, thread, typing });\n\n if (!typingUsers.length) {\n return null;\n }\n\n return (\n <View style={[styles.container, typingIndicatorContainer]} testID='typing-indicator-container'>\n {children}\n </View>\n );\n};\n\nexport type TypingIndicatorContainerProps<\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<TypingIndicatorContainerPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;\n\nexport const TypingIndicatorContainer = <\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: PropsWithChildren<TypingIndicatorContainerProps<At, Ch, Co, Ev, Me, Re, Us>>,\n) => {\n const { typing } = useTypingContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { client } = useChatContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { thread } = useThreadContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return <TypingIndicatorContainerWithContext {...{ client, thread, typing }} {...props} />;\n};\n\nTypingIndicatorContainer.displayName =\n 'TypingIndicatorContainer{messageList{typingIndicatorContainer}}';\n"]}
1
+ {"version":3,"sources":["TypingIndicatorContainer.tsx"],"names":["styles","StyleSheet","create","container","bottom","position","width","TypingIndicatorContainerWithContext","props","children","client","thread","typing","typingIndicatorContainer","theme","messageList","typingUsers","length","TypingIndicatorContainer","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;;;;AAIA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,MAAM,EAAE,CADC;AAETC,IAAAA,QAAQ,EAAE,UAFD;AAGTC,IAAAA,KAAK,EAAE;AAHE;AADoB,CAAlB,CAAf;;AAcA,IAAMC,mCAAmC,GAAG,SAAtCA,mCAAsC,CAG1CC,KAH0C,EAIvC;AACH,MAAQC,QAAR,GAA6CD,KAA7C,CAAQC,QAAR;AAAA,MAAkBC,MAAlB,GAA6CF,KAA7C,CAAkBE,MAAlB;AAAA,MAA0BC,MAA1B,GAA6CH,KAA7C,CAA0BG,MAA1B;AAAA,MAAkCC,MAAlC,GAA6CJ,KAA7C,CAAkCI,MAAlC;;AAEA,kBAII,6BAJJ;AAAA,MAEmBC,wBAFnB,aACEC,KADF,CAEIC,WAFJ,CAEmBF,wBAFnB;;AAKA,MAAMG,WAAW,GAAG,0CAAkB;AAAEN,IAAAA,MAAM,EAANA,MAAF;AAAUC,IAAAA,MAAM,EAANA,MAAV;AAAkBC,IAAAA,MAAM,EAANA;AAAlB,GAAlB,CAApB;;AAEA,MAAI,CAACI,WAAW,CAACC,MAAjB,EAAyB;AACvB,WAAO,IAAP;AACD;;AAED,SACE,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACjB,MAAM,CAACG,SAAR,EAAmBU,wBAAnB,CAAb;AAA2D,IAAA,MAAM,EAAC,4BAAlE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACGJ,QADH,CADF;AAKD,CAvBD;;AA6BO,IAAMS,wBAAwB,GAAG,SAA3BA,wBAA2B,CAGtCV,KAHsC,EAInC;AACH,0BAAmB,sCAAnB;AAAA,MAAQI,MAAR,qBAAQA,MAAR;;AACA,wBAAmB,kCAAnB;AAAA,MAAQF,MAAR,mBAAQA,MAAR;;AACA,0BAAmB,sCAAnB;AAAA,MAAQC,MAAR,qBAAQA,MAAR;;AAEA,SAAO,gCAAC,mCAAD;AAA2CD,IAAAA,MAAM,EAANA,MAA3C;AAAmDC,IAAAA,MAAM,EAANA,MAAnD;AAA2DC,IAAAA,MAAM,EAANA;AAA3D,KAAyEJ,KAAzE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAP;AACD,CAVM;;;AAYPU,wBAAwB,CAACC,WAAzB,GACE,iEADF","sourcesContent":["import React, { PropsWithChildren } from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport { filterTypingUsers } from './utils/filterTypingUsers';\n\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { ThreadContextValue, useThreadContext } from '../../contexts/threadContext/ThreadContext';\nimport { TypingContextValue, useTypingContext } from '../../contexts/typingContext/TypingContext';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\nconst styles = StyleSheet.create({\n container: {\n bottom: 0,\n position: 'absolute',\n width: '100%',\n },\n});\n\ntype TypingIndicatorContainerPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<TypingContextValue<StreamChatGenerics>, 'typing'> &\n Pick<ChatContextValue<StreamChatGenerics>, 'client'> &\n Pick<ThreadContextValue<StreamChatGenerics>, 'thread'>;\n\nconst TypingIndicatorContainerWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: PropsWithChildren<TypingIndicatorContainerPropsWithContext<StreamChatGenerics>>,\n) => {\n const { children, client, thread, typing } = props;\n\n const {\n theme: {\n messageList: { typingIndicatorContainer },\n },\n } = useTheme();\n const typingUsers = filterTypingUsers({ client, thread, typing });\n\n if (!typingUsers.length) {\n return null;\n }\n\n return (\n <View style={[styles.container, typingIndicatorContainer]} testID='typing-indicator-container'>\n {children}\n </View>\n );\n};\n\nexport type TypingIndicatorContainerProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<TypingIndicatorContainerPropsWithContext<StreamChatGenerics>>;\n\nexport const TypingIndicatorContainer = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: PropsWithChildren<TypingIndicatorContainerProps<StreamChatGenerics>>,\n) => {\n const { typing } = useTypingContext<StreamChatGenerics>();\n const { client } = useChatContext<StreamChatGenerics>();\n const { thread } = useThreadContext<StreamChatGenerics>();\n\n return <TypingIndicatorContainerWithContext {...{ client, thread, typing }} {...props} />;\n};\n\nTypingIndicatorContainer.displayName =\n 'TypingIndicatorContainer{messageList{typingIndicatorContainer}}';\n"]}
@@ -7,20 +7,20 @@ exports.useMessageList = exports.isMessageWithStylesReadByAndDateSeparator = voi
7
7
 
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
 
10
- var _getDateSeparators = require("../utils/getDateSeparators");
11
-
12
- var _getGroupStyles = require("../utils/getGroupStyles");
13
-
14
- var _getReadStates = require("../utils/getReadStates");
10
+ var _ChannelContext = require("../../../contexts/channelContext/ChannelContext");
15
11
 
16
12
  var _ChatContext = require("../../../contexts/chatContext/ChatContext");
17
13
 
18
- var _ChannelContext = require("../../../contexts/channelContext/ChannelContext");
19
-
20
14
  var _PaginatedMessageListContext = require("../../../contexts/paginatedMessageListContext/PaginatedMessageListContext");
21
15
 
22
16
  var _ThreadContext = require("../../../contexts/threadContext/ThreadContext");
23
17
 
18
+ var _getDateSeparators = require("../utils/getDateSeparators");
19
+
20
+ var _getGroupStyles = require("../utils/getGroupStyles");
21
+
22
+ var _getReadStates = require("../utils/getReadStates");
23
+
24
24
  var isMessageWithStylesReadByAndDateSeparator = function isMessageWithStylesReadByAndDateSeparator(message) {
25
25
  return message.readBy !== undefined;
26
26
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["useMessageList.ts"],"names":["isMessageWithStylesReadByAndDateSeparator","message","readBy","undefined","useMessageList","params","deletedMessagesVisibilityType","inverted","noGroupByUser","threadList","client","hideDateSeparators","maxTimeBetweenGroupedMessages","read","messages","threadMessages","messageList","readList","dateSeparators","userId","userID","messageGroupStyles","readData","messagesWithStylesReadByAndDateSeparator","filter","msg","isMessageTypeDeleted","type","user","id","map","dateSeparator","groupStyles","reverse"],"mappings":"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","sourcesContent":["import { getDateSeparators } from '../utils/getDateSeparators';\nimport { getGroupStyles } from '../utils/getGroupStyles';\nimport { getReadStates } from '../utils/getReadStates';\n\nimport { useChatContext } from '../../../contexts/chatContext/ChatContext';\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../../contexts/channelContext/ChannelContext';\nimport { usePaginatedMessageListContext } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport { useThreadContext } from '../../../contexts/threadContext/ThreadContext';\n\nimport type { ChannelState, MessageResponse } from 'stream-chat';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nexport type UseMessageListParams = {\n deletedMessagesVisibilityType?: 'always' | 'never' | 'receiver' | 'sender';\n inverted?: boolean;\n noGroupByUser?: boolean;\n threadList?: boolean;\n};\n\nexport type GroupType = 'bottom' | 'middle' | 'single' | 'top';\n\nexport type MessagesWithStylesReadByAndDateSeparator<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = MessageResponse<At, Ch, Co, Me, Re, Us> & {\n groupStyles: GroupType[];\n readBy: boolean | number;\n dateSeparator?: Date;\n};\n\nexport type MessageType<\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 | ReturnType<ChannelState<At, Ch, Co, Ev, Me, Re, Us>['formatMessage']>\n | MessagesWithStylesReadByAndDateSeparator<At, Ch, Co, Me, Re, Us>;\n\n// Type guards to check MessageType\nexport const isMessageWithStylesReadByAndDateSeparator = <\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 message: MessageType<At, Ch, Co, Ev, Me, Re, Us>,\n): message is MessagesWithStylesReadByAndDateSeparator<At, Ch, Co, Me, Re, Us> =>\n (message as MessagesWithStylesReadByAndDateSeparator<At, Ch, Co, Me, Re, Us>).readBy !==\n undefined;\n\nexport const useMessageList = <\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 params: UseMessageListParams,\n) => {\n const { deletedMessagesVisibilityType, inverted, noGroupByUser, threadList } = params;\n const { client } = useChatContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { hideDateSeparators, maxTimeBetweenGroupedMessages, read } =\n useChannelContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { messages } = usePaginatedMessageListContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { threadMessages } = useThreadContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n const messageList = threadList ? threadMessages : messages;\n const readList: ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>['read'] | undefined = threadList\n ? undefined\n : read;\n\n const dateSeparators = getDateSeparators<At, Ch, Co, Ev, Me, Re, Us>({\n hideDateSeparators,\n messages: messageList,\n userId: client.userID,\n });\n\n const messageGroupStyles = getGroupStyles<At, Ch, Co, Ev, Me, Re, Us>({\n dateSeparators,\n hideDateSeparators,\n maxTimeBetweenGroupedMessages,\n messages: messageList,\n noGroupByUser,\n userId: client.userID,\n });\n\n const readData = getReadStates(client.userID, messageList, readList);\n\n const messagesWithStylesReadByAndDateSeparator = messageList\n .filter((msg) => {\n const isMessageTypeDeleted = msg.type === 'deleted';\n if (deletedMessagesVisibilityType === 'sender') {\n return !isMessageTypeDeleted || msg.user?.id === client.userID;\n } else if (deletedMessagesVisibilityType === 'receiver') {\n return !isMessageTypeDeleted || msg.user?.id !== client.userID;\n } else if (deletedMessagesVisibilityType === 'never') {\n return !isMessageTypeDeleted;\n } else {\n return msg;\n }\n })\n .map((msg) => ({\n ...msg,\n dateSeparator: dateSeparators[msg.id] || undefined,\n groupStyles: messageGroupStyles[msg.id] || ['single'],\n readBy: msg.id ? readData[msg.id] || false : false,\n }));\n\n return (\n inverted\n ? messagesWithStylesReadByAndDateSeparator.reverse()\n : messagesWithStylesReadByAndDateSeparator\n ) as MessageType<At, Ch, Co, Ev, Me, Re, Us>[];\n};\n"]}
1
+ {"version":3,"sources":["useMessageList.ts"],"names":["isMessageWithStylesReadByAndDateSeparator","message","readBy","undefined","useMessageList","params","deletedMessagesVisibilityType","inverted","noGroupByUser","threadList","client","hideDateSeparators","maxTimeBetweenGroupedMessages","read","messages","threadMessages","messageList","readList","dateSeparators","userId","userID","messageGroupStyles","readData","messagesWithStylesReadByAndDateSeparator","filter","msg","isMessageTypeDeleted","type","user","id","map","dateSeparator","groupStyles","reverse"],"mappings":"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","sourcesContent":["import type { ChannelState, MessageResponse } from 'stream-chat';\n\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../../contexts/channelContext/ChannelContext';\nimport { useChatContext } from '../../../contexts/chatContext/ChatContext';\nimport { usePaginatedMessageListContext } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport { useThreadContext } from '../../../contexts/threadContext/ThreadContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { getDateSeparators } from '../utils/getDateSeparators';\nimport { getGroupStyles } from '../utils/getGroupStyles';\nimport { getReadStates } from '../utils/getReadStates';\n\nexport type UseMessageListParams = {\n deletedMessagesVisibilityType?: 'always' | 'never' | 'receiver' | 'sender';\n inverted?: boolean;\n noGroupByUser?: boolean;\n threadList?: boolean;\n};\n\nexport type GroupType = 'bottom' | 'middle' | 'single' | 'top';\n\nexport type MessagesWithStylesReadByAndDateSeparator<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = MessageResponse<StreamChatGenerics> & {\n groupStyles: GroupType[];\n readBy: boolean | number;\n dateSeparator?: Date;\n};\n\nexport type MessageType<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> =\n | ReturnType<ChannelState<StreamChatGenerics>['formatMessage']>\n | MessagesWithStylesReadByAndDateSeparator<StreamChatGenerics>;\n\n// Type guards to check MessageType\nexport const isMessageWithStylesReadByAndDateSeparator = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n message: MessageType<StreamChatGenerics>,\n): message is MessagesWithStylesReadByAndDateSeparator<StreamChatGenerics> =>\n (message as MessagesWithStylesReadByAndDateSeparator<StreamChatGenerics>).readBy !== undefined;\n\nexport const useMessageList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n params: UseMessageListParams,\n) => {\n const { deletedMessagesVisibilityType, inverted, noGroupByUser, threadList } = params;\n const { client } = useChatContext<StreamChatGenerics>();\n const { hideDateSeparators, maxTimeBetweenGroupedMessages, read } =\n useChannelContext<StreamChatGenerics>();\n const { messages } = usePaginatedMessageListContext<StreamChatGenerics>();\n const { threadMessages } = useThreadContext<StreamChatGenerics>();\n\n const messageList = threadList ? threadMessages : messages;\n const readList: ChannelContextValue<StreamChatGenerics>['read'] | undefined = threadList\n ? undefined\n : read;\n\n const dateSeparators = getDateSeparators<StreamChatGenerics>({\n hideDateSeparators,\n messages: messageList,\n userId: client.userID,\n });\n\n const messageGroupStyles = getGroupStyles<StreamChatGenerics>({\n dateSeparators,\n hideDateSeparators,\n maxTimeBetweenGroupedMessages,\n messages: messageList,\n noGroupByUser,\n userId: client.userID,\n });\n\n const readData = getReadStates(client.userID, messageList, readList);\n\n const messagesWithStylesReadByAndDateSeparator = messageList\n .filter((msg) => {\n const isMessageTypeDeleted = msg.type === 'deleted';\n if (deletedMessagesVisibilityType === 'sender') {\n return !isMessageTypeDeleted || msg.user?.id === client.userID;\n } else if (deletedMessagesVisibilityType === 'receiver') {\n return !isMessageTypeDeleted || msg.user?.id !== client.userID;\n } else if (deletedMessagesVisibilityType === 'never') {\n return !isMessageTypeDeleted;\n } else {\n return msg;\n }\n })\n .map((msg) => ({\n ...msg,\n dateSeparator: dateSeparators[msg.id] || undefined,\n groupStyles: messageGroupStyles[msg.id] || ['single'],\n readBy: msg.id ? readData[msg.id] || false : false,\n }));\n\n return (\n inverted\n ? messagesWithStylesReadByAndDateSeparator.reverse()\n : messagesWithStylesReadByAndDateSeparator\n ) as MessageType<StreamChatGenerics>[];\n};\n"]}
@@ -3,8 +3,6 @@ Object.defineProperty(exports, "__esModule", {
3
3
  });
4
4
  exports.useTypingString = void 0;
5
5
 
6
- var _filterTypingUsers = require("../utils/filterTypingUsers");
7
-
8
6
  var _ChatContext = require("../../../contexts/chatContext/ChatContext");
9
7
 
10
8
  var _ThreadContext = require("../../../contexts/threadContext/ThreadContext");
@@ -13,6 +11,8 @@ var _TranslationContext = require("../../../contexts/translationContext/Translat
13
11
 
14
12
  var _TypingContext = require("../../../contexts/typingContext/TypingContext");
15
13
 
14
+ var _filterTypingUsers = require("../utils/filterTypingUsers");
15
+
16
16
  var useTypingString = function useTypingString() {
17
17
  var _useChatContext = (0, _ChatContext.useChatContext)(),
18
18
  client = _useChatContext.client;
@@ -1 +1 @@
1
- {"version":3,"sources":["useTypingString.ts"],"names":["useTypingString","client","thread","t","typing","filteredTypingUsers","length","user","firstUser","nonSelfUserLength"],"mappings":";;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AAaO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,GAQxB;AACL,wBAAmB,kCAAnB;AAAA,MAAQC,MAAR,mBAAQA,MAAR;;AACA,0BAAmB,sCAAnB;AAAA,MAAQC,MAAR,qBAAQA,MAAR;;AACA,8BAAc,gDAAd;AAAA,MAAQC,CAAR,yBAAQA,CAAR;;AACA,0BAAmB,sCAAnB;AAAA,MAAQC,MAAR,qBAAQA,MAAR;;AAEA,MAAMC,mBAAmB,GAAG,0CAAkB;AAAEJ,IAAAA,MAAM,EAANA,MAAF;AAAUC,IAAAA,MAAM,EAANA,MAAV;AAAkBE,IAAAA,MAAM,EAANA;AAAlB,GAAlB,CAA5B;;AAEA,MAAIC,mBAAmB,CAACC,MAApB,KAA+B,CAAnC,EAAsC;AACpC,WAAOH,CAAC,CAAC,sBAAD,EAAyB;AAAEI,MAAAA,IAAI,EAAEF,mBAAmB,CAAC,CAAD;AAA3B,KAAzB,CAAR;AACD;;AAED,MAAIA,mBAAmB,CAACC,MAApB,GAA6B,CAAjC,EAAoC;AAKlC,WAAOH,CAAC,CAAC,6DAAD,EAAgE;AACtEK,MAAAA,SAAS,EAAEH,mBAAmB,CAAC,CAAD,CADwC;AAEtEI,MAAAA,iBAAiB,EAAEJ,mBAAmB,CAACC,MAApB,GAA6B;AAFsB,KAAhE,CAAR;AAID;;AAED,SAAO,EAAP;AACD,CAhCM","sourcesContent":["import { filterTypingUsers } from '../utils/filterTypingUsers';\n\nimport { useChatContext } from '../../../contexts/chatContext/ChatContext';\nimport { useThreadContext } from '../../../contexts/threadContext/ThreadContext';\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport { useTypingContext } from '../../../contexts/typingContext/TypingContext';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nexport const useTypingString = <\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 const { client } = useChatContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { thread } = useThreadContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { t } = useTranslationContext();\n const { typing } = useTypingContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n const filteredTypingUsers = filterTypingUsers({ client, thread, typing });\n\n if (filteredTypingUsers.length === 1) {\n return t('{{ user }} is typing', { user: filteredTypingUsers[0] });\n }\n\n if (filteredTypingUsers.length > 1) {\n /**\n * Joins the multiple names with number after first name\n * example: \"Dan and Neil\"\n */\n return t('{{ firstUser }} and {{ nonSelfUserLength }} more are typing', {\n firstUser: filteredTypingUsers[0],\n nonSelfUserLength: filteredTypingUsers.length - 1,\n });\n }\n\n return '';\n};\n"]}
1
+ {"version":3,"sources":["useTypingString.ts"],"names":["useTypingString","client","thread","t","typing","filteredTypingUsers","length","user","firstUser","nonSelfUserLength"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AAGA;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,GAExB;AACL,wBAAmB,kCAAnB;AAAA,MAAQC,MAAR,mBAAQA,MAAR;;AACA,0BAAmB,sCAAnB;AAAA,MAAQC,MAAR,qBAAQA,MAAR;;AACA,8BAAc,gDAAd;AAAA,MAAQC,CAAR,yBAAQA,CAAR;;AACA,0BAAmB,sCAAnB;AAAA,MAAQC,MAAR,qBAAQA,MAAR;;AAEA,MAAMC,mBAAmB,GAAG,0CAAkB;AAAEJ,IAAAA,MAAM,EAANA,MAAF;AAAUC,IAAAA,MAAM,EAANA,MAAV;AAAkBE,IAAAA,MAAM,EAANA;AAAlB,GAAlB,CAA5B;;AAEA,MAAIC,mBAAmB,CAACC,MAApB,KAA+B,CAAnC,EAAsC;AACpC,WAAOH,CAAC,CAAC,sBAAD,EAAyB;AAAEI,MAAAA,IAAI,EAAEF,mBAAmB,CAAC,CAAD;AAA3B,KAAzB,CAAR;AACD;;AAED,MAAIA,mBAAmB,CAACC,MAApB,GAA6B,CAAjC,EAAoC;AAKlC,WAAOH,CAAC,CAAC,6DAAD,EAAgE;AACtEK,MAAAA,SAAS,EAAEH,mBAAmB,CAAC,CAAD,CADwC;AAEtEI,MAAAA,iBAAiB,EAAEJ,mBAAmB,CAACC,MAApB,GAA6B;AAFsB,KAAhE,CAAR;AAID;;AAED,SAAO,EAAP;AACD,CA1BM","sourcesContent":["import { useChatContext } from '../../../contexts/chatContext/ChatContext';\nimport { useThreadContext } from '../../../contexts/threadContext/ThreadContext';\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport { useTypingContext } from '../../../contexts/typingContext/TypingContext';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { filterTypingUsers } from '../utils/filterTypingUsers';\n\nexport const useTypingString = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>() => {\n const { client } = useChatContext<StreamChatGenerics>();\n const { thread } = useThreadContext<StreamChatGenerics>();\n const { t } = useTranslationContext();\n const { typing } = useTypingContext<StreamChatGenerics>();\n\n const filteredTypingUsers = filterTypingUsers({ client, thread, typing });\n\n if (filteredTypingUsers.length === 1) {\n return t('{{ user }} is typing', { user: filteredTypingUsers[0] });\n }\n\n if (filteredTypingUsers.length > 1) {\n /**\n * Joins the multiple names with number after first name\n * example: \"Dan and Neil\"\n */\n return t('{{ firstUser }} and {{ nonSelfUserLength }} more are typing', {\n firstUser: filteredTypingUsers[0],\n nonSelfUserLength: filteredTypingUsers.length - 1,\n });\n }\n\n return '';\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["filterTypingUsers.ts"],"names":["filterTypingUsers","client","thread","typing","nonSelfUsers","user","typingKeys","Object","keys","forEach","typingKey","id","isRegularEvent","parent_id","isCurrentThreadEvent","name","push"],"mappings":";;;;;AA0BO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OAY0B;AAAA,MAHzDC,MAGyD,QAHzDA,MAGyD;AAAA,MAFzDC,MAEyD,QAFzDA,MAEyD;AAAA,MADzDC,MACyD,QADzDA,MACyD;AACzD,MAAMC,YAAsB,GAAG,EAA/B;AAEA,MAAI,CAACH,MAAD,IAAW,CAACA,MAAM,CAACI,IAAnB,IAA2B,CAACF,MAAhC,EAAwC,OAAOC,YAAP;AAExC,MAAME,UAAU,GAAGC,MAAM,CAACC,IAAP,CAAYL,MAAZ,CAAnB;AAEAG,EAAAA,UAAU,CAACG,OAAX,CAAmB,UAACC,SAAD,EAAe;AAAA;;AAChC,QAAI,CAACP,MAAM,CAACO,SAAD,CAAX,EAAwB;;AAGxB,QAAI,iBAAAT,MAAM,CAACI,IAAP,kCAAaM,EAAb,gCAAoBR,MAAM,CAACO,SAAD,CAAN,CAAkBL,IAAtC,qBAAoB,sBAAwBM,EAA5C,CAAJ,EAAoD;AAClD;AACD;;AAED,QAAMC,cAAc,GAAG,CAACT,MAAM,CAACO,SAAD,CAAN,CAAkBG,SAAnB,IAAgC,EAACX,MAAD,YAACA,MAAM,CAAES,EAAT,CAAvD;AACA,QAAMG,oBAAoB,GAAGX,MAAM,CAACO,SAAD,CAAN,CAAkBG,SAAlB,MAAgCX,MAAhC,oBAAgCA,MAAM,CAAES,EAAxC,CAA7B;;AAGA,QAAI,CAACC,cAAD,IAAmB,CAACE,oBAAxB,EAA8C;AAC5C;AACD;;AAED,QAAMT,IAAI,GAAG,2BAAAF,MAAM,CAACO,SAAD,CAAN,CAAkBL,IAAlB,4CAAwBU,IAAxB,gCAAgCZ,MAAM,CAACO,SAAD,CAAN,CAAkBL,IAAlD,qBAAgC,uBAAwBM,EAAxD,CAAb;;AACA,QAAIN,IAAJ,EAAU;AACRD,MAAAA,YAAY,CAACY,IAAb,CAAkBX,IAAlB;AACD;AACF,GApBD;AAsBA,SAAOD,YAAP;AACD,CA1CM","sourcesContent":["import type { ChatContextValue } from '../../../contexts/chatContext/ChatContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type { TypingContextValue } from '../../../contexts/typingContext/TypingContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\ntype FilterTypingUsersParams<\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<TypingContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'typing'> &\n Pick<ChatContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'client'> &\n Pick<ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'thread'>;\n\nexport const filterTypingUsers = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>({\n client,\n thread,\n typing,\n}: FilterTypingUsersParams<At, Ch, Co, Ev, Me, Re, Us>) => {\n const nonSelfUsers: string[] = [];\n\n if (!client || !client.user || !typing) return nonSelfUsers;\n\n const typingKeys = Object.keys(typing);\n\n typingKeys.forEach((typingKey) => {\n if (!typing[typingKey]) return;\n\n /** removes own typing events */\n if (client.user?.id === typing[typingKey].user?.id) {\n return;\n }\n\n const isRegularEvent = !typing[typingKey].parent_id && !thread?.id;\n const isCurrentThreadEvent = typing[typingKey].parent_id === thread?.id;\n\n /** filters different threads events */\n if (!isRegularEvent && !isCurrentThreadEvent) {\n return;\n }\n\n const user = typing[typingKey].user?.name || typing[typingKey].user?.id;\n if (user) {\n nonSelfUsers.push(user);\n }\n });\n\n return nonSelfUsers;\n};\n"]}
1
+ {"version":3,"sources":["filterTypingUsers.ts"],"names":["filterTypingUsers","client","thread","typing","nonSelfUsers","user","typingKeys","Object","keys","forEach","typingKey","id","isRegularEvent","parent_id","isCurrentThreadEvent","name","push"],"mappings":";;;;;AAWO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OAMkB;AAAA,MAHjDC,MAGiD,QAHjDA,MAGiD;AAAA,MAFjDC,MAEiD,QAFjDA,MAEiD;AAAA,MADjDC,MACiD,QADjDA,MACiD;AACjD,MAAMC,YAAsB,GAAG,EAA/B;AAEA,MAAI,CAACH,MAAD,IAAW,CAACA,MAAM,CAACI,IAAnB,IAA2B,CAACF,MAAhC,EAAwC,OAAOC,YAAP;AAExC,MAAME,UAAU,GAAGC,MAAM,CAACC,IAAP,CAAYL,MAAZ,CAAnB;AAEAG,EAAAA,UAAU,CAACG,OAAX,CAAmB,UAACC,SAAD,EAAe;AAAA;;AAChC,QAAI,CAACP,MAAM,CAACO,SAAD,CAAX,EAAwB;;AAGxB,QAAI,iBAAAT,MAAM,CAACI,IAAP,kCAAaM,EAAb,gCAAoBR,MAAM,CAACO,SAAD,CAAN,CAAkBL,IAAtC,qBAAoB,sBAAwBM,EAA5C,CAAJ,EAAoD;AAClD;AACD;;AAED,QAAMC,cAAc,GAAG,CAACT,MAAM,CAACO,SAAD,CAAN,CAAkBG,SAAnB,IAAgC,EAACX,MAAD,YAACA,MAAM,CAAES,EAAT,CAAvD;AACA,QAAMG,oBAAoB,GAAGX,MAAM,CAACO,SAAD,CAAN,CAAkBG,SAAlB,MAAgCX,MAAhC,oBAAgCA,MAAM,CAAES,EAAxC,CAA7B;;AAGA,QAAI,CAACC,cAAD,IAAmB,CAACE,oBAAxB,EAA8C;AAC5C;AACD;;AAED,QAAMT,IAAI,GAAG,2BAAAF,MAAM,CAACO,SAAD,CAAN,CAAkBL,IAAlB,4CAAwBU,IAAxB,gCAAgCZ,MAAM,CAACO,SAAD,CAAN,CAAkBL,IAAlD,qBAAgC,uBAAwBM,EAAxD,CAAb;;AACA,QAAIN,IAAJ,EAAU;AACRD,MAAAA,YAAY,CAACY,IAAb,CAAkBX,IAAlB;AACD;AACF,GApBD;AAsBA,SAAOD,YAAP;AACD,CApCM","sourcesContent":["import type { ChatContextValue } from '../../../contexts/chatContext/ChatContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type { TypingContextValue } from '../../../contexts/typingContext/TypingContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\ntype FilterTypingUsersParams<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<TypingContextValue<StreamChatGenerics>, 'typing'> &\n Pick<ChatContextValue<StreamChatGenerics>, 'client'> &\n Pick<ThreadContextValue<StreamChatGenerics>, 'thread'>;\n\nexport const filterTypingUsers = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n client,\n thread,\n typing,\n}: FilterTypingUsersParams<StreamChatGenerics>) => {\n const nonSelfUsers: string[] = [];\n\n if (!client || !client.user || !typing) return nonSelfUsers;\n\n const typingKeys = Object.keys(typing);\n\n typingKeys.forEach((typingKey) => {\n if (!typing[typingKey]) return;\n\n /** removes own typing events */\n if (client.user?.id === typing[typingKey].user?.id) {\n return;\n }\n\n const isRegularEvent = !typing[typingKey].parent_id && !thread?.id;\n const isCurrentThreadEvent = typing[typingKey].parent_id === thread?.id;\n\n /** filters different threads events */\n if (!isRegularEvent && !isCurrentThreadEvent) {\n return;\n }\n\n const user = typing[typingKey].user?.name || typing[typingKey].user?.id;\n if (user) {\n nonSelfUsers.push(user);\n }\n });\n\n return nonSelfUsers;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["getDateSeparators.ts"],"names":["getDateSeparators","params","hideDateSeparators","messages","userId","dateSeparators","messagesWithoutDeleted","filter","message","isMessageTypeDeleted","type","user","id","i","length","previousMessage","messageDate","created_at","getDay","prevMessageDate"],"mappings":";;;;;AAiCO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAS/BC,MAT+B,EAU5B;AACH,MAAQC,kBAAR,GAAiDD,MAAjD,CAAQC,kBAAR;AAAA,MAA4BC,QAA5B,GAAiDF,MAAjD,CAA4BE,QAA5B;AAAA,MAAsCC,MAAtC,GAAiDH,MAAjD,CAAsCG,MAAtC;AACA,MAAMC,cAA8B,GAAG,EAAvC;;AAEA,MAAIH,kBAAJ,EAAwB;AACtB,WAAOG,cAAP;AACD;;AAED,MAAMC,sBAAsB,GAAGH,QAAQ,CAACI,MAAT,CAAgB,UAACC,OAAD,EAAa;AAAA;;AAC1D,QAAMC,oBAAoB,GAAGD,OAAO,CAACE,IAAR,KAAiB,SAA9C;AACA,WAAO,CAACD,oBAAD,IAAyBL,MAAM,uBAAKI,OAAO,CAACG,IAAb,qBAAK,cAAcC,EAAnB,CAAtC;AACD,GAH8B,CAA/B;;AAKA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGP,sBAAsB,CAACQ,MAA3C,EAAmDD,CAAC,EAApD,EAAwD;AACtD,QAAME,eAAe,GAAGT,sBAAsB,CAACO,CAAC,GAAG,CAAL,CAA9C;AACA,QAAML,OAAO,GAAGF,sBAAsB,CAACO,CAAD,CAAtC;AAEA,QAAMG,WAAW,GAAGR,OAAO,CAACS,UAAR,CAAmBC,MAAnB,EAApB;AAEA,QAAMC,eAAe,GAAGJ,eAAe,GAAGA,eAAe,CAACE,UAAhB,CAA2BC,MAA3B,EAAH,GAAyCF,WAAhF;;AAEA,QAAIH,CAAC,KAAK,CAAN,IAAWG,WAAW,KAAKG,eAA/B,EAAgD;AAC9Cd,MAAAA,cAAc,CAACG,OAAO,CAACI,EAAT,CAAd,GAA6BJ,OAAO,CAACS,UAArC;AACD;AACF;;AAED,SAAOZ,cAAP;AACD,CArCM","sourcesContent":["import type { PaginatedMessageListContextValue } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nexport type GetDateSeparatorsParams<\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 messages:\n | PaginatedMessageListContextValue<At, Ch, Co, Ev, Me, Re, Us>['messages']\n | ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>['threadMessages'];\n hideDateSeparators?: boolean;\n userId?: string;\n};\n\nexport type DateSeparators = {\n [key: string]: Date;\n};\n\nexport const getDateSeparators = <\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 params: GetDateSeparatorsParams<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { hideDateSeparators, messages, userId } = params;\n const dateSeparators: DateSeparators = {};\n\n if (hideDateSeparators) {\n return dateSeparators;\n }\n\n const messagesWithoutDeleted = messages.filter((message) => {\n const isMessageTypeDeleted = message.type === 'deleted';\n return !isMessageTypeDeleted || userId === message.user?.id;\n });\n\n for (let i = 0; i < messagesWithoutDeleted.length; i++) {\n const previousMessage = messagesWithoutDeleted[i - 1];\n const message = messagesWithoutDeleted[i];\n\n const messageDate = message.created_at.getDay();\n\n const prevMessageDate = previousMessage ? previousMessage.created_at.getDay() : messageDate;\n\n if (i === 0 || messageDate !== prevMessageDate) {\n dateSeparators[message.id] = message.created_at;\n }\n }\n\n return dateSeparators;\n};\n"]}
1
+ {"version":3,"sources":["getDateSeparators.ts"],"names":["getDateSeparators","params","hideDateSeparators","messages","userId","dateSeparators","messagesWithoutDeleted","filter","message","isMessageTypeDeleted","type","user","id","i","length","previousMessage","messageDate","created_at","getDay","prevMessageDate"],"mappings":";;;;;AAkBO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAG/BC,MAH+B,EAI5B;AACH,MAAQC,kBAAR,GAAiDD,MAAjD,CAAQC,kBAAR;AAAA,MAA4BC,QAA5B,GAAiDF,MAAjD,CAA4BE,QAA5B;AAAA,MAAsCC,MAAtC,GAAiDH,MAAjD,CAAsCG,MAAtC;AACA,MAAMC,cAA8B,GAAG,EAAvC;;AAEA,MAAIH,kBAAJ,EAAwB;AACtB,WAAOG,cAAP;AACD;;AAED,MAAMC,sBAAsB,GAAGH,QAAQ,CAACI,MAAT,CAAgB,UAACC,OAAD,EAAa;AAAA;;AAC1D,QAAMC,oBAAoB,GAAGD,OAAO,CAACE,IAAR,KAAiB,SAA9C;AACA,WAAO,CAACD,oBAAD,IAAyBL,MAAM,uBAAKI,OAAO,CAACG,IAAb,qBAAK,cAAcC,EAAnB,CAAtC;AACD,GAH8B,CAA/B;;AAKA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGP,sBAAsB,CAACQ,MAA3C,EAAmDD,CAAC,EAApD,EAAwD;AACtD,QAAME,eAAe,GAAGT,sBAAsB,CAACO,CAAC,GAAG,CAAL,CAA9C;AACA,QAAML,OAAO,GAAGF,sBAAsB,CAACO,CAAD,CAAtC;AAEA,QAAMG,WAAW,GAAGR,OAAO,CAACS,UAAR,CAAmBC,MAAnB,EAApB;AAEA,QAAMC,eAAe,GAAGJ,eAAe,GAAGA,eAAe,CAACE,UAAhB,CAA2BC,MAA3B,EAAH,GAAyCF,WAAhF;;AAEA,QAAIH,CAAC,KAAK,CAAN,IAAWG,WAAW,KAAKG,eAA/B,EAAgD;AAC9Cd,MAAAA,cAAc,CAACG,OAAO,CAACI,EAAT,CAAd,GAA6BJ,OAAO,CAACS,UAArC;AACD;AACF;;AAED,SAAOZ,cAAP;AACD,CA/BM","sourcesContent":["import type { PaginatedMessageListContextValue } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\nexport type GetDateSeparatorsParams<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n messages:\n | PaginatedMessageListContextValue<StreamChatGenerics>['messages']\n | ThreadContextValue<StreamChatGenerics>['threadMessages'];\n hideDateSeparators?: boolean;\n userId?: string;\n};\n\nexport type DateSeparators = {\n [key: string]: Date;\n};\n\nexport const getDateSeparators = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n params: GetDateSeparatorsParams<StreamChatGenerics>,\n) => {\n const { hideDateSeparators, messages, userId } = params;\n const dateSeparators: DateSeparators = {};\n\n if (hideDateSeparators) {\n return dateSeparators;\n }\n\n const messagesWithoutDeleted = messages.filter((message) => {\n const isMessageTypeDeleted = message.type === 'deleted';\n return !isMessageTypeDeleted || userId === message.user?.id;\n });\n\n for (let i = 0; i < messagesWithoutDeleted.length; i++) {\n const previousMessage = messagesWithoutDeleted[i - 1];\n const message = messagesWithoutDeleted[i];\n\n const messageDate = message.created_at.getDay();\n\n const prevMessageDate = previousMessage ? previousMessage.created_at.getDay() : messageDate;\n\n if (i === 0 || messageDate !== prevMessageDate) {\n dateSeparators[message.id] = message.created_at;\n }\n }\n\n return dateSeparators;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["getGroupStyles.ts"],"names":["getGroupStyles","params","dateSeparators","hideDateSeparators","maxTimeBetweenGroupedMessages","messages","noGroupByUser","userId","messageGroupStyles","messagesFilteredForNonUser","filter","message","isMessageTypeDeleted","type","user","id","i","length","previousMessage","nextMessage","groupStyles","isPrevMessageTypeDeleted","isNextMessageTypeDeleted","isTopMessage","includes","isBottomMessage","undefined","created_at","getTime","push","splice"],"mappings":"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","sourcesContent":["import type { DateSeparators } from './getDateSeparators';\n\nimport type { GroupType } from '../hooks/useMessageList';\n\nimport type { PaginatedMessageListContextValue } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nexport type GetGroupStylesParams<\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 dateSeparators: DateSeparators;\n messages:\n | PaginatedMessageListContextValue<At, Ch, Co, Ev, Me, Re, Us>['messages']\n | ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>['threadMessages'];\n hideDateSeparators?: boolean;\n maxTimeBetweenGroupedMessages?: number;\n noGroupByUser?: boolean;\n userId?: string;\n};\n\nexport const getGroupStyles = <\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 params: GetGroupStylesParams<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n dateSeparators,\n hideDateSeparators,\n maxTimeBetweenGroupedMessages,\n messages,\n noGroupByUser,\n userId,\n } = params;\n\n if (noGroupByUser) return {};\n\n const messageGroupStyles: { [key: string]: GroupType[] } = {};\n\n const messagesFilteredForNonUser = messages.filter((message) => {\n const isMessageTypeDeleted = message.type === 'deleted';\n return !isMessageTypeDeleted || userId === message.user?.id;\n });\n\n for (let i = 0; i < messagesFilteredForNonUser.length; i++) {\n const previousMessage = messagesFilteredForNonUser[i - 1] as\n | typeof messagesFilteredForNonUser[0]\n | undefined;\n const message = messagesFilteredForNonUser[i];\n const nextMessage = messagesFilteredForNonUser[i + 1] as\n | typeof messagesFilteredForNonUser[0]\n | undefined;\n const groupStyles: GroupType[] = [];\n\n const isPrevMessageTypeDeleted = previousMessage?.type === 'deleted';\n const isNextMessageTypeDeleted = nextMessage?.type === 'deleted';\n\n const userId = message?.user?.id || null;\n\n const isTopMessage =\n !previousMessage ||\n previousMessage.type === 'system' ||\n userId !== previousMessage?.user?.id ||\n previousMessage.type === 'error' ||\n !!isPrevMessageTypeDeleted ||\n (!hideDateSeparators && dateSeparators[message.id]) ||\n messageGroupStyles[previousMessage.id]?.includes('bottom');\n\n const isBottomMessage =\n !nextMessage ||\n nextMessage.type === 'system' ||\n userId !== nextMessage?.user?.id ||\n nextMessage.type === 'error' ||\n !!isNextMessageTypeDeleted ||\n (!hideDateSeparators && dateSeparators[nextMessage.id]) ||\n (maxTimeBetweenGroupedMessages !== undefined &&\n nextMessage.created_at.getTime() - message.created_at.getTime() >\n maxTimeBetweenGroupedMessages);\n\n /**\n * Add group styles key for top message\n */\n if (isTopMessage) {\n groupStyles.push('top');\n }\n\n /**\n * Add group styles key for bottom message\n */\n\n const isMessageTypeDeleted = message.type === 'deleted';\n if (isBottomMessage) {\n /**\n * If the bottom message is also the top, or deleted, or an error,\n * add the key for single message instead of bottom\n */\n if (isTopMessage || isMessageTypeDeleted || message.type === 'error') {\n groupStyles.splice(0, groupStyles.length);\n groupStyles.push('single');\n } else {\n groupStyles.push('bottom');\n }\n }\n\n /**\n * Add the key for all non top or bottom messages, if the message is\n * deleted or an error add the key for single otherwise middle\n */\n if (!isTopMessage && !isBottomMessage) {\n if (isMessageTypeDeleted || message.type === 'error') {\n groupStyles.splice(0, groupStyles.length);\n groupStyles.push('single');\n } else {\n groupStyles.splice(0, groupStyles.length);\n groupStyles.push('middle');\n }\n }\n\n if (message.id) {\n messageGroupStyles[message.id] = groupStyles;\n }\n }\n\n return messageGroupStyles;\n};\n"]}
1
+ {"version":3,"sources":["getGroupStyles.ts"],"names":["getGroupStyles","params","dateSeparators","hideDateSeparators","maxTimeBetweenGroupedMessages","messages","noGroupByUser","userId","messageGroupStyles","messagesFilteredForNonUser","filter","message","isMessageTypeDeleted","type","user","id","i","length","previousMessage","nextMessage","groupStyles","isPrevMessageTypeDeleted","isNextMessageTypeDeleted","isTopMessage","includes","isBottomMessage","undefined","created_at","getTime","push","splice"],"mappings":"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","sourcesContent":["import type { DateSeparators } from './getDateSeparators';\n\nimport type { PaginatedMessageListContextValue } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport type { GroupType } from '../hooks/useMessageList';\n\nexport type GetGroupStylesParams<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n dateSeparators: DateSeparators;\n messages:\n | PaginatedMessageListContextValue<StreamChatGenerics>['messages']\n | ThreadContextValue<StreamChatGenerics>['threadMessages'];\n hideDateSeparators?: boolean;\n maxTimeBetweenGroupedMessages?: number;\n noGroupByUser?: boolean;\n userId?: string;\n};\n\nexport const getGroupStyles = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n params: GetGroupStylesParams<StreamChatGenerics>,\n) => {\n const {\n dateSeparators,\n hideDateSeparators,\n maxTimeBetweenGroupedMessages,\n messages,\n noGroupByUser,\n userId,\n } = params;\n\n if (noGroupByUser) return {};\n\n const messageGroupStyles: { [key: string]: GroupType[] } = {};\n\n const messagesFilteredForNonUser = messages.filter((message) => {\n const isMessageTypeDeleted = message.type === 'deleted';\n return !isMessageTypeDeleted || userId === message.user?.id;\n });\n\n for (let i = 0; i < messagesFilteredForNonUser.length; i++) {\n const previousMessage = messagesFilteredForNonUser[i - 1] as\n | typeof messagesFilteredForNonUser[0]\n | undefined;\n const message = messagesFilteredForNonUser[i];\n const nextMessage = messagesFilteredForNonUser[i + 1] as\n | typeof messagesFilteredForNonUser[0]\n | undefined;\n const groupStyles: GroupType[] = [];\n\n const isPrevMessageTypeDeleted = previousMessage?.type === 'deleted';\n const isNextMessageTypeDeleted = nextMessage?.type === 'deleted';\n\n const userId = message?.user?.id || null;\n\n const isTopMessage =\n !previousMessage ||\n previousMessage.type === 'system' ||\n userId !== previousMessage?.user?.id ||\n previousMessage.type === 'error' ||\n !!isPrevMessageTypeDeleted ||\n (!hideDateSeparators && dateSeparators[message.id]) ||\n messageGroupStyles[previousMessage.id]?.includes('bottom');\n\n const isBottomMessage =\n !nextMessage ||\n nextMessage.type === 'system' ||\n userId !== nextMessage?.user?.id ||\n nextMessage.type === 'error' ||\n !!isNextMessageTypeDeleted ||\n (!hideDateSeparators && dateSeparators[nextMessage.id]) ||\n (maxTimeBetweenGroupedMessages !== undefined &&\n nextMessage.created_at.getTime() - message.created_at.getTime() >\n maxTimeBetweenGroupedMessages);\n\n /**\n * Add group styles key for top message\n */\n if (isTopMessage) {\n groupStyles.push('top');\n }\n\n /**\n * Add group styles key for bottom message\n */\n\n const isMessageTypeDeleted = message.type === 'deleted';\n if (isBottomMessage) {\n /**\n * If the bottom message is also the top, or deleted, or an error,\n * add the key for single message instead of bottom\n */\n if (isTopMessage || isMessageTypeDeleted || message.type === 'error') {\n groupStyles.splice(0, groupStyles.length);\n groupStyles.push('single');\n } else {\n groupStyles.push('bottom');\n }\n }\n\n /**\n * Add the key for all non top or bottom messages, if the message is\n * deleted or an error add the key for single otherwise middle\n */\n if (!isTopMessage && !isBottomMessage) {\n if (isMessageTypeDeleted || message.type === 'error') {\n groupStyles.splice(0, groupStyles.length);\n groupStyles.push('single');\n } else {\n groupStyles.splice(0, groupStyles.length);\n groupStyles.push('middle');\n }\n }\n\n if (message.id) {\n messageGroupStyles[message.id] = groupStyles;\n }\n }\n\n return messageGroupStyles;\n};\n"]}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", {
3
3
  });
4
4
  exports.getLastReceivedMessage = void 0;
5
5
 
6
+ var _utils = require("../../../utils/utils");
7
+
6
8
  function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
7
9
 
8
10
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -13,7 +15,7 @@ var getLastReceivedMessage = function getLastReceivedMessage(messages) {
13
15
  for (var _iterator = _createForOfIteratorHelperLoose(messages), _step; !(_step = _iterator()).done;) {
14
16
  var _message = _step.value;
15
17
 
16
- if ((_message == null ? void 0 : _message.status) === 'received' || (_message == null ? void 0 : _message.status) === 'sending') {
18
+ if ((_message == null ? void 0 : _message.status) === _utils.MessageStatusTypes.RECEIVED || (_message == null ? void 0 : _message.status) === _utils.MessageStatusTypes.SENDING) {
17
19
  return _message;
18
20
  }
19
21
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["getLastReceivedMessage.ts"],"names":["getLastReceivedMessage","messages","message","status"],"mappings":";;;;;;;;;;;AAYO,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CASpCC,QAToC,EAUjC;AAIH,uDAAsBA,QAAtB,wCAAgC;AAAA,QAArBC,QAAqB;;AAC9B,QAAI,CAAAA,QAAO,QAAP,YAAAA,QAAO,CAAEC,MAAT,MAAoB,UAApB,IAAkC,CAAAD,QAAO,QAAP,YAAAA,QAAO,CAAEC,MAAT,MAAoB,SAA1D,EAAqE;AACnE,aAAOD,QAAP;AACD;AACF;;AAED;AACD,CArBM","sourcesContent":["import type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\nimport type { MessageType } from '../hooks/useMessageList';\n\nexport const getLastReceivedMessage = <\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 messages: MessageType<At, Ch, Co, Ev, Me, Re, Us>[],\n) => {\n /**\n * There are no status on dates so they will be skipped\n */\n for (const message of messages) {\n if (message?.status === 'received' || message?.status === 'sending') {\n return message;\n }\n }\n\n return;\n};\n"]}
1
+ {"version":3,"sources":["getLastReceivedMessage.ts"],"names":["getLastReceivedMessage","messages","message","status","MessageStatusTypes","RECEIVED","SENDING"],"mappings":";;;;;AACA;;;;;;;;AAIO,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CAGpCC,QAHoC,EAIjC;AAIH,uDAAsBA,QAAtB,wCAAgC;AAAA,QAArBC,QAAqB;;AAC9B,QACE,CAAAA,QAAO,QAAP,YAAAA,QAAO,CAAEC,MAAT,MAAoBC,0BAAmBC,QAAvC,IACA,CAAAH,QAAO,QAAP,YAAAA,QAAO,CAAEC,MAAT,MAAoBC,0BAAmBE,OAFzC,EAGE;AACA,aAAOJ,QAAP;AACD;AACF;;AAED;AACD,CAlBM","sourcesContent":["import type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { MessageStatusTypes } from '../../../utils/utils';\n\nimport type { MessageType } from '../hooks/useMessageList';\n\nexport const getLastReceivedMessage = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n messages: MessageType<StreamChatGenerics>[],\n) => {\n /**\n * There are no status on dates so they will be skipped\n */\n for (const message of messages) {\n if (\n message?.status === MessageStatusTypes.RECEIVED ||\n message?.status === MessageStatusTypes.SENDING\n ) {\n return message;\n }\n }\n\n return;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["getReadStates.ts"],"names":["getReadStates","clientUserId","messages","read","readData","reduce","acc","cur","id","filteredMessagesReversed","filter","msg","updated_at","reverse","members","Object","values","memberReadCount","message","length","member","last_read","numberOfReads","keys","currentMessageReadData","userIndex","findIndex","user","splice"],"mappings":";;;;;;;;;;;AAcO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAS3BC,YAT2B,EAU3BC,QAV2B,EAa3BC,IAb2B,EAcxB;AACH,MAAMC,QAAQ,GAAGF,QAAQ,CAACG,MAAT,CAAgB,UAACC,GAAD,EAAMC,GAAN,EAAc;AAC7C,QAAIA,GAAG,CAACC,EAAR,EAAY;AACVF,MAAAA,GAAG,CAACC,GAAG,CAACC,EAAL,CAAH,GAAc,KAAd;AACD;;AACD,WAAOF,GAAP;AACD,GALgB,EAKd,EALc,CAAjB;AAOA,MAAMG,wBAAwB,GAAGP,QAAQ,CAACQ,MAAT,CAAgB,UAACC,GAAD;AAAA,WAASA,GAAG,CAACC,UAAb;AAAA,GAAhB,EAAyCC,OAAzC,EAAjC;;AAEA,MAAIV,IAAJ,EAAU;AAIR,QAAIF,YAAJ,EAAkB;AAChB,aAAOE,IAAI,CAACF,YAAD,CAAX;AACD;;AACD,QAAMa,OAAO,GAAGC,MAAM,CAACC,MAAP,CAAcb,IAAd,CAAhB;AAKA,QAAIc,eAAe,GAAG,CAAtB;;AASA,yDAAsBR,wBAAtB,wCAAgD;AAAA,UAArCS,QAAqC;;AAM9C,UAAI,CAACJ,OAAO,CAACK,MAAb,EAAqB;AACnBf,QAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GAAuBS,eAAe,IAAI,IAA1C;AACD,OAFD,MAEO;AAAA,mCACMG,MADN;AAOH,cAAI,CAACA,MAAM,CAACC,SAAZ,EAAuB;AACrB;AACD;;AAOD,cAAIH,QAAO,CAACN,UAAR,GAAqBQ,MAAM,CAACC,SAAhC,EAA2C;AAKzC,gBAAMC,aAAa,GAAGP,MAAM,CAACQ,IAAP,CAAYpB,IAAZ,EAAkBgB,MAAxC;;AACA,gBAAIG,aAAa,KAAK,CAAtB,EAAyB;AACvBlB,cAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GAAuB,IAAvB;AACD,aAFD,MAEO;AACL,kBAAMgB,sBAAsB,GAAGpB,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAvC;AACAJ,cAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GACE,OAAOgB,sBAAP,KAAkC,SAAlC,GACIP,eAAe,GAAG,CADtB,GAEIO,sBAAsB,GAAG,CAH/B;AAID;;AACD,gBAAMC,SAAS,GAAGX,OAAO,CAACY,SAAR,CAAkB;AAAA;;AAAA,kBAAGC,IAAH,QAAGA,IAAH;AAAA,qBAAcA,IAAI,CAACnB,EAAL,sBAAYY,MAAM,CAACO,IAAnB,qBAAY,aAAanB,EAAzB,CAAd;AAAA,aAAlB,CAAlB;;AACA,gBAAIiB,SAAS,KAAK,CAAC,CAAnB,EAAsB;AACpBX,cAAAA,OAAO,CAACc,MAAR,CAAeH,SAAf,EAA0B,CAA1B;;AACA,kBAAIH,aAAa,GAAG,CAApB,EAAuB;AACrBL,gBAAAA,eAAe,IAAI,CAAnB;AACD;AACF;AACF;AAtCE;;AACL,8DAAqBH,OAArB,2CAA8B;AAAA,cAAnBM,MAAmB;;AAAA,2BAAnBA,MAAmB;;AAAA,mCAO1B;AA+BH;;AAOD,YAAIhB,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,KAAyB,KAA7B,EAAoC;AAClCJ,UAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GAAuBS,eAAe,IAAI,KAA1C;AACD;AACF;AACF;AACF;;AAED,SAAOb,QAAP;AACD,CA3GM","sourcesContent":["import type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';\nimport type { PaginatedMessageListContextValue } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\n\nexport const getReadStates = <\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 clientUserId: string | undefined,\n messages:\n | PaginatedMessageListContextValue<At, Ch, Co, Ev, Me, Re, Us>['messages']\n | ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>['threadMessages'],\n read?: ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>['read'],\n) => {\n const readData = messages.reduce((acc, cur) => {\n if (cur.id) {\n acc[cur.id] = false;\n }\n return acc;\n }, {} as { [key: string]: boolean | number });\n\n const filteredMessagesReversed = messages.filter((msg) => msg.updated_at).reverse();\n\n if (read) {\n /**\n * Channel read state is stored by user and we only care about users who aren't the client\n */\n if (clientUserId) {\n delete read[clientUserId];\n }\n const members = Object.values(read);\n\n /**\n * Track number of members who have read previous messages\n */\n let memberReadCount = 0;\n\n /**\n * Array is in reverse order so newest message is at 0,\n * we find the index of the first message that is older\n * than the last read and then set last read to that, or\n * if there are no newer messages, the first message is\n * last read message.\n */\n for (const message of filteredMessagesReversed) {\n /**\n * If all members are removed then they have read these\n * messages. We do not increment memberReadCount for 1:1\n * chats, so this should be true, not a number in that case.\n */\n if (!members.length) {\n readData[message.id] = memberReadCount || true;\n } else {\n for (const member of members) {\n /**\n * If no last read continue, we can't remove the user\n * because this would mark all messages in a new channel\n * true until at least one other user reads a message.\n */\n if (!member.last_read) {\n continue;\n }\n\n /**\n * If there there is a last read message add the user\n * to the array of last reads for that message and remove\n * the user from the list of users being checked\n */\n if (message.updated_at < member.last_read) {\n /**\n * if this is a direct message the length will be 1\n * as we already deleted the current user from the object\n */\n const numberOfReads = Object.keys(read).length;\n if (numberOfReads === 1) {\n readData[message.id] = true;\n } else {\n const currentMessageReadData = readData[message.id];\n readData[message.id] =\n typeof currentMessageReadData === 'boolean'\n ? memberReadCount + 1\n : currentMessageReadData + 1;\n }\n const userIndex = members.findIndex(({ user }) => user.id === member.user?.id);\n if (userIndex !== -1) {\n members.splice(userIndex, 1);\n if (numberOfReads > 1) {\n memberReadCount += 1;\n }\n }\n }\n }\n\n /**\n * If this is not the last message for a user this will still be\n * set to false. But if other users have read further the number\n * should be how many have read beyond this message.\n */\n if (readData[message.id] === false) {\n readData[message.id] = memberReadCount || false;\n }\n }\n }\n }\n\n return readData;\n};\n"]}
1
+ {"version":3,"sources":["getReadStates.ts"],"names":["getReadStates","clientUserId","messages","read","readData","reduce","acc","cur","id","filteredMessagesReversed","filter","msg","updated_at","reverse","members","Object","values","memberReadCount","message","length","member","last_read","numberOfReads","keys","currentMessageReadData","userIndex","findIndex","user","splice"],"mappings":";;;;;;;;;;;AAKO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAG3BC,YAH2B,EAI3BC,QAJ2B,EAO3BC,IAP2B,EAQxB;AACH,MAAMC,QAAQ,GAAGF,QAAQ,CAACG,MAAT,CAAgB,UAACC,GAAD,EAAMC,GAAN,EAAc;AAC7C,QAAIA,GAAG,CAACC,EAAR,EAAY;AACVF,MAAAA,GAAG,CAACC,GAAG,CAACC,EAAL,CAAH,GAAc,KAAd;AACD;;AACD,WAAOF,GAAP;AACD,GALgB,EAKd,EALc,CAAjB;AAOA,MAAMG,wBAAwB,GAAGP,QAAQ,CAACQ,MAAT,CAAgB,UAACC,GAAD;AAAA,WAASA,GAAG,CAACC,UAAb;AAAA,GAAhB,EAAyCC,OAAzC,EAAjC;;AAEA,MAAIV,IAAJ,EAAU;AAIR,QAAIF,YAAJ,EAAkB;AAChB,aAAOE,IAAI,CAACF,YAAD,CAAX;AACD;;AACD,QAAMa,OAAO,GAAGC,MAAM,CAACC,MAAP,CAAcb,IAAd,CAAhB;AAKA,QAAIc,eAAe,GAAG,CAAtB;;AASA,yDAAsBR,wBAAtB,wCAAgD;AAAA,UAArCS,QAAqC;;AAM9C,UAAI,CAACJ,OAAO,CAACK,MAAb,EAAqB;AACnBf,QAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GAAuBS,eAAe,IAAI,IAA1C;AACD,OAFD,MAEO;AAAA,mCACMG,MADN;AAOH,cAAI,CAACA,MAAM,CAACC,SAAZ,EAAuB;AACrB;AACD;;AAOD,cAAIH,QAAO,CAACN,UAAR,GAAqBQ,MAAM,CAACC,SAAhC,EAA2C;AAKzC,gBAAMC,aAAa,GAAGP,MAAM,CAACQ,IAAP,CAAYpB,IAAZ,EAAkBgB,MAAxC;;AACA,gBAAIG,aAAa,KAAK,CAAtB,EAAyB;AACvBlB,cAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GAAuB,IAAvB;AACD,aAFD,MAEO;AACL,kBAAMgB,sBAAsB,GAAGpB,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAvC;AACAJ,cAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GACE,OAAOgB,sBAAP,KAAkC,SAAlC,GACIP,eAAe,GAAG,CADtB,GAEIO,sBAAsB,GAAG,CAH/B;AAID;;AACD,gBAAMC,SAAS,GAAGX,OAAO,CAACY,SAAR,CAAkB;AAAA;;AAAA,kBAAGC,IAAH,QAAGA,IAAH;AAAA,qBAAcA,IAAI,CAACnB,EAAL,sBAAYY,MAAM,CAACO,IAAnB,qBAAY,aAAanB,EAAzB,CAAd;AAAA,aAAlB,CAAlB;;AACA,gBAAIiB,SAAS,KAAK,CAAC,CAAnB,EAAsB;AACpBX,cAAAA,OAAO,CAACc,MAAR,CAAeH,SAAf,EAA0B,CAA1B;;AACA,kBAAIH,aAAa,GAAG,CAApB,EAAuB;AACrBL,gBAAAA,eAAe,IAAI,CAAnB;AACD;AACF;AACF;AAtCE;;AACL,8DAAqBH,OAArB,2CAA8B;AAAA,cAAnBM,MAAmB;;AAAA,2BAAnBA,MAAmB;;AAAA,mCAO1B;AA+BH;;AAOD,YAAIhB,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,KAAyB,KAA7B,EAAoC;AAClCJ,UAAAA,QAAQ,CAACc,QAAO,CAACV,EAAT,CAAR,GAAuBS,eAAe,IAAI,KAA1C;AACD;AACF;AACF;AACF;;AAED,SAAOb,QAAP;AACD,CArGM","sourcesContent":["import type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';\nimport type { PaginatedMessageListContextValue } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\nexport const getReadStates = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n clientUserId: string | undefined,\n messages:\n | PaginatedMessageListContextValue<StreamChatGenerics>['messages']\n | ThreadContextValue<StreamChatGenerics>['threadMessages'],\n read?: ChannelContextValue<StreamChatGenerics>['read'],\n) => {\n const readData = messages.reduce((acc, cur) => {\n if (cur.id) {\n acc[cur.id] = false;\n }\n return acc;\n }, {} as { [key: string]: boolean | number });\n\n const filteredMessagesReversed = messages.filter((msg) => msg.updated_at).reverse();\n\n if (read) {\n /**\n * Channel read state is stored by user and we only care about users who aren't the client\n */\n if (clientUserId) {\n delete read[clientUserId];\n }\n const members = Object.values(read);\n\n /**\n * Track number of members who have read previous messages\n */\n let memberReadCount = 0;\n\n /**\n * Array is in reverse order so newest message is at 0,\n * we find the index of the first message that is older\n * than the last read and then set last read to that, or\n * if there are no newer messages, the first message is\n * last read message.\n */\n for (const message of filteredMessagesReversed) {\n /**\n * If all members are removed then they have read these\n * messages. We do not increment memberReadCount for 1:1\n * chats, so this should be true, not a number in that case.\n */\n if (!members.length) {\n readData[message.id] = memberReadCount || true;\n } else {\n for (const member of members) {\n /**\n * If no last read continue, we can't remove the user\n * because this would mark all messages in a new channel\n * true until at least one other user reads a message.\n */\n if (!member.last_read) {\n continue;\n }\n\n /**\n * If there there is a last read message add the user\n * to the array of last reads for that message and remove\n * the user from the list of users being checked\n */\n if (message.updated_at < member.last_read) {\n /**\n * if this is a direct message the length will be 1\n * as we already deleted the current user from the object\n */\n const numberOfReads = Object.keys(read).length;\n if (numberOfReads === 1) {\n readData[message.id] = true;\n } else {\n const currentMessageReadData = readData[message.id];\n readData[message.id] =\n typeof currentMessageReadData === 'boolean'\n ? memberReadCount + 1\n : currentMessageReadData + 1;\n }\n const userIndex = members.findIndex(({ user }) => user.id === member.user?.id);\n if (userIndex !== -1) {\n members.splice(userIndex, 1);\n if (numberOfReads > 1) {\n memberReadCount += 1;\n }\n }\n }\n }\n\n /**\n * If this is not the last message for a user this will still be\n * set to false. But if other users have read further the number\n * should be how many have read beyond this message.\n */\n if (readData[message.id] === false) {\n readData[message.id] = memberReadCount || false;\n }\n }\n }\n }\n\n return readData;\n};\n"]}
@@ -15,12 +15,12 @@ var _reactNative = require("react-native");
15
15
 
16
16
  var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
17
17
 
18
+ var _MessageActionListItem = require("./MessageActionListItem");
19
+
18
20
  var _MessageOverlayContext = require("../../contexts/messageOverlayContext/MessageOverlayContext");
19
21
 
20
22
  var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
21
23
 
22
- var _MessageActionListItem = require("./MessageActionListItem");
23
-
24
24
  var _utils = require("../../utils/utils");
25
25
 
26
26
  var _this = this,
@@ -100,7 +100,7 @@ var MessageActionListWithContext = function MessageActionListWithContext(props)
100
100
  __self: _this,
101
101
  __source: {
102
102
  fileName: _jsxFileName,
103
- lineNumber: 130,
103
+ lineNumber: 109,
104
104
  columnNumber: 5
105
105
  }
106
106
  }, messageActions == null ? void 0 : messageActions.map(function (messageAction, index) {
@@ -113,7 +113,7 @@ var MessageActionListWithContext = function MessageActionListWithContext(props)
113
113
  __self: _this,
114
114
  __source: {
115
115
  fileName: _jsxFileName,
116
- lineNumber: 139,
116
+ lineNumber: 118,
117
117
  columnNumber: 9
118
118
  }
119
119
  }));
@@ -149,7 +149,7 @@ var MessageActionList = function MessageActionList(props) {
149
149
  __self: _this,
150
150
  __source: {
151
151
  fileName: _jsxFileName,
152
- lineNumber: 210,
152
+ lineNumber: 169,
153
153
  columnNumber: 10
154
154
  }
155
155
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageActionList.tsx"],"names":["styles","StyleSheet","create","bottomBorder","borderBottomWidth","container","borderRadius","marginTop","maxWidth","row","alignItems","flexDirection","justifyContent","minWidth","paddingHorizontal","paddingVertical","titleStyle","paddingLeft","MessageActionListWithContext","props","alignment","messageActions","showScreen","MessageActionListItem","DefaultMessageActionListItem","isMyMessage","message","messageReactions","error","isThreadMessage","messageActionProps","white_snow","theme","colors","height","width","showScreenStyle","transform","translateY","value","translateX","scale","layout","nativeEvent","backgroundColor","map","messageAction","index","title","length","areEqual","prevProps","nextProps","prevAlignment","prevMessageActions","nextAlignment","nextMessageActions","messageActionsEqual","alignmentEqual","MemoizedMessageActionList","React","memo","MessageActionList","data"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, ViewStyle } from 'react-native';\nimport Animated, { interpolate, useAnimatedStyle, useSharedValue } from 'react-native-reanimated';\n\nimport {\n MessageOverlayData,\n useMessageOverlayContext,\n} from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport type { OverlayProviderProps } from '../../contexts/overlayContext/OverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { MessageActionListItem as DefaultMessageActionListItem } from './MessageActionListItem';\nimport { vw } from '../../utils/utils';\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 bottomBorder: {\n borderBottomWidth: 1,\n },\n container: {\n borderRadius: 16,\n marginTop: 8,\n maxWidth: 275,\n },\n row: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'flex-start',\n minWidth: vw(65),\n paddingHorizontal: 20,\n paddingVertical: 10,\n },\n titleStyle: {\n paddingLeft: 20,\n },\n});\n\nexport type MessageActionListPropsWithContext<\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 OverlayProviderProps<At, Ch, Co, Ev, Me, Re, Us>,\n | 'MessageActionListItem'\n | 'error'\n | 'isMyMessage'\n | 'isThreadMessage'\n | 'message'\n | 'messageReactions'\n> &\n Pick<MessageOverlayData<At, Ch, Co, Ev, Me, Re, Us>, 'alignment' | 'messageActions'> & {\n showScreen: Animated.SharedValue<number>;\n };\n\nconst MessageActionListWithContext = <\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: MessageActionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n alignment,\n messageActions,\n showScreen,\n MessageActionListItem = DefaultMessageActionListItem,\n isMyMessage,\n message,\n messageReactions,\n error,\n isThreadMessage,\n } = props;\n\n const messageActionProps = {\n error,\n isMyMessage,\n isThreadMessage,\n message,\n messageReactions,\n };\n\n const {\n theme: {\n colors: { white_snow },\n },\n } = useTheme();\n\n const height = useSharedValue(0);\n const width = useSharedValue(0);\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-height.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [alignment === 'left' ? -width.value / 2 : width.value / 2, 0],\n ),\n },\n {\n scale: showScreen.value,\n },\n ],\n }),\n [alignment],\n );\n\n return (\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n width.value = layout.width;\n height.value = layout.height;\n }}\n style={[styles.container, { backgroundColor: white_snow }, showScreenStyle]}\n testID='message-action-list'\n >\n {messageActions?.map((messageAction, index) => (\n <MessageActionListItem\n key={messageAction.title}\n {...messageActionProps}\n {...{ ...messageAction, index, length: messageActions.length }}\n />\n ))}\n </Animated.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: MessageActionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: MessageActionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { alignment: prevAlignment, messageActions: prevMessageActions } = prevProps;\n const { alignment: nextAlignment, messageActions: nextMessageActions } = nextProps;\n\n const messageActionsEqual = prevMessageActions?.length === nextMessageActions?.length;\n if (!messageActionsEqual) return false;\n\n const alignmentEqual = prevAlignment === nextAlignment;\n if (!alignmentEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageActionList = React.memo(\n MessageActionListWithContext,\n areEqual,\n) as typeof MessageActionListWithContext;\n\nexport type MessageActionListProps<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = Partial<Omit<MessageActionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'showScreen'>> &\n Pick<\n MessageActionListPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n 'showScreen' | 'message' | 'isMyMessage' | 'error' | 'isThreadMessage' | 'messageReactions'\n >;\n\n/**\n * MessageActionList - A high level component which implements all the logic required for MessageActions\n */\nexport const MessageActionList = <\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: MessageActionListProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { data } = useMessageOverlayContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n const { alignment, messageActions } = data || {};\n\n return <MemoizedMessageActionList {...{ alignment, messageActions }} {...props} />;\n};\n"]}
1
+ {"version":3,"sources":["MessageActionList.tsx"],"names":["styles","StyleSheet","create","bottomBorder","borderBottomWidth","container","borderRadius","marginTop","maxWidth","row","alignItems","flexDirection","justifyContent","minWidth","paddingHorizontal","paddingVertical","titleStyle","paddingLeft","MessageActionListWithContext","props","alignment","messageActions","showScreen","MessageActionListItem","DefaultMessageActionListItem","isMyMessage","message","messageReactions","error","isThreadMessage","messageActionProps","white_snow","theme","colors","height","width","showScreenStyle","transform","translateY","value","translateX","scale","layout","nativeEvent","backgroundColor","map","messageAction","index","title","length","areEqual","prevProps","nextProps","prevAlignment","prevMessageActions","nextAlignment","nextMessageActions","messageActionsEqual","alignmentEqual","MemoizedMessageActionList","React","memo","MessageActionList","data"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, ViewStyle } from 'react-native';\nimport Animated, { interpolate, useAnimatedStyle, useSharedValue } from 'react-native-reanimated';\n\nimport { MessageActionListItem as DefaultMessageActionListItem } from './MessageActionListItem';\n\nimport {\n MessageOverlayData,\n useMessageOverlayContext,\n} from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport type { OverlayProviderProps } from '../../contexts/overlayContext/OverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { vw } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n bottomBorder: {\n borderBottomWidth: 1,\n },\n container: {\n borderRadius: 16,\n marginTop: 8,\n maxWidth: 275,\n },\n row: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'flex-start',\n minWidth: vw(65),\n paddingHorizontal: 20,\n paddingVertical: 10,\n },\n titleStyle: {\n paddingLeft: 20,\n },\n});\n\nexport type MessageActionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n OverlayProviderProps<StreamChatGenerics>,\n | 'MessageActionListItem'\n | 'error'\n | 'isMyMessage'\n | 'isThreadMessage'\n | 'message'\n | 'messageReactions'\n> &\n Pick<MessageOverlayData<StreamChatGenerics>, 'alignment' | 'messageActions'> & {\n showScreen: Animated.SharedValue<number>;\n };\n\nconst MessageActionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageActionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n messageActions,\n showScreen,\n MessageActionListItem = DefaultMessageActionListItem,\n isMyMessage,\n message,\n messageReactions,\n error,\n isThreadMessage,\n } = props;\n\n const messageActionProps = {\n error,\n isMyMessage,\n isThreadMessage,\n message,\n messageReactions,\n };\n\n const {\n theme: {\n colors: { white_snow },\n },\n } = useTheme();\n\n const height = useSharedValue(0);\n const width = useSharedValue(0);\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-height.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [alignment === 'left' ? -width.value / 2 : width.value / 2, 0],\n ),\n },\n {\n scale: showScreen.value,\n },\n ],\n }),\n [alignment],\n );\n\n return (\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n width.value = layout.width;\n height.value = layout.height;\n }}\n style={[styles.container, { backgroundColor: white_snow }, showScreenStyle]}\n testID='message-action-list'\n >\n {messageActions?.map((messageAction, index) => (\n <MessageActionListItem\n key={messageAction.title}\n {...messageActionProps}\n {...{ ...messageAction, index, length: messageActions.length }}\n />\n ))}\n </Animated.View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessageActionListPropsWithContext<StreamChatGenerics>,\n nextProps: MessageActionListPropsWithContext<StreamChatGenerics>,\n) => {\n const { alignment: prevAlignment, messageActions: prevMessageActions } = prevProps;\n const { alignment: nextAlignment, messageActions: nextMessageActions } = nextProps;\n\n const messageActionsEqual = prevMessageActions?.length === nextMessageActions?.length;\n if (!messageActionsEqual) return false;\n\n const alignmentEqual = prevAlignment === nextAlignment;\n if (!alignmentEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageActionList = React.memo(\n MessageActionListWithContext,\n areEqual,\n) as typeof MessageActionListWithContext;\n\nexport type MessageActionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Omit<MessageActionListPropsWithContext<StreamChatGenerics>, 'showScreen'>> &\n Pick<\n MessageActionListPropsWithContext<StreamChatGenerics>,\n 'showScreen' | 'message' | 'isMyMessage' | 'error' | 'isThreadMessage' | 'messageReactions'\n >;\n\n/**\n * MessageActionList - A high level component which implements all the logic required for MessageActions\n */\nexport const MessageActionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageActionListProps<StreamChatGenerics>,\n) => {\n const { data } = useMessageOverlayContext<StreamChatGenerics>();\n\n const { alignment, messageActions } = data || {};\n\n return <MemoizedMessageActionList {...{ alignment, messageActions }} {...props} />;\n};\n"]}
@@ -15,10 +15,10 @@ var _reactNativeGestureHandler = require("react-native-gesture-handler");
15
15
 
16
16
  var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
17
17
 
18
- var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
19
-
20
18
  var _useMessageActionAnimation = require("./hooks/useMessageActionAnimation");
21
19
 
20
+ var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
21
+
22
22
  var _utils = require("../../utils/utils");
23
23
 
24
24
  var _this = this,
@@ -73,7 +73,7 @@ var MessageActionListItemWithContext = function MessageActionListItemWithContext
73
73
  __self: _this,
74
74
  __source: {
75
75
  fileName: _jsxFileName,
76
- lineNumber: 77,
76
+ lineNumber: 86,
77
77
  columnNumber: 5
78
78
  }
79
79
  }, _react["default"].createElement(_reactNativeReanimated["default"].View, {
@@ -84,7 +84,7 @@ var MessageActionListItemWithContext = function MessageActionListItemWithContext
84
84
  __self: _this,
85
85
  __source: {
86
86
  fileName: _jsxFileName,
87
- lineNumber: 78,
87
+ lineNumber: 87,
88
88
  columnNumber: 7
89
89
  }
90
90
  }, _react["default"].createElement(_reactNative.View, {
@@ -92,7 +92,7 @@ var MessageActionListItemWithContext = function MessageActionListItemWithContext
92
92
  __self: _this,
93
93
  __source: {
94
94
  fileName: _jsxFileName,
95
- lineNumber: 87,
95
+ lineNumber: 96,
96
96
  columnNumber: 9
97
97
  }
98
98
  }, icon), _react["default"].createElement(_reactNative.Text, {
@@ -102,7 +102,7 @@ var MessageActionListItemWithContext = function MessageActionListItemWithContext
102
102
  __self: _this,
103
103
  __source: {
104
104
  fileName: _jsxFileName,
105
- lineNumber: 88,
105
+ lineNumber: 97,
106
106
  columnNumber: 9
107
107
  }
108
108
  }, title)));
@@ -121,8 +121,8 @@ var MessageActionListItem = function MessageActionListItem(props) {
121
121
  __self: _this,
122
122
  __source: {
123
123
  fileName: _jsxFileName,
124
- lineNumber: 110,
125
- columnNumber: 3
124
+ lineNumber: 124,
125
+ columnNumber: 6
126
126
  }
127
127
  }));
128
128
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["MessageActionListItem.tsx"],"names":["styles","StyleSheet","create","bottomBorder","borderBottomWidth","container","borderRadius","marginTop","maxWidth","row","alignItems","flexDirection","justifyContent","minWidth","paddingHorizontal","paddingVertical","titleStyle","paddingLeft","MessageActionListItemWithContext","props","action","actionType","icon","index","length","title","theme","colors","black","border","messageActions","overlay","animatedStyle","onTap","borderBottomColor","actionContainer","color","messageActionIsEqual","prevProps","nextProps","MemoizedMessageActionListItem","React","memo","MessageActionListItem"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleProp, StyleSheet, Text, TextStyle, View } from 'react-native';\nimport { TapGestureHandler } from 'react-native-gesture-handler';\nimport Animated from 'react-native-reanimated';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useMessageActionAnimation } from './hooks/useMessageActionAnimation';\nimport { vw } from '../../utils/utils';\nimport type { MessageOverlayPropsWithContext } from '../MessageOverlay/MessageOverlay';\n\nconst styles = StyleSheet.create({\n bottomBorder: {\n borderBottomWidth: 1,\n },\n container: {\n borderRadius: 16,\n marginTop: 8,\n maxWidth: 275,\n },\n row: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'flex-start',\n minWidth: vw(65),\n paddingHorizontal: 20,\n paddingVertical: 10,\n },\n titleStyle: {\n paddingLeft: 20,\n },\n});\n\nexport type ActionType =\n | 'blockUser'\n | 'copyMessage'\n | 'deleteMessage'\n | 'editMessage'\n | 'flagMessage'\n | 'muteUser'\n | 'pinMessage'\n | 'selectReaction'\n | 'reply'\n | 'retry'\n | 'quotedReply'\n | 'threadReply'\n | 'unpinMessage';\n\nexport type MessageActionType = {\n action: () => void;\n actionType: ActionType;\n title: string;\n icon?: React.ReactElement;\n titleStyle?: StyleProp<TextStyle>;\n};\n\nexport type MessageActionListItemProps = MessageActionType &\n Pick<\n MessageOverlayPropsWithContext,\n 'error' | 'isMyMessage' | 'isThreadMessage' | 'message' | 'messageReactions'\n > & {\n index: number;\n length: number;\n };\n\nconst MessageActionListItemWithContext = (props: MessageActionListItemProps) => {\n const { action, actionType, icon, index, length, title, titleStyle } = props;\n\n const {\n theme: {\n colors: { black, border },\n overlay: { messageActions },\n },\n } = useTheme();\n\n const { animatedStyle, onTap } = useMessageActionAnimation({ action });\n\n return (\n <TapGestureHandler onHandlerStateChange={onTap}>\n <Animated.View\n style={[\n styles.row,\n index !== length - 1 ? { ...styles.bottomBorder, borderBottomColor: border } : {},\n animatedStyle,\n messageActions.actionContainer,\n ]}\n testID={`${actionType}-list-item`}\n >\n <View style={messageActions.icon}>{icon}</View>\n <Text style={[styles.titleStyle, messageActions.title, { color: black }, titleStyle]}>\n {title}\n </Text>\n </Animated.View>\n </TapGestureHandler>\n );\n};\n\nconst messageActionIsEqual = (\n prevProps: MessageActionListItemProps,\n nextProps: MessageActionListItemProps,\n) => prevProps.length === nextProps.length;\n\nexport const MemoizedMessageActionListItem = React.memo(\n MessageActionListItemWithContext,\n messageActionIsEqual,\n) as typeof MessageActionListItemWithContext;\n\n/**\n * MessageActionListItem - A high-level component that implements all the logic required for a `MessageAction` in a `MessageActionList`\n */\nexport const MessageActionListItem = (props: MessageActionListItemProps) => (\n <MemoizedMessageActionListItem {...props} />\n);\n"]}
1
+ {"version":3,"sources":["MessageActionListItem.tsx"],"names":["styles","StyleSheet","create","bottomBorder","borderBottomWidth","container","borderRadius","marginTop","maxWidth","row","alignItems","flexDirection","justifyContent","minWidth","paddingHorizontal","paddingVertical","titleStyle","paddingLeft","MessageActionListItemWithContext","props","action","actionType","icon","index","length","title","theme","colors","black","border","messageActions","overlay","animatedStyle","onTap","borderBottomColor","actionContainer","color","messageActionIsEqual","prevProps","nextProps","MemoizedMessageActionListItem","React","memo","MessageActionListItem"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleProp, StyleSheet, Text, TextStyle, View } from 'react-native';\nimport { TapGestureHandler } from 'react-native-gesture-handler';\nimport Animated from 'react-native-reanimated';\n\nimport { useMessageActionAnimation } from './hooks/useMessageActionAnimation';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { vw } from '../../utils/utils';\nimport type { MessageOverlayPropsWithContext } from '../MessageOverlay/MessageOverlay';\n\nconst styles = StyleSheet.create({\n bottomBorder: {\n borderBottomWidth: 1,\n },\n container: {\n borderRadius: 16,\n marginTop: 8,\n maxWidth: 275,\n },\n row: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'flex-start',\n minWidth: vw(65),\n paddingHorizontal: 20,\n paddingVertical: 10,\n },\n titleStyle: {\n paddingLeft: 20,\n },\n});\n\nexport type ActionType =\n | 'blockUser'\n | 'copyMessage'\n | 'deleteMessage'\n | 'editMessage'\n | 'flagMessage'\n | 'muteUser'\n | 'pinMessage'\n | 'selectReaction'\n | 'reply'\n | 'retry'\n | 'quotedReply'\n | 'threadReply'\n | 'unpinMessage';\n\nexport type MessageActionType = {\n action: () => void;\n actionType: ActionType;\n title: string;\n icon?: React.ReactElement;\n titleStyle?: StyleProp<TextStyle>;\n};\n\nexport type MessageActionListItemProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = MessageActionType &\n Pick<\n MessageOverlayPropsWithContext<StreamChatGenerics>,\n 'error' | 'isMyMessage' | 'isThreadMessage' | 'message' | 'messageReactions'\n > & {\n index: number;\n length: number;\n };\n\nconst MessageActionListItemWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageActionListItemProps<StreamChatGenerics>,\n) => {\n const { action, actionType, icon, index, length, title, titleStyle } = props;\n\n const {\n theme: {\n colors: { black, border },\n overlay: { messageActions },\n },\n } = useTheme();\n\n const { animatedStyle, onTap } = useMessageActionAnimation({ action });\n\n return (\n <TapGestureHandler onHandlerStateChange={onTap}>\n <Animated.View\n style={[\n styles.row,\n index !== length - 1 ? { ...styles.bottomBorder, borderBottomColor: border } : {},\n animatedStyle,\n messageActions.actionContainer,\n ]}\n testID={`${actionType}-list-item`}\n >\n <View style={messageActions.icon}>{icon}</View>\n <Text style={[styles.titleStyle, messageActions.title, { color: black }, titleStyle]}>\n {title}\n </Text>\n </Animated.View>\n </TapGestureHandler>\n );\n};\n\nconst messageActionIsEqual = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n prevProps: MessageActionListItemProps<StreamChatGenerics>,\n nextProps: MessageActionListItemProps<StreamChatGenerics>,\n) => prevProps.length === nextProps.length;\n\nexport const MemoizedMessageActionListItem = React.memo(\n MessageActionListItemWithContext,\n messageActionIsEqual,\n) as typeof MessageActionListItemWithContext;\n\n/**\n * MessageActionListItem - A high-level component that implements all the logic required for a `MessageAction` in a `MessageActionList`\n */\nexport const MessageActionListItem = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageActionListItemProps<StreamChatGenerics>,\n) => <MemoizedMessageActionListItem {...props} />;\n"]}