stream-chat-react-native-core 4.0.0-beta.3 → 4.0.0-beta.7

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 (830) hide show
  1. package/README.md +1 -1
  2. package/lib/commonjs/components/Attachment/Attachment.js +10 -10
  3. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  4. package/lib/commonjs/components/Attachment/AttachmentActions.js +4 -4
  5. package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
  6. package/lib/commonjs/components/Attachment/Card.js +15 -15
  7. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  8. package/lib/commonjs/components/Attachment/FileAttachment.js +8 -8
  9. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  10. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +4 -4
  11. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  12. package/lib/commonjs/components/Attachment/Gallery.js +8 -8
  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.map +1 -1
  17. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -1
  18. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -1
  19. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -1
  20. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
  21. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -1
  22. package/lib/commonjs/components/Attachment/utils/getAspectRatio.js.map +1 -1
  23. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  24. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  25. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +16 -16
  26. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  27. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
  28. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  29. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +13 -13
  30. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  31. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +10 -10
  32. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  33. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  34. package/lib/commonjs/components/Channel/Channel.js +13 -13
  35. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  36. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  37. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  38. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  39. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  40. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  41. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  42. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  43. package/lib/commonjs/components/ChannelList/ChannelList.js +2 -2
  44. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  45. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js +14 -14
  46. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
  47. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  48. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  49. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  50. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  51. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  52. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  53. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  54. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  55. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  56. package/lib/commonjs/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  57. package/lib/commonjs/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  58. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  59. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  60. package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
  61. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js +2 -2
  62. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  63. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +2 -2
  64. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  65. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
  66. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  67. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js +12 -12
  68. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  69. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +1 -1
  70. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
  71. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  72. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  73. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  74. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  75. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  76. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  77. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  78. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  79. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  80. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  81. package/lib/commonjs/components/Chat/Chat.js +8 -4
  82. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  83. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  84. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
  85. package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
  86. package/lib/commonjs/components/ImageGallery/ImageGallery.js +19 -19
  87. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  88. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +11 -11
  89. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  90. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
  91. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  92. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +5 -5
  93. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  94. package/lib/commonjs/components/Message/Message.js +6 -6
  95. package/lib/commonjs/components/Message/Message.js.map +1 -1
  96. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js +4 -4
  97. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  98. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +18 -18
  99. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  100. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +5 -5
  101. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  102. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +20 -16
  103. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  104. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +4 -4
  105. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  106. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js +10 -10
  107. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  108. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js +3 -3
  109. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  110. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +6 -6
  111. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  112. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +9 -9
  113. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  114. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +3 -3
  115. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  116. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +51 -51
  117. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
  118. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +145 -64
  119. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  120. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  121. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  122. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  123. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  124. package/lib/commonjs/components/Message/hooks/useMessageActions.js +11 -11
  125. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
  126. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  127. package/lib/commonjs/components/Message/utils/removeReservedFields.js.map +1 -1
  128. package/lib/commonjs/components/MessageInput/AttachButton.js +3 -3
  129. package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
  130. package/lib/commonjs/components/MessageInput/CommandsButton.js +3 -3
  131. package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
  132. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +11 -11
  133. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  134. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +7 -7
  135. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
  136. package/lib/commonjs/components/MessageInput/InputButtons.js +6 -6
  137. package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
  138. package/lib/commonjs/components/MessageInput/MessageInput.js +34 -34
  139. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  140. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js +3 -3
  141. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
  142. package/lib/commonjs/components/MessageInput/SendButton.js +5 -5
  143. package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
  144. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +7 -7
  145. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  146. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -1
  147. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +3 -3
  148. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  149. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +3 -3
  150. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  151. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js +3 -3
  152. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  153. package/lib/commonjs/components/MessageList/MessageList.js +26 -26
  154. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  155. package/lib/commonjs/components/MessageList/MessageSystem.js +6 -6
  156. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  157. package/lib/commonjs/components/MessageList/TypingIndicator.js +3 -3
  158. package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
  159. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +2 -2
  160. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  161. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  162. package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
  163. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  164. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
  165. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
  166. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  167. package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
  168. package/lib/commonjs/components/MessageOverlay/MessageActionList.js +3 -3
  169. package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -1
  170. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +6 -6
  171. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  172. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +26 -25
  173. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
  174. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +13 -13
  175. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  176. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js +19 -19
  177. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
  178. package/lib/commonjs/components/Reply/Reply.js +8 -8
  179. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  180. package/lib/commonjs/components/Thread/Thread.js +4 -4
  181. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  182. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +12 -12
  183. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  184. package/lib/commonjs/components/docs/data.js +44 -44
  185. package/lib/commonjs/components/docs/data.js.map +1 -1
  186. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +1 -1
  187. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  188. package/lib/commonjs/contexts/channelContext/ChannelContext.js +2 -2
  189. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  190. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js +2 -2
  191. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  192. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
  193. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  194. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
  195. package/lib/commonjs/contexts/chatContext/ChatContext.js +2 -2
  196. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  197. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  198. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  199. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js +1 -1
  200. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  201. package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
  202. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  203. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +2 -2
  204. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  205. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  206. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  207. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js +2 -2
  208. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  209. package/lib/commonjs/contexts/messagesContext/MessagesContext.js +2 -2
  210. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  211. package/lib/commonjs/contexts/overlayContext/OverlayContext.js +1 -1
  212. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  213. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +12 -12
  214. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  215. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  216. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  217. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +2 -2
  218. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  219. package/lib/commonjs/contexts/themeContext/utils/theme.js +7 -6
  220. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  221. package/lib/commonjs/contexts/threadContext/ThreadContext.js +2 -2
  222. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  223. package/lib/commonjs/contexts/translationContext/TranslationContext.js +2 -2
  224. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  225. package/lib/commonjs/contexts/typingContext/TypingContext.js +2 -2
  226. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
  227. package/lib/commonjs/icons/UserAdmin.js +62 -0
  228. package/lib/commonjs/icons/UserAdmin.js.map +1 -0
  229. package/lib/commonjs/icons/index.js +0 -26
  230. package/lib/commonjs/icons/index.js.map +1 -1
  231. package/lib/commonjs/init.js +13 -0
  232. package/lib/commonjs/init.js.map +1 -0
  233. package/lib/commonjs/utils/Streami18n.js.map +1 -1
  234. package/lib/commonjs/utils/getResizedImageUrl.js +8 -5
  235. package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -1
  236. package/lib/commonjs/utils/utils.js.map +1 -1
  237. package/lib/commonjs/version.json +1 -1
  238. package/lib/module/components/Attachment/Attachment.js +10 -10
  239. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  240. package/lib/module/components/Attachment/AttachmentActions.js +4 -4
  241. package/lib/module/components/Attachment/AttachmentActions.js.map +1 -1
  242. package/lib/module/components/Attachment/Card.js +15 -15
  243. package/lib/module/components/Attachment/Card.js.map +1 -1
  244. package/lib/module/components/Attachment/FileAttachment.js +8 -8
  245. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  246. package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -4
  247. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  248. package/lib/module/components/Attachment/Gallery.js +8 -8
  249. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  250. package/lib/module/components/Attachment/Giphy.js +112 -148
  251. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  252. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -1
  253. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -1
  254. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -1
  255. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -1
  256. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
  257. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -1
  258. package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -1
  259. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  260. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  261. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +16 -16
  262. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  263. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
  264. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  265. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +13 -13
  266. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  267. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +10 -10
  268. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  269. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  270. package/lib/module/components/Channel/Channel.js +13 -13
  271. package/lib/module/components/Channel/Channel.js.map +1 -1
  272. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  273. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  274. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  275. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  276. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  277. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  278. package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  279. package/lib/module/components/ChannelList/ChannelList.js +2 -2
  280. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  281. package/lib/module/components/ChannelList/ChannelListMessenger.js +14 -14
  282. package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
  283. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  284. package/lib/module/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  285. package/lib/module/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  286. package/lib/module/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  287. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  288. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  289. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
  290. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  291. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  292. package/lib/module/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  293. package/lib/module/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  294. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  295. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  296. package/lib/module/components/ChannelList/utils.js.map +1 -1
  297. package/lib/module/components/ChannelPreview/ChannelAvatar.js +2 -2
  298. package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  299. package/lib/module/components/ChannelPreview/ChannelPreview.js +2 -2
  300. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  301. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
  302. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  303. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js +12 -12
  304. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  305. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +1 -1
  306. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
  307. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
  308. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  309. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
  310. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  311. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
  312. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  313. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  314. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  315. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  316. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  317. package/lib/module/components/Chat/Chat.js +8 -4
  318. package/lib/module/components/Chat/Chat.js.map +1 -1
  319. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  320. package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
  321. package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
  322. package/lib/module/components/ImageGallery/ImageGallery.js +19 -19
  323. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  324. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +11 -11
  325. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  326. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
  327. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  328. package/lib/module/components/ImageGallery/components/ImageGrid.js +5 -5
  329. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  330. package/lib/module/components/Message/Message.js +6 -6
  331. package/lib/module/components/Message/Message.js.map +1 -1
  332. package/lib/module/components/Message/MessageSimple/MessageAvatar.js +4 -4
  333. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  334. package/lib/module/components/Message/MessageSimple/MessageContent.js +18 -18
  335. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  336. package/lib/module/components/Message/MessageSimple/MessageDeleted.js +5 -5
  337. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  338. package/lib/module/components/Message/MessageSimple/MessageFooter.js +20 -16
  339. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  340. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +4 -4
  341. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  342. package/lib/module/components/Message/MessageSimple/MessageReplies.js +10 -10
  343. package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  344. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js +3 -3
  345. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  346. package/lib/module/components/Message/MessageSimple/MessageSimple.js +6 -6
  347. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  348. package/lib/module/components/Message/MessageSimple/MessageStatus.js +9 -9
  349. package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  350. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +3 -3
  351. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  352. package/lib/module/components/Message/MessageSimple/ReactionList.js +51 -51
  353. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
  354. package/lib/module/components/Message/MessageSimple/utils/renderText.js +145 -64
  355. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  356. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +240 -0
  357. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
  358. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  359. package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  360. package/lib/module/components/Message/hooks/useMessageActions.js +11 -11
  361. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
  362. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  363. package/lib/module/components/Message/utils/removeReservedFields.js.map +1 -1
  364. package/lib/module/components/MessageInput/AttachButton.js +3 -3
  365. package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
  366. package/lib/module/components/MessageInput/CommandsButton.js +3 -3
  367. package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
  368. package/lib/module/components/MessageInput/FileUploadPreview.js +11 -11
  369. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  370. package/lib/module/components/MessageInput/ImageUploadPreview.js +7 -7
  371. package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
  372. package/lib/module/components/MessageInput/InputButtons.js +6 -6
  373. package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
  374. package/lib/module/components/MessageInput/MessageInput.js +34 -34
  375. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  376. package/lib/module/components/MessageInput/MoreOptionsButton.js +3 -3
  377. package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
  378. package/lib/module/components/MessageInput/SendButton.js +5 -5
  379. package/lib/module/components/MessageInput/SendButton.js.map +1 -1
  380. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +7 -7
  381. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  382. package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -1
  383. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +3 -3
  384. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  385. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +3 -3
  386. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  387. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js +3 -3
  388. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  389. package/lib/module/components/MessageList/MessageList.js +26 -26
  390. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  391. package/lib/module/components/MessageList/MessageSystem.js +6 -6
  392. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  393. package/lib/module/components/MessageList/TypingIndicator.js +3 -3
  394. package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
  395. package/lib/module/components/MessageList/TypingIndicatorContainer.js +2 -2
  396. package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  397. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  398. package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
  399. package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  400. package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
  401. package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
  402. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  403. package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
  404. package/lib/module/components/MessageOverlay/MessageActionList.js +3 -3
  405. package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -1
  406. package/lib/module/components/MessageOverlay/MessageActionListItem.js +6 -6
  407. package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  408. package/lib/module/components/MessageOverlay/MessageOverlay.js +26 -25
  409. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
  410. package/lib/module/components/MessageOverlay/OverlayReactionList.js +13 -13
  411. package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  412. package/lib/module/components/MessageOverlay/OverlayReactions.js +19 -19
  413. package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
  414. package/lib/module/components/Reply/Reply.js +8 -8
  415. package/lib/module/components/Reply/Reply.js.map +1 -1
  416. package/lib/module/components/Thread/Thread.js +4 -4
  417. package/lib/module/components/Thread/Thread.js.map +1 -1
  418. package/lib/module/components/Thread/components/ThreadFooterComponent.js +12 -12
  419. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  420. package/lib/module/components/docs/data.js +44 -44
  421. package/lib/module/components/docs/data.js.map +1 -1
  422. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +1 -1
  423. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  424. package/lib/module/contexts/channelContext/ChannelContext.js +2 -2
  425. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  426. package/lib/module/contexts/channelsContext/ChannelsContext.js +2 -2
  427. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  428. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
  429. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  430. package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
  431. package/lib/module/contexts/chatContext/ChatContext.js +2 -2
  432. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  433. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
  434. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  435. package/lib/module/contexts/keyboardContext/KeyboardContext.js +1 -1
  436. package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  437. package/lib/module/contexts/messageContext/MessageContext.js +2 -2
  438. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  439. package/lib/module/contexts/messageInputContext/MessageInputContext.js +2 -2
  440. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  441. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  442. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  443. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js +2 -2
  444. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  445. package/lib/module/contexts/messagesContext/MessagesContext.js +2 -2
  446. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  447. package/lib/module/contexts/overlayContext/OverlayContext.js +1 -1
  448. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  449. package/lib/module/contexts/overlayContext/OverlayProvider.js +12 -12
  450. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  451. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
  452. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  453. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +2 -2
  454. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  455. package/lib/module/contexts/themeContext/utils/theme.js +7 -6
  456. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  457. package/lib/module/contexts/threadContext/ThreadContext.js +2 -2
  458. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  459. package/lib/module/contexts/translationContext/TranslationContext.js +2 -2
  460. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  461. package/lib/module/contexts/typingContext/TypingContext.js +2 -2
  462. package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
  463. package/lib/module/icons/UserAdmin.js +62 -0
  464. package/lib/module/icons/UserAdmin.js.map +1 -0
  465. package/lib/module/icons/index.js +0 -26
  466. package/lib/module/icons/index.js.map +1 -1
  467. package/lib/module/init.js +13 -0
  468. package/lib/module/init.js.map +1 -0
  469. package/lib/module/utils/Streami18n.js.map +1 -1
  470. package/lib/module/utils/getResizedImageUrl.js +8 -5
  471. package/lib/module/utils/getResizedImageUrl.js.map +1 -1
  472. package/lib/module/utils/utils.js.map +1 -1
  473. package/lib/module/version.json +1 -1
  474. package/lib/typescript/components/Attachment/Attachment.d.ts +5 -5
  475. package/lib/typescript/components/Attachment/AttachmentActions.d.ts +4 -4
  476. package/lib/typescript/components/Attachment/Card.d.ts +4 -4
  477. package/lib/typescript/components/Attachment/FileAttachment.d.ts +5 -5
  478. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +4 -4
  479. package/lib/typescript/components/Attachment/Gallery.d.ts +5 -5
  480. package/lib/typescript/components/Attachment/Giphy.d.ts +6 -6
  481. package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts +3 -3
  482. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts +3 -3
  483. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts +3 -3
  484. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts +3 -3
  485. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +3 -3
  486. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts +3 -3
  487. package/lib/typescript/components/Attachment/utils/getAspectRatio.d.ts +2 -2
  488. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +4 -4
  489. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +3 -2
  490. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts +4 -4
  491. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +5 -5
  492. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +9 -9
  493. package/lib/typescript/components/Avatar/Avatar.d.ts +1 -1
  494. package/lib/typescript/components/Channel/Channel.d.ts +7 -7
  495. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +2 -2
  496. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +3 -3
  497. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +3 -3
  498. package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +3 -3
  499. package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +3 -3
  500. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +2 -2
  501. package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +2 -2
  502. package/lib/typescript/components/ChannelList/ChannelList.d.ts +14 -14
  503. package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +4 -4
  504. package/lib/typescript/components/ChannelList/hooks/listeners/useAddedToChannelNotification.d.ts +5 -5
  505. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelDeleted.d.ts +5 -5
  506. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelHidden.d.ts +5 -5
  507. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelTruncated.d.ts +5 -5
  508. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +5 -5
  509. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelVisible.d.ts +5 -5
  510. package/lib/typescript/components/ChannelList/hooks/listeners/useConnectionRecovered.d.ts +2 -2
  511. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessage.d.ts +4 -4
  512. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts +5 -5
  513. package/lib/typescript/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.d.ts +5 -5
  514. package/lib/typescript/components/ChannelList/hooks/listeners/useUserPresence.d.ts +4 -4
  515. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +2 -2
  516. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +7 -7
  517. package/lib/typescript/components/ChannelList/utils.d.ts +7 -7
  518. package/lib/typescript/components/ChannelPreview/ChannelAvatar.d.ts +3 -3
  519. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +5 -5
  520. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +4 -5
  521. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts +5 -5
  522. package/lib/typescript/components/ChannelPreview/ChannelPreviewMutedStatus.d.ts +3 -3
  523. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +3 -3
  524. package/lib/typescript/components/ChannelPreview/ChannelPreviewTitle.d.ts +3 -3
  525. package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts +3 -3
  526. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.d.ts +3 -3
  527. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts +4 -4
  528. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts +2 -2
  529. package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +5 -5
  530. package/lib/typescript/components/Chat/Chat.d.ts +3 -3
  531. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +2 -2
  532. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +2 -2
  533. package/lib/typescript/components/Chat/hooks/useMutedUsers.d.ts +2 -2
  534. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +9 -9
  535. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +10 -10
  536. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +10 -10
  537. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +10 -10
  538. package/lib/typescript/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.d.ts +1 -0
  539. package/lib/typescript/components/Message/Message.d.ts +11 -11
  540. package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts +4 -4
  541. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +4 -4
  542. package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts +5 -5
  543. package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +6 -6
  544. package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +4 -4
  545. package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts +4 -4
  546. package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts +3 -3
  547. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +4 -4
  548. package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +4 -4
  549. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +6 -6
  550. package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +4 -4
  551. package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +19 -5
  552. package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts +1 -0
  553. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +2 -2
  554. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +2 -2
  555. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +3 -3
  556. package/lib/typescript/components/Message/utils/messageActions.d.ts +5 -5
  557. package/lib/typescript/components/Message/utils/removeReservedFields.d.ts +2 -2
  558. package/lib/typescript/components/MessageInput/AttachButton.d.ts +4 -4
  559. package/lib/typescript/components/MessageInput/CommandsButton.d.ts +4 -4
  560. package/lib/typescript/components/MessageInput/FileUploadPreview.d.ts +4 -4
  561. package/lib/typescript/components/MessageInput/ImageUploadPreview.d.ts +4 -4
  562. package/lib/typescript/components/MessageInput/InputButtons.d.ts +5 -5
  563. package/lib/typescript/components/MessageInput/MessageInput.d.ts +4 -4
  564. package/lib/typescript/components/MessageInput/MoreOptionsButton.d.ts +4 -4
  565. package/lib/typescript/components/MessageInput/SendButton.d.ts +4 -4
  566. package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +2 -2
  567. package/lib/typescript/components/MessageInput/hooks/useCooldown.d.ts +2 -2
  568. package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +2 -2
  569. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +2 -2
  570. package/lib/typescript/components/MessageList/InlineLoadingMoreThreadIndicator.d.ts +2 -2
  571. package/lib/typescript/components/MessageList/MessageList.d.ts +7 -7
  572. package/lib/typescript/components/MessageList/MessageSystem.d.ts +4 -4
  573. package/lib/typescript/components/MessageList/TypingIndicator.d.ts +2 -2
  574. package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +4 -4
  575. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +5 -5
  576. package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts +2 -2
  577. package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +3 -3
  578. package/lib/typescript/components/MessageList/utils/getDateSeparators.d.ts +4 -4
  579. package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts +4 -4
  580. package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +2 -2
  581. package/lib/typescript/components/MessageList/utils/getReadStates.d.ts +8 -5
  582. package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +4 -4
  583. package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts +4 -3
  584. package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +4 -4
  585. package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts +6 -6
  586. package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +2 -2
  587. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +1 -1
  588. package/lib/typescript/components/Reply/Reply.d.ts +4 -4
  589. package/lib/typescript/components/Thread/Thread.d.ts +7 -7
  590. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +2 -2
  591. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +2 -2
  592. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +12 -12
  593. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +18 -18
  594. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +19 -19
  595. package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +17 -17
  596. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +11 -11
  597. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +8 -8
  598. package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts +2 -2
  599. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +12 -12
  600. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +33 -33
  601. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +2 -2
  602. package/lib/typescript/contexts/messageInputContext/hooks/useMessageDetailsForState.d.ts +3 -3
  603. package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +21 -21
  604. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +57 -57
  605. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +4 -4
  606. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts +2 -2
  607. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +8 -8
  608. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +20 -20
  609. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +6 -5
  610. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +10 -10
  611. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +2 -2
  612. package/lib/typescript/contexts/typingContext/TypingContext.d.ts +8 -8
  613. package/lib/typescript/icons/{Left.d.ts → UserAdmin.d.ts} +1 -1
  614. package/lib/typescript/icons/index.d.ts +0 -2
  615. package/lib/typescript/init.d.ts +2 -0
  616. package/lib/typescript/types/types.d.ts +16 -13
  617. package/lib/typescript/utils/Streami18n.d.ts +4 -4
  618. package/lib/typescript/utils/getResizedImageUrl.d.ts +2 -1
  619. package/lib/typescript/utils/utils.d.ts +21 -21
  620. package/package.json +3 -5
  621. package/src/components/Attachment/Attachment.tsx +15 -56
  622. package/src/components/Attachment/AttachmentActions.tsx +15 -55
  623. package/src/components/Attachment/Card.tsx +15 -48
  624. package/src/components/Attachment/FileAttachment.tsx +14 -48
  625. package/src/components/Attachment/FileAttachmentGroup.tsx +16 -57
  626. package/src/components/Attachment/Gallery.tsx +18 -59
  627. package/src/components/Attachment/Giphy.tsx +82 -125
  628. package/src/components/Attachment/__tests__/buildGallery.test.js +4 -4
  629. package/src/components/Attachment/utils/buildGallery/buildGallery.ts +5 -3
  630. package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +6 -10
  631. package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +5 -5
  632. package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +5 -3
  633. package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +5 -3
  634. package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +5 -3
  635. package/src/components/Attachment/utils/getAspectRatio.ts +4 -4
  636. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +21 -61
  637. package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +5 -3
  638. package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +12 -19
  639. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +14 -21
  640. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +21 -24
  641. package/src/components/Avatar/Avatar.tsx +1 -1
  642. package/src/components/Channel/Channel.tsx +174 -257
  643. package/src/components/Channel/hooks/useCreateChannelContext.ts +4 -19
  644. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +52 -68
  645. package/src/components/Channel/hooks/useCreateMessagesContext.ts +4 -19
  646. package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +3 -18
  647. package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +16 -32
  648. package/src/components/Channel/hooks/useCreateThreadContext.ts +4 -19
  649. package/src/components/Channel/hooks/useCreateTypingContext.ts +4 -19
  650. package/src/components/ChannelList/ChannelList.tsx +28 -49
  651. package/src/components/ChannelList/ChannelListMessenger.tsx +19 -70
  652. package/src/components/ChannelList/hooks/listeners/useAddedToChannelNotification.ts +14 -36
  653. package/src/components/ChannelList/hooks/listeners/useChannelDeleted.ts +13 -35
  654. package/src/components/ChannelList/hooks/listeners/useChannelHidden.ts +13 -35
  655. package/src/components/ChannelList/hooks/listeners/useChannelTruncated.ts +15 -37
  656. package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +13 -35
  657. package/src/components/ChannelList/hooks/listeners/useChannelVisible.ts +14 -36
  658. package/src/components/ChannelList/hooks/listeners/useConnectionRecovered.ts +3 -18
  659. package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +11 -33
  660. package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +13 -35
  661. package/src/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.ts +13 -35
  662. package/src/components/ChannelList/hooks/listeners/useUserPresence.ts +9 -31
  663. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +4 -19
  664. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +11 -29
  665. package/src/components/ChannelList/utils.ts +9 -42
  666. package/src/components/ChannelPreview/ChannelAvatar.tsx +5 -26
  667. package/src/components/ChannelPreview/ChannelPreview.tsx +18 -51
  668. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +11 -21
  669. package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +13 -46
  670. package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +5 -26
  671. package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +6 -27
  672. package/src/components/ChannelPreview/ChannelPreviewTitle.tsx +5 -26
  673. package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +5 -26
  674. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.ts +7 -28
  675. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +6 -27
  676. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +7 -28
  677. package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +27 -78
  678. package/src/components/Chat/Chat.tsx +15 -40
  679. package/src/components/Chat/hooks/useCreateChatContext.ts +4 -19
  680. package/src/components/Chat/hooks/useIsOnline.ts +4 -19
  681. package/src/components/Chat/hooks/useMutedUsers.ts +5 -20
  682. package/src/components/ImageGallery/ImageGallery.tsx +30 -40
  683. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +19 -11
  684. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +42 -20
  685. package/src/components/ImageGallery/components/ImageGrid.tsx +45 -30
  686. package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +31 -0
  687. package/src/components/Message/Message.tsx +40 -93
  688. package/src/components/Message/MessageSimple/MessageAvatar.tsx +13 -54
  689. package/src/components/Message/MessageSimple/MessageContent.tsx +18 -61
  690. package/src/components/Message/MessageSimple/MessageDeleted.tsx +17 -58
  691. package/src/components/Message/MessageSimple/MessageFooter.tsx +23 -65
  692. package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +13 -54
  693. package/src/components/Message/MessageSimple/MessageReplies.tsx +15 -56
  694. package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx +5 -26
  695. package/src/components/Message/MessageSimple/MessageSimple.tsx +16 -57
  696. package/src/components/Message/MessageSimple/MessageStatus.tsx +13 -54
  697. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +19 -66
  698. package/src/components/Message/MessageSimple/ReactionList.tsx +47 -88
  699. package/src/components/Message/MessageSimple/utils/renderText.test.tsx +70 -0
  700. package/src/components/Message/MessageSimple/utils/renderText.tsx +89 -74
  701. package/src/components/Message/hooks/useCreateMessageContext.ts +4 -19
  702. package/src/components/Message/hooks/useMessageActionHandlers.ts +8 -23
  703. package/src/components/Message/hooks/useMessageActions.tsx +8 -23
  704. package/src/components/Message/utils/messageActions.ts +7 -34
  705. package/src/components/Message/utils/removeReservedFields.ts +3 -18
  706. package/src/components/MessageInput/AttachButton.tsx +13 -54
  707. package/src/components/MessageInput/CommandsButton.tsx +15 -56
  708. package/src/components/MessageInput/FileUploadPreview.tsx +15 -57
  709. package/src/components/MessageInput/ImageUploadPreview.tsx +13 -55
  710. package/src/components/MessageInput/InputButtons.tsx +13 -54
  711. package/src/components/MessageInput/MessageInput.tsx +25 -66
  712. package/src/components/MessageInput/MoreOptionsButton.tsx +13 -54
  713. package/src/components/MessageInput/SendButton.tsx +13 -54
  714. package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +4 -19
  715. package/src/components/MessageInput/hooks/useCooldown.ts +5 -19
  716. package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +3 -18
  717. package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +3 -18
  718. package/src/components/MessageList/InlineLoadingMoreThreadIndicator.tsx +3 -18
  719. package/src/components/MessageList/MessageList.tsx +34 -76
  720. package/src/components/MessageList/MessageSystem.tsx +5 -26
  721. package/src/components/MessageList/TypingIndicator.tsx +3 -18
  722. package/src/components/MessageList/TypingIndicatorContainer.tsx +14 -47
  723. package/src/components/MessageList/hooks/useMessageList.ts +19 -52
  724. package/src/components/MessageList/hooks/useTypingString.ts +5 -20
  725. package/src/components/MessageList/utils/filterTypingUsers.ts +7 -28
  726. package/src/components/MessageList/utils/getDateSeparators.ts +6 -27
  727. package/src/components/MessageList/utils/getGroupStyles.ts +6 -27
  728. package/src/components/MessageList/utils/getLastReceivedMessage.ts +3 -18
  729. package/src/components/MessageList/utils/getReadStates.ts +5 -20
  730. package/src/components/MessageOverlay/MessageActionList.tsx +15 -56
  731. package/src/components/MessageOverlay/MessageActionListItem.tsx +20 -9
  732. package/src/components/MessageOverlay/MessageOverlay.tsx +38 -81
  733. package/src/components/MessageOverlay/OverlayReactionList.tsx +21 -74
  734. package/src/components/MessageOverlay/OverlayReactions.tsx +3 -18
  735. package/src/components/Reply/Reply.tsx +22 -69
  736. package/src/components/Thread/Thread.tsx +20 -53
  737. package/src/components/Thread/components/ThreadFooterComponent.tsx +12 -47
  738. package/src/components/docs/data.js +38 -37
  739. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +9 -7
  740. package/src/contexts/channelContext/ChannelContext.tsx +15 -48
  741. package/src/contexts/channelsContext/ChannelsContext.tsx +22 -59
  742. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +38 -115
  743. package/src/contexts/channelsStateContext/useChannelState.ts +27 -60
  744. package/src/contexts/chatContext/ChatContext.tsx +14 -49
  745. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +12 -54
  746. package/src/contexts/keyboardContext/KeyboardContext.tsx +13 -7
  747. package/src/contexts/messageContext/MessageContext.tsx +15 -48
  748. package/src/contexts/messageInputContext/MessageInputContext.tsx +61 -110
  749. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +5 -20
  750. package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +7 -31
  751. package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +24 -71
  752. package/src/contexts/messagesContext/MessagesContext.tsx +60 -99
  753. package/src/contexts/overlayContext/OverlayContext.tsx +18 -26
  754. package/src/contexts/overlayContext/OverlayProvider.tsx +7 -22
  755. package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +13 -53
  756. package/src/contexts/suggestionsContext/SuggestionsContext.tsx +39 -40
  757. package/src/contexts/themeContext/utils/theme.ts +13 -11
  758. package/src/contexts/threadContext/ThreadContext.tsx +13 -46
  759. package/src/contexts/translationContext/TranslationContext.tsx +12 -7
  760. package/src/contexts/typingContext/TypingContext.tsx +11 -44
  761. package/src/icons/UserAdmin.tsx +23 -0
  762. package/src/icons/index.ts +0 -2
  763. package/src/init.ts +5 -0
  764. package/src/types/types.ts +16 -18
  765. package/src/utils/Streami18n.ts +3 -3
  766. package/src/utils/__tests__/getResizedImageUrl.test.js +56 -0
  767. package/src/utils/getResizedImageUrl.ts +15 -13
  768. package/src/utils/utils.ts +63 -128
  769. package/src/version.json +1 -1
  770. package/lib/commonjs/icons/Left.js +0 -38
  771. package/lib/commonjs/icons/Left.js.map +0 -1
  772. package/lib/commonjs/icons/Right.js +0 -38
  773. package/lib/commonjs/icons/Right.js.map +0 -1
  774. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js +0 -100
  775. package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js.map +0 -1
  776. package/lib/commonjs/styleguideComponents/BottomSheet.js +0 -25
  777. package/lib/commonjs/styleguideComponents/BottomSheet.js.map +0 -1
  778. package/lib/commonjs/styleguideComponents/JsDoc.js +0 -87
  779. package/lib/commonjs/styleguideComponents/JsDoc.js.map +0 -1
  780. package/lib/commonjs/styleguideComponents/Markdown.js +0 -12
  781. package/lib/commonjs/styleguideComponents/Markdown.js.map +0 -1
  782. package/lib/commonjs/styleguideComponents/PathlineRenderer.js +0 -92
  783. package/lib/commonjs/styleguideComponents/PathlineRenderer.js.map +0 -1
  784. package/lib/commonjs/styleguideComponents/PropsRenderer.js +0 -267
  785. package/lib/commonjs/styleguideComponents/PropsRenderer.js.map +0 -1
  786. package/lib/commonjs/styleguideComponents/Reanimated.js +0 -2
  787. package/lib/commonjs/styleguideComponents/Reanimated.js.map +0 -1
  788. package/lib/commonjs/styleguideComponents/Wrapper.js +0 -29
  789. package/lib/commonjs/styleguideComponents/Wrapper.js.map +0 -1
  790. package/lib/commonjs/styleguideComponents/register-react-native-web.js +0 -44
  791. package/lib/commonjs/styleguideComponents/register-react-native-web.js.map +0 -1
  792. package/lib/commonjs/styleguideComponents/resolveAssetSource.js +0 -11
  793. package/lib/commonjs/styleguideComponents/resolveAssetSource.js.map +0 -1
  794. package/lib/module/icons/Left.js +0 -38
  795. package/lib/module/icons/Left.js.map +0 -1
  796. package/lib/module/icons/Right.js +0 -38
  797. package/lib/module/icons/Right.js.map +0 -1
  798. package/lib/module/styleguideComponents/ArgumentsRenderer.js +0 -100
  799. package/lib/module/styleguideComponents/ArgumentsRenderer.js.map +0 -1
  800. package/lib/module/styleguideComponents/BottomSheet.js +0 -25
  801. package/lib/module/styleguideComponents/BottomSheet.js.map +0 -1
  802. package/lib/module/styleguideComponents/JsDoc.js +0 -87
  803. package/lib/module/styleguideComponents/JsDoc.js.map +0 -1
  804. package/lib/module/styleguideComponents/Markdown.js +0 -12
  805. package/lib/module/styleguideComponents/Markdown.js.map +0 -1
  806. package/lib/module/styleguideComponents/PathlineRenderer.js +0 -92
  807. package/lib/module/styleguideComponents/PathlineRenderer.js.map +0 -1
  808. package/lib/module/styleguideComponents/PropsRenderer.js +0 -267
  809. package/lib/module/styleguideComponents/PropsRenderer.js.map +0 -1
  810. package/lib/module/styleguideComponents/Reanimated.js +0 -2
  811. package/lib/module/styleguideComponents/Reanimated.js.map +0 -1
  812. package/lib/module/styleguideComponents/Wrapper.js +0 -29
  813. package/lib/module/styleguideComponents/Wrapper.js.map +0 -1
  814. package/lib/module/styleguideComponents/register-react-native-web.js +0 -44
  815. package/lib/module/styleguideComponents/register-react-native-web.js.map +0 -1
  816. package/lib/module/styleguideComponents/resolveAssetSource.js +0 -11
  817. package/lib/module/styleguideComponents/resolveAssetSource.js.map +0 -1
  818. package/lib/typescript/icons/Right.d.ts +0 -3
  819. package/src/icons/Left.tsx +0 -12
  820. package/src/icons/Right.tsx +0 -12
  821. package/src/styleguideComponents/ArgumentsRenderer.tsx +0 -60
  822. package/src/styleguideComponents/BottomSheet.tsx +0 -3
  823. package/src/styleguideComponents/JsDoc.tsx +0 -45
  824. package/src/styleguideComponents/Markdown.tsx +0 -1
  825. package/src/styleguideComponents/PathlineRenderer.tsx +0 -45
  826. package/src/styleguideComponents/PropsRenderer.tsx +0 -141
  827. package/src/styleguideComponents/Reanimated.tsx +0 -0
  828. package/src/styleguideComponents/Wrapper.tsx +0 -7
  829. package/src/styleguideComponents/register-react-native-web.js +0 -13
  830. package/src/styleguideComponents/resolveAssetSource.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["OverlayReactions.tsx"],"names":["styles","StyleSheet","create","avatarContainer","padding","avatarInnerContainer","alignSelf","avatarName","flex","fontSize","fontWeight","paddingTop","textAlign","avatarNameContainer","alignItems","flexDirection","flexGrow","container","borderRadius","marginTop","width","flatListContainer","paddingHorizontal","paddingVertical","flatListContentContainer","paddingBottom","reactionBubble","justifyContent","position","reactionBubbleBackground","height","title","reactionData","Icon","LoveReaction","type","ThumbsUpReaction","ThumbsDownReaction","LOLReaction","WutReaction","ReactionIcon","pathFill","size","supportedReactions","find","reaction","Unknown","OverlayReactions","props","overlayAlignment","alignment","reactions","showScreen","OverlayReactionsAvatar","layoutHeight","layoutWidth","theme","colors","accent_blue","black","grey_gainsboro","white","overlay","overlayPadding","avatarSize","radius","titleStyle","supportedReactionTypes","map","supportedReaction","filteredReactions","filter","includes","numColumns","Math","floor","Number","maxHeight","renderItem","item","name","x","y","left","top","absoluteFill","backgroundColor","borderColor","borderWidth","color","showScreenStyle","transform","translateY","value","translateX","scale","layout","nativeEvent","index","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, useWindowDimensions, View, ViewStyle } from 'react-native';\nimport { FlatList } from 'react-native-gesture-handler';\nimport Animated, { interpolate, useAnimatedStyle, useSharedValue } from 'react-native-reanimated';\nimport Svg, { Circle } from 'react-native-svg';\n\nimport type { Alignment } from '../../contexts/messageContext/MessageContext';\nimport type { MessageOverlayContextValue } from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n LOLReaction,\n LoveReaction,\n ThumbsDownReaction,\n ThumbsUpReaction,\n Unknown,\n WutReaction,\n} from '../../icons';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../types/types';\nimport type { ReactionData } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n avatarContainer: {\n padding: 8,\n },\n avatarInnerContainer: {\n alignSelf: 'center',\n },\n avatarName: {\n flex: 1,\n fontSize: 12,\n fontWeight: '700',\n paddingTop: 6,\n textAlign: 'center',\n },\n avatarNameContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n flexGrow: 1,\n },\n container: {\n alignItems: 'center',\n borderRadius: 16,\n marginTop: 8,\n width: '100%',\n },\n flatListContainer: {\n paddingHorizontal: 12,\n paddingVertical: 8,\n },\n flatListContentContainer: {\n alignItems: 'center',\n paddingBottom: 12,\n },\n reactionBubble: {\n alignItems: 'center',\n borderRadius: 24,\n justifyContent: 'center',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n borderRadius: 24,\n height: 24,\n position: 'absolute',\n width: 24,\n },\n title: {\n fontSize: 16,\n fontWeight: '700',\n paddingTop: 16,\n },\n});\n\nconst reactionData: ReactionData[] = [\n {\n Icon: LoveReaction,\n type: 'love',\n },\n {\n Icon: ThumbsUpReaction,\n type: 'like',\n },\n {\n Icon: ThumbsDownReaction,\n type: 'sad',\n },\n {\n Icon: LOLReaction,\n type: 'haha',\n },\n {\n Icon: WutReaction,\n type: 'wow',\n },\n];\n\nexport type Reaction = {\n alignment: Alignment;\n name: string;\n type: string;\n image?: string;\n};\n\nexport type OverlayReactionsProps<\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<MessageOverlayContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'OverlayReactionsAvatar'> & {\n reactions: Reaction[];\n showScreen: Animated.SharedValue<number>;\n title: string;\n alignment?: Alignment;\n supportedReactions?: ReactionData[];\n};\n\nconst ReactionIcon: React.FC<\n Pick<Reaction, 'type'> & {\n pathFill: string;\n size: number;\n supportedReactions: ReactionData[];\n }\n> = ({ pathFill, size, supportedReactions, type }) => {\n const Icon = supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n return <Icon height={size} pathFill={pathFill} width={size} />;\n};\n\n/**\n * OverlayReactions - A high level component which implements all the logic required for message overlay reactions\n */\nexport const OverlayReactions: React.FC<OverlayReactionsProps> = (props) => {\n const {\n alignment: overlayAlignment,\n reactions,\n supportedReactions = reactionData,\n showScreen,\n title,\n OverlayReactionsAvatar,\n } = props;\n const layoutHeight = useSharedValue(0);\n const layoutWidth = useSharedValue(0);\n\n const {\n theme: {\n colors: { accent_blue, black, grey_gainsboro, white },\n overlay: {\n padding: overlayPadding,\n reactions: {\n avatarContainer,\n avatarName,\n avatarSize,\n container,\n flatListContainer,\n radius,\n reactionBubble,\n reactionBubbleBackground,\n title: titleStyle,\n },\n },\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n const height = useWindowDimensions().height;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n\n const filteredReactions = reactions.filter((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n const numColumns = Math.floor(\n (width -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingHorizontal || 0) ||\n styles.flatListContainer.paddingHorizontal) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2) /\n (avatarSize + (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding) * 2),\n );\n\n const maxHeight = Math.floor(\n height -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingVertical || 0) ||\n styles.flatListContainer.paddingVertical) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2,\n );\n\n const renderItem = ({ item }: { item: Reaction }) => {\n const { alignment = 'left', name, type } = item;\n const x = avatarSize / 2 - (avatarSize / (radius * 4)) * (alignment === 'left' ? 1 : -1);\n const y = avatarSize - radius;\n\n const left =\n alignment === 'left'\n ? x -\n (Number(reactionBubbleBackground.width || 0) || styles.reactionBubbleBackground.width) +\n radius\n : x - radius;\n const top =\n y -\n radius -\n (Number(reactionBubbleBackground.height || 0) || styles.reactionBubbleBackground.height);\n\n return (\n <View style={[styles.avatarContainer, avatarContainer]}>\n <View style={styles.avatarInnerContainer}>\n <OverlayReactionsAvatar reaction={item} size={avatarSize} />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n <Circle\n cx={x}\n cy={y}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n borderColor: alignment === 'left' ? white : grey_gainsboro,\n borderWidth: radius / 2,\n left,\n top,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2 - radius / 2}\n />\n </Svg>\n </View>\n <View\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n height:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n left,\n top,\n width:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n },\n reactionBubble,\n ]}\n >\n <ReactionIcon\n pathFill={accent_blue}\n size={(reactionBubble.borderRadius || styles.reactionBubble.borderRadius) / 2}\n supportedReactions={supportedReactions}\n type={type}\n />\n </View>\n </View>\n </View>\n <View style={styles.avatarNameContainer}>\n <Text style={[styles.avatarName, { color: black }, avatarName]}>{name}</Text>\n </View>\n </View>\n );\n };\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-layoutHeight.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [overlayAlignment === 'left' ? -layoutWidth.value / 2 : layoutWidth.value / 2, 0],\n ),\n },\n {\n scale: showScreen.value,\n },\n ],\n }),\n [overlayAlignment],\n );\n\n return (\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n layoutWidth.value = layout.width;\n layoutHeight.value = layout.height;\n }}\n style={[styles.container, { backgroundColor: white }, container, showScreenStyle]}\n >\n <Text style={[styles.title, { color: black }, titleStyle]}>{title}</Text>\n <FlatList\n contentContainerStyle={styles.flatListContentContainer}\n data={filteredReactions}\n keyExtractor={({ name }, index) => `${name}_${index}`}\n numColumns={numColumns}\n renderItem={renderItem}\n style={[styles.flatListContainer, flatListContainer, { maxHeight: maxHeight / numColumns }]}\n />\n </Animated.View>\n );\n};\n\nOverlayReactions.displayName = 'OverlayReactions{overlay{reactions}}';\n"]}
1
+ {"version":3,"sources":["OverlayReactions.tsx"],"names":["styles","StyleSheet","create","avatarContainer","padding","avatarInnerContainer","alignSelf","avatarName","flex","fontSize","fontWeight","paddingTop","textAlign","avatarNameContainer","alignItems","flexDirection","flexGrow","container","borderRadius","marginTop","width","flatListContainer","paddingHorizontal","paddingVertical","flatListContentContainer","paddingBottom","reactionBubble","justifyContent","position","reactionBubbleBackground","height","title","reactionData","Icon","LoveReaction","type","ThumbsUpReaction","ThumbsDownReaction","LOLReaction","WutReaction","ReactionIcon","pathFill","size","supportedReactions","find","reaction","Unknown","OverlayReactions","props","overlayAlignment","alignment","reactions","showScreen","OverlayReactionsAvatar","layoutHeight","layoutWidth","theme","colors","accent_blue","black","grey_gainsboro","white","overlay","overlayPadding","avatarSize","radius","titleStyle","supportedReactionTypes","map","supportedReaction","filteredReactions","filter","includes","numColumns","Math","floor","Number","maxHeight","renderItem","item","name","x","y","left","top","absoluteFill","backgroundColor","borderColor","borderWidth","color","showScreenStyle","transform","translateY","value","translateX","scale","layout","nativeEvent","index","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, useWindowDimensions, View, ViewStyle } from 'react-native';\nimport { FlatList } from 'react-native-gesture-handler';\nimport Animated, { interpolate, useAnimatedStyle, useSharedValue } from 'react-native-reanimated';\nimport Svg, { Circle } from 'react-native-svg';\n\nimport type { Alignment } from '../../contexts/messageContext/MessageContext';\nimport type { MessageOverlayContextValue } from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n LOLReaction,\n LoveReaction,\n ThumbsDownReaction,\n ThumbsUpReaction,\n Unknown,\n WutReaction,\n} from '../../icons';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport type { ReactionData } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n avatarContainer: {\n padding: 8,\n },\n avatarInnerContainer: {\n alignSelf: 'center',\n },\n avatarName: {\n flex: 1,\n fontSize: 12,\n fontWeight: '700',\n paddingTop: 6,\n textAlign: 'center',\n },\n avatarNameContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n flexGrow: 1,\n },\n container: {\n alignItems: 'center',\n borderRadius: 16,\n marginTop: 8,\n width: '100%',\n },\n flatListContainer: {\n paddingHorizontal: 12,\n paddingVertical: 8,\n },\n flatListContentContainer: {\n alignItems: 'center',\n paddingBottom: 12,\n },\n reactionBubble: {\n alignItems: 'center',\n borderRadius: 24,\n justifyContent: 'center',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n borderRadius: 24,\n height: 24,\n position: 'absolute',\n width: 24,\n },\n title: {\n fontSize: 16,\n fontWeight: '700',\n paddingTop: 16,\n },\n});\n\nconst reactionData: ReactionData[] = [\n {\n Icon: LoveReaction,\n type: 'love',\n },\n {\n Icon: ThumbsUpReaction,\n type: 'like',\n },\n {\n Icon: ThumbsDownReaction,\n type: 'sad',\n },\n {\n Icon: LOLReaction,\n type: 'haha',\n },\n {\n Icon: WutReaction,\n type: 'wow',\n },\n];\n\nexport type Reaction = {\n alignment: Alignment;\n name: string;\n type: string;\n image?: string;\n};\n\nexport type OverlayReactionsProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageOverlayContextValue<StreamChatGenerics>, 'OverlayReactionsAvatar'> & {\n reactions: Reaction[];\n showScreen: Animated.SharedValue<number>;\n title: string;\n alignment?: Alignment;\n supportedReactions?: ReactionData[];\n};\n\nconst ReactionIcon: React.FC<\n Pick<Reaction, 'type'> & {\n pathFill: string;\n size: number;\n supportedReactions: ReactionData[];\n }\n> = ({ pathFill, size, supportedReactions, type }) => {\n const Icon = supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n return <Icon height={size} pathFill={pathFill} width={size} />;\n};\n\n/**\n * OverlayReactions - A high level component which implements all the logic required for message overlay reactions\n */\nexport const OverlayReactions: React.FC<OverlayReactionsProps> = (props) => {\n const {\n alignment: overlayAlignment,\n reactions,\n supportedReactions = reactionData,\n showScreen,\n title,\n OverlayReactionsAvatar,\n } = props;\n const layoutHeight = useSharedValue(0);\n const layoutWidth = useSharedValue(0);\n\n const {\n theme: {\n colors: { accent_blue, black, grey_gainsboro, white },\n overlay: {\n padding: overlayPadding,\n reactions: {\n avatarContainer,\n avatarName,\n avatarSize,\n container,\n flatListContainer,\n radius,\n reactionBubble,\n reactionBubbleBackground,\n title: titleStyle,\n },\n },\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n const height = useWindowDimensions().height;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n\n const filteredReactions = reactions.filter((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n const numColumns = Math.floor(\n (width -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingHorizontal || 0) ||\n styles.flatListContainer.paddingHorizontal) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2) /\n (avatarSize + (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding) * 2),\n );\n\n const maxHeight = Math.floor(\n height -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingVertical || 0) ||\n styles.flatListContainer.paddingVertical) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2,\n );\n\n const renderItem = ({ item }: { item: Reaction }) => {\n const { alignment = 'left', name, type } = item;\n const x = avatarSize / 2 - (avatarSize / (radius * 4)) * (alignment === 'left' ? 1 : -1);\n const y = avatarSize - radius;\n\n const left =\n alignment === 'left'\n ? x -\n (Number(reactionBubbleBackground.width || 0) || styles.reactionBubbleBackground.width) +\n radius\n : x - radius;\n const top =\n y -\n radius -\n (Number(reactionBubbleBackground.height || 0) || styles.reactionBubbleBackground.height);\n\n return (\n <View style={[styles.avatarContainer, avatarContainer]}>\n <View style={styles.avatarInnerContainer}>\n <OverlayReactionsAvatar reaction={item} size={avatarSize} />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n <Circle\n cx={x}\n cy={y}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n borderColor: alignment === 'left' ? white : grey_gainsboro,\n borderWidth: radius / 2,\n left,\n top,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2 - radius / 2}\n />\n </Svg>\n </View>\n <View\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n height:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n left,\n top,\n width:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n },\n reactionBubble,\n ]}\n >\n <ReactionIcon\n pathFill={accent_blue}\n size={(reactionBubble.borderRadius || styles.reactionBubble.borderRadius) / 2}\n supportedReactions={supportedReactions}\n type={type}\n />\n </View>\n </View>\n </View>\n <View style={styles.avatarNameContainer}>\n <Text style={[styles.avatarName, { color: black }, avatarName]}>{name}</Text>\n </View>\n </View>\n );\n };\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-layoutHeight.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [overlayAlignment === 'left' ? -layoutWidth.value / 2 : layoutWidth.value / 2, 0],\n ),\n },\n {\n scale: showScreen.value,\n },\n ],\n }),\n [overlayAlignment],\n );\n\n return (\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n layoutWidth.value = layout.width;\n layoutHeight.value = layout.height;\n }}\n style={[styles.container, { backgroundColor: white }, container, showScreenStyle]}\n >\n <Text style={[styles.title, { color: black }, titleStyle]}>{title}</Text>\n <FlatList\n contentContainerStyle={styles.flatListContentContainer}\n data={filteredReactions}\n keyExtractor={({ name }, index) => `${name}_${index}`}\n numColumns={numColumns}\n renderItem={renderItem}\n style={[styles.flatListContainer, flatListContainer, { maxHeight: maxHeight / numColumns }]}\n />\n </Animated.View>\n );\n};\n\nOverlayReactions.displayName = 'OverlayReactions{overlay{reactions}}';\n"]}
@@ -125,7 +125,7 @@ var ReplyWithContext = function ReplyWithContext(props) {
125
125
  __self: _this,
126
126
  __source: {
127
127
  fileName: _jsxFileName,
128
- lineNumber: 151,
128
+ lineNumber: 132,
129
129
  columnNumber: 5
130
130
  }
131
131
  }, _react["default"].createElement(MessageAvatar, {
@@ -136,7 +136,7 @@ var ReplyWithContext = function ReplyWithContext(props) {
136
136
  __self: _this,
137
137
  __source: {
138
138
  fileName: _jsxFileName,
139
- lineNumber: 152,
139
+ lineNumber: 133,
140
140
  columnNumber: 7
141
141
  }
142
142
  }), _react["default"].createElement(_reactNative.View, {
@@ -148,7 +148,7 @@ var ReplyWithContext = function ReplyWithContext(props) {
148
148
  __self: _this,
149
149
  __source: {
150
150
  fileName: _jsxFileName,
151
- lineNumber: 153,
151
+ lineNumber: 134,
152
152
  columnNumber: 7
153
153
  }
154
154
  }, !error && lastAttachment ? messageType === 'file' ? _react["default"].createElement(_reactNative.View, {
@@ -156,7 +156,7 @@ var ReplyWithContext = function ReplyWithContext(props) {
156
156
  __self: _this,
157
157
  __source: {
158
158
  fileName: _jsxFileName,
159
- lineNumber: 168,
159
+ lineNumber: 149,
160
160
  columnNumber: 13
161
161
  }
162
162
  }, _react["default"].createElement(FileAttachmentIcon, {
@@ -165,7 +165,7 @@ var ReplyWithContext = function ReplyWithContext(props) {
165
165
  __self: _this,
166
166
  __source: {
167
167
  fileName: _jsxFileName,
168
- lineNumber: 175,
168
+ lineNumber: 156,
169
169
  columnNumber: 15
170
170
  }
171
171
  })) : hasImage ? _react["default"].createElement(_reactNative.Image, {
@@ -183,7 +183,7 @@ var ReplyWithContext = function ReplyWithContext(props) {
183
183
  __self: _this,
184
184
  __source: {
185
185
  fileName: _jsxFileName,
186
- lineNumber: 178,
186
+ lineNumber: 159,
187
187
  columnNumber: 13
188
188
  }
189
189
  }) : null : null, _react["default"].createElement(_MessageTextContainer.MessageTextContainer, {
@@ -206,7 +206,7 @@ var ReplyWithContext = function ReplyWithContext(props) {
206
206
  __self: _this,
207
207
  __source: {
208
208
  fileName: _jsxFileName,
209
- lineNumber: 199,
209
+ lineNumber: 180,
210
210
  columnNumber: 9
211
211
  }
212
212
  })));
@@ -250,7 +250,7 @@ var Reply = function Reply(props) {
250
250
  __self: _this,
251
251
  __source: {
252
252
  fileName: _jsxFileName,
253
- lineNumber: 323,
253
+ lineNumber: 284,
254
254
  columnNumber: 5
255
255
  }
256
256
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["Reply.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","fileAttachmentContainer","paddingLeft","paddingVertical","imageAttachment","borderRadius","height","marginLeft","marginVertical","width","messageContainer","borderBottomLeftRadius","borderBottomRightRadius","borderTopLeftRadius","borderTopRightRadius","flexGrow","flexShrink","text","fontSize","textContainer","maxWidth","undefined","paddingHorizontal","ReplyWithContext","props","FileAttachmentIcon","attachmentSize","MessageAvatar","quotedMessage","stylesProp","t","error","setError","theme","colors","blue_alice","border","grey","transparent","white","deletedText","messageSimple","content","reply","markdownStyles","lastAttachment","attachments","slice","messageType","type","title_link","og_scrape_url","image_url","thumb_url","hasImage","onlyEmojis","emojiRegex","test","backgroundColor","borderColor","borderWidth","mime_type","uri","url","deleted_at","em","color","length","title","marginRight","Number","areEqual","prevProps","nextProps","prevQuotedMessage","nextQuotedMessage","quotedMessageEqual","id","MemoizedReply","React","memo","Reply","message","FileIconDefault","MessageAvatarDefault","editing","quotedEditingMessage","quoted_message","displayName"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport { Image, ImageStyle, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport merge from 'lodash/merge';\n\nimport { useMessageContext } from '../../contexts/messageContext/MessageContext';\nimport {\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../types/types';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\nimport { emojiRegex } from '../../utils/utils';\n\nimport { FileIcon as FileIconDefault } from '../Attachment/FileIcon';\nimport { MessageAvatar as MessageAvatarDefault } from '../Message/MessageSimple/MessageAvatar';\nimport { MessageTextContainer } from '../Message/MessageSimple/MessageTextContainer';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n },\n fileAttachmentContainer: { paddingLeft: 8, paddingVertical: 8 },\n imageAttachment: {\n borderRadius: 8,\n height: 32,\n marginLeft: 8,\n marginVertical: 8,\n width: 32,\n },\n messageContainer: {\n alignItems: 'flex-start',\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 12,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n flexDirection: 'row',\n flexGrow: 1,\n flexShrink: 1,\n },\n text: { fontSize: 12 },\n textContainer: { maxWidth: undefined, paddingHorizontal: 8 },\n});\n\ntype ReplyPropsWithContext<\n At extends DefaultAttachmentType = 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<MessageInputContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'quotedMessage'> &\n Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'FileAttachmentIcon' | 'MessageAvatar'> &\n Pick<TranslationContextValue, 't'> & {\n attachmentSize?: number;\n styles?: Partial<{\n container: ViewStyle;\n fileAttachmentContainer: ViewStyle;\n imageAttachment: ImageStyle;\n messageContainer: ViewStyle;\n textContainer: ViewStyle;\n }>;\n };\n\nconst ReplyWithContext = <\n At extends DefaultAttachmentType = 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: ReplyPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n FileAttachmentIcon,\n attachmentSize = 40,\n MessageAvatar,\n quotedMessage,\n styles: stylesProp = {},\n t,\n } = props;\n\n const [error, setError] = useState(false);\n\n const {\n theme: {\n colors: { blue_alice, border, grey, transparent, white },\n messageSimple: {\n content: { deletedText },\n },\n reply: {\n container,\n fileAttachmentContainer,\n imageAttachment,\n markdownStyles,\n messageContainer,\n textContainer,\n },\n },\n } = useTheme();\n\n if (typeof quotedMessage === 'boolean') return null;\n\n const lastAttachment = quotedMessage.attachments?.slice(-1)[0];\n\n const messageType = lastAttachment\n ? lastAttachment.type === 'file' || lastAttachment.type === 'audio'\n ? 'file'\n : lastAttachment.type === 'image' &&\n !lastAttachment.title_link &&\n !lastAttachment.og_scrape_url\n ? lastAttachment.image_url || lastAttachment.thumb_url\n ? 'image'\n : undefined\n : lastAttachment.type === 'giphy' || lastAttachment.type === 'imgur'\n ? 'giphy'\n : 'other'\n : undefined;\n\n const hasImage =\n !error &&\n lastAttachment &&\n messageType !== 'file' &&\n (lastAttachment.image_url || lastAttachment.thumb_url || lastAttachment.og_scrape_url);\n\n const onlyEmojis = !lastAttachment && !!quotedMessage.text && emojiRegex.test(quotedMessage.text);\n\n return (\n <View style={[styles.container, container, stylesProp.container]}>\n <MessageAvatar alignment={'left'} lastGroupMessage message={quotedMessage} size={24} />\n <View\n style={[\n styles.messageContainer,\n {\n backgroundColor:\n messageType === 'other' ? blue_alice : messageType === 'giphy' ? transparent : white,\n borderColor: border,\n borderWidth: messageType === 'other' ? 0 : 1,\n },\n messageContainer,\n stylesProp.messageContainer,\n ]}\n >\n {!error && lastAttachment ? (\n messageType === 'file' ? (\n <View\n style={[\n styles.fileAttachmentContainer,\n fileAttachmentContainer,\n stylesProp.fileAttachmentContainer,\n ]}\n >\n <FileAttachmentIcon mimeType={lastAttachment.mime_type} size={attachmentSize} />\n </View>\n ) : hasImage ? (\n <Image\n onError={() => setError(true)}\n source={{\n uri: getResizedImageUrl({\n height:\n stylesProp.imageAttachment?.height ||\n imageAttachment?.height ||\n styles.imageAttachment.height,\n url: (lastAttachment.image_url ||\n lastAttachment.thumb_url ||\n lastAttachment.og_scrape_url) as string,\n width:\n stylesProp.imageAttachment?.width ||\n imageAttachment?.width ||\n styles.imageAttachment.width,\n }),\n }}\n style={[styles.imageAttachment, imageAttachment, stylesProp.imageAttachment]}\n />\n ) : null\n ) : null}\n <MessageTextContainer<At, Ch, Co, Ev, Me, Re, Us>\n markdownStyles={\n quotedMessage.deleted_at\n ? merge({ em: { color: grey } }, deletedText)\n : { text: styles.text, ...markdownStyles }\n }\n message={{\n ...quotedMessage,\n text: quotedMessage.deleted_at\n ? `_${t('Message deleted')}_`\n : quotedMessage.text\n ? quotedMessage.text.length > 170\n ? `${quotedMessage.text.slice(0, 170)}...`\n : quotedMessage.text\n : messageType === 'image'\n ? t('Photo')\n : messageType === 'file'\n ? lastAttachment?.title || ''\n : '',\n }}\n onlyEmojis={onlyEmojis}\n styles={{\n textContainer: [\n {\n marginRight: hasImage\n ? Number(\n stylesProp.imageAttachment?.height ||\n imageAttachment.height ||\n styles.imageAttachment.height,\n ) +\n Number(\n stylesProp.imageAttachment?.marginLeft ||\n imageAttachment.marginLeft ||\n styles.imageAttachment.marginLeft,\n )\n : messageType === 'file'\n ? attachmentSize +\n Number(\n stylesProp.fileAttachmentContainer?.paddingLeft ||\n fileAttachmentContainer.paddingLeft ||\n styles.fileAttachmentContainer.paddingLeft,\n )\n : undefined,\n },\n styles.textContainer,\n textContainer,\n stylesProp.textContainer,\n ],\n }}\n />\n </View>\n </View>\n );\n};\n\nconst areEqual = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n prevProps: ReplyPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: ReplyPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { quotedMessage: prevQuotedMessage } = prevProps;\n const { quotedMessage: nextQuotedMessage } = nextProps;\n\n const quotedMessageEqual =\n !!prevQuotedMessage &&\n !!nextQuotedMessage &&\n typeof prevQuotedMessage !== 'boolean' &&\n typeof nextQuotedMessage !== 'boolean'\n ? prevQuotedMessage.id === nextQuotedMessage.id &&\n prevQuotedMessage.deleted_at === nextQuotedMessage.deleted_at\n : !!prevQuotedMessage === !!nextQuotedMessage;\n\n if (!quotedMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedReply = React.memo(ReplyWithContext, areEqual) as typeof ReplyWithContext;\n\nexport type ReplyProps<\n At extends DefaultAttachmentType = 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<ReplyPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;\n\n/**\n * UI Component for reply\n */\nexport const Reply = <\n At extends DefaultAttachmentType = 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: ReplyProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { message } = useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n const { FileAttachmentIcon = FileIconDefault, MessageAvatar = MessageAvatarDefault } =\n useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n const { editing, quotedMessage } = useMessageInputContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n const quotedEditingMessage = (\n typeof editing !== 'boolean' ? editing?.quoted_message || false : false\n ) as MessageInputContextValue<At, Ch, Co, Ev, Me, Re, Us>['quotedMessage'];\n\n const { t } = useTranslationContext();\n\n return (\n <MemoizedReply\n {...{\n FileAttachmentIcon,\n MessageAvatar,\n quotedMessage: message\n ? (message.quoted_message as MessageInputContextValue<\n At,\n Ch,\n Co,\n Ev,\n Me,\n Re,\n Us\n >['quotedMessage'])\n : quotedMessage || quotedEditingMessage,\n t,\n }}\n {...props}\n />\n );\n};\n\nReply.displayName = 'Reply{reply}';\n"]}
1
+ {"version":3,"sources":["Reply.tsx"],"names":["styles","StyleSheet","create","container","alignItems","flexDirection","fileAttachmentContainer","paddingLeft","paddingVertical","imageAttachment","borderRadius","height","marginLeft","marginVertical","width","messageContainer","borderBottomLeftRadius","borderBottomRightRadius","borderTopLeftRadius","borderTopRightRadius","flexGrow","flexShrink","text","fontSize","textContainer","maxWidth","undefined","paddingHorizontal","ReplyWithContext","props","FileAttachmentIcon","attachmentSize","MessageAvatar","quotedMessage","stylesProp","t","error","setError","theme","colors","blue_alice","border","grey","transparent","white","deletedText","messageSimple","content","reply","markdownStyles","lastAttachment","attachments","slice","messageType","type","title_link","og_scrape_url","image_url","thumb_url","hasImage","onlyEmojis","emojiRegex","test","backgroundColor","borderColor","borderWidth","mime_type","uri","url","deleted_at","em","color","length","title","marginRight","Number","areEqual","prevProps","nextProps","prevQuotedMessage","nextQuotedMessage","quotedMessageEqual","id","MemoizedReply","React","memo","Reply","message","FileIconDefault","MessageAvatarDefault","editing","quotedEditingMessage","quoted_message","displayName"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport { Image, ImageStyle, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport merge from 'lodash/merge';\n\nimport type { Attachment } from 'stream-chat';\n\nimport { useMessageContext } from '../../contexts/messageContext/MessageContext';\nimport {\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\nimport { emojiRegex } from '../../utils/utils';\n\nimport { FileIcon as FileIconDefault } from '../Attachment/FileIcon';\nimport { MessageAvatar as MessageAvatarDefault } from '../Message/MessageSimple/MessageAvatar';\nimport { MessageTextContainer } from '../Message/MessageSimple/MessageTextContainer';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n },\n fileAttachmentContainer: { paddingLeft: 8, paddingVertical: 8 },\n imageAttachment: {\n borderRadius: 8,\n height: 32,\n marginLeft: 8,\n marginVertical: 8,\n width: 32,\n },\n messageContainer: {\n alignItems: 'flex-start',\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 12,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n flexDirection: 'row',\n flexGrow: 1,\n flexShrink: 1,\n },\n text: { fontSize: 12 },\n textContainer: { maxWidth: undefined, paddingHorizontal: 8 },\n});\n\ntype ReplyPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageInputContextValue<StreamChatGenerics>, 'quotedMessage'> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'FileAttachmentIcon' | 'MessageAvatar'> &\n Pick<TranslationContextValue, 't'> & {\n attachmentSize?: number;\n styles?: Partial<{\n container: ViewStyle;\n fileAttachmentContainer: ViewStyle;\n imageAttachment: ImageStyle;\n messageContainer: ViewStyle;\n textContainer: ViewStyle;\n }>;\n };\n\nconst ReplyWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReplyPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n FileAttachmentIcon,\n attachmentSize = 40,\n MessageAvatar,\n quotedMessage,\n styles: stylesProp = {},\n t,\n } = props;\n\n const [error, setError] = useState(false);\n\n const {\n theme: {\n colors: { blue_alice, border, grey, transparent, white },\n messageSimple: {\n content: { deletedText },\n },\n reply: {\n container,\n fileAttachmentContainer,\n imageAttachment,\n markdownStyles,\n messageContainer,\n textContainer,\n },\n },\n } = useTheme();\n\n if (typeof quotedMessage === 'boolean') return null;\n\n const lastAttachment = quotedMessage.attachments?.slice(-1)[0] as Attachment<StreamChatGenerics>;\n\n const messageType = lastAttachment\n ? lastAttachment.type === 'file' || lastAttachment.type === 'audio'\n ? 'file'\n : lastAttachment.type === 'image' &&\n !lastAttachment.title_link &&\n !lastAttachment.og_scrape_url\n ? lastAttachment.image_url || lastAttachment.thumb_url\n ? 'image'\n : undefined\n : lastAttachment.type === 'giphy' || lastAttachment.type === 'imgur'\n ? 'giphy'\n : 'other'\n : undefined;\n\n const hasImage =\n !error &&\n lastAttachment &&\n messageType !== 'file' &&\n (lastAttachment.image_url || lastAttachment.thumb_url || lastAttachment.og_scrape_url);\n\n const onlyEmojis = !lastAttachment && !!quotedMessage.text && emojiRegex.test(quotedMessage.text);\n\n return (\n <View style={[styles.container, container, stylesProp.container]}>\n <MessageAvatar alignment={'left'} lastGroupMessage message={quotedMessage} size={24} />\n <View\n style={[\n styles.messageContainer,\n {\n backgroundColor:\n messageType === 'other' ? blue_alice : messageType === 'giphy' ? transparent : white,\n borderColor: border,\n borderWidth: messageType === 'other' ? 0 : 1,\n },\n messageContainer,\n stylesProp.messageContainer,\n ]}\n >\n {!error && lastAttachment ? (\n messageType === 'file' ? (\n <View\n style={[\n styles.fileAttachmentContainer,\n fileAttachmentContainer,\n stylesProp.fileAttachmentContainer,\n ]}\n >\n <FileAttachmentIcon mimeType={lastAttachment.mime_type} size={attachmentSize} />\n </View>\n ) : hasImage ? (\n <Image\n onError={() => setError(true)}\n source={{\n uri: getResizedImageUrl({\n height:\n stylesProp.imageAttachment?.height ||\n imageAttachment?.height ||\n styles.imageAttachment.height,\n url: (lastAttachment.image_url ||\n lastAttachment.thumb_url ||\n lastAttachment.og_scrape_url) as string,\n width:\n stylesProp.imageAttachment?.width ||\n imageAttachment?.width ||\n styles.imageAttachment.width,\n }),\n }}\n style={[styles.imageAttachment, imageAttachment, stylesProp.imageAttachment]}\n />\n ) : null\n ) : null}\n <MessageTextContainer<StreamChatGenerics>\n markdownStyles={\n quotedMessage.deleted_at\n ? merge({ em: { color: grey } }, deletedText)\n : { text: styles.text, ...markdownStyles }\n }\n message={{\n ...quotedMessage,\n text: quotedMessage.deleted_at\n ? `_${t('Message deleted')}_`\n : quotedMessage.text\n ? quotedMessage.text.length > 170\n ? `${quotedMessage.text.slice(0, 170)}...`\n : quotedMessage.text\n : messageType === 'image'\n ? t('Photo')\n : messageType === 'file'\n ? lastAttachment?.title || ''\n : '',\n }}\n onlyEmojis={onlyEmojis}\n styles={{\n textContainer: [\n {\n marginRight: hasImage\n ? Number(\n stylesProp.imageAttachment?.height ||\n imageAttachment.height ||\n styles.imageAttachment.height,\n ) +\n Number(\n stylesProp.imageAttachment?.marginLeft ||\n imageAttachment.marginLeft ||\n styles.imageAttachment.marginLeft,\n )\n : messageType === 'file'\n ? attachmentSize +\n Number(\n stylesProp.fileAttachmentContainer?.paddingLeft ||\n fileAttachmentContainer.paddingLeft ||\n styles.fileAttachmentContainer.paddingLeft,\n )\n : undefined,\n },\n styles.textContainer,\n textContainer,\n stylesProp.textContainer,\n ],\n }}\n />\n </View>\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReplyPropsWithContext<StreamChatGenerics>,\n nextProps: ReplyPropsWithContext<StreamChatGenerics>,\n) => {\n const { quotedMessage: prevQuotedMessage } = prevProps;\n const { quotedMessage: nextQuotedMessage } = nextProps;\n\n const quotedMessageEqual =\n !!prevQuotedMessage &&\n !!nextQuotedMessage &&\n typeof prevQuotedMessage !== 'boolean' &&\n typeof nextQuotedMessage !== 'boolean'\n ? prevQuotedMessage.id === nextQuotedMessage.id &&\n prevQuotedMessage.deleted_at === nextQuotedMessage.deleted_at\n : !!prevQuotedMessage === !!nextQuotedMessage;\n\n if (!quotedMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedReply = React.memo(ReplyWithContext, areEqual) as typeof ReplyWithContext;\n\nexport type ReplyProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<ReplyPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for reply\n */\nexport const Reply = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReplyProps<StreamChatGenerics>,\n) => {\n const { message } = useMessageContext<StreamChatGenerics>();\n\n const { FileAttachmentIcon = FileIconDefault, MessageAvatar = MessageAvatarDefault } =\n useMessagesContext<StreamChatGenerics>();\n\n const { editing, quotedMessage } = useMessageInputContext<StreamChatGenerics>();\n\n const quotedEditingMessage = (\n typeof editing !== 'boolean' ? editing?.quoted_message || false : false\n ) as MessageInputContextValue<StreamChatGenerics>['quotedMessage'];\n\n const { t } = useTranslationContext();\n\n return (\n <MemoizedReply\n {...{\n FileAttachmentIcon,\n MessageAvatar,\n quotedMessage: message\n ? (message.quoted_message as MessageInputContextValue<StreamChatGenerics>['quotedMessage'])\n : quotedMessage || quotedEditingMessage,\n t,\n }}\n {...props}\n />\n );\n};\n\nReply.displayName = 'Reply{reply}';\n"]}
@@ -93,7 +93,7 @@ var ThreadWithContext = function ThreadWithContext(props) {
93
93
  __self: _this,
94
94
  __source: {
95
95
  fileName: _jsxFileName,
96
- lineNumber: 120,
96
+ lineNumber: 99,
97
97
  columnNumber: 5
98
98
  }
99
99
  }, _react["default"].createElement(MessageList, (0, _extends2["default"])({
@@ -103,7 +103,7 @@ var ThreadWithContext = function ThreadWithContext(props) {
103
103
  __self: _this,
104
104
  __source: {
105
105
  fileName: _jsxFileName,
106
- lineNumber: 121,
106
+ lineNumber: 100,
107
107
  columnNumber: 7
108
108
  }
109
109
  })), _react["default"].createElement(MessageInput, (0, _extends2["default"])({
@@ -116,7 +116,7 @@ var ThreadWithContext = function ThreadWithContext(props) {
116
116
  __self: _this,
117
117
  __source: {
118
118
  fileName: _jsxFileName,
119
- lineNumber: 126,
119
+ lineNumber: 105,
120
120
  columnNumber: 7
121
121
  }
122
122
  })));
@@ -153,7 +153,7 @@ var Thread = function Thread(props) {
153
153
  __self: _this,
154
154
  __source: {
155
155
  fileName: _jsxFileName,
156
- lineNumber: 178,
156
+ lineNumber: 145,
157
157
  columnNumber: 5
158
158
  }
159
159
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["Thread.tsx"],"names":["ThreadWithContext","props","additionalMessageInputProps","additionalMessageListProps","autoFocus","closeThread","closeThreadOnDismount","disabled","loadMoreThread","MessageInput","DefaultMessageInput","MessageList","onThreadDismount","thread","loadMoreThreadAsync","id","reply_count","ThreadFooterComponent","editable","Thread","client","threadList","reloadThread","Error"],"mappings":";;;;;;;;;;;;;;;AAAA;;AAEA;;AAEA;;AACA;;AACA;;AAIA;;AAYA;;;;;;;;;AA+CA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CASxBC,KATwB,EAUrB;AACH,MACEC,2BADF,GAYID,KAZJ,CACEC,2BADF;AAAA,MAEEC,0BAFF,GAYIF,KAZJ,CAEEE,0BAFF;AAAA,yBAYIF,KAZJ,CAGEG,SAHF;AAAA,MAGEA,SAHF,iCAGc,IAHd;AAAA,MAIEC,WAJF,GAYIJ,KAZJ,CAIEI,WAJF;AAAA,8BAYIJ,KAZJ,CAKEK,qBALF;AAAA,MAKEA,qBALF,sCAK0B,IAL1B;AAAA,MAMEC,QANF,GAYIN,KAZJ,CAMEM,QANF;AAAA,MAOEC,cAPF,GAYIP,KAZJ,CAOEO,cAPF;AAAA,4BAYIP,KAZJ,CAQEQ,YARF;AAAA,MAQEA,YARF,oCAQiBC,0BARjB;AAAA,MASEC,WATF,GAYIV,KAZJ,CASEU,WATF;AAAA,MAUEC,gBAVF,GAYIX,KAZJ,CAUEW,gBAVF;AAAA,MAWEC,MAXF,GAYIZ,KAZJ,CAWEY,MAXF;AAcA,wBAAU,YAAM;AACd,QAAMC,mBAAmB;AAAA,iFAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBACpBN,cAAc,EADM;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OAAH;;AAAA,sBAAnBM,mBAAmB;AAAA;AAAA;AAAA,OAAzB;;AAIA,QAAID,MAAM,QAAN,IAAAA,MAAM,CAAEE,EAAR,IAAcF,MAAM,CAACG,WAAzB,EAAsC;AACpCF,MAAAA,mBAAmB;AACpB;AACF,GARD,EAQG,EARH;AAUA,wBACE;AAAA,WAAM,YAAM;AACV,UAAIR,qBAAJ,EAA2B;AACzBD,QAAAA,WAAW;AACZ;;AACD,UAAIO,gBAAJ,EAAsB;AACpBA,QAAAA,gBAAgB;AACjB;AACF,KAPD;AAAA,GADF,EASE,EATF;AAYA,MAAI,CAACC,MAAL,EAAa,OAAO,IAAP;AAEb,SACE,gCAAC,iBAAD,CAAO,QAAP;AAAgB,IAAA,GAAG,cAAYA,MAAM,CAACE,EAAtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACE,gCAAC,WAAD;AACE,IAAA,eAAe,EAAEE,4CADnB;AAEE,IAAA,UAAU;AAFZ,KAGMd,0BAHN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF,EAME,gCAAC,YAAD;AACE,IAAA,wBAAwB,EAAE;AAAEC,MAAAA,SAAS,EAATA,SAAF;AAAac,MAAAA,QAAQ,EAAE,CAACX;AAAxB,KAD5B;AAEE,IAAA,UAAU;AAFZ,KAGML,2BAHN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KANF,CADF;AAcD,CA/DD;;AAoFO,IAAMiB,MAAM,GAAG,SAATA,MAAS,CASpBlB,KAToB,EAUjB;AACH,wBAAmB,kCAAnB;AAAA,MAAQmB,MAAR,mBAAQA,MAAR;;AACA,2BAAuB,wCAAvB;AAAA,MAAQC,UAAR,sBAAQA,UAAR;;AACA,4BAAwB,0CAAxB;AAAA,MAAQV,WAAR,uBAAQA,WAAR;;AACA,0BACE,sCADF;AAAA,MAAQN,WAAR,qBAAQA,WAAR;AAAA,MAAqBG,cAArB,qBAAqBA,cAArB;AAAA,MAAqCc,YAArC,qBAAqCA,YAArC;AAAA,MAAmDT,MAAnD,qBAAmDA,MAAnD;;AAGA,MAAIA,MAAM,QAAN,IAAAA,MAAM,CAAEE,EAAR,IAAc,CAACM,UAAnB,EAA+B;AAC7B,UAAM,IAAIE,KAAJ,CACJ,wNADI,CAAN;AAGD;;AAED,SACE,gCAAC,iBAAD;AAEIH,IAAAA,MAAM,EAANA,MAFJ;AAGIf,IAAAA,WAAW,EAAXA,WAHJ;AAIIG,IAAAA,cAAc,EAAdA,cAJJ;AAKIG,IAAAA,WAAW,EAAXA,WALJ;AAMIW,IAAAA,YAAY,EAAZA,YANJ;AAOIT,IAAAA,MAAM,EAANA;AAPJ,KASMZ,KATN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF;AAaD,CApCM","sourcesContent":["import React, { useEffect } from 'react';\n\nimport { ThreadFooterComponent } from './components/ThreadFooterComponent';\n\nimport { useChannelContext } from '../../contexts/channelContext/ChannelContext';\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { ThreadContextValue, useThreadContext } from '../../contexts/threadContext/ThreadContext';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../types/types';\nimport {\n MessageInput as DefaultMessageInput,\n MessageInputProps,\n} from '../MessageInput/MessageInput';\nimport type { MessageListProps } from '../MessageList/MessageList';\n\ntype ThreadPropsWithContext<\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<ChatContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'client'> &\n Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'MessageList'> &\n Pick<\n ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n 'closeThread' | 'loadMoreThread' | 'reloadThread' | 'thread'\n > & {\n /**\n * Additional props for underlying MessageInput component.\n * Available props - https://getstream.github.io/stream-chat-react-native/v3/#messageinput\n * */\n additionalMessageInputProps?: Partial<MessageInputProps<At, Ch, Co, Ev, Me, Re, Us>>;\n /**\n * Additional props for underlying MessageList component.\n * Available props - https://getstream.github.io/stream-chat-react-native/v3/#messagelist\n * */\n additionalMessageListProps?: Partial<MessageListProps<At, Ch, Co, Ev, Me, Re, Us>>;\n /** Make input focus on mounting thread */\n autoFocus?: boolean;\n /** Closes thread on dismount, defaults to true */\n closeThreadOnDismount?: boolean;\n /** Disables the thread UI. So MessageInput and MessageList will be disabled. */\n disabled?: boolean;\n /**\n * **Customized MessageInput component to used within Thread instead of default MessageInput\n * **Available from [MessageInput](https://getstream.github.io/stream-chat-react-native/v3/#messageinput)**\n */\n MessageInput?: React.ComponentType<MessageInputProps<At, Ch, Co, Ev, Me, Re, Us>>;\n /**\n * Call custom function on closing thread if handling thread state elsewhere\n */\n onThreadDismount?: () => void;\n };\n\nconst ThreadWithContext = <\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: ThreadPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n additionalMessageInputProps,\n additionalMessageListProps,\n autoFocus = true,\n closeThread,\n closeThreadOnDismount = true,\n disabled,\n loadMoreThread,\n MessageInput = DefaultMessageInput,\n MessageList,\n onThreadDismount,\n thread,\n } = props;\n\n useEffect(() => {\n const loadMoreThreadAsync = async () => {\n await loadMoreThread();\n };\n\n if (thread?.id && thread.reply_count) {\n loadMoreThreadAsync();\n }\n }, []);\n\n useEffect(\n () => () => {\n if (closeThreadOnDismount) {\n closeThread();\n }\n if (onThreadDismount) {\n onThreadDismount();\n }\n },\n [],\n );\n\n if (!thread) return null;\n\n return (\n <React.Fragment key={`thread-${thread.id}`}>\n <MessageList\n FooterComponent={ThreadFooterComponent}\n threadList\n {...additionalMessageListProps}\n />\n <MessageInput<At, Ch, Co, Ev, Me, Re, Us>\n additionalTextInputProps={{ autoFocus, editable: !disabled }}\n threadList\n {...additionalMessageInputProps}\n />\n </React.Fragment>\n );\n};\n\nexport type ThreadProps<\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<ThreadPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;\n\n/**\n * Thread - The Thread renders a parent message with a list of replies. Use the standard message list of the main channel's messages.\n * The thread is only used for the list of replies to a message.\n *\n * Thread is a consumer of [channel context](https://getstream.github.io/stream-chat-react-native/v3/#channelcontext)\n * Underlying MessageList, MessageInput and Message components can be customized using props:\n * - additionalMessageListProps\n * - additionalMessageInputProps\n */\nexport const Thread = <\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: ThreadProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { client } = useChatContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { threadList } = useChannelContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { MessageList } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { closeThread, loadMoreThread, reloadThread, thread } =\n useThreadContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n if (thread?.id && !threadList) {\n throw new Error(\n 'Please add a threadList prop to your Channel component when rendering a thread list. Check our Channel documentation for more info: https://getstream.io/chat/docs/sdk/reactnative/core-components/channel/#threadlist',\n );\n }\n\n return (\n <ThreadWithContext<At, Ch, Co, Ev, Me, Re, Us>\n {...{\n client,\n closeThread,\n loadMoreThread,\n MessageList,\n reloadThread,\n thread,\n }}\n {...props}\n />\n );\n};\n"]}
1
+ {"version":3,"sources":["Thread.tsx"],"names":["ThreadWithContext","props","additionalMessageInputProps","additionalMessageListProps","autoFocus","closeThread","closeThreadOnDismount","disabled","loadMoreThread","MessageInput","DefaultMessageInput","MessageList","onThreadDismount","thread","loadMoreThreadAsync","id","reply_count","ThreadFooterComponent","editable","Thread","client","threadList","reloadThread","Error"],"mappings":"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","sourcesContent":["import React, { useEffect } from 'react';\n\nimport { ThreadFooterComponent } from './components/ThreadFooterComponent';\n\nimport { useChannelContext } from '../../contexts/channelContext/ChannelContext';\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { ThreadContextValue, useThreadContext } from '../../contexts/threadContext/ThreadContext';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport {\n MessageInput as DefaultMessageInput,\n MessageInputProps,\n} from '../MessageInput/MessageInput';\nimport type { MessageListProps } from '../MessageList/MessageList';\n\ntype ThreadPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<ChatContextValue<StreamChatGenerics>, 'client'> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'MessageList'> &\n Pick<\n ThreadContextValue<StreamChatGenerics>,\n 'closeThread' | 'loadMoreThread' | 'reloadThread' | 'thread'\n > & {\n /**\n * Additional props for underlying MessageInput component.\n * Available props - https://getstream.github.io/stream-chat-react-native/v3/#messageinput\n * */\n additionalMessageInputProps?: Partial<MessageInputProps<StreamChatGenerics>>;\n /**\n * Additional props for underlying MessageList component.\n * Available props - https://getstream.github.io/stream-chat-react-native/v3/#messagelist\n * */\n additionalMessageListProps?: Partial<MessageListProps<StreamChatGenerics>>;\n /** Make input focus on mounting thread */\n autoFocus?: boolean;\n /** Closes thread on dismount, defaults to true */\n closeThreadOnDismount?: boolean;\n /** Disables the thread UI. So MessageInput and MessageList will be disabled. */\n disabled?: boolean;\n /**\n * **Customized MessageInput component to used within Thread instead of default MessageInput\n * **Available from [MessageInput](https://getstream.github.io/stream-chat-react-native/v3/#messageinput)**\n */\n MessageInput?: React.ComponentType<MessageInputProps<StreamChatGenerics>>;\n /**\n * Call custom function on closing thread if handling thread state elsewhere\n */\n onThreadDismount?: () => void;\n };\n\nconst ThreadWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ThreadPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n additionalMessageInputProps,\n additionalMessageListProps,\n autoFocus = true,\n closeThread,\n closeThreadOnDismount = true,\n disabled,\n loadMoreThread,\n MessageInput = DefaultMessageInput,\n MessageList,\n onThreadDismount,\n thread,\n } = props;\n\n useEffect(() => {\n const loadMoreThreadAsync = async () => {\n await loadMoreThread();\n };\n\n if (thread?.id && thread.reply_count) {\n loadMoreThreadAsync();\n }\n }, []);\n\n useEffect(\n () => () => {\n if (closeThreadOnDismount) {\n closeThread();\n }\n if (onThreadDismount) {\n onThreadDismount();\n }\n },\n [],\n );\n\n if (!thread) return null;\n\n return (\n <React.Fragment key={`thread-${thread.id}`}>\n <MessageList\n FooterComponent={ThreadFooterComponent}\n threadList\n {...additionalMessageListProps}\n />\n <MessageInput<StreamChatGenerics>\n additionalTextInputProps={{ autoFocus, editable: !disabled }}\n threadList\n {...additionalMessageInputProps}\n />\n </React.Fragment>\n );\n};\n\nexport type ThreadProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<ThreadPropsWithContext<StreamChatGenerics>>;\n\n/**\n * Thread - The Thread renders a parent message with a list of replies. Use the standard message list of the main channel's messages.\n * The thread is only used for the list of replies to a message.\n *\n * Thread is a consumer of [channel context](https://getstream.github.io/stream-chat-react-native/v3/#channelcontext)\n * Underlying MessageList, MessageInput and Message components can be customized using props:\n * - additionalMessageListProps\n * - additionalMessageInputProps\n */\nexport const Thread = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ThreadProps<StreamChatGenerics>,\n) => {\n const { client } = useChatContext<StreamChatGenerics>();\n const { threadList } = useChannelContext<StreamChatGenerics>();\n const { MessageList } = useMessagesContext<StreamChatGenerics>();\n const { closeThread, loadMoreThread, reloadThread, thread } =\n useThreadContext<StreamChatGenerics>();\n\n if (thread?.id && !threadList) {\n throw new Error(\n 'Please add a threadList prop to your Channel component when rendering a thread list. Check our Channel documentation for more info: https://getstream.io/chat/docs/sdk/reactnative/core-components/channel/#threadlist',\n );\n }\n\n return (\n <ThreadWithContext<StreamChatGenerics>\n {...{\n client,\n closeThread,\n loadMoreThread,\n MessageList,\n reloadThread,\n thread,\n }}\n {...props}\n />\n );\n};\n"]}
@@ -85,7 +85,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
85
85
  __self: _this,
86
86
  __source: {
87
87
  fileName: _jsxFileName,
88
- lineNumber: 86,
88
+ lineNumber: 65,
89
89
  columnNumber: 5
90
90
  }
91
91
  }, _react["default"].createElement(_reactNative.View, {
@@ -93,7 +93,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
93
93
  __self: _this,
94
94
  __source: {
95
95
  fileName: _jsxFileName,
96
- lineNumber: 87,
96
+ lineNumber: 66,
97
97
  columnNumber: 7
98
98
  }
99
99
  }, _react["default"].createElement(Message, {
@@ -104,7 +104,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
104
104
  __self: _this,
105
105
  __source: {
106
106
  fileName: _jsxFileName,
107
- lineNumber: 88,
107
+ lineNumber: 67,
108
108
  columnNumber: 9
109
109
  }
110
110
  })), _react["default"].createElement(_reactNative.View, {
@@ -112,7 +112,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
112
112
  __self: _this,
113
113
  __source: {
114
114
  fileName: _jsxFileName,
115
- lineNumber: 90,
115
+ lineNumber: 69,
116
116
  columnNumber: 7
117
117
  }
118
118
  }, _react["default"].createElement(_reactNativeSvg["default"], {
@@ -122,7 +122,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
122
122
  __self: _this,
123
123
  __source: {
124
124
  fileName: _jsxFileName,
125
- lineNumber: 91,
125
+ lineNumber: 70,
126
126
  columnNumber: 9
127
127
  }
128
128
  }, _react["default"].createElement(_reactNativeSvg.Rect, {
@@ -134,14 +134,14 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
134
134
  __self: _this,
135
135
  __source: {
136
136
  fileName: _jsxFileName,
137
- lineNumber: 92,
137
+ lineNumber: 71,
138
138
  columnNumber: 11
139
139
  }
140
140
  }), _react["default"].createElement(_reactNativeSvg.Defs, {
141
141
  __self: _this,
142
142
  __source: {
143
143
  fileName: _jsxFileName,
144
- lineNumber: 93,
144
+ lineNumber: 72,
145
145
  columnNumber: 11
146
146
  }
147
147
  }, _react["default"].createElement(_reactNativeSvg.LinearGradient, {
@@ -154,7 +154,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
154
154
  __self: _this,
155
155
  __source: {
156
156
  fileName: _jsxFileName,
157
- lineNumber: 94,
157
+ lineNumber: 73,
158
158
  columnNumber: 13
159
159
  }
160
160
  }, _react["default"].createElement(_reactNativeSvg.Stop, {
@@ -164,7 +164,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
164
164
  __self: _this,
165
165
  __source: {
166
166
  fileName: _jsxFileName,
167
- lineNumber: 102,
167
+ lineNumber: 81,
168
168
  columnNumber: 15
169
169
  }
170
170
  }), _react["default"].createElement(_reactNativeSvg.Stop, {
@@ -174,7 +174,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
174
174
  __self: _this,
175
175
  __source: {
176
176
  fileName: _jsxFileName,
177
- lineNumber: 107,
177
+ lineNumber: 86,
178
178
  columnNumber: 15
179
179
  }
180
180
  })))), _react["default"].createElement(_reactNative.Text, {
@@ -184,7 +184,7 @@ var ThreadFooterComponentWithContext = function ThreadFooterComponentWithContext
184
184
  __self: _this,
185
185
  __source: {
186
186
  fileName: _jsxFileName,
187
- lineNumber: 115,
187
+ lineNumber: 94,
188
188
  columnNumber: 9
189
189
  }
190
190
  }, replyCount === 1 ? t('1 Reply') : t('{{ replyCount }} Replies', {
@@ -222,7 +222,7 @@ var ThreadFooterComponent = function ThreadFooterComponent() {
222
222
  __self: _this,
223
223
  __source: {
224
224
  fileName: _jsxFileName,
225
- lineNumber: 181,
225
+ lineNumber: 146,
226
226
  columnNumber: 5
227
227
  }
228
228
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["ThreadFooterComponent.tsx"],"names":["styles","StyleSheet","create","absolute","position","messagePadding","paddingHorizontal","newThread","alignItems","height","justifyContent","marginTop","text","fontSize","textAlign","threadHeaderContainer","marginVertical","ThreadFooterComponentWithContext","props","Message","thread","t","theme","colors","bg_gradient_end","bg_gradient_start","grey","backgroundGradientStart","backgroundGradientStop","replyCount","reply_count","color","areEqual","prevProps","nextProps","prevThread","nextThread","threadEqual","id","latestReactionsEqual","Array","isArray","latest_reactions","length","every","index","type","MemoizedThreadFooter","React","memo","ThreadFooterComponent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\nimport Svg, { Defs, LinearGradient, Rect, Stop } from 'react-native-svg';\n\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport {\n ThreadContextValue,\n useThreadContext,\n} from '../../../contexts/threadContext/ThreadContext';\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../../types/types';\nimport { vw } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n absolute: { position: 'absolute' },\n messagePadding: {\n paddingHorizontal: 8,\n },\n newThread: {\n alignItems: 'center',\n height: 24,\n justifyContent: 'center',\n marginTop: 8,\n },\n text: {\n fontSize: 12,\n textAlign: 'center',\n },\n threadHeaderContainer: {\n marginVertical: 8,\n },\n});\n\ntype ThreadFooterComponentPropsWithContext<\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<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'Message'> &\n Pick<ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'thread'>;\n\nconst ThreadFooterComponentWithContext = <\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: ThreadFooterComponentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { Message, thread } = props;\n const { t } = useTranslationContext();\n\n const {\n theme: {\n colors: { bg_gradient_end, bg_gradient_start, grey },\n thread: {\n newThread: { backgroundGradientStart, backgroundGradientStop, text, ...newThread },\n },\n },\n } = useTheme();\n\n if (!thread) return null;\n\n const replyCount = thread.reply_count;\n\n return (\n <View style={styles.threadHeaderContainer} testID='thread-footer-component'>\n <View style={styles.messagePadding}>\n <Message groupStyles={['single']} message={thread} preventPress threadList />\n </View>\n <View style={[styles.newThread, newThread]}>\n <Svg height={newThread.height ?? 24} style={styles.absolute} width={vw(100)}>\n <Rect fill='url(#gradient)' height={newThread.height ?? 24} width={vw(100)} x={0} y={0} />\n <Defs>\n <LinearGradient\n gradientUnits='userSpaceOnUse'\n id='gradient'\n x1={0}\n x2={0}\n y1={0}\n y2={newThread.height ?? 24}\n >\n <Stop\n offset={1}\n stopColor={backgroundGradientStart || bg_gradient_end}\n stopOpacity={1}\n />\n <Stop\n offset={0}\n stopColor={backgroundGradientStop || bg_gradient_start}\n stopOpacity={1}\n />\n </LinearGradient>\n </Defs>\n </Svg>\n <Text style={[styles.text, { color: grey }, text]}>\n {replyCount === 1\n ? t('1 Reply')\n : t('{{ replyCount }} Replies', {\n replyCount,\n })}\n </Text>\n </View>\n </View>\n );\n};\n\nconst areEqual = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n prevProps: ThreadFooterComponentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: ThreadFooterComponentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { thread: prevThread } = prevProps;\n const { thread: nextThread } = nextProps;\n\n const threadEqual =\n prevThread?.id === nextThread?.id &&\n prevThread?.text === nextThread?.text &&\n prevThread?.reply_count === nextThread?.reply_count;\n if (!threadEqual) return false;\n\n const latestReactionsEqual =\n prevThread &&\n nextThread &&\n Array.isArray(prevThread.latest_reactions) &&\n Array.isArray(nextThread.latest_reactions)\n ? prevThread.latest_reactions.length === nextThread.latest_reactions.length &&\n prevThread.latest_reactions.every(\n ({ type }, index) => type === nextThread.latest_reactions?.[index].type,\n )\n : prevThread?.latest_reactions === nextThread?.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedThreadFooter = React.memo(\n ThreadFooterComponentWithContext,\n areEqual,\n) as typeof ThreadFooterComponentWithContext;\n\nexport const ThreadFooterComponent = <\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 { Message } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { thread } = useThreadContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return (\n <MemoizedThreadFooter\n {...{\n Message,\n thread,\n }}\n />\n );\n};\n"]}
1
+ {"version":3,"sources":["ThreadFooterComponent.tsx"],"names":["styles","StyleSheet","create","absolute","position","messagePadding","paddingHorizontal","newThread","alignItems","height","justifyContent","marginTop","text","fontSize","textAlign","threadHeaderContainer","marginVertical","ThreadFooterComponentWithContext","props","Message","thread","t","theme","colors","bg_gradient_end","bg_gradient_start","grey","backgroundGradientStart","backgroundGradientStop","replyCount","reply_count","color","areEqual","prevProps","nextProps","prevThread","nextThread","threadEqual","id","latestReactionsEqual","Array","isArray","latest_reactions","length","every","index","type","MemoizedThreadFooter","React","memo","ThreadFooterComponent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\nimport Svg, { Defs, LinearGradient, Rect, Stop } from 'react-native-svg';\n\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\nimport {\n ThreadContextValue,\n useThreadContext,\n} from '../../../contexts/threadContext/ThreadContext';\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { vw } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n absolute: { position: 'absolute' },\n messagePadding: {\n paddingHorizontal: 8,\n },\n newThread: {\n alignItems: 'center',\n height: 24,\n justifyContent: 'center',\n marginTop: 8,\n },\n text: {\n fontSize: 12,\n textAlign: 'center',\n },\n threadHeaderContainer: {\n marginVertical: 8,\n },\n});\n\ntype ThreadFooterComponentPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessagesContextValue<StreamChatGenerics>, 'Message'> &\n Pick<ThreadContextValue<StreamChatGenerics>, 'thread'>;\n\nconst ThreadFooterComponentWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ThreadFooterComponentPropsWithContext<StreamChatGenerics>,\n) => {\n const { Message, thread } = props;\n const { t } = useTranslationContext();\n\n const {\n theme: {\n colors: { bg_gradient_end, bg_gradient_start, grey },\n thread: {\n newThread: { backgroundGradientStart, backgroundGradientStop, text, ...newThread },\n },\n },\n } = useTheme();\n\n if (!thread) return null;\n\n const replyCount = thread.reply_count;\n\n return (\n <View style={styles.threadHeaderContainer} testID='thread-footer-component'>\n <View style={styles.messagePadding}>\n <Message groupStyles={['single']} message={thread} preventPress threadList />\n </View>\n <View style={[styles.newThread, newThread]}>\n <Svg height={newThread.height ?? 24} style={styles.absolute} width={vw(100)}>\n <Rect fill='url(#gradient)' height={newThread.height ?? 24} width={vw(100)} x={0} y={0} />\n <Defs>\n <LinearGradient\n gradientUnits='userSpaceOnUse'\n id='gradient'\n x1={0}\n x2={0}\n y1={0}\n y2={newThread.height ?? 24}\n >\n <Stop\n offset={1}\n stopColor={backgroundGradientStart || bg_gradient_end}\n stopOpacity={1}\n />\n <Stop\n offset={0}\n stopColor={backgroundGradientStop || bg_gradient_start}\n stopOpacity={1}\n />\n </LinearGradient>\n </Defs>\n </Svg>\n <Text style={[styles.text, { color: grey }, text]}>\n {replyCount === 1\n ? t('1 Reply')\n : t('{{ replyCount }} Replies', {\n replyCount,\n })}\n </Text>\n </View>\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ThreadFooterComponentPropsWithContext<StreamChatGenerics>,\n nextProps: ThreadFooterComponentPropsWithContext<StreamChatGenerics>,\n) => {\n const { thread: prevThread } = prevProps;\n const { thread: nextThread } = nextProps;\n\n const threadEqual =\n prevThread?.id === nextThread?.id &&\n prevThread?.text === nextThread?.text &&\n prevThread?.reply_count === nextThread?.reply_count;\n if (!threadEqual) return false;\n\n const latestReactionsEqual =\n prevThread &&\n nextThread &&\n Array.isArray(prevThread.latest_reactions) &&\n Array.isArray(nextThread.latest_reactions)\n ? prevThread.latest_reactions.length === nextThread.latest_reactions.length &&\n prevThread.latest_reactions.every(\n ({ type }, index) => type === nextThread.latest_reactions?.[index].type,\n )\n : prevThread?.latest_reactions === nextThread?.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedThreadFooter = React.memo(\n ThreadFooterComponentWithContext,\n areEqual,\n) as typeof ThreadFooterComponentWithContext;\n\nexport const ThreadFooterComponent = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>() => {\n const { Message } = useMessagesContext<StreamChatGenerics>();\n const { thread } = useThreadContext<StreamChatGenerics>();\n\n return (\n <MemoizedThreadFooter\n {...{\n Message,\n thread,\n }}\n />\n );\n};\n"]}