stream-chat-react-native-core 5.11.3-beta.1 → 5.11.3-beta.3

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 (894) hide show
  1. package/lib/commonjs/components/Attachment/Attachment.js +3 -21
  2. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
  4. package/lib/commonjs/components/Attachment/AudioAttachment.js.map +1 -1
  5. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  6. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  7. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  8. package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
  9. package/lib/commonjs/components/Attachment/Gallery.js +1 -7
  10. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  11. package/lib/commonjs/components/Attachment/GalleryImage.js.map +1 -1
  12. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  13. package/lib/commonjs/components/Attachment/ImageLoadingFailedIndicator.js.map +1 -1
  14. package/lib/commonjs/components/Attachment/ImageLoadingIndicator.js.map +1 -1
  15. package/lib/commonjs/components/Attachment/VideoThumbnail.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/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -1
  24. package/lib/commonjs/components/Attachment/utils/getGiphyMimeType.js.map +1 -1
  25. package/lib/commonjs/components/Attachment/utils/openUrlSafely.js.map +1 -1
  26. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +1 -7
  27. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  28. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.js.map +1 -1
  29. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerError.js.map +1 -1
  30. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerErrorImage.js.map +1 -1
  31. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerItem.js.map +1 -1
  32. package/lib/commonjs/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
  33. package/lib/commonjs/components/AttachmentPicker/components/CameraSelectorIcon.js.map +1 -1
  34. package/lib/commonjs/components/AttachmentPicker/components/FileSelectorIcon.js.map +1 -1
  35. package/lib/commonjs/components/AttachmentPicker/components/ImageOverlaySelectedComponent.js.map +1 -1
  36. package/lib/commonjs/components/AttachmentPicker/components/ImageSelectorIcon.js.map +1 -1
  37. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  38. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  39. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  40. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  41. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  42. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  43. package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
  44. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  45. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  46. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  47. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  48. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  49. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  50. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  51. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  52. package/lib/commonjs/components/Channel/hooks/useTargetedMessage.js.map +1 -1
  53. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  54. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  55. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  56. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  57. package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  58. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js +1 -7
  59. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
  60. package/lib/commonjs/components/ChannelList/Skeleton.js.map +1 -1
  61. package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  62. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  63. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  64. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  65. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  66. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  67. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  68. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  69. package/lib/commonjs/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  70. package/lib/commonjs/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  71. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  72. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  73. package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
  74. package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  75. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  76. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  77. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  78. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
  79. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  80. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  81. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  82. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  83. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  84. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  85. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  86. package/lib/commonjs/components/Chat/Chat.js +20 -14
  87. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  88. package/lib/commonjs/components/Chat/hooks/handleEventToSyncDB.js.map +1 -1
  89. package/lib/commonjs/components/Chat/hooks/useAppSettings.js +20 -14
  90. package/lib/commonjs/components/Chat/hooks/useAppSettings.js.map +1 -1
  91. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  92. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
  93. package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
  94. package/lib/commonjs/components/Chat/hooks/useSyncDatabase.js.map +1 -1
  95. package/lib/commonjs/components/ImageBackground.js.map +1 -1
  96. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  97. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  98. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  99. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  100. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  101. package/lib/commonjs/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
  102. package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  103. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  104. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  105. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  106. package/lib/commonjs/components/Indicators/EmptyStateIndicator.js.map +1 -1
  107. package/lib/commonjs/components/Indicators/LoadingDot.js.map +1 -1
  108. package/lib/commonjs/components/Indicators/LoadingDots.js.map +1 -1
  109. package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  110. package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
  111. package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
  112. package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleViewFC.js.map +1 -1
  113. package/lib/commonjs/components/Message/Message.js.map +1 -1
  114. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  115. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  116. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  117. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +2 -14
  118. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  119. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  120. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  121. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  122. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +1 -7
  123. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  124. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  125. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  126. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
  127. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +1 -1
  128. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -1
  129. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  130. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +1 -7
  131. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -1
  132. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  133. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  134. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
  135. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  136. package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
  137. package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
  138. package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -1
  139. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +1 -7
  140. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  141. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
  142. package/lib/commonjs/components/MessageInput/InputButtons.js +1 -7
  143. package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
  144. package/lib/commonjs/components/MessageInput/MessageInput.js +2 -14
  145. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  146. package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
  147. package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
  148. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  149. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  150. package/lib/commonjs/components/MessageInput/UploadProgressIndicator.js.map +1 -1
  151. package/lib/commonjs/components/MessageInput/components/InputEditingStateHeader.js.map +1 -1
  152. package/lib/commonjs/components/MessageInput/components/InputGiphySearch.js.map +1 -1
  153. package/lib/commonjs/components/MessageInput/components/InputReplyStateHeader.js.map +1 -1
  154. package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -1
  155. package/lib/commonjs/components/MessageInput/hooks/useCountdown.js.map +1 -1
  156. package/lib/commonjs/components/MessageList/DateHeader.js.map +1 -1
  157. package/lib/commonjs/components/MessageList/InlineDateSeparator.js.map +1 -1
  158. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  159. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  160. package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  161. package/lib/commonjs/components/MessageList/InlineUnreadIndicator.js.map +1 -1
  162. package/lib/commonjs/components/MessageList/MessageList.js +4 -28
  163. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  164. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  165. package/lib/commonjs/components/MessageList/NetworkDownIndicator.js.map +1 -1
  166. package/lib/commonjs/components/MessageList/ScrollToBottomButton.js.map +1 -1
  167. package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
  168. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  169. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  170. package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
  171. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  172. package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
  173. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
  174. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  175. package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
  176. package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -1
  177. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  178. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
  179. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
  180. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  181. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
  182. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -1
  183. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
  184. package/lib/commonjs/components/ProgressControl/ProgressControl.js.map +1 -1
  185. package/lib/commonjs/components/RTLComponents/WritingDirectionAwareText.js.map +1 -1
  186. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  187. package/lib/commonjs/components/Spinner/Spinner.js.map +1 -1
  188. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  189. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  190. package/lib/commonjs/components/docs/data.js.map +1 -1
  191. package/lib/commonjs/components/index.js.map +1 -1
  192. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  193. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  194. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  195. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  196. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  197. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
  198. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  199. package/lib/commonjs/contexts/debugContext/DebugContext.js.map +1 -1
  200. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  201. package/lib/commonjs/contexts/index.js.map +1 -1
  202. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  203. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  204. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +8 -8
  205. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  206. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  207. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  208. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  209. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -1
  210. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js +1 -7
  211. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -1
  212. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  213. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  214. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  215. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -1
  216. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  217. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  218. package/lib/commonjs/contexts/themeContext/ThemeContext.js.map +1 -1
  219. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  220. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  221. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  222. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
  223. package/lib/commonjs/contexts/utils/defaultBaseContextValue.js.map +1 -1
  224. package/lib/commonjs/contexts/utils/getDisplayName.js.map +1 -1
  225. package/lib/commonjs/contexts/utils/isTestEnvironment.js.map +1 -1
  226. package/lib/commonjs/emoji-data/compile.js.map +1 -1
  227. package/lib/commonjs/emoji-data/compiled.js.map +1 -1
  228. package/lib/commonjs/emoji-data/index.js.map +1 -1
  229. package/lib/commonjs/hooks/index.js.map +1 -1
  230. package/lib/commonjs/hooks/useAppStateListener.js.map +1 -1
  231. package/lib/commonjs/hooks/useIsMountedRef.js.map +1 -1
  232. package/lib/commonjs/hooks/useLoadingImage.js.map +1 -1
  233. package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
  234. package/lib/commonjs/hooks/useTranslatedMessage.js.map +1 -1
  235. package/lib/commonjs/icons/ArrowRight.js.map +1 -1
  236. package/lib/commonjs/icons/AtMentions.js.map +1 -1
  237. package/lib/commonjs/icons/Attach.js.map +1 -1
  238. package/lib/commonjs/icons/Audio.js.map +1 -1
  239. package/lib/commonjs/icons/CSV.js.map +1 -1
  240. package/lib/commonjs/icons/Camera.js.map +1 -1
  241. package/lib/commonjs/icons/Check.js.map +1 -1
  242. package/lib/commonjs/icons/CheckAll.js.map +1 -1
  243. package/lib/commonjs/icons/CheckSend.js.map +1 -1
  244. package/lib/commonjs/icons/CircleClose.js.map +1 -1
  245. package/lib/commonjs/icons/CirclePlus.js.map +1 -1
  246. package/lib/commonjs/icons/CircleRight.js.map +1 -1
  247. package/lib/commonjs/icons/Close.js.map +1 -1
  248. package/lib/commonjs/icons/Copy.js.map +1 -1
  249. package/lib/commonjs/icons/CurveLineLeftUp.js.map +1 -1
  250. package/lib/commonjs/icons/DOC.js.map +1 -1
  251. package/lib/commonjs/icons/DOCX.js.map +1 -1
  252. package/lib/commonjs/icons/Delete.js.map +1 -1
  253. package/lib/commonjs/icons/Down.js.map +1 -1
  254. package/lib/commonjs/icons/DownloadArrow.js.map +1 -1
  255. package/lib/commonjs/icons/DownloadCloud.js.map +1 -1
  256. package/lib/commonjs/icons/Edit.js.map +1 -1
  257. package/lib/commonjs/icons/Error.js.map +1 -1
  258. package/lib/commonjs/icons/Eye.js.map +1 -1
  259. package/lib/commonjs/icons/Flag.js.map +1 -1
  260. package/lib/commonjs/icons/Folder.js.map +1 -1
  261. package/lib/commonjs/icons/GenericFile.js.map +1 -1
  262. package/lib/commonjs/icons/GiphyIcon.js.map +1 -1
  263. package/lib/commonjs/icons/Grid.js.map +1 -1
  264. package/lib/commonjs/icons/Group.js.map +1 -1
  265. package/lib/commonjs/icons/HTML.js.map +1 -1
  266. package/lib/commonjs/icons/Imgur.js.map +1 -1
  267. package/lib/commonjs/icons/LOLReaction.js.map +1 -1
  268. package/lib/commonjs/icons/Lightning.js.map +1 -1
  269. package/lib/commonjs/icons/Link.js.map +1 -1
  270. package/lib/commonjs/icons/Loading.js.map +1 -1
  271. package/lib/commonjs/icons/Logo.js.map +1 -1
  272. package/lib/commonjs/icons/LoveReaction.js.map +1 -1
  273. package/lib/commonjs/icons/MD.js.map +1 -1
  274. package/lib/commonjs/icons/MailOpen.js.map +1 -1
  275. package/lib/commonjs/icons/MenuPointHorizontal.js.map +1 -1
  276. package/lib/commonjs/icons/MenuPointVertical.js.map +1 -1
  277. package/lib/commonjs/icons/MessageFlag.js.map +1 -1
  278. package/lib/commonjs/icons/MessageIcon.js.map +1 -1
  279. package/lib/commonjs/icons/Mute.js.map +1 -1
  280. package/lib/commonjs/icons/Notification.js.map +1 -1
  281. package/lib/commonjs/icons/ODT.js.map +1 -1
  282. package/lib/commonjs/icons/PDF.js.map +1 -1
  283. package/lib/commonjs/icons/PPT.js.map +1 -1
  284. package/lib/commonjs/icons/PPTX.js.map +1 -1
  285. package/lib/commonjs/icons/Pause.js.map +1 -1
  286. package/lib/commonjs/icons/Picture.js.map +1 -1
  287. package/lib/commonjs/icons/Pin.js.map +1 -1
  288. package/lib/commonjs/icons/PinHeader.js.map +1 -1
  289. package/lib/commonjs/icons/Play.js.map +1 -1
  290. package/lib/commonjs/icons/RAR.js.map +1 -1
  291. package/lib/commonjs/icons/RTF.js.map +1 -1
  292. package/lib/commonjs/icons/Recorder.js.map +1 -1
  293. package/lib/commonjs/icons/Refresh.js.map +1 -1
  294. package/lib/commonjs/icons/SEVEN_Z.js.map +1 -1
  295. package/lib/commonjs/icons/Search.js.map +1 -1
  296. package/lib/commonjs/icons/SendRight.js.map +1 -1
  297. package/lib/commonjs/icons/SendUp.js.map +1 -1
  298. package/lib/commonjs/icons/Share.js.map +1 -1
  299. package/lib/commonjs/icons/ShareRightArrow.js.map +1 -1
  300. package/lib/commonjs/icons/Smile.js.map +1 -1
  301. package/lib/commonjs/icons/Sound.js.map +1 -1
  302. package/lib/commonjs/icons/TAR.js.map +1 -1
  303. package/lib/commonjs/icons/TXT.js.map +1 -1
  304. package/lib/commonjs/icons/ThreadReply.js.map +1 -1
  305. package/lib/commonjs/icons/ThumbsDownReaction.js.map +1 -1
  306. package/lib/commonjs/icons/ThumbsUpReaction.js.map +1 -1
  307. package/lib/commonjs/icons/Time.js.map +1 -1
  308. package/lib/commonjs/icons/Unknown.js.map +1 -1
  309. package/lib/commonjs/icons/Unpin.js.map +1 -1
  310. package/lib/commonjs/icons/User.js.map +1 -1
  311. package/lib/commonjs/icons/UserAdd.js.map +1 -1
  312. package/lib/commonjs/icons/UserAdmin.js.map +1 -1
  313. package/lib/commonjs/icons/UserDelete.js.map +1 -1
  314. package/lib/commonjs/icons/UserMinus.js.map +1 -1
  315. package/lib/commonjs/icons/Video.js.map +1 -1
  316. package/lib/commonjs/icons/Warning.js.map +1 -1
  317. package/lib/commonjs/icons/WutReaction.js.map +1 -1
  318. package/lib/commonjs/icons/XLS.js.map +1 -1
  319. package/lib/commonjs/icons/XLSX.js.map +1 -1
  320. package/lib/commonjs/icons/ZIP.js.map +1 -1
  321. package/lib/commonjs/icons/index.js.map +1 -1
  322. package/lib/commonjs/icons/utils/base.js.map +1 -1
  323. package/lib/commonjs/index.js.map +1 -1
  324. package/lib/commonjs/init.js.map +1 -1
  325. package/lib/commonjs/mock-builders/DB/consts.js.map +1 -1
  326. package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
  327. package/lib/commonjs/mock-builders/api/channelMocks.js.map +1 -1
  328. package/lib/commonjs/mock-builders/api/deleteMessage.js.map +1 -1
  329. package/lib/commonjs/mock-builders/api/deleteReaction.js.map +1 -1
  330. package/lib/commonjs/mock-builders/api/error.js.map +1 -1
  331. package/lib/commonjs/mock-builders/api/getOrCreateChannel.js.map +1 -1
  332. package/lib/commonjs/mock-builders/api/queryChannels.js.map +1 -1
  333. package/lib/commonjs/mock-builders/api/queryMembers.js.map +1 -1
  334. package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
  335. package/lib/commonjs/mock-builders/api/sendReaction.js.map +1 -1
  336. package/lib/commonjs/mock-builders/api/threadReplies.js.map +1 -1
  337. package/lib/commonjs/mock-builders/api/useMockedApis.js.map +1 -1
  338. package/lib/commonjs/mock-builders/api/utils.js.map +1 -1
  339. package/lib/commonjs/mock-builders/event/channelDeleted.js.map +1 -1
  340. package/lib/commonjs/mock-builders/event/channelHidden.js.map +1 -1
  341. package/lib/commonjs/mock-builders/event/channelTruncated.js.map +1 -1
  342. package/lib/commonjs/mock-builders/event/channelUpdated.js.map +1 -1
  343. package/lib/commonjs/mock-builders/event/connectionChanged.js.map +1 -1
  344. package/lib/commonjs/mock-builders/event/connectionRecovered.js.map +1 -1
  345. package/lib/commonjs/mock-builders/event/memberAdded.js.map +1 -1
  346. package/lib/commonjs/mock-builders/event/memberRemoved.js.map +1 -1
  347. package/lib/commonjs/mock-builders/event/memberUpdated.js.map +1 -1
  348. package/lib/commonjs/mock-builders/event/messageDeleted.js.map +1 -1
  349. package/lib/commonjs/mock-builders/event/messageNew.js.map +1 -1
  350. package/lib/commonjs/mock-builders/event/messageRead.js.map +1 -1
  351. package/lib/commonjs/mock-builders/event/messageUpdated.js.map +1 -1
  352. package/lib/commonjs/mock-builders/event/notificationAddedToChannel.js.map +1 -1
  353. package/lib/commonjs/mock-builders/event/notificationMessageNew.js.map +1 -1
  354. package/lib/commonjs/mock-builders/event/notificationMutesUpdated.js.map +1 -1
  355. package/lib/commonjs/mock-builders/event/notificationRemovedFromChannel.js.map +1 -1
  356. package/lib/commonjs/mock-builders/event/reactionDeleted.js.map +1 -1
  357. package/lib/commonjs/mock-builders/event/reactionNew.js.map +1 -1
  358. package/lib/commonjs/mock-builders/event/reactionUpdated.js.map +1 -1
  359. package/lib/commonjs/mock-builders/event/typing.js.map +1 -1
  360. package/lib/commonjs/mock-builders/event/userPresence.js.map +1 -1
  361. package/lib/commonjs/mock-builders/event/userUpdated.js.map +1 -1
  362. package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
  363. package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
  364. package/lib/commonjs/mock-builders/generator/member.js.map +1 -1
  365. package/lib/commonjs/mock-builders/generator/message.js.map +1 -1
  366. package/lib/commonjs/mock-builders/generator/reaction.js.map +1 -1
  367. package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
  368. package/lib/commonjs/mock-builders/mock.js.map +1 -1
  369. package/lib/commonjs/native.js.map +1 -1
  370. package/lib/commonjs/store/QuickSqliteClient.js.map +1 -1
  371. package/lib/commonjs/store/QuickSqliteClient_v4.js.map +1 -1
  372. package/lib/commonjs/store/apis/addPendingTask.js.map +1 -1
  373. package/lib/commonjs/store/apis/deleteChannel.js.map +1 -1
  374. package/lib/commonjs/store/apis/deleteMember.js.map +1 -1
  375. package/lib/commonjs/store/apis/deleteMessage.js.map +1 -1
  376. package/lib/commonjs/store/apis/deleteMessagesForChannel.js.map +1 -1
  377. package/lib/commonjs/store/apis/deletePendingTask.js.map +1 -1
  378. package/lib/commonjs/store/apis/deleteReaction.js.map +1 -1
  379. package/lib/commonjs/store/apis/deleteReactions.js.map +1 -1
  380. package/lib/commonjs/store/apis/getAllChannelIds.js.map +1 -1
  381. package/lib/commonjs/store/apis/getAppSettings.js.map +1 -1
  382. package/lib/commonjs/store/apis/getChannelMessages.js.map +1 -1
  383. package/lib/commonjs/store/apis/getChannels.js.map +1 -1
  384. package/lib/commonjs/store/apis/getChannelsForFilterSort.js.map +1 -1
  385. package/lib/commonjs/store/apis/getLastSyncedAt.js.map +1 -1
  386. package/lib/commonjs/store/apis/getMembers.js.map +1 -1
  387. package/lib/commonjs/store/apis/getPendingTasks.js.map +1 -1
  388. package/lib/commonjs/store/apis/getReads.js.map +1 -1
  389. package/lib/commonjs/store/apis/index.js.map +1 -1
  390. package/lib/commonjs/store/apis/insertReaction.js.map +1 -1
  391. package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
  392. package/lib/commonjs/store/apis/queries/selectChannels.js.map +1 -1
  393. package/lib/commonjs/store/apis/queries/selectMembersForChannels.js.map +1 -1
  394. package/lib/commonjs/store/apis/queries/selectMessagesForChannels.js.map +1 -1
  395. package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js.map +1 -1
  396. package/lib/commonjs/store/apis/queries/selectReadsForChannels.js.map +1 -1
  397. package/lib/commonjs/store/apis/updateMessage.js.map +1 -1
  398. package/lib/commonjs/store/apis/updateReaction.js.map +1 -1
  399. package/lib/commonjs/store/apis/upsertAppSettings.js.map +1 -1
  400. package/lib/commonjs/store/apis/upsertChannelData.js.map +1 -1
  401. package/lib/commonjs/store/apis/upsertChannels.js.map +1 -1
  402. package/lib/commonjs/store/apis/upsertCidsForQuery.js.map +1 -1
  403. package/lib/commonjs/store/apis/upsertLastSyncedAt.js.map +1 -1
  404. package/lib/commonjs/store/apis/upsertMembers.js.map +1 -1
  405. package/lib/commonjs/store/apis/upsertMessages.js.map +1 -1
  406. package/lib/commonjs/store/apis/upsertReads.js.map +1 -1
  407. package/lib/commonjs/store/apis/utils/convertFilterSortToQuery.js.map +1 -1
  408. package/lib/commonjs/store/constants.js.map +1 -1
  409. package/lib/commonjs/store/mappers/mapChannelDataToStorable.js.map +1 -1
  410. package/lib/commonjs/store/mappers/mapDateTimeToStorable.js.map +1 -1
  411. package/lib/commonjs/store/mappers/mapMemberToStorable.js.map +1 -1
  412. package/lib/commonjs/store/mappers/mapMessageToStorable.js.map +1 -1
  413. package/lib/commonjs/store/mappers/mapReactionToStorable.js.map +1 -1
  414. package/lib/commonjs/store/mappers/mapReadToStorable.js.map +1 -1
  415. package/lib/commonjs/store/mappers/mapStorableToChannel.js.map +1 -1
  416. package/lib/commonjs/store/mappers/mapStorableToMember.js.map +1 -1
  417. package/lib/commonjs/store/mappers/mapStorableToMessage.js.map +1 -1
  418. package/lib/commonjs/store/mappers/mapStorableToReaction.js.map +1 -1
  419. package/lib/commonjs/store/mappers/mapStorableToRead.js.map +1 -1
  420. package/lib/commonjs/store/mappers/mapStorableToTask.js.map +1 -1
  421. package/lib/commonjs/store/mappers/mapStorableToUser.js.map +1 -1
  422. package/lib/commonjs/store/mappers/mapTaskToStorable.js.map +1 -1
  423. package/lib/commonjs/store/mappers/mapUserToStorable.js.map +1 -1
  424. package/lib/commonjs/store/schema.js.map +1 -1
  425. package/lib/commonjs/store/sqlite-utils/appendOrderByClause.js.map +1 -1
  426. package/lib/commonjs/store/sqlite-utils/appendWhereCluase.js.map +1 -1
  427. package/lib/commonjs/store/sqlite-utils/createCreateTableQuery.js.map +1 -1
  428. package/lib/commonjs/store/sqlite-utils/createDeleteQuery.js.map +1 -1
  429. package/lib/commonjs/store/sqlite-utils/createSelectQuery.js.map +1 -1
  430. package/lib/commonjs/store/sqlite-utils/createUpdateQuery.js.map +1 -1
  431. package/lib/commonjs/store/sqlite-utils/createUpsertQuery.js.map +1 -1
  432. package/lib/commonjs/store/sqlite-utils/printRow.js.map +1 -1
  433. package/lib/commonjs/test-utils/BetterSqlite.js.map +1 -1
  434. package/lib/commonjs/utils/DBSyncManager.js.map +1 -1
  435. package/lib/commonjs/utils/Streami18n.js.map +1 -1
  436. package/lib/commonjs/utils/addReactionToLocalState.js.map +1 -1
  437. package/lib/commonjs/utils/date.js.map +1 -1
  438. package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -1
  439. package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -1
  440. package/lib/commonjs/utils/patchMessageTextCommand.js.map +1 -1
  441. package/lib/commonjs/utils/removeReactionFromLocalState.js.map +1 -1
  442. package/lib/commonjs/utils/removeReservedFields.js.map +1 -1
  443. package/lib/commonjs/utils/utils.js.map +1 -1
  444. package/lib/commonjs/version.json +1 -1
  445. package/lib/module/components/Attachment/Attachment.js +3 -21
  446. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  447. package/lib/module/components/Attachment/AttachmentActions.js.map +1 -1
  448. package/lib/module/components/Attachment/AudioAttachment.js.map +1 -1
  449. package/lib/module/components/Attachment/Card.js.map +1 -1
  450. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  451. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  452. package/lib/module/components/Attachment/FileIcon.js.map +1 -1
  453. package/lib/module/components/Attachment/Gallery.js +1 -7
  454. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  455. package/lib/module/components/Attachment/GalleryImage.js.map +1 -1
  456. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  457. package/lib/module/components/Attachment/ImageLoadingFailedIndicator.js.map +1 -1
  458. package/lib/module/components/Attachment/ImageLoadingIndicator.js.map +1 -1
  459. package/lib/module/components/Attachment/VideoThumbnail.js.map +1 -1
  460. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -1
  461. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -1
  462. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -1
  463. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -1
  464. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
  465. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -1
  466. package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -1
  467. package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -1
  468. package/lib/module/components/Attachment/utils/getGiphyMimeType.js.map +1 -1
  469. package/lib/module/components/Attachment/utils/openUrlSafely.js.map +1 -1
  470. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +1 -7
  471. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  472. package/lib/module/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.js.map +1 -1
  473. package/lib/module/components/AttachmentPicker/components/AttachmentPickerError.js.map +1 -1
  474. package/lib/module/components/AttachmentPicker/components/AttachmentPickerErrorImage.js.map +1 -1
  475. package/lib/module/components/AttachmentPicker/components/AttachmentPickerItem.js.map +1 -1
  476. package/lib/module/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
  477. package/lib/module/components/AttachmentPicker/components/CameraSelectorIcon.js.map +1 -1
  478. package/lib/module/components/AttachmentPicker/components/FileSelectorIcon.js.map +1 -1
  479. package/lib/module/components/AttachmentPicker/components/ImageOverlaySelectedComponent.js.map +1 -1
  480. package/lib/module/components/AttachmentPicker/components/ImageSelectorIcon.js.map +1 -1
  481. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  482. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  483. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  484. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  485. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  486. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  487. package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
  488. package/lib/module/components/Channel/Channel.js.map +1 -1
  489. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  490. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  491. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  492. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  493. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
  494. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  495. package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
  496. package/lib/module/components/Channel/hooks/useTargetedMessage.js.map +1 -1
  497. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  498. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  499. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  500. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  501. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  502. package/lib/module/components/ChannelList/ChannelListMessenger.js +1 -7
  503. package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
  504. package/lib/module/components/ChannelList/Skeleton.js.map +1 -1
  505. package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
  506. package/lib/module/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
  507. package/lib/module/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
  508. package/lib/module/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
  509. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
  510. package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
  511. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  512. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  513. package/lib/module/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
  514. package/lib/module/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
  515. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  516. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  517. package/lib/module/components/ChannelList/utils.js.map +1 -1
  518. package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
  519. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  520. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  521. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
  522. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
  523. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  524. package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
  525. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  526. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
  527. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  528. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  529. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  530. package/lib/module/components/Chat/Chat.js +20 -14
  531. package/lib/module/components/Chat/Chat.js.map +1 -1
  532. package/lib/module/components/Chat/hooks/handleEventToSyncDB.js.map +1 -1
  533. package/lib/module/components/Chat/hooks/useAppSettings.js +20 -14
  534. package/lib/module/components/Chat/hooks/useAppSettings.js.map +1 -1
  535. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  536. package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
  537. package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
  538. package/lib/module/components/Chat/hooks/useSyncDatabase.js.map +1 -1
  539. package/lib/module/components/ImageBackground.js.map +1 -1
  540. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  541. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  542. package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  543. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  544. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  545. package/lib/module/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
  546. package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  547. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  548. package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  549. package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  550. package/lib/module/components/Indicators/EmptyStateIndicator.js.map +1 -1
  551. package/lib/module/components/Indicators/LoadingDot.js.map +1 -1
  552. package/lib/module/components/Indicators/LoadingDots.js.map +1 -1
  553. package/lib/module/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  554. package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
  555. package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
  556. package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleViewFC.js.map +1 -1
  557. package/lib/module/components/Message/Message.js.map +1 -1
  558. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  559. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  560. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  561. package/lib/module/components/Message/MessageSimple/MessageFooter.js +2 -14
  562. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  563. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  564. package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
  565. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
  566. package/lib/module/components/Message/MessageSimple/MessageSimple.js +1 -7
  567. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  568. package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
  569. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  570. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
  571. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +1 -1
  572. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -1
  573. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  574. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +1 -7
  575. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -1
  576. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  577. package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  578. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
  579. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  580. package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
  581. package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
  582. package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -1
  583. package/lib/module/components/MessageInput/FileUploadPreview.js +1 -7
  584. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  585. package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
  586. package/lib/module/components/MessageInput/InputButtons.js +1 -7
  587. package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
  588. package/lib/module/components/MessageInput/MessageInput.js +2 -14
  589. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  590. package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
  591. package/lib/module/components/MessageInput/SendButton.js.map +1 -1
  592. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  593. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  594. package/lib/module/components/MessageInput/UploadProgressIndicator.js.map +1 -1
  595. package/lib/module/components/MessageInput/components/InputEditingStateHeader.js.map +1 -1
  596. package/lib/module/components/MessageInput/components/InputGiphySearch.js.map +1 -1
  597. package/lib/module/components/MessageInput/components/InputReplyStateHeader.js.map +1 -1
  598. package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -1
  599. package/lib/module/components/MessageInput/hooks/useCountdown.js.map +1 -1
  600. package/lib/module/components/MessageList/DateHeader.js.map +1 -1
  601. package/lib/module/components/MessageList/InlineDateSeparator.js.map +1 -1
  602. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  603. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  604. package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
  605. package/lib/module/components/MessageList/InlineUnreadIndicator.js.map +1 -1
  606. package/lib/module/components/MessageList/MessageList.js +4 -28
  607. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  608. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  609. package/lib/module/components/MessageList/NetworkDownIndicator.js.map +1 -1
  610. package/lib/module/components/MessageList/ScrollToBottomButton.js.map +1 -1
  611. package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
  612. package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  613. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  614. package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
  615. package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  616. package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
  617. package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
  618. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  619. package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
  620. package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -1
  621. package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -1
  622. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
  623. package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
  624. package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
  625. package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
  626. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -1
  627. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
  628. package/lib/module/components/ProgressControl/ProgressControl.js.map +1 -1
  629. package/lib/module/components/RTLComponents/WritingDirectionAwareText.js.map +1 -1
  630. package/lib/module/components/Reply/Reply.js.map +1 -1
  631. package/lib/module/components/Spinner/Spinner.js.map +1 -1
  632. package/lib/module/components/Thread/Thread.js.map +1 -1
  633. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  634. package/lib/module/components/docs/data.js.map +1 -1
  635. package/lib/module/components/index.js.map +1 -1
  636. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  637. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  638. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  639. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  640. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  641. package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
  642. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  643. package/lib/module/contexts/debugContext/DebugContext.js.map +1 -1
  644. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  645. package/lib/module/contexts/index.js.map +1 -1
  646. package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  647. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  648. package/lib/module/contexts/messageInputContext/MessageInputContext.js +8 -8
  649. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  650. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  651. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  652. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
  653. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -1
  654. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js +1 -7
  655. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -1
  656. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  657. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  658. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  659. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -1
  660. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  661. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  662. package/lib/module/contexts/themeContext/ThemeContext.js.map +1 -1
  663. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  664. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  665. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  666. package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
  667. package/lib/module/contexts/utils/defaultBaseContextValue.js.map +1 -1
  668. package/lib/module/contexts/utils/getDisplayName.js.map +1 -1
  669. package/lib/module/contexts/utils/isTestEnvironment.js.map +1 -1
  670. package/lib/module/emoji-data/compile.js.map +1 -1
  671. package/lib/module/emoji-data/compiled.js.map +1 -1
  672. package/lib/module/emoji-data/index.js.map +1 -1
  673. package/lib/module/hooks/index.js.map +1 -1
  674. package/lib/module/hooks/useAppStateListener.js.map +1 -1
  675. package/lib/module/hooks/useIsMountedRef.js.map +1 -1
  676. package/lib/module/hooks/useLoadingImage.js.map +1 -1
  677. package/lib/module/hooks/useStreami18n.js.map +1 -1
  678. package/lib/module/hooks/useTranslatedMessage.js.map +1 -1
  679. package/lib/module/icons/ArrowRight.js.map +1 -1
  680. package/lib/module/icons/AtMentions.js.map +1 -1
  681. package/lib/module/icons/Attach.js.map +1 -1
  682. package/lib/module/icons/Audio.js.map +1 -1
  683. package/lib/module/icons/CSV.js.map +1 -1
  684. package/lib/module/icons/Camera.js.map +1 -1
  685. package/lib/module/icons/Check.js.map +1 -1
  686. package/lib/module/icons/CheckAll.js.map +1 -1
  687. package/lib/module/icons/CheckSend.js.map +1 -1
  688. package/lib/module/icons/CircleClose.js.map +1 -1
  689. package/lib/module/icons/CirclePlus.js.map +1 -1
  690. package/lib/module/icons/CircleRight.js.map +1 -1
  691. package/lib/module/icons/Close.js.map +1 -1
  692. package/lib/module/icons/Copy.js.map +1 -1
  693. package/lib/module/icons/CurveLineLeftUp.js.map +1 -1
  694. package/lib/module/icons/DOC.js.map +1 -1
  695. package/lib/module/icons/DOCX.js.map +1 -1
  696. package/lib/module/icons/Delete.js.map +1 -1
  697. package/lib/module/icons/Down.js.map +1 -1
  698. package/lib/module/icons/DownloadArrow.js.map +1 -1
  699. package/lib/module/icons/DownloadCloud.js.map +1 -1
  700. package/lib/module/icons/Edit.js.map +1 -1
  701. package/lib/module/icons/Error.js.map +1 -1
  702. package/lib/module/icons/Eye.js.map +1 -1
  703. package/lib/module/icons/Flag.js.map +1 -1
  704. package/lib/module/icons/Folder.js.map +1 -1
  705. package/lib/module/icons/GenericFile.js.map +1 -1
  706. package/lib/module/icons/GiphyIcon.js.map +1 -1
  707. package/lib/module/icons/Grid.js.map +1 -1
  708. package/lib/module/icons/Group.js.map +1 -1
  709. package/lib/module/icons/HTML.js.map +1 -1
  710. package/lib/module/icons/Imgur.js.map +1 -1
  711. package/lib/module/icons/LOLReaction.js.map +1 -1
  712. package/lib/module/icons/Lightning.js.map +1 -1
  713. package/lib/module/icons/Link.js.map +1 -1
  714. package/lib/module/icons/Loading.js.map +1 -1
  715. package/lib/module/icons/Logo.js.map +1 -1
  716. package/lib/module/icons/LoveReaction.js.map +1 -1
  717. package/lib/module/icons/MD.js.map +1 -1
  718. package/lib/module/icons/MailOpen.js.map +1 -1
  719. package/lib/module/icons/MenuPointHorizontal.js.map +1 -1
  720. package/lib/module/icons/MenuPointVertical.js.map +1 -1
  721. package/lib/module/icons/MessageFlag.js.map +1 -1
  722. package/lib/module/icons/MessageIcon.js.map +1 -1
  723. package/lib/module/icons/Mute.js.map +1 -1
  724. package/lib/module/icons/Notification.js.map +1 -1
  725. package/lib/module/icons/ODT.js.map +1 -1
  726. package/lib/module/icons/PDF.js.map +1 -1
  727. package/lib/module/icons/PPT.js.map +1 -1
  728. package/lib/module/icons/PPTX.js.map +1 -1
  729. package/lib/module/icons/Pause.js.map +1 -1
  730. package/lib/module/icons/Picture.js.map +1 -1
  731. package/lib/module/icons/Pin.js.map +1 -1
  732. package/lib/module/icons/PinHeader.js.map +1 -1
  733. package/lib/module/icons/Play.js.map +1 -1
  734. package/lib/module/icons/RAR.js.map +1 -1
  735. package/lib/module/icons/RTF.js.map +1 -1
  736. package/lib/module/icons/Recorder.js.map +1 -1
  737. package/lib/module/icons/Refresh.js.map +1 -1
  738. package/lib/module/icons/SEVEN_Z.js.map +1 -1
  739. package/lib/module/icons/Search.js.map +1 -1
  740. package/lib/module/icons/SendRight.js.map +1 -1
  741. package/lib/module/icons/SendUp.js.map +1 -1
  742. package/lib/module/icons/Share.js.map +1 -1
  743. package/lib/module/icons/ShareRightArrow.js.map +1 -1
  744. package/lib/module/icons/Smile.js.map +1 -1
  745. package/lib/module/icons/Sound.js.map +1 -1
  746. package/lib/module/icons/TAR.js.map +1 -1
  747. package/lib/module/icons/TXT.js.map +1 -1
  748. package/lib/module/icons/ThreadReply.js.map +1 -1
  749. package/lib/module/icons/ThumbsDownReaction.js.map +1 -1
  750. package/lib/module/icons/ThumbsUpReaction.js.map +1 -1
  751. package/lib/module/icons/Time.js.map +1 -1
  752. package/lib/module/icons/Unknown.js.map +1 -1
  753. package/lib/module/icons/Unpin.js.map +1 -1
  754. package/lib/module/icons/User.js.map +1 -1
  755. package/lib/module/icons/UserAdd.js.map +1 -1
  756. package/lib/module/icons/UserAdmin.js.map +1 -1
  757. package/lib/module/icons/UserDelete.js.map +1 -1
  758. package/lib/module/icons/UserMinus.js.map +1 -1
  759. package/lib/module/icons/Video.js.map +1 -1
  760. package/lib/module/icons/Warning.js.map +1 -1
  761. package/lib/module/icons/WutReaction.js.map +1 -1
  762. package/lib/module/icons/XLS.js.map +1 -1
  763. package/lib/module/icons/XLSX.js.map +1 -1
  764. package/lib/module/icons/ZIP.js.map +1 -1
  765. package/lib/module/icons/index.js.map +1 -1
  766. package/lib/module/icons/utils/base.js.map +1 -1
  767. package/lib/module/index.js.map +1 -1
  768. package/lib/module/init.js.map +1 -1
  769. package/lib/module/mock-builders/DB/consts.js.map +1 -1
  770. package/lib/module/mock-builders/DB/mock.js.map +1 -1
  771. package/lib/module/mock-builders/api/channelMocks.js.map +1 -1
  772. package/lib/module/mock-builders/api/deleteMessage.js.map +1 -1
  773. package/lib/module/mock-builders/api/deleteReaction.js.map +1 -1
  774. package/lib/module/mock-builders/api/error.js.map +1 -1
  775. package/lib/module/mock-builders/api/getOrCreateChannel.js.map +1 -1
  776. package/lib/module/mock-builders/api/queryChannels.js.map +1 -1
  777. package/lib/module/mock-builders/api/queryMembers.js.map +1 -1
  778. package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
  779. package/lib/module/mock-builders/api/sendReaction.js.map +1 -1
  780. package/lib/module/mock-builders/api/threadReplies.js.map +1 -1
  781. package/lib/module/mock-builders/api/useMockedApis.js.map +1 -1
  782. package/lib/module/mock-builders/api/utils.js.map +1 -1
  783. package/lib/module/mock-builders/event/channelDeleted.js.map +1 -1
  784. package/lib/module/mock-builders/event/channelHidden.js.map +1 -1
  785. package/lib/module/mock-builders/event/channelTruncated.js.map +1 -1
  786. package/lib/module/mock-builders/event/channelUpdated.js.map +1 -1
  787. package/lib/module/mock-builders/event/connectionChanged.js.map +1 -1
  788. package/lib/module/mock-builders/event/connectionRecovered.js.map +1 -1
  789. package/lib/module/mock-builders/event/memberAdded.js.map +1 -1
  790. package/lib/module/mock-builders/event/memberRemoved.js.map +1 -1
  791. package/lib/module/mock-builders/event/memberUpdated.js.map +1 -1
  792. package/lib/module/mock-builders/event/messageDeleted.js.map +1 -1
  793. package/lib/module/mock-builders/event/messageNew.js.map +1 -1
  794. package/lib/module/mock-builders/event/messageRead.js.map +1 -1
  795. package/lib/module/mock-builders/event/messageUpdated.js.map +1 -1
  796. package/lib/module/mock-builders/event/notificationAddedToChannel.js.map +1 -1
  797. package/lib/module/mock-builders/event/notificationMessageNew.js.map +1 -1
  798. package/lib/module/mock-builders/event/notificationMutesUpdated.js.map +1 -1
  799. package/lib/module/mock-builders/event/notificationRemovedFromChannel.js.map +1 -1
  800. package/lib/module/mock-builders/event/reactionDeleted.js.map +1 -1
  801. package/lib/module/mock-builders/event/reactionNew.js.map +1 -1
  802. package/lib/module/mock-builders/event/reactionUpdated.js.map +1 -1
  803. package/lib/module/mock-builders/event/typing.js.map +1 -1
  804. package/lib/module/mock-builders/event/userPresence.js.map +1 -1
  805. package/lib/module/mock-builders/event/userUpdated.js.map +1 -1
  806. package/lib/module/mock-builders/generator/attachment.js.map +1 -1
  807. package/lib/module/mock-builders/generator/channel.js.map +1 -1
  808. package/lib/module/mock-builders/generator/member.js.map +1 -1
  809. package/lib/module/mock-builders/generator/message.js.map +1 -1
  810. package/lib/module/mock-builders/generator/reaction.js.map +1 -1
  811. package/lib/module/mock-builders/generator/user.js.map +1 -1
  812. package/lib/module/mock-builders/mock.js.map +1 -1
  813. package/lib/module/native.js.map +1 -1
  814. package/lib/module/store/QuickSqliteClient.js.map +1 -1
  815. package/lib/module/store/QuickSqliteClient_v4.js.map +1 -1
  816. package/lib/module/store/apis/addPendingTask.js.map +1 -1
  817. package/lib/module/store/apis/deleteChannel.js.map +1 -1
  818. package/lib/module/store/apis/deleteMember.js.map +1 -1
  819. package/lib/module/store/apis/deleteMessage.js.map +1 -1
  820. package/lib/module/store/apis/deleteMessagesForChannel.js.map +1 -1
  821. package/lib/module/store/apis/deletePendingTask.js.map +1 -1
  822. package/lib/module/store/apis/deleteReaction.js.map +1 -1
  823. package/lib/module/store/apis/deleteReactions.js.map +1 -1
  824. package/lib/module/store/apis/getAllChannelIds.js.map +1 -1
  825. package/lib/module/store/apis/getAppSettings.js.map +1 -1
  826. package/lib/module/store/apis/getChannelMessages.js.map +1 -1
  827. package/lib/module/store/apis/getChannels.js.map +1 -1
  828. package/lib/module/store/apis/getChannelsForFilterSort.js.map +1 -1
  829. package/lib/module/store/apis/getLastSyncedAt.js.map +1 -1
  830. package/lib/module/store/apis/getMembers.js.map +1 -1
  831. package/lib/module/store/apis/getPendingTasks.js.map +1 -1
  832. package/lib/module/store/apis/getReads.js.map +1 -1
  833. package/lib/module/store/apis/index.js.map +1 -1
  834. package/lib/module/store/apis/insertReaction.js.map +1 -1
  835. package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
  836. package/lib/module/store/apis/queries/selectChannels.js.map +1 -1
  837. package/lib/module/store/apis/queries/selectMembersForChannels.js.map +1 -1
  838. package/lib/module/store/apis/queries/selectMessagesForChannels.js.map +1 -1
  839. package/lib/module/store/apis/queries/selectReactionsForMessages.js.map +1 -1
  840. package/lib/module/store/apis/queries/selectReadsForChannels.js.map +1 -1
  841. package/lib/module/store/apis/updateMessage.js.map +1 -1
  842. package/lib/module/store/apis/updateReaction.js.map +1 -1
  843. package/lib/module/store/apis/upsertAppSettings.js.map +1 -1
  844. package/lib/module/store/apis/upsertChannelData.js.map +1 -1
  845. package/lib/module/store/apis/upsertChannels.js.map +1 -1
  846. package/lib/module/store/apis/upsertCidsForQuery.js.map +1 -1
  847. package/lib/module/store/apis/upsertLastSyncedAt.js.map +1 -1
  848. package/lib/module/store/apis/upsertMembers.js.map +1 -1
  849. package/lib/module/store/apis/upsertMessages.js.map +1 -1
  850. package/lib/module/store/apis/upsertReads.js.map +1 -1
  851. package/lib/module/store/apis/utils/convertFilterSortToQuery.js.map +1 -1
  852. package/lib/module/store/constants.js.map +1 -1
  853. package/lib/module/store/mappers/mapChannelDataToStorable.js.map +1 -1
  854. package/lib/module/store/mappers/mapDateTimeToStorable.js.map +1 -1
  855. package/lib/module/store/mappers/mapMemberToStorable.js.map +1 -1
  856. package/lib/module/store/mappers/mapMessageToStorable.js.map +1 -1
  857. package/lib/module/store/mappers/mapReactionToStorable.js.map +1 -1
  858. package/lib/module/store/mappers/mapReadToStorable.js.map +1 -1
  859. package/lib/module/store/mappers/mapStorableToChannel.js.map +1 -1
  860. package/lib/module/store/mappers/mapStorableToMember.js.map +1 -1
  861. package/lib/module/store/mappers/mapStorableToMessage.js.map +1 -1
  862. package/lib/module/store/mappers/mapStorableToReaction.js.map +1 -1
  863. package/lib/module/store/mappers/mapStorableToRead.js.map +1 -1
  864. package/lib/module/store/mappers/mapStorableToTask.js.map +1 -1
  865. package/lib/module/store/mappers/mapStorableToUser.js.map +1 -1
  866. package/lib/module/store/mappers/mapTaskToStorable.js.map +1 -1
  867. package/lib/module/store/mappers/mapUserToStorable.js.map +1 -1
  868. package/lib/module/store/schema.js.map +1 -1
  869. package/lib/module/store/sqlite-utils/appendOrderByClause.js.map +1 -1
  870. package/lib/module/store/sqlite-utils/appendWhereCluase.js.map +1 -1
  871. package/lib/module/store/sqlite-utils/createCreateTableQuery.js.map +1 -1
  872. package/lib/module/store/sqlite-utils/createDeleteQuery.js.map +1 -1
  873. package/lib/module/store/sqlite-utils/createSelectQuery.js.map +1 -1
  874. package/lib/module/store/sqlite-utils/createUpdateQuery.js.map +1 -1
  875. package/lib/module/store/sqlite-utils/createUpsertQuery.js.map +1 -1
  876. package/lib/module/store/sqlite-utils/printRow.js.map +1 -1
  877. package/lib/module/test-utils/BetterSqlite.js.map +1 -1
  878. package/lib/module/utils/DBSyncManager.js.map +1 -1
  879. package/lib/module/utils/Streami18n.js.map +1 -1
  880. package/lib/module/utils/addReactionToLocalState.js.map +1 -1
  881. package/lib/module/utils/date.js.map +1 -1
  882. package/lib/module/utils/getResizedImageUrl.js.map +1 -1
  883. package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -1
  884. package/lib/module/utils/patchMessageTextCommand.js.map +1 -1
  885. package/lib/module/utils/removeReactionFromLocalState.js.map +1 -1
  886. package/lib/module/utils/removeReservedFields.js.map +1 -1
  887. package/lib/module/utils/utils.js.map +1 -1
  888. package/lib/module/version.json +1 -1
  889. package/lib/typescript/components/Chat/hooks/useAppSettings.d.ts +1 -1
  890. package/package.json +1 -1
  891. package/src/components/Chat/Chat.tsx +13 -9
  892. package/src/components/Chat/hooks/__tests__/useAppSettings.test.tsx +1 -0
  893. package/src/components/Chat/hooks/useAppSettings.ts +3 -1
  894. package/src/version.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["styles","StyleSheet","create","container","left","position","top","reactionBubble","alignItems","flexDirection","justifyContent","reactionBubbleBackground","Icon","pathFill","size","style","supportedReactions","type","ReactionIcon","find","reaction","Unknown","ReactionListWithContext","props","alignment","propFill","fill","message","messageContentWidth","onLongPress","onPress","onPressIn","preventPress","propRadius","radius","reactions","propReactionSize","reactionSize","showMessageOverlay","propStroke","stroke","propStrokeSize","strokeSize","targetedMessage","useTheme","theme","colors","accent_blue","grey","grey_gainsboro","grey_whisper","targetedMessageBackground","white","white_snow","messageSimple","avatarWrapper","leftAlign","spacer","reactionList","middleIcon","themeRadius","themeReactionSize","themeStrokeSize","screenPadding","width","useWindowDimensions","supportedReactionTypes","map","supportedReaction","hasSupportedReactions","some","includes","alignmentLeft","highlighted","pinned","id","x1","Number","marginRight","x2","y1","y2","insideLeftBound","length","insideRightBound","height","absoluteFill","backgroundColor","borderColor","borderRadius","borderWidth","event","emitter","defaultHandler","own","areEqual","prevProps","nextProps","prevMessage","prevMessageContentWidth","prevTargetedMessage","nextMessage","nextMessageContentWidth","nextTargetedMessage","messageContentWidthEqual","messagePinnedEqual","targetedMessageEqual","latestReactionsEqual","Array","isArray","latest_reactions","every","index","MemoizedReactionList","React","memo","ReactionList","useMessageContext","useMessagesContext"],"sources":["ReactionList.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, TouchableOpacity, useWindowDimensions, View } from 'react-native';\n\nimport Svg, { Circle } from 'react-native-svg';\n\nimport {\n MessageContextValue,\n Reactions,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Unknown } from '../../../icons/Unknown';\n\nimport type { IconProps } from '../../../icons/utils/base';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport type { ReactionData } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n container: {\n left: 0,\n position: 'absolute',\n top: 0,\n },\n reactionBubble: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'space-evenly',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n position: 'absolute',\n },\n});\n\nexport type MessageReactions = {\n reactions: Reactions;\n supportedReactions?: ReactionData[];\n};\n\nconst Icon: React.FC<\n Pick<IconProps, 'pathFill' | 'style'> & {\n size: number;\n supportedReactions: ReactionData[];\n type: string;\n }\n> = ({ pathFill, size, style, supportedReactions, type }) => {\n const ReactionIcon =\n supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n\n return (\n <View>\n <ReactionIcon height={size} pathFill={pathFill} style={style} width={size} />\n </View>\n );\n};\n\nexport type ReactionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n | 'alignment'\n | 'message'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'preventPress'\n | 'reactions'\n | 'showMessageOverlay'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'targetedMessage'> & {\n messageContentWidth: number;\n supportedReactions: ReactionData[];\n fill?: string;\n radius?: number; // not recommended to change this\n reactionSize?: number;\n stroke?: string;\n strokeSize?: number; // not recommended to change this\n };\n\nconst ReactionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n fill: propFill,\n message,\n messageContentWidth,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n radius: propRadius,\n reactions,\n reactionSize: propReactionSize,\n showMessageOverlay,\n stroke: propStroke,\n strokeSize: propStrokeSize,\n supportedReactions,\n targetedMessage,\n } = props;\n\n const {\n theme: {\n colors: {\n accent_blue,\n grey,\n grey_gainsboro,\n grey_whisper,\n targetedMessageBackground,\n white,\n white_snow,\n },\n messageSimple: {\n avatarWrapper: { leftAlign, spacer },\n reactionList: {\n container,\n middleIcon,\n radius: themeRadius,\n reactionBubble,\n reactionBubbleBackground,\n reactionSize: themeReactionSize,\n strokeSize: themeStrokeSize,\n },\n },\n screenPadding,\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n const hasSupportedReactions = reactions.some((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n if (!hasSupportedReactions || messageContentWidth === 0) {\n return null;\n }\n\n const alignmentLeft = alignment === 'left';\n const fill = propFill || alignmentLeft ? grey_gainsboro : grey_whisper;\n const radius = propRadius || themeRadius;\n const reactionSize = propReactionSize || themeReactionSize;\n const highlighted = message.pinned || targetedMessage === message.id;\n const stroke = propStroke || (highlighted ? targetedMessageBackground : white_snow);\n const strokeSize = propStrokeSize || themeStrokeSize;\n\n const x1 = alignmentLeft\n ? messageContentWidth +\n (Number(leftAlign.marginRight) || 0) +\n (Number(spacer.width) || 0) -\n radius * 0.5\n : width - screenPadding * 2 - messageContentWidth;\n const x2 = x1 + radius * 2 * (alignmentLeft ? 1 : -1);\n const y1 = reactionSize + radius * 2;\n const y2 = reactionSize - radius;\n\n const insideLeftBound = x2 - (reactionSize * reactions.length) / 2 > screenPadding;\n const insideRightBound =\n x2 + strokeSize + (reactionSize * reactions.length) / 2 < width - screenPadding * 2;\n const left =\n reactions.length === 1\n ? x1 + (alignmentLeft ? -radius : radius - reactionSize)\n : !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding * 2 - reactionSize * reactions.length - strokeSize\n : x2 - (reactionSize * reactions.length) / 2 - strokeSize;\n\n return (\n <View\n style={[\n styles.container,\n {\n height: reactionSize + radius * 5,\n width,\n },\n container,\n ]}\n testID='reaction-list'\n >\n {reactions.length ? (\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x1} cy={y1} fill={stroke} r={radius + strokeSize * 3} />\n <Circle cx={x2} cy={y2} fill={stroke} r={radius * 2 + strokeSize * 3} />\n <Circle cx={x1} cy={y1} fill={fill} r={radius + strokeSize} />\n <Circle cx={x2} cy={y2} fill={fill} r={radius * 2 + strokeSize} />\n <Circle cx={x1} cy={y1} fill={alignmentLeft ? fill : white} r={radius} />\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderColor: fill,\n borderRadius: reactionSize,\n borderWidth: strokeSize,\n height: reactionSize,\n left,\n width: reactionSize * reactions.length,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n </View>\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderRadius: reactionSize - strokeSize * 2,\n height: reactionSize - strokeSize * 2,\n left: left + strokeSize,\n top: strokeSize,\n width: reactionSize * reactions.length - strokeSize * 2,\n },\n reactionBubble,\n ]}\n >\n {reactions.map((reaction) => (\n <Icon\n key={reaction.type}\n pathFill={reaction.own ? accent_blue : grey}\n size={reactionSize / 2}\n style={middleIcon}\n supportedReactions={supportedReactions}\n type={reaction.type}\n />\n ))}\n </TouchableOpacity>\n </View>\n ) : null}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReactionListPropsWithContext<StreamChatGenerics>,\n nextProps: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n message: prevMessage,\n messageContentWidth: prevMessageContentWidth,\n targetedMessage: prevTargetedMessage,\n } = prevProps;\n const {\n message: nextMessage,\n messageContentWidth: nextMessageContentWidth,\n targetedMessage: nextTargetedMessage,\n } = nextProps;\n\n const messageContentWidthEqual = prevMessageContentWidth === nextMessageContentWidth;\n if (!messageContentWidthEqual) return false;\n\n const messagePinnedEqual = prevMessage.pinned === nextMessage.pinned;\n\n if (!messagePinnedEqual) return false;\n\n const targetedMessageEqual = prevTargetedMessage === nextTargetedMessage;\n\n if (!targetedMessageEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedReactionList = React.memo(\n ReactionListWithContext,\n areEqual,\n) as typeof ReactionListWithContext;\n\nexport type ReactionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Omit<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>> &\n Pick<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>;\n\n/**\n * ReactionList - A high level component which implements all the logic required for a message reaction list\n */\nexport const ReactionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListProps<StreamChatGenerics>,\n) => {\n const {\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n } = useMessageContext<StreamChatGenerics>();\n const { supportedReactions, targetedMessage } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedReactionList\n {...{\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n supportedReactions,\n targetedMessage,\n }}\n {...props}\n />\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeSvg","_interopRequireWildcard","_MessageContext","_MessagesContext","_ThemeContext","_Unknown","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","container","left","position","top","reactionBubble","alignItems","flexDirection","justifyContent","reactionBubbleBackground","Icon","_ref","_supportedReactions$f","pathFill","size","style","supportedReactions","type","ReactionIcon","find","reaction","Unknown","createElement","View","__self","__source","fileName","lineNumber","columnNumber","height","width","ReactionListWithContext","props","alignment","propFill","fill","message","messageContentWidth","onLongPress","onPress","onPressIn","preventPress","propRadius","radius","reactions","propReactionSize","reactionSize","showMessageOverlay","propStroke","stroke","propStrokeSize","strokeSize","targetedMessage","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","grey_gainsboro","grey_whisper","targetedMessageBackground","white","white_snow","_useTheme$theme$messa","messageSimple","_useTheme$theme$messa2","avatarWrapper","leftAlign","spacer","_useTheme$theme$messa3","reactionList","middleIcon","themeRadius","themeReactionSize","themeStrokeSize","screenPadding","useWindowDimensions","supportedReactionTypes","map","supportedReaction","hasSupportedReactions","some","includes","alignmentLeft","highlighted","pinned","id","x1","Number","marginRight","x2","y1","y2","insideLeftBound","length","insideRightBound","testID","absoluteFill","Circle","cx","cy","r","backgroundColor","borderColor","borderRadius","borderWidth","TouchableOpacity","disabled","event","emitter","defaultHandler","own","areEqual","prevProps","nextProps","prevMessage","prevMessageContentWidth","prevTargetedMessage","nextMessage","nextMessageContentWidth","nextTargetedMessage","messageContentWidthEqual","messagePinnedEqual","targetedMessageEqual","latestReactionsEqual","Array","isArray","latest_reactions","every","_ref2","index","_nextMessage$latest_r","MemoizedReactionList","React","memo","ReactionList","_useMessageContext","useMessageContext","_useMessagesContext","useMessagesContext","_extends2","exports"],"sources":["ReactionList.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, TouchableOpacity, useWindowDimensions, View } from 'react-native';\n\nimport Svg, { Circle } from 'react-native-svg';\n\nimport {\n MessageContextValue,\n Reactions,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Unknown } from '../../../icons/Unknown';\n\nimport type { IconProps } from '../../../icons/utils/base';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport type { ReactionData } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n container: {\n left: 0,\n position: 'absolute',\n top: 0,\n },\n reactionBubble: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'space-evenly',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n position: 'absolute',\n },\n});\n\nexport type MessageReactions = {\n reactions: Reactions;\n supportedReactions?: ReactionData[];\n};\n\nconst Icon: React.FC<\n Pick<IconProps, 'pathFill' | 'style'> & {\n size: number;\n supportedReactions: ReactionData[];\n type: string;\n }\n> = ({ pathFill, size, style, supportedReactions, type }) => {\n const ReactionIcon =\n supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n\n return (\n <View>\n <ReactionIcon height={size} pathFill={pathFill} style={style} width={size} />\n </View>\n );\n};\n\nexport type ReactionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n | 'alignment'\n | 'message'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'preventPress'\n | 'reactions'\n | 'showMessageOverlay'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'targetedMessage'> & {\n messageContentWidth: number;\n supportedReactions: ReactionData[];\n fill?: string;\n radius?: number; // not recommended to change this\n reactionSize?: number;\n stroke?: string;\n strokeSize?: number; // not recommended to change this\n };\n\nconst ReactionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n fill: propFill,\n message,\n messageContentWidth,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n radius: propRadius,\n reactions,\n reactionSize: propReactionSize,\n showMessageOverlay,\n stroke: propStroke,\n strokeSize: propStrokeSize,\n supportedReactions,\n targetedMessage,\n } = props;\n\n const {\n theme: {\n colors: {\n accent_blue,\n grey,\n grey_gainsboro,\n grey_whisper,\n targetedMessageBackground,\n white,\n white_snow,\n },\n messageSimple: {\n avatarWrapper: { leftAlign, spacer },\n reactionList: {\n container,\n middleIcon,\n radius: themeRadius,\n reactionBubble,\n reactionBubbleBackground,\n reactionSize: themeReactionSize,\n strokeSize: themeStrokeSize,\n },\n },\n screenPadding,\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n const hasSupportedReactions = reactions.some((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n if (!hasSupportedReactions || messageContentWidth === 0) {\n return null;\n }\n\n const alignmentLeft = alignment === 'left';\n const fill = propFill || alignmentLeft ? grey_gainsboro : grey_whisper;\n const radius = propRadius || themeRadius;\n const reactionSize = propReactionSize || themeReactionSize;\n const highlighted = message.pinned || targetedMessage === message.id;\n const stroke = propStroke || (highlighted ? targetedMessageBackground : white_snow);\n const strokeSize = propStrokeSize || themeStrokeSize;\n\n const x1 = alignmentLeft\n ? messageContentWidth +\n (Number(leftAlign.marginRight) || 0) +\n (Number(spacer.width) || 0) -\n radius * 0.5\n : width - screenPadding * 2 - messageContentWidth;\n const x2 = x1 + radius * 2 * (alignmentLeft ? 1 : -1);\n const y1 = reactionSize + radius * 2;\n const y2 = reactionSize - radius;\n\n const insideLeftBound = x2 - (reactionSize * reactions.length) / 2 > screenPadding;\n const insideRightBound =\n x2 + strokeSize + (reactionSize * reactions.length) / 2 < width - screenPadding * 2;\n const left =\n reactions.length === 1\n ? x1 + (alignmentLeft ? -radius : radius - reactionSize)\n : !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding * 2 - reactionSize * reactions.length - strokeSize\n : x2 - (reactionSize * reactions.length) / 2 - strokeSize;\n\n return (\n <View\n style={[\n styles.container,\n {\n height: reactionSize + radius * 5,\n width,\n },\n container,\n ]}\n testID='reaction-list'\n >\n {reactions.length ? (\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x1} cy={y1} fill={stroke} r={radius + strokeSize * 3} />\n <Circle cx={x2} cy={y2} fill={stroke} r={radius * 2 + strokeSize * 3} />\n <Circle cx={x1} cy={y1} fill={fill} r={radius + strokeSize} />\n <Circle cx={x2} cy={y2} fill={fill} r={radius * 2 + strokeSize} />\n <Circle cx={x1} cy={y1} fill={alignmentLeft ? fill : white} r={radius} />\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderColor: fill,\n borderRadius: reactionSize,\n borderWidth: strokeSize,\n height: reactionSize,\n left,\n width: reactionSize * reactions.length,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n </View>\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderRadius: reactionSize - strokeSize * 2,\n height: reactionSize - strokeSize * 2,\n left: left + strokeSize,\n top: strokeSize,\n width: reactionSize * reactions.length - strokeSize * 2,\n },\n reactionBubble,\n ]}\n >\n {reactions.map((reaction) => (\n <Icon\n key={reaction.type}\n pathFill={reaction.own ? accent_blue : grey}\n size={reactionSize / 2}\n style={middleIcon}\n supportedReactions={supportedReactions}\n type={reaction.type}\n />\n ))}\n </TouchableOpacity>\n </View>\n ) : null}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReactionListPropsWithContext<StreamChatGenerics>,\n nextProps: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n message: prevMessage,\n messageContentWidth: prevMessageContentWidth,\n targetedMessage: prevTargetedMessage,\n } = prevProps;\n const {\n message: nextMessage,\n messageContentWidth: nextMessageContentWidth,\n targetedMessage: nextTargetedMessage,\n } = nextProps;\n\n const messageContentWidthEqual = prevMessageContentWidth === nextMessageContentWidth;\n if (!messageContentWidthEqual) return false;\n\n const messagePinnedEqual = prevMessage.pinned === nextMessage.pinned;\n\n if (!messagePinnedEqual) return false;\n\n const targetedMessageEqual = prevTargetedMessage === nextTargetedMessage;\n\n if (!targetedMessageEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedReactionList = React.memo(\n ReactionListWithContext,\n areEqual,\n) as typeof ReactionListWithContext;\n\nexport type ReactionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Omit<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>> &\n Pick<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>;\n\n/**\n * ReactionList - A high level component which implements all the logic required for a message reaction list\n */\nexport const ReactionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListProps<StreamChatGenerics>,\n) => {\n const {\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n } = useMessageContext<StreamChatGenerics>();\n const { supportedReactions, targetedMessage } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedReactionList\n {...{\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n supportedReactions,\n targetedMessage,\n }}\n {...props}\n />\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["removeMarkdownLinksFromText","input","replace","removeUserNamesFromText","parseLinksFromText","strippedInput","reduce","acc","fn","linkify","Linkify","matches","match","result","map","raw","url","encodedUrl","encodeURI"],"sources":["parseLinks.ts"],"sourcesContent":["import Linkify from 'linkify-it';\n\ninterface LinkInfo {\n encodedUrl: string;\n raw: string;\n}\n\n/**\n * This is done separately because of the version of javascript run\n * for expo\n * */\nconst removeMarkdownLinksFromText = (input: string) => input.replace(/\\[[\\w\\s]+\\]\\(.*\\)/g, '');\n\n/**\n * Hermes doesn't support lookbehind, so this is done separately to avoid\n * parsing user names as links.\n * */\nconst removeUserNamesFromText = (input: string) => input.replace(/^@\\w+\\.?\\w/, '');\n\nexport const parseLinksFromText = (input: string): LinkInfo[] => {\n const strippedInput = [removeMarkdownLinksFromText, removeUserNamesFromText].reduce(\n (acc, fn) => fn(acc),\n input,\n );\n\n const linkify = Linkify();\n const matches = linkify.match(strippedInput) ?? [];\n\n const result: LinkInfo[] = matches.map((match) => {\n const { raw, url } = match;\n return { encodedUrl: encodeURI(url), raw };\n });\n\n return result;\n};\n"],"mappings":";;;;;AAAA;AAWA,IAAMA,2BAA2B,GAAG,SAA9BA,2BAA2B,CAAIC,KAAa;EAAA,OAAKA,KAAK,CAACC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;AAAA;AAM9F,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuB,CAAIF,KAAa;EAAA,OAAKA,KAAK,CAACC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;AAAA;AAE3E,IAAME,kBAAkB,GAAG,SAArBA,kBAAkB,CAAIH,KAAa,EAAiB;EAAA;EAC/D,IAAMI,aAAa,GAAG,CAACL,2BAA2B,EAAEG,uBAAuB,CAAC,CAACG,MAAM,CACjF,UAACC,GAAG,EAAEC,EAAE;IAAA,OAAKA,EAAE,CAACD,GAAG,CAAC;EAAA,GACpBN,KAAK,CACN;EAED,IAAMQ,OAAO,GAAG,IAAAC,qBAAO,GAAE;EACzB,IAAMC,OAAO,qBAAGF,OAAO,CAACG,KAAK,CAACP,aAAa,CAAC,6BAAI,EAAE;EAElD,IAAMQ,MAAkB,GAAGF,OAAO,CAACG,GAAG,CAAC,UAACF,KAAK,EAAK;IAChD,IAAQG,GAAG,GAAUH,KAAK,CAAlBG,GAAG;MAAEC,GAAG,GAAKJ,KAAK,CAAbI,GAAG;IAChB,OAAO;MAAEC,UAAU,EAAEC,SAAS,CAACF,GAAG,CAAC;MAAED,GAAG,EAAHA;IAAI,CAAC;EAC5C,CAAC,CAAC;EAEF,OAAOF,MAAM;AACf,CAAC;AAAC"}
1
+ {"version":3,"names":["_linkifyIt","_interopRequireDefault","require","removeMarkdownLinksFromText","input","replace","removeUserNamesFromText","parseLinksFromText","_linkify$match","strippedInput","reduce","acc","fn","linkify","Linkify","matches","match","result","map","raw","url","encodedUrl","encodeURI","exports"],"sources":["parseLinks.ts"],"sourcesContent":["import Linkify from 'linkify-it';\n\ninterface LinkInfo {\n encodedUrl: string;\n raw: string;\n}\n\n/**\n * This is done separately because of the version of javascript run\n * for expo\n * */\nconst removeMarkdownLinksFromText = (input: string) => input.replace(/\\[[\\w\\s]+\\]\\(.*\\)/g, '');\n\n/**\n * Hermes doesn't support lookbehind, so this is done separately to avoid\n * parsing user names as links.\n * */\nconst removeUserNamesFromText = (input: string) => input.replace(/^@\\w+\\.?\\w/, '');\n\nexport const parseLinksFromText = (input: string): LinkInfo[] => {\n const strippedInput = [removeMarkdownLinksFromText, removeUserNamesFromText].reduce(\n (acc, fn) => fn(acc),\n input,\n );\n\n const linkify = Linkify();\n const matches = linkify.match(strippedInput) ?? [];\n\n const result: LinkInfo[] = matches.map((match) => {\n const { raw, url } = match;\n return { encodedUrl: encodeURI(url), raw };\n });\n\n return result;\n};\n"],"mappings":";;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAWA,IAAMC,2BAA2B,GAAG,SAA9BA,2BAA2BA,CAAIC,KAAa;EAAA,OAAKA,KAAK,CAACC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;AAAA;AAM9F,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAIF,KAAa;EAAA,OAAKA,KAAK,CAACC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;AAAA;AAE3E,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIH,KAAa,EAAiB;EAAA,IAAAI,cAAA;EAC/D,IAAMC,aAAa,GAAG,CAACN,2BAA2B,EAAEG,uBAAuB,CAAC,CAACI,MAAM,CACjF,UAACC,GAAG,EAAEC,EAAE;IAAA,OAAKA,EAAE,CAACD,GAAG,CAAC;EAAA,GACpBP,KAAK,CACN;EAED,IAAMS,OAAO,GAAG,IAAAC,qBAAO,GAAE;EACzB,IAAMC,OAAO,IAAAP,cAAA,GAAGK,OAAO,CAACG,KAAK,CAACP,aAAa,CAAC,YAAAD,cAAA,GAAI,EAAE;EAElD,IAAMS,MAAkB,GAAGF,OAAO,CAACG,GAAG,CAAC,UAACF,KAAK,EAAK;IAChD,IAAQG,GAAG,GAAUH,KAAK,CAAlBG,GAAG;MAAEC,GAAG,GAAKJ,KAAK,CAAbI,GAAG;IAChB,OAAO;MAAEC,UAAU,EAAEC,SAAS,CAACF,GAAG,CAAC;MAAED,GAAG,EAAHA;IAAI,CAAC;EAC5C,CAAC,CAAC;EAEF,OAAOF,MAAM;AACf,CAAC;AAACM,OAAA,CAAAhB,kBAAA,GAAAA,kBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["describe","it","each","undefined","link","expected","result","parseLinksFromText","expect","encodedUrl","toBe","input","toEqual","raw","email","console","log","toHaveLength"],"sources":["parseLinks.test.ts"],"sourcesContent":["import { parseLinksFromText } from './parseLinks';\n\ndescribe('parseLinksFromText', () => {\n it.each([\n ['https://www.getstream.io', 'https://www.getstream.io'],\n ['https://getstream.io', 'https://getstream.io'],\n ['scrn://team-chat', undefined],\n ['https://localhost', 'https://localhost'],\n [\n 'https://localhost/with/path?and=query&multiple=params',\n 'https://localhost/with/path?and=query&multiple=params',\n ],\n [\n 'https://localhost/with/path?and=query#fragment',\n 'https://localhost/with/path?and=query#fragment',\n ],\n ['reactnative.stream', undefined],\n [\n 'https://zh.wikipedia.org/wiki/挪威牛油危機',\n 'https://zh.wikipedia.org/wiki/%E6%8C%AA%E5%A8%81%E7%89%9B%E6%B2%B9%E5%8D%B1%E6%A9%9F',\n ],\n [\n 'https://getstream.io/chat/docs/react-native/?language=javascript',\n 'https://getstream.io/chat/docs/react-native/?language=javascript',\n ],\n ['127.0.0.1/local_(development)_server', undefined],\n ['https://a.co:8999/ab.php?p=12', 'https://a.co:8999/ab.php?p=12'],\n [\n 'https://help.apple.com/xcode/mac/current/#/devba7f53ad4',\n 'https://help.apple.com/xcode/mac/current/#/devba7f53ad4',\n ],\n ])('Returns the encoded value of %p as %p', (link, expected) => {\n const result = parseLinksFromText(link);\n expect(result[0]?.encodedUrl).toBe(expected);\n });\n it('parses fqdn', () => {\n const input = `We have put the apim bol,\n temporarily so :sj: we can later put the monitors on my grasp\n on reality right now is\n https://www.contrived-example.com:8080/sub/page.php?p1=1🇳🇴&p2=2#fragment-identifier\n :)`;\n const result = parseLinksFromText(input);\n expect(result).toEqual([\n {\n encodedUrl:\n 'https://www.contrived-example.com:8080/sub/page.php?p1=1%F0%9F%87%B3%F0%9F%87%B4&p2=2#fragment-identifier',\n raw: 'https://www.contrived-example.com:8080/sub/page.php?p1=1🇳🇴&p2=2#fragment-identifier',\n },\n ]);\n });\n it.each([\n ['support+rn@getstream.io'],\n ['support.rn@getstream.io'],\n ['support-rn@getstream.io'],\n ['support_rn@getstream.io'],\n ])('Can parse the email address %p', (email) => {\n const result = parseLinksFromText(email);\n expect(result[0].encodedUrl).toBe('mailto:' + email);\n expect(result[0].raw).toBe(email);\n });\n it(\"doesn't double the mailto prefix\", () => {\n const input = 'mailto:support@getstream.io';\n const result = parseLinksFromText(input);\n expect(result[0]).toEqual({\n encodedUrl: input,\n raw: input,\n });\n });\n it('Does not falsely parse LINKs from text content', () => {\n const input = `#This string exists to test that we don't produce false positives\n Existing links:\n [already a parsed link](https://getstream.io/blog/react-native-how-to-build-bidirectional-infinite-scroll/)\n [even a bogus one]( should not match )\n ## These should, however, be parsed:\n www.getstream.io\n getstream.io\n `;\n const result = parseLinksFromText(input);\n console.log({ result });\n expect(result).toHaveLength(2);\n });\n it('Encodes incomplete emoji unicode', () => {\n const input = 'https://getstream.io/�';\n const result = parseLinksFromText(input);\n expect(result[0]).toEqual({\n encodedUrl: 'https://getstream.io/%EF%BF%BD',\n raw: input,\n });\n });\n it('doest not report invalid tlds as urls', () => {\n const input = `\n %\n % Not links\n %\n example.invalid\n example.invalid/\n http://.example.com\n http://-example.com\n hppt://example.com\n example.coma\n -example.coma\n `;\n const result = parseLinksFromText(input);\n expect(result).toHaveLength(0);\n });\n it('does not parse a decimal number as a URL', () => {\n const input = '123.456';\n const result = parseLinksFromText(input);\n expect(result).toHaveLength(0);\n });\n it.each([['@user'], ['@user.name']])('does not parse %p as a URL', (input) => {\n const result = parseLinksFromText(input);\n expect(result).toHaveLength(0);\n });\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_parseLinks","require","describe","it","each","undefined","link","expected","_result$","result","parseLinksFromText","expect","encodedUrl","toBe","input","toEqual","raw","email","console","log","toHaveLength"],"sources":["parseLinks.test.ts"],"sourcesContent":["import { parseLinksFromText } from './parseLinks';\n\ndescribe('parseLinksFromText', () => {\n it.each([\n ['https://www.getstream.io', 'https://www.getstream.io'],\n ['https://getstream.io', 'https://getstream.io'],\n ['scrn://team-chat', undefined],\n ['https://localhost', 'https://localhost'],\n [\n 'https://localhost/with/path?and=query&multiple=params',\n 'https://localhost/with/path?and=query&multiple=params',\n ],\n [\n 'https://localhost/with/path?and=query#fragment',\n 'https://localhost/with/path?and=query#fragment',\n ],\n ['reactnative.stream', undefined],\n [\n 'https://zh.wikipedia.org/wiki/挪威牛油危機',\n 'https://zh.wikipedia.org/wiki/%E6%8C%AA%E5%A8%81%E7%89%9B%E6%B2%B9%E5%8D%B1%E6%A9%9F',\n ],\n [\n 'https://getstream.io/chat/docs/react-native/?language=javascript',\n 'https://getstream.io/chat/docs/react-native/?language=javascript',\n ],\n ['127.0.0.1/local_(development)_server', undefined],\n ['https://a.co:8999/ab.php?p=12', 'https://a.co:8999/ab.php?p=12'],\n [\n 'https://help.apple.com/xcode/mac/current/#/devba7f53ad4',\n 'https://help.apple.com/xcode/mac/current/#/devba7f53ad4',\n ],\n ])('Returns the encoded value of %p as %p', (link, expected) => {\n const result = parseLinksFromText(link);\n expect(result[0]?.encodedUrl).toBe(expected);\n });\n it('parses fqdn', () => {\n const input = `We have put the apim bol,\n temporarily so :sj: we can later put the monitors on my grasp\n on reality right now is\n https://www.contrived-example.com:8080/sub/page.php?p1=1🇳🇴&p2=2#fragment-identifier\n :)`;\n const result = parseLinksFromText(input);\n expect(result).toEqual([\n {\n encodedUrl:\n 'https://www.contrived-example.com:8080/sub/page.php?p1=1%F0%9F%87%B3%F0%9F%87%B4&p2=2#fragment-identifier',\n raw: 'https://www.contrived-example.com:8080/sub/page.php?p1=1🇳🇴&p2=2#fragment-identifier',\n },\n ]);\n });\n it.each([\n ['support+rn@getstream.io'],\n ['support.rn@getstream.io'],\n ['support-rn@getstream.io'],\n ['support_rn@getstream.io'],\n ])('Can parse the email address %p', (email) => {\n const result = parseLinksFromText(email);\n expect(result[0].encodedUrl).toBe('mailto:' + email);\n expect(result[0].raw).toBe(email);\n });\n it(\"doesn't double the mailto prefix\", () => {\n const input = 'mailto:support@getstream.io';\n const result = parseLinksFromText(input);\n expect(result[0]).toEqual({\n encodedUrl: input,\n raw: input,\n });\n });\n it('Does not falsely parse LINKs from text content', () => {\n const input = `#This string exists to test that we don't produce false positives\n Existing links:\n [already a parsed link](https://getstream.io/blog/react-native-how-to-build-bidirectional-infinite-scroll/)\n [even a bogus one]( should not match )\n ## These should, however, be parsed:\n www.getstream.io\n getstream.io\n `;\n const result = parseLinksFromText(input);\n console.log({ result });\n expect(result).toHaveLength(2);\n });\n it('Encodes incomplete emoji unicode', () => {\n const input = 'https://getstream.io/�';\n const result = parseLinksFromText(input);\n expect(result[0]).toEqual({\n encodedUrl: 'https://getstream.io/%EF%BF%BD',\n raw: input,\n });\n });\n it('doest not report invalid tlds as urls', () => {\n const input = `\n %\n % Not links\n %\n example.invalid\n example.invalid/\n http://.example.com\n http://-example.com\n hppt://example.com\n example.coma\n -example.coma\n `;\n const result = parseLinksFromText(input);\n expect(result).toHaveLength(0);\n });\n it('does not parse a decimal number as a URL', () => {\n const input = '123.456';\n const result = parseLinksFromText(input);\n expect(result).toHaveLength(0);\n });\n it.each([['@user'], ['@user.name']])('does not parse %p as a URL', (input) => {\n const result = parseLinksFromText(input);\n expect(result).toHaveLength(0);\n });\n});\n"],"mappings":"AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEAC,QAAQ,CAAC,oBAAoB,EAAE,YAAM;EACnCC,EAAE,CAACC,IAAI,CAAC,CACN,CAAC,0BAA0B,EAAE,0BAA0B,CAAC,EACxD,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,EAChD,CAAC,kBAAkB,EAAEC,SAAS,CAAC,EAC/B,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,EAC1C,CACE,uDAAuD,EACvD,uDAAuD,CACxD,EACD,CACE,gDAAgD,EAChD,gDAAgD,CACjD,EACD,CAAC,oBAAoB,EAAEA,SAAS,CAAC,EACjC,CACE,sCAAsC,EACtC,sFAAsF,CACvF,EACD,CACE,kEAAkE,EAClE,kEAAkE,CACnE,EACD,CAAC,sCAAsC,EAAEA,SAAS,CAAC,EACnD,CAAC,+BAA+B,EAAE,+BAA+B,CAAC,EAClE,CACE,yDAAyD,EACzD,yDAAyD,CAC1D,CACF,CAAC,CAAC,uCAAuC,EAAE,UAACC,IAAI,EAAEC,QAAQ,EAAK;IAAA,IAAAC,QAAA;IAC9D,IAAMC,MAAM,GAAG,IAAAC,8BAAkB,EAACJ,IAAI,CAAC;IACvCK,MAAM,EAAAH,QAAA,GAACC,MAAM,CAAC,CAAC,CAAC,qBAATD,QAAA,CAAWI,UAAU,CAAC,CAACC,IAAI,CAACN,QAAQ,CAAC;EAC9C,CAAC,CAAC;EACFJ,EAAE,CAAC,aAAa,EAAE,YAAM;IACtB,IAAMW,KAAK,6OAIV;IACD,IAAML,MAAM,GAAG,IAAAC,8BAAkB,EAACI,KAAK,CAAC;IACxCH,MAAM,CAACF,MAAM,CAAC,CAACM,OAAO,CAAC,CACrB;MACEH,UAAU,EACR,2GAA2G;MAC7GI,GAAG,EAAE;IACP,CAAC,CACF,CAAC;EACJ,CAAC,CAAC;EACFb,EAAE,CAACC,IAAI,CAAC,CACN,CAAC,yBAAyB,CAAC,EAC3B,CAAC,yBAAyB,CAAC,EAC3B,CAAC,yBAAyB,CAAC,EAC3B,CAAC,yBAAyB,CAAC,CAC5B,CAAC,CAAC,gCAAgC,EAAE,UAACa,KAAK,EAAK;IAC9C,IAAMR,MAAM,GAAG,IAAAC,8BAAkB,EAACO,KAAK,CAAC;IACxCN,MAAM,CAACF,MAAM,CAAC,CAAC,CAAC,CAACG,UAAU,CAAC,CAACC,IAAI,CAAC,SAAS,GAAGI,KAAK,CAAC;IACpDN,MAAM,CAACF,MAAM,CAAC,CAAC,CAAC,CAACO,GAAG,CAAC,CAACH,IAAI,CAACI,KAAK,CAAC;EACnC,CAAC,CAAC;EACFd,EAAE,CAAC,kCAAkC,EAAE,YAAM;IAC3C,IAAMW,KAAK,GAAG,6BAA6B;IAC3C,IAAML,MAAM,GAAG,IAAAC,8BAAkB,EAACI,KAAK,CAAC;IACxCH,MAAM,CAACF,MAAM,CAAC,CAAC,CAAC,CAAC,CAACM,OAAO,CAAC;MACxBH,UAAU,EAAEE,KAAK;MACjBE,GAAG,EAAEF;IACP,CAAC,CAAC;EACJ,CAAC,CAAC;EACFX,EAAE,CAAC,gDAAgD,EAAE,YAAM;IACzD,IAAMW,KAAK,kUAOZ;IACC,IAAML,MAAM,GAAG,IAAAC,8BAAkB,EAACI,KAAK,CAAC;IACxCI,OAAO,CAACC,GAAG,CAAC;MAAEV,MAAM,EAANA;IAAO,CAAC,CAAC;IACvBE,MAAM,CAACF,MAAM,CAAC,CAACW,YAAY,CAAC,CAAC,CAAC;EAChC,CAAC,CAAC;EACFjB,EAAE,CAAC,kCAAkC,EAAE,YAAM;IAC3C,IAAMW,KAAK,GAAG,wBAAwB;IACtC,IAAML,MAAM,GAAG,IAAAC,8BAAkB,EAACI,KAAK,CAAC;IACxCH,MAAM,CAACF,MAAM,CAAC,CAAC,CAAC,CAAC,CAACM,OAAO,CAAC;MACxBH,UAAU,EAAE,gCAAgC;MAC5CI,GAAG,EAAEF;IACP,CAAC,CAAC;EACJ,CAAC,CAAC;EACFX,EAAE,CAAC,uCAAuC,EAAE,YAAM;IAChD,IAAMW,KAAK,wMAWN;IACL,IAAML,MAAM,GAAG,IAAAC,8BAAkB,EAACI,KAAK,CAAC;IACxCH,MAAM,CAACF,MAAM,CAAC,CAACW,YAAY,CAAC,CAAC,CAAC;EAChC,CAAC,CAAC;EACFjB,EAAE,CAAC,0CAA0C,EAAE,YAAM;IACnD,IAAMW,KAAK,GAAG,SAAS;IACvB,IAAML,MAAM,GAAG,IAAAC,8BAAkB,EAACI,KAAK,CAAC;IACxCH,MAAM,CAACF,MAAM,CAAC,CAACW,YAAY,CAAC,CAAC,CAAC;EAChC,CAAC,CAAC;EACFjB,EAAE,CAACC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,4BAA4B,EAAE,UAACU,KAAK,EAAK;IAC5E,IAAML,MAAM,GAAG,IAAAC,8BAAkB,EAACI,KAAK,CAAC;IACxCH,MAAM,CAACF,MAAM,CAAC,CAACW,YAAY,CAAC,CAAC,CAAC;EAChC,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"names":["defaultMarkdownStyles","inlineCode","fontSize","padding","paddingHorizontal","list","marginBottom","marginTop","listItemNumber","fontWeight","listItemText","flex","listRow","flexDirection","mentions","paragraph","paragraphCenter","paragraphWithImage","parse","capture","state","content","parseInline","renderText","params","colors","markdownRules","markdownStyles","message","messageOverlay","messageTextNumberOfLines","onLinkParams","onLink","onLongPressParam","onLongPress","onlyEmojis","onPressParam","onPress","preventPress","mentioned_users","text","newText","trim","linkInfos","parseLinksFromText","linkInfo","displayLink","truncate","raw","length","omission","markdown","encodedUrl","replace","styles","autolink","color","accent_blue","backgroundColor","white_smoke","borderColor","grey_gainsboro","accent_red","black","url","pattern","RegExp","test","Linking","canOpenURL","then","canOpenUrl","openURL","link","node","output","target","event","additionalInfo","defaultHandler","emitter","key","withinLink","paragraphText","mentionedUsers","Array","isArray","reduce","acc","cur","userName","name","id","regEx","match","source","exec","mentionsReact","substring","user","find","current","customRules","image","react","reflink","sublist","order","defaultRules","JSON","stringify","undefined","ListOutput","isSublist","withinList","parentTypes","items","map","item","index","indexAfterStart","start","ordered","type","isSublistWithinText","includes","style","Bullet","ListRow","props","children","ListItem"],"sources":["renderText.tsx"],"sourcesContent":["import React, { PropsWithChildren } from 'react';\nimport { GestureResponderEvent, Linking, Text, TextProps, View, ViewProps } from 'react-native';\n\n// @ts-expect-error\nimport Markdown from 'react-native-markdown-package';\n\nimport truncate from 'lodash/truncate';\nimport {\n DefaultRules,\n defaultRules,\n MatchFunction,\n ParseFunction,\n parseInline,\n ReactNodeOutput,\n ReactOutput,\n SingleASTNode,\n State,\n} from 'simple-markdown';\n\nimport type { UserResponse } from 'stream-chat';\n\nimport { parseLinksFromText } from './parseLinks';\n\nimport type { MessageContextValue } from '../../../../contexts/messageContext/MessageContext';\nimport type { Colors, MarkdownStyle } from '../../../../contexts/themeContext/utils/theme';\nimport type { DefaultStreamChatGenerics } from '../../../../types/types';\nimport type { MessageType } from '../../../MessageList/hooks/useMessageList';\n\nconst defaultMarkdownStyles: MarkdownStyle = {\n inlineCode: {\n fontSize: 13,\n padding: 3,\n paddingHorizontal: 5,\n },\n list: {\n marginBottom: 8,\n marginTop: 8,\n },\n listItemNumber: {\n fontWeight: 'bold',\n },\n listItemText: {\n flex: 0,\n },\n listRow: {\n flexDirection: 'row',\n },\n mentions: {\n fontWeight: '700',\n },\n paragraph: {\n marginBottom: 8,\n marginTop: 8,\n },\n paragraphCenter: {\n marginBottom: 8,\n marginTop: 8,\n },\n paragraphWithImage: {\n marginBottom: 8,\n marginTop: 8,\n },\n};\n\nconst parse: ParseFunction = (capture, parse, state) => ({\n content: parseInline(parse, capture[0], state),\n});\n\nexport type MarkdownRules = Partial<DefaultRules>;\n\nexport type RenderTextParams<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<\n Pick<MessageContextValue<StreamChatGenerics>, 'onLongPress' | 'onPress' | 'preventPress'>\n> & {\n colors: typeof Colors;\n message: MessageType<StreamChatGenerics>;\n markdownRules?: MarkdownRules;\n markdownStyles?: MarkdownStyle;\n messageOverlay?: boolean;\n messageTextNumberOfLines?: number;\n onLink?: (url: string) => Promise<void>;\n onlyEmojis?: boolean;\n};\n\nexport const renderText = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n params: RenderTextParams<StreamChatGenerics>,\n) => {\n const {\n colors,\n markdownRules,\n markdownStyles,\n message,\n messageOverlay,\n messageTextNumberOfLines,\n onLink: onLinkParams,\n onLongPress: onLongPressParam,\n onlyEmojis,\n onPress: onPressParam,\n preventPress,\n } = params;\n\n // take the @ mentions and turn them into markdown?\n // translate links\n const { mentioned_users, text } = message;\n\n if (!text) return null;\n\n let newText = text.trim();\n const linkInfos = parseLinksFromText(newText);\n\n for (const linkInfo of linkInfos) {\n const displayLink = truncate(linkInfo.raw, {\n length: 200,\n omission: '...',\n });\n const markdown = `[${displayLink}](${linkInfo.encodedUrl})`;\n newText = newText.replace(linkInfo.raw, markdown);\n }\n\n newText = newText.replace(/[<&\"'>]/g, '\\\\$&');\n\n const styles: MarkdownStyle = {\n ...defaultMarkdownStyles,\n ...markdownStyles,\n autolink: {\n ...defaultMarkdownStyles.autolink,\n color: colors.accent_blue,\n ...markdownStyles?.autolink,\n },\n inlineCode: {\n ...defaultMarkdownStyles.inlineCode,\n backgroundColor: colors.white_smoke,\n borderColor: colors.grey_gainsboro,\n color: colors.accent_red,\n ...markdownStyles?.inlineCode,\n },\n mentions: {\n ...defaultMarkdownStyles.mentions,\n color: colors.accent_blue,\n ...markdownStyles?.mentions,\n },\n text: {\n ...defaultMarkdownStyles.text,\n color: colors.black,\n ...markdownStyles?.text,\n },\n };\n\n const onLink = (url: string) => {\n const pattern = new RegExp(/^\\S+:\\/\\//);\n if (!pattern.test(url)) {\n url = 'http://' + url;\n }\n\n return onLinkParams\n ? onLinkParams(url)\n : Linking.canOpenURL(url).then((canOpenUrl) => canOpenUrl && Linking.openURL(url));\n };\n\n const link: ReactNodeOutput = (node, output, { ...state }) => {\n const url = node.target;\n const onPress = (event: GestureResponderEvent) => {\n if (!preventPress && onPressParam) {\n onPressParam({\n additionalInfo: { url },\n defaultHandler: () => {\n onLink(url);\n },\n emitter: 'textLink',\n event,\n });\n }\n };\n\n const onLongPress = (event: GestureResponderEvent) => {\n if (!preventPress && onLongPressParam) {\n onLongPressParam({\n additionalInfo: { url },\n emitter: 'textLink',\n event,\n });\n }\n };\n\n return (\n <Text\n key={state.key}\n onLongPress={onLongPress}\n onPress={onPress}\n style={styles.autolink}\n suppressHighlighting={true}\n >\n {output(node.content, { ...state, withinLink: true })}\n </Text>\n );\n };\n\n const paragraphText: ReactNodeOutput = (node, output, { ...state }) => (\n <Text key={state.key} numberOfLines={messageTextNumberOfLines} style={styles.paragraph}>\n {output(node.content, state)}\n </Text>\n );\n\n const mentionedUsers = Array.isArray(mentioned_users)\n ? mentioned_users.reduce((acc, cur) => {\n const userName = cur.name || cur.id || '';\n if (userName) {\n acc += `${acc.length ? '|' : ''}@${userName}`;\n }\n return acc;\n }, '')\n : '';\n\n const regEx = new RegExp(`^\\\\B(${mentionedUsers})`, 'g');\n const match: MatchFunction = (source) => regEx.exec(source);\n\n const mentionsReact: ReactNodeOutput = (node, output, { ...state }) => {\n /**removes the @ prefix of username */\n const userName = node.content[0]?.content?.substring(1);\n const onPress = (event: GestureResponderEvent) => {\n if (!preventPress && onPressParam) {\n onPressParam({\n additionalInfo: {\n user: mentioned_users?.find(\n (user: UserResponse<StreamChatGenerics>) => userName === user.name,\n ),\n },\n emitter: 'textMention',\n event,\n });\n }\n };\n\n const onLongPress = (event: GestureResponderEvent) => {\n if (!preventPress && onLongPressParam) {\n onLongPressParam({\n emitter: 'textMention',\n event,\n });\n }\n };\n\n return (\n <Text key={state.key} onLongPress={onLongPress} onPress={onPress} style={styles.mentions}>\n {Array.isArray(node.content)\n ? node.content.reduce((acc, current) => acc + current.content, '') || ''\n : output(node.content, state)}\n </Text>\n );\n };\n\n const list: ReactNodeOutput = (node, output, state) => (\n <ListOutput\n key={`list-${state.key}`}\n node={node}\n output={output}\n state={state}\n styles={styles}\n />\n );\n\n const customRules = {\n // do not render images, we will scrape them out of the message and show on attachment card component\n image: { match: () => null },\n link: { react: link },\n list: { react: list },\n // Truncate long text content in the message overlay\n paragraph: messageTextNumberOfLines ? { react: paragraphText } : {},\n // we have no react rendering support for reflinks\n reflink: { match: () => null },\n sublist: { react: list },\n ...(mentionedUsers\n ? {\n mentions: {\n match,\n order: defaultRules.text.order - 0.5,\n parse,\n react: mentionsReact,\n },\n }\n : {}),\n };\n\n return (\n <Markdown\n key={`${JSON.stringify(mentioned_users)}-${onlyEmojis}-${\n messageOverlay ? JSON.stringify(markdownStyles) : undefined\n }-${JSON.stringify(colors)}`}\n onLink={onLink}\n rules={{\n ...customRules,\n ...markdownRules,\n }}\n styles={styles}\n >\n {newText}\n </Markdown>\n );\n};\n\nexport interface ListOutputProps {\n node: SingleASTNode;\n output: ReactOutput;\n state: State;\n styles?: Partial<MarkdownStyle>;\n}\n\n/**\n * For lists and sublists, the default behavior of the markdown library we use is\n * to always renumber any list, so all ordered lists start from 1.\n *\n * This custom rule overrides this behavior both for top level lists and sublists,\n * in order to start the numbering from the number of the first list item provided.\n */\nexport const ListOutput = ({ node, output, state, styles }: ListOutputProps) => {\n let isSublist = state.withinList;\n const parentTypes = ['text', 'paragraph', 'strong'];\n\n return (\n <View key={state.key} style={isSublist ? styles?.sublist : styles?.list}>\n {node.items.map((item: SingleASTNode, index: number) => {\n const indexAfterStart = node.start + index;\n\n if (item === null) {\n return (\n <ListRow key={index} style={styles?.listRow} testID='list-item'>\n <Bullet index={node.ordered && indexAfterStart} />\n </ListRow>\n );\n }\n\n isSublist = item.length > 1 && item[1].type === 'list';\n const isSublistWithinText = parentTypes.includes((item[0] ?? {}).type) && isSublist;\n const style = isSublistWithinText ? { marginBottom: 0 } : {};\n\n return (\n <ListRow key={index} style={styles?.listRow} testID='list-item'>\n <Bullet index={node.ordered && indexAfterStart} />\n <ListItem key={1} style={[styles?.listItemText, style]}>\n {output(item, state)}\n </ListItem>\n </ListRow>\n );\n })}\n </View>\n );\n};\n\ninterface BulletProps extends TextProps {\n index?: number;\n}\n\nconst Bullet = ({ index, style }: BulletProps) => (\n <Text key={0} style={[style, defaultMarkdownStyles.listItemNumber]}>\n {index ? `${index}. ` : '\\u2022 '}\n </Text>\n);\n\nconst ListRow = (props: PropsWithChildren<ViewProps>) => (\n <Text style={[props.style, defaultMarkdownStyles.listRow]}>{props.children}</Text>\n);\n\nconst ListItem = ({ children, style }: PropsWithChildren<TextProps>) => (\n <Text style={style}>{children}</Text>\n);\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeMarkdownPackage","_truncate","_simpleMarkdown","_parseLinks","_this","_jsxFileName","_createForOfIteratorHelperLoose","o","allowArrayLike","it","Symbol","iterator","call","next","bind","Array","isArray","_unsupportedIterableToArray","length","i","done","value","TypeError","minLen","_arrayLikeToArray","n","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","defaultMarkdownStyles","inlineCode","fontSize","padding","paddingHorizontal","list","marginBottom","marginTop","listItemNumber","fontWeight","listItemText","flex","listRow","flexDirection","mentions","paragraph","paragraphCenter","paragraphWithImage","parse","capture","state","content","parseInline","renderText","params","colors","markdownRules","markdownStyles","message","messageOverlay","messageTextNumberOfLines","onLinkParams","onLink","onLongPressParam","onLongPress","onlyEmojis","onPressParam","onPress","preventPress","mentioned_users","text","newText","trim","linkInfos","parseLinksFromText","_iterator","_step","linkInfo","displayLink","truncate","raw","omission","markdown","encodedUrl","replace","styles","_extends2","autolink","color","accent_blue","backgroundColor","white_smoke","borderColor","grey_gainsboro","accent_red","black","url","pattern","RegExp","Linking","canOpenURL","then","canOpenUrl","openURL","link","node","output","_ref","_objectDestructuringEmpty2","target","event","additionalInfo","defaultHandler","emitter","createElement","Text","key","style","suppressHighlighting","__self","__source","fileName","lineNumber","columnNumber","withinLink","paragraphText","_ref2","numberOfLines","mentionedUsers","reduce","acc","cur","userName","id","regEx","match","source","exec","mentionsReact","_ref3","_node$content$","_node$content$$conten","substring","user","find","current","ListOutput","customRules","image","react","reflink","sublist","order","defaultRules","JSON","stringify","undefined","rules","exports","_ref4","isSublist","withinList","parentTypes","View","items","map","item","index","_item$","indexAfterStart","start","ListRow","testID","Bullet","ordered","type","isSublistWithinText","includes","ListItem","_ref5","props","children","_ref6"],"sources":["renderText.tsx"],"sourcesContent":["import React, { PropsWithChildren } from 'react';\nimport { GestureResponderEvent, Linking, Text, TextProps, View, ViewProps } from 'react-native';\n\n// @ts-expect-error\nimport Markdown from 'react-native-markdown-package';\n\nimport truncate from 'lodash/truncate';\nimport {\n DefaultRules,\n defaultRules,\n MatchFunction,\n ParseFunction,\n parseInline,\n ReactNodeOutput,\n ReactOutput,\n SingleASTNode,\n State,\n} from 'simple-markdown';\n\nimport type { UserResponse } from 'stream-chat';\n\nimport { parseLinksFromText } from './parseLinks';\n\nimport type { MessageContextValue } from '../../../../contexts/messageContext/MessageContext';\nimport type { Colors, MarkdownStyle } from '../../../../contexts/themeContext/utils/theme';\nimport type { DefaultStreamChatGenerics } from '../../../../types/types';\nimport type { MessageType } from '../../../MessageList/hooks/useMessageList';\n\nconst defaultMarkdownStyles: MarkdownStyle = {\n inlineCode: {\n fontSize: 13,\n padding: 3,\n paddingHorizontal: 5,\n },\n list: {\n marginBottom: 8,\n marginTop: 8,\n },\n listItemNumber: {\n fontWeight: 'bold',\n },\n listItemText: {\n flex: 0,\n },\n listRow: {\n flexDirection: 'row',\n },\n mentions: {\n fontWeight: '700',\n },\n paragraph: {\n marginBottom: 8,\n marginTop: 8,\n },\n paragraphCenter: {\n marginBottom: 8,\n marginTop: 8,\n },\n paragraphWithImage: {\n marginBottom: 8,\n marginTop: 8,\n },\n};\n\nconst parse: ParseFunction = (capture, parse, state) => ({\n content: parseInline(parse, capture[0], state),\n});\n\nexport type MarkdownRules = Partial<DefaultRules>;\n\nexport type RenderTextParams<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<\n Pick<MessageContextValue<StreamChatGenerics>, 'onLongPress' | 'onPress' | 'preventPress'>\n> & {\n colors: typeof Colors;\n message: MessageType<StreamChatGenerics>;\n markdownRules?: MarkdownRules;\n markdownStyles?: MarkdownStyle;\n messageOverlay?: boolean;\n messageTextNumberOfLines?: number;\n onLink?: (url: string) => Promise<void>;\n onlyEmojis?: boolean;\n};\n\nexport const renderText = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n params: RenderTextParams<StreamChatGenerics>,\n) => {\n const {\n colors,\n markdownRules,\n markdownStyles,\n message,\n messageOverlay,\n messageTextNumberOfLines,\n onLink: onLinkParams,\n onLongPress: onLongPressParam,\n onlyEmojis,\n onPress: onPressParam,\n preventPress,\n } = params;\n\n // take the @ mentions and turn them into markdown?\n // translate links\n const { mentioned_users, text } = message;\n\n if (!text) return null;\n\n let newText = text.trim();\n const linkInfos = parseLinksFromText(newText);\n\n for (const linkInfo of linkInfos) {\n const displayLink = truncate(linkInfo.raw, {\n length: 200,\n omission: '...',\n });\n const markdown = `[${displayLink}](${linkInfo.encodedUrl})`;\n newText = newText.replace(linkInfo.raw, markdown);\n }\n\n newText = newText.replace(/[<&\"'>]/g, '\\\\$&');\n\n const styles: MarkdownStyle = {\n ...defaultMarkdownStyles,\n ...markdownStyles,\n autolink: {\n ...defaultMarkdownStyles.autolink,\n color: colors.accent_blue,\n ...markdownStyles?.autolink,\n },\n inlineCode: {\n ...defaultMarkdownStyles.inlineCode,\n backgroundColor: colors.white_smoke,\n borderColor: colors.grey_gainsboro,\n color: colors.accent_red,\n ...markdownStyles?.inlineCode,\n },\n mentions: {\n ...defaultMarkdownStyles.mentions,\n color: colors.accent_blue,\n ...markdownStyles?.mentions,\n },\n text: {\n ...defaultMarkdownStyles.text,\n color: colors.black,\n ...markdownStyles?.text,\n },\n };\n\n const onLink = (url: string) => {\n const pattern = new RegExp(/^\\S+:\\/\\//);\n if (!pattern.test(url)) {\n url = 'http://' + url;\n }\n\n return onLinkParams\n ? onLinkParams(url)\n : Linking.canOpenURL(url).then((canOpenUrl) => canOpenUrl && Linking.openURL(url));\n };\n\n const link: ReactNodeOutput = (node, output, { ...state }) => {\n const url = node.target;\n const onPress = (event: GestureResponderEvent) => {\n if (!preventPress && onPressParam) {\n onPressParam({\n additionalInfo: { url },\n defaultHandler: () => {\n onLink(url);\n },\n emitter: 'textLink',\n event,\n });\n }\n };\n\n const onLongPress = (event: GestureResponderEvent) => {\n if (!preventPress && onLongPressParam) {\n onLongPressParam({\n additionalInfo: { url },\n emitter: 'textLink',\n event,\n });\n }\n };\n\n return (\n <Text\n key={state.key}\n onLongPress={onLongPress}\n onPress={onPress}\n style={styles.autolink}\n suppressHighlighting={true}\n >\n {output(node.content, { ...state, withinLink: true })}\n </Text>\n );\n };\n\n const paragraphText: ReactNodeOutput = (node, output, { ...state }) => (\n <Text key={state.key} numberOfLines={messageTextNumberOfLines} style={styles.paragraph}>\n {output(node.content, state)}\n </Text>\n );\n\n const mentionedUsers = Array.isArray(mentioned_users)\n ? mentioned_users.reduce((acc, cur) => {\n const userName = cur.name || cur.id || '';\n if (userName) {\n acc += `${acc.length ? '|' : ''}@${userName}`;\n }\n return acc;\n }, '')\n : '';\n\n const regEx = new RegExp(`^\\\\B(${mentionedUsers})`, 'g');\n const match: MatchFunction = (source) => regEx.exec(source);\n\n const mentionsReact: ReactNodeOutput = (node, output, { ...state }) => {\n /**removes the @ prefix of username */\n const userName = node.content[0]?.content?.substring(1);\n const onPress = (event: GestureResponderEvent) => {\n if (!preventPress && onPressParam) {\n onPressParam({\n additionalInfo: {\n user: mentioned_users?.find(\n (user: UserResponse<StreamChatGenerics>) => userName === user.name,\n ),\n },\n emitter: 'textMention',\n event,\n });\n }\n };\n\n const onLongPress = (event: GestureResponderEvent) => {\n if (!preventPress && onLongPressParam) {\n onLongPressParam({\n emitter: 'textMention',\n event,\n });\n }\n };\n\n return (\n <Text key={state.key} onLongPress={onLongPress} onPress={onPress} style={styles.mentions}>\n {Array.isArray(node.content)\n ? node.content.reduce((acc, current) => acc + current.content, '') || ''\n : output(node.content, state)}\n </Text>\n );\n };\n\n const list: ReactNodeOutput = (node, output, state) => (\n <ListOutput\n key={`list-${state.key}`}\n node={node}\n output={output}\n state={state}\n styles={styles}\n />\n );\n\n const customRules = {\n // do not render images, we will scrape them out of the message and show on attachment card component\n image: { match: () => null },\n link: { react: link },\n list: { react: list },\n // Truncate long text content in the message overlay\n paragraph: messageTextNumberOfLines ? { react: paragraphText } : {},\n // we have no react rendering support for reflinks\n reflink: { match: () => null },\n sublist: { react: list },\n ...(mentionedUsers\n ? {\n mentions: {\n match,\n order: defaultRules.text.order - 0.5,\n parse,\n react: mentionsReact,\n },\n }\n : {}),\n };\n\n return (\n <Markdown\n key={`${JSON.stringify(mentioned_users)}-${onlyEmojis}-${\n messageOverlay ? JSON.stringify(markdownStyles) : undefined\n }-${JSON.stringify(colors)}`}\n onLink={onLink}\n rules={{\n ...customRules,\n ...markdownRules,\n }}\n styles={styles}\n >\n {newText}\n </Markdown>\n );\n};\n\nexport interface ListOutputProps {\n node: SingleASTNode;\n output: ReactOutput;\n state: State;\n styles?: Partial<MarkdownStyle>;\n}\n\n/**\n * For lists and sublists, the default behavior of the markdown library we use is\n * to always renumber any list, so all ordered lists start from 1.\n *\n * This custom rule overrides this behavior both for top level lists and sublists,\n * in order to start the numbering from the number of the first list item provided.\n */\nexport const ListOutput = ({ node, output, state, styles }: ListOutputProps) => {\n let isSublist = state.withinList;\n const parentTypes = ['text', 'paragraph', 'strong'];\n\n return (\n <View key={state.key} style={isSublist ? styles?.sublist : styles?.list}>\n {node.items.map((item: SingleASTNode, index: number) => {\n const indexAfterStart = node.start + index;\n\n if (item === null) {\n return (\n <ListRow key={index} style={styles?.listRow} testID='list-item'>\n <Bullet index={node.ordered && indexAfterStart} />\n </ListRow>\n );\n }\n\n isSublist = item.length > 1 && item[1].type === 'list';\n const isSublistWithinText = parentTypes.includes((item[0] ?? {}).type) && isSublist;\n const style = isSublistWithinText ? { marginBottom: 0 } : {};\n\n return (\n <ListRow key={index} style={styles?.listRow} testID='list-item'>\n <Bullet index={node.ordered && indexAfterStart} />\n <ListItem key={1} style={[styles?.listItemText, style]}>\n {output(item, state)}\n </ListItem>\n </ListRow>\n );\n })}\n </View>\n );\n};\n\ninterface BulletProps extends TextProps {\n index?: number;\n}\n\nconst Bullet = ({ index, style }: BulletProps) => (\n <Text key={0} style={[style, defaultMarkdownStyles.listItemNumber]}>\n {index ? `${index}. ` : '\\u2022 '}\n </Text>\n);\n\nconst ListRow = (props: PropsWithChildren<ViewProps>) => (\n <Text style={[props.style, defaultMarkdownStyles.listRow]}>{props.children}</Text>\n);\n\nconst ListItem = ({ children, style }: PropsWithChildren<TextProps>) => (\n <Text style={style}>{children}</Text>\n);\n"],"mappings":"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"}
@@ -36,13 +36,7 @@ describe('list', function () {
36
36
  var node = _ref2.node,
37
37
  output = _ref2.output,
38
38
  state = _ref2.state;
39
- return _react["default"].createElement(_react["default"].Fragment, {
40
- __source: {
41
- fileName: _jsxFileName,
42
- lineNumber: 31,
43
- columnNumber: 5
44
- }
45
- }, _react["default"].createElement(_renderText.ListOutput, {
39
+ return _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_renderText.ListOutput, {
46
40
  node: node,
47
41
  output: output,
48
42
  state: state,
@@ -1 +1 @@
1
- {"version":3,"names":["describe","createNode","amount","ordered","start","items","Array","from","keys","type","mockOutput","node","MockText","output","state","it","render","container","textInstances","children","forEach","instance","index","text","waitFor","expect","within","getByText","toBeTruthy"],"sources":["renderText.test.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\n\nimport type { ReactTestInstance } from 'react-test-renderer';\n\nimport { render, waitFor, within } from '@testing-library/react-native';\n\n// @ts-ignore\nimport { ASTNode, SingleASTNode } from 'simple-markdown';\n\nimport { ListOutput, ListOutputProps } from './renderText';\n\ndescribe('list', () => {\n const createNode = ({\n amount,\n ordered = false,\n start = 1,\n }: {\n amount: number;\n ordered?: boolean;\n start?: number;\n }): SingleASTNode => ({\n items: Array.from(Array(amount).keys()),\n ordered,\n start,\n type: 'text',\n });\n\n const mockOutput = (node: ASTNode) => <Text>{node}</Text>;\n const MockText = ({ node, output, state }: ListOutputProps) => (\n <>\n <ListOutput node={node} output={output} state={state} styles={{}} />\n </>\n );\n\n it('renders numbered items', () => {\n const node = createNode({ amount: 3, ordered: true, start: 1 });\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance, index) => {\n const text = `${index + node.start}. `; // 1. , 2. ...\n await waitFor(() => expect(within(instance).getByText(text)).toBeTruthy());\n });\n });\n\n it('renders numbered items from a start index', () => {\n const node = createNode({ amount: 3, ordered: true, start: 3 });\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance, index) => {\n const text = `${index + node.start}. `; // 3. , 4. ...\n await waitFor(() => expect(within(instance).getByText(text)).toBeTruthy());\n });\n });\n\n it('does not throw an error if an item is empty', () => {\n const node = {\n ...createNode({ amount: 3, ordered: true }),\n items: ['Not empty', null, 'Not empty'],\n };\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance, index) => {\n const text = `${index + 1}. `; // 1. , 2. ...\n await waitFor(() => expect(within(instance).getByText(text)).toBeTruthy());\n });\n });\n\n it('renders an unordered list', () => {\n const node = createNode({ amount: 3 });\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance) => {\n await waitFor(() => expect(within(instance).getByText('\\u2022 ')).toBeTruthy());\n });\n });\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNative2","_renderText","_this","_jsxFileName","describe","createNode","_ref","amount","_ref$ordered","ordered","_ref$start","start","items","Array","from","keys","type","mockOutput","node","createElement","Text","__self","__source","fileName","lineNumber","columnNumber","MockText","_ref2","output","state","Fragment","ListOutput","styles","it","_render","render","container","textInstances","children","forEach","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","instance","index","text","wrap","_callee$","_context","prev","next","waitFor","expect","within","getByText","toBeTruthy","stop","_x","_x2","apply","arguments","_render2","_ref4","_callee2","_callee2$","_context2","_x3","_x4","_extends2","_render3","_ref5","_callee3","_callee3$","_context3","_x5","_x6","_render4","_ref6","_callee4","_callee4$","_context4","_x7"],"sources":["renderText.test.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\n\nimport type { ReactTestInstance } from 'react-test-renderer';\n\nimport { render, waitFor, within } from '@testing-library/react-native';\n\n// @ts-ignore\nimport { ASTNode, SingleASTNode } from 'simple-markdown';\n\nimport { ListOutput, ListOutputProps } from './renderText';\n\ndescribe('list', () => {\n const createNode = ({\n amount,\n ordered = false,\n start = 1,\n }: {\n amount: number;\n ordered?: boolean;\n start?: number;\n }): SingleASTNode => ({\n items: Array.from(Array(amount).keys()),\n ordered,\n start,\n type: 'text',\n });\n\n const mockOutput = (node: ASTNode) => <Text>{node}</Text>;\n const MockText = ({ node, output, state }: ListOutputProps) => (\n <>\n <ListOutput node={node} output={output} state={state} styles={{}} />\n </>\n );\n\n it('renders numbered items', () => {\n const node = createNode({ amount: 3, ordered: true, start: 1 });\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance, index) => {\n const text = `${index + node.start}. `; // 1. , 2. ...\n await waitFor(() => expect(within(instance).getByText(text)).toBeTruthy());\n });\n });\n\n it('renders numbered items from a start index', () => {\n const node = createNode({ amount: 3, ordered: true, start: 3 });\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance, index) => {\n const text = `${index + node.start}. `; // 3. , 4. ...\n await waitFor(() => expect(within(instance).getByText(text)).toBeTruthy());\n });\n });\n\n it('does not throw an error if an item is empty', () => {\n const node = {\n ...createNode({ amount: 3, ordered: true }),\n items: ['Not empty', null, 'Not empty'],\n };\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance, index) => {\n const text = `${index + 1}. `; // 1. , 2. ...\n await waitFor(() => expect(within(instance).getByText(text)).toBeTruthy());\n });\n });\n\n it('renders an unordered list', () => {\n const node = createNode({ amount: 3 });\n const { container } = render(<MockText node={node} output={mockOutput} state={{}} />);\n const textInstances = container.children as ReactTestInstance[];\n textInstances.forEach(async (instance) => {\n await waitFor(() => expect(within(instance).getByText('\\u2022 ')).toBeTruthy());\n });\n });\n});\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["useCreateMessageContext","actionsEnabled","alignment","channel","disabled","files","goToMessage","groupStyles","handleAction","handleDeleteMessage","handleEditMessage","handleQuotedReplyMessage","handleResendMessage","handleToggleBanUser","handleToggleMuteUser","handleToggleReaction","hasReactions","images","isMyMessage","lastGroupMessage","lastReceivedId","members","message","messageContentOrder","onLongPress","onlyEmojis","onOpenThread","onPress","onPressIn","otherAttachments","preventPress","reactions","showAvatar","showMessageOverlay","showMessageStatus","threadList","videos","groupStylesLength","length","reactionsValue","map","own","type","join","latestReactions","latest_reactions","undefined","readBy","isMessageWithStylesReadByAndDateSeparator","messageValue","user","id","updated_at","deleted_at","status","text","reply_count","membersValue","JSON","stringify","quotedMessageDeletedValue","quoted_message","messageContext","useMemo"],"sources":["useCreateMessageContext.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type { MessageContextValue } from '../../../contexts/messageContext/MessageContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { isMessageWithStylesReadByAndDateSeparator } from '../../MessageList/hooks/useMessageList';\n\nexport const useCreateMessageContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n actionsEnabled,\n alignment,\n channel,\n disabled,\n files,\n goToMessage,\n groupStyles,\n handleAction,\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleToggleReaction,\n hasReactions,\n images,\n isMyMessage,\n lastGroupMessage,\n lastReceivedId,\n members,\n message,\n messageContentOrder,\n onLongPress,\n onlyEmojis,\n onOpenThread,\n onPress,\n onPressIn,\n otherAttachments,\n preventPress,\n reactions,\n showAvatar,\n showMessageOverlay,\n showMessageStatus,\n threadList,\n videos,\n}: MessageContextValue<StreamChatGenerics>) => {\n const groupStylesLength = groupStyles.length;\n const reactionsValue = reactions.map(({ own, type }) => `${own}${type}`).join();\n const latestReactions = message.latest_reactions ? message.latest_reactions : undefined;\n const readBy = isMessageWithStylesReadByAndDateSeparator(message) && message.readBy;\n const messageValue = `${\n latestReactions ? latestReactions.map(({ type, user }) => `${type}${user?.id}`).join() : ''\n }${message.updated_at}${message.deleted_at}${readBy}${message.status}${message.type}${\n message.text\n }${message.reply_count}`;\n const membersValue = JSON.stringify(members);\n\n const quotedMessageDeletedValue = message.quoted_message?.deleted_at;\n\n const messageContext: MessageContextValue<StreamChatGenerics> = useMemo(\n () => ({\n actionsEnabled,\n alignment,\n channel,\n disabled,\n files,\n goToMessage,\n groupStyles,\n handleAction,\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleToggleReaction,\n hasReactions,\n images,\n isMyMessage,\n lastGroupMessage,\n lastReceivedId,\n members,\n message,\n messageContentOrder,\n onLongPress,\n onlyEmojis,\n onOpenThread,\n onPress,\n onPressIn,\n otherAttachments,\n preventPress,\n reactions,\n showAvatar,\n showMessageOverlay,\n showMessageStatus,\n threadList,\n videos,\n }),\n [\n actionsEnabled,\n quotedMessageDeletedValue,\n alignment,\n disabled,\n goToMessage,\n groupStylesLength,\n hasReactions,\n lastGroupMessage,\n lastReceivedId,\n membersValue,\n messageValue,\n reactionsValue,\n showAvatar,\n showMessageStatus,\n threadList,\n ],\n );\n\n return messageContext;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","require","_useMessageList","useCreateMessageContext","_ref","_message$quoted_messa","actionsEnabled","alignment","channel","disabled","files","goToMessage","groupStyles","handleAction","handleDeleteMessage","handleEditMessage","handleQuotedReplyMessage","handleResendMessage","handleToggleBanUser","handleToggleMuteUser","handleToggleReaction","hasReactions","images","isMyMessage","lastGroupMessage","lastReceivedId","members","message","messageContentOrder","onLongPress","onlyEmojis","onOpenThread","onPress","onPressIn","otherAttachments","preventPress","reactions","showAvatar","showMessageOverlay","showMessageStatus","threadList","videos","groupStylesLength","length","reactionsValue","map","_ref2","own","type","join","latestReactions","latest_reactions","undefined","readBy","isMessageWithStylesReadByAndDateSeparator","messageValue","_ref3","user","id","updated_at","deleted_at","status","text","reply_count","membersValue","JSON","stringify","quotedMessageDeletedValue","quoted_message","messageContext","useMemo","exports"],"sources":["useCreateMessageContext.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type { MessageContextValue } from '../../../contexts/messageContext/MessageContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { isMessageWithStylesReadByAndDateSeparator } from '../../MessageList/hooks/useMessageList';\n\nexport const useCreateMessageContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n actionsEnabled,\n alignment,\n channel,\n disabled,\n files,\n goToMessage,\n groupStyles,\n handleAction,\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleToggleReaction,\n hasReactions,\n images,\n isMyMessage,\n lastGroupMessage,\n lastReceivedId,\n members,\n message,\n messageContentOrder,\n onLongPress,\n onlyEmojis,\n onOpenThread,\n onPress,\n onPressIn,\n otherAttachments,\n preventPress,\n reactions,\n showAvatar,\n showMessageOverlay,\n showMessageStatus,\n threadList,\n videos,\n}: MessageContextValue<StreamChatGenerics>) => {\n const groupStylesLength = groupStyles.length;\n const reactionsValue = reactions.map(({ own, type }) => `${own}${type}`).join();\n const latestReactions = message.latest_reactions ? message.latest_reactions : undefined;\n const readBy = isMessageWithStylesReadByAndDateSeparator(message) && message.readBy;\n const messageValue = `${\n latestReactions ? latestReactions.map(({ type, user }) => `${type}${user?.id}`).join() : ''\n }${message.updated_at}${message.deleted_at}${readBy}${message.status}${message.type}${\n message.text\n }${message.reply_count}`;\n const membersValue = JSON.stringify(members);\n\n const quotedMessageDeletedValue = message.quoted_message?.deleted_at;\n\n const messageContext: MessageContextValue<StreamChatGenerics> = useMemo(\n () => ({\n actionsEnabled,\n alignment,\n channel,\n disabled,\n files,\n goToMessage,\n groupStyles,\n handleAction,\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleToggleReaction,\n hasReactions,\n images,\n isMyMessage,\n lastGroupMessage,\n lastReceivedId,\n members,\n message,\n messageContentOrder,\n onLongPress,\n onlyEmojis,\n onOpenThread,\n onPress,\n onPressIn,\n otherAttachments,\n preventPress,\n reactions,\n showAvatar,\n showMessageOverlay,\n showMessageStatus,\n threadList,\n videos,\n }),\n [\n actionsEnabled,\n quotedMessageDeletedValue,\n alignment,\n disabled,\n goToMessage,\n groupStylesLength,\n hasReactions,\n lastGroupMessage,\n lastReceivedId,\n membersValue,\n messageValue,\n reactionsValue,\n showAvatar,\n showMessageStatus,\n threadList,\n ],\n );\n\n return messageContext;\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["useMessageActionHandlers","channel","client","deleteMessage","deleteReaction","message","retrySendMessage","sendReaction","setEditingState","setQuotedMessageState","supportedReactions","handleResendMessage","handleQuotedReplyMessage","isMuted","mutedUsers","some","mute","user","id","userID","target","handleDeleteMessage","handleToggleMuteUser","unmuteUser","muteUser","handleToggleBanUser","messageUser","banned","unbanUser","banUser","handleTogglePinMessage","MessagePinnedHeaderStatus","pinned","pinMessage","unpinMessage","handleEditMessage","clientId","isMessageTypeDeleted","type","hasReactions","latest_reactions","length","reactions","reduce","acc","cur","reactionType","reactionsOfReactionType","filter","reaction","hasOwnReaction","user_id","push","own","handleToggleReaction","messageId","ownReaction","find","console","log"],"sources":["useMessageActionHandlers.ts"],"sourcesContent":["import type { MessageResponse } from 'stream-chat';\n\nimport type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';\nimport type { ChatContextValue } from '../../../contexts/chatContext/ChatContext';\nimport type {\n MessageContextValue,\n Reactions,\n} from '../../../contexts/messageContext/MessageContext';\nimport type { MessagesContextValue } from '../../../contexts/messagesContext/MessagesContext';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\nexport const useMessageActionHandlers = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n channel,\n client,\n deleteMessage,\n deleteReaction,\n message,\n retrySendMessage,\n sendReaction,\n setEditingState,\n setQuotedMessageState,\n supportedReactions,\n}: Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'sendReaction'\n | 'deleteMessage'\n | 'deleteReaction'\n | 'retrySendMessage'\n | 'setEditingState'\n | 'setQuotedMessageState'\n | 'supportedReactions'\n> &\n Pick<ChannelContextValue<StreamChatGenerics>, 'channel' | 'enforceUniqueReaction'> &\n Pick<ChatContextValue<StreamChatGenerics>, 'client'> &\n Pick<MessageContextValue<StreamChatGenerics>, 'message'>) => {\n const handleResendMessage = () =>\n retrySendMessage(message as MessageResponse<StreamChatGenerics>);\n\n const handleQuotedReplyMessage = () => {\n setQuotedMessageState(message);\n };\n\n const isMuted = (client.mutedUsers || []).some(\n (mute) => mute.user.id === client.userID && mute.target.id === message.user?.id,\n );\n\n const handleDeleteMessage = async () => {\n await deleteMessage(message as MessageResponse<StreamChatGenerics>);\n };\n\n const handleToggleMuteUser = async () => {\n if (!message.user?.id) {\n return;\n }\n\n if (isMuted) {\n await client.unmuteUser(message.user.id);\n } else {\n await client.muteUser(message.user.id);\n }\n };\n\n const handleToggleBanUser = async () => {\n const messageUser = message.user;\n if (!messageUser) {\n return;\n }\n\n if (messageUser.banned) {\n await client.unbanUser(messageUser.id);\n } else {\n await client.banUser(messageUser.id);\n }\n };\n\n const handleTogglePinMessage = async () => {\n const MessagePinnedHeaderStatus = message.pinned;\n if (!MessagePinnedHeaderStatus) {\n await client.pinMessage(message, null);\n } else {\n await client.unpinMessage(message);\n }\n };\n\n const handleEditMessage = () => {\n setEditingState(message);\n };\n\n const clientId = client.userID;\n const isMessageTypeDeleted = message.type === 'deleted';\n\n const hasReactions =\n !isMessageTypeDeleted && !!message.latest_reactions && message.latest_reactions.length > 0;\n\n const reactions = hasReactions\n ? supportedReactions.reduce((acc, cur) => {\n const reactionType = cur.type;\n const reactionsOfReactionType = message.latest_reactions?.filter(\n (reaction) => reaction.type === reactionType,\n );\n\n if (reactionsOfReactionType?.length) {\n const hasOwnReaction = reactionsOfReactionType.some(\n (reaction) => reaction.user_id === clientId,\n );\n acc.push({ own: hasOwnReaction, type: reactionType });\n }\n\n return acc;\n }, [] as Reactions)\n : [];\n\n const handleToggleReaction = async (reactionType: string) => {\n const messageId = message.id;\n const ownReaction = !!reactions.find(\n (reaction) => reaction.own && reaction.type === reactionType,\n );\n\n // Change reaction in local state, make API call in background, revert to old message if fails\n try {\n if (channel && messageId) {\n if (ownReaction) {\n await deleteReaction(reactionType, messageId);\n } else {\n await sendReaction(reactionType, messageId);\n }\n }\n } catch (err) {\n console.log(err);\n }\n };\n\n return {\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleTogglePinMessage,\n handleToggleReaction,\n };\n};\n"],"mappings":";;;;;;;AAYO,IAAMA,wBAAwB,GAAG,SAA3BA,wBAAwB,OAyB0B;EAAA,IAtB7DC,OAAO,QAAPA,OAAO;IACPC,MAAM,QAANA,MAAM;IACNC,aAAa,QAAbA,aAAa;IACbC,cAAc,QAAdA,cAAc;IACdC,OAAO,QAAPA,OAAO;IACPC,gBAAgB,QAAhBA,gBAAgB;IAChBC,YAAY,QAAZA,YAAY;IACZC,eAAe,QAAfA,eAAe;IACfC,qBAAqB,QAArBA,qBAAqB;IACrBC,kBAAkB,QAAlBA,kBAAkB;EAclB,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmB;IAAA,OACvBL,gBAAgB,CAACD,OAAO,CAAwC;EAAA;EAElE,IAAMO,wBAAwB,GAAG,SAA3BA,wBAAwB,GAAS;IACrCH,qBAAqB,CAACJ,OAAO,CAAC;EAChC,CAAC;EAED,IAAMQ,OAAO,GAAG,CAACX,MAAM,CAACY,UAAU,IAAI,EAAE,EAAEC,IAAI,CAC5C,UAACC,IAAI;IAAA;IAAA,OAAKA,IAAI,CAACC,IAAI,CAACC,EAAE,KAAKhB,MAAM,CAACiB,MAAM,IAAIH,IAAI,CAACI,MAAM,CAACF,EAAE,uBAAKb,OAAO,CAACY,IAAI,qBAAZ,cAAcC,EAAE;EAAA,EAChF;EAED,IAAMG,mBAAmB;IAAA,4EAAG;MAAA;QAAA;UAAA;YAAA;YAAA,OACpBlB,aAAa,CAACE,OAAO,CAAwC;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA,CACpE;IAAA,gBAFKgB,mBAAmB;MAAA;IAAA;EAAA,GAExB;EAED,IAAMC,oBAAoB;IAAA,4EAAG;MAAA;MAAA;QAAA;UAAA;YAAA,sBACtBjB,OAAO,CAACY,IAAI,aAAZ,eAAcC,EAAE;cAAA;cAAA;YAAA;YAAA;UAAA;YAAA,KAIjBL,OAAO;cAAA;cAAA;YAAA;YAAA;YAAA,OACHX,MAAM,CAACqB,UAAU,CAAClB,OAAO,CAACY,IAAI,CAACC,EAAE,CAAC;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA,OAElChB,MAAM,CAACsB,QAAQ,CAACnB,OAAO,CAACY,IAAI,CAACC,EAAE,CAAC;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA,CAEzC;IAAA,gBAVKI,oBAAoB;MAAA;IAAA;EAAA,GAUzB;EAED,IAAMG,mBAAmB;IAAA,4EAAG;MAAA;MAAA;QAAA;UAAA;YACpBC,WAAW,GAAGrB,OAAO,CAACY,IAAI;YAAA,IAC3BS,WAAW;cAAA;cAAA;YAAA;YAAA;UAAA;YAAA,KAIZA,WAAW,CAACC,MAAM;cAAA;cAAA;YAAA;YAAA;YAAA,OACdzB,MAAM,CAAC0B,SAAS,CAACF,WAAW,CAACR,EAAE,CAAC;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA,OAEhChB,MAAM,CAAC2B,OAAO,CAACH,WAAW,CAACR,EAAE,CAAC;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA,CAEvC;IAAA,gBAXKO,mBAAmB;MAAA;IAAA;EAAA,GAWxB;EAED,IAAMK,sBAAsB;IAAA,4EAAG;MAAA;MAAA;QAAA;UAAA;YACvBC,yBAAyB,GAAG1B,OAAO,CAAC2B,MAAM;YAAA,IAC3CD,yBAAyB;cAAA;cAAA;YAAA;YAAA;YAAA,OACtB7B,MAAM,CAAC+B,UAAU,CAAC5B,OAAO,EAAE,IAAI,CAAC;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA,OAEhCH,MAAM,CAACgC,YAAY,CAAC7B,OAAO,CAAC;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA,CAErC;IAAA,gBAPKyB,sBAAsB;MAAA;IAAA;EAAA,GAO3B;EAED,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiB,GAAS;IAC9B3B,eAAe,CAACH,OAAO,CAAC;EAC1B,CAAC;EAED,IAAM+B,QAAQ,GAAGlC,MAAM,CAACiB,MAAM;EAC9B,IAAMkB,oBAAoB,GAAGhC,OAAO,CAACiC,IAAI,KAAK,SAAS;EAEvD,IAAMC,YAAY,GAChB,CAACF,oBAAoB,IAAI,CAAC,CAAChC,OAAO,CAACmC,gBAAgB,IAAInC,OAAO,CAACmC,gBAAgB,CAACC,MAAM,GAAG,CAAC;EAE5F,IAAMC,SAAS,GAAGH,YAAY,GAC1B7B,kBAAkB,CAACiC,MAAM,CAAC,UAACC,GAAG,EAAEC,GAAG,EAAK;IAAA;IACtC,IAAMC,YAAY,GAAGD,GAAG,CAACP,IAAI;IAC7B,IAAMS,uBAAuB,4BAAG1C,OAAO,CAACmC,gBAAgB,qBAAxB,sBAA0BQ,MAAM,CAC9D,UAACC,QAAQ;MAAA,OAAKA,QAAQ,CAACX,IAAI,KAAKQ,YAAY;IAAA,EAC7C;IAED,IAAIC,uBAAuB,YAAvBA,uBAAuB,CAAEN,MAAM,EAAE;MACnC,IAAMS,cAAc,GAAGH,uBAAuB,CAAChC,IAAI,CACjD,UAACkC,QAAQ;QAAA,OAAKA,QAAQ,CAACE,OAAO,KAAKf,QAAQ;MAAA,EAC5C;MACDQ,GAAG,CAACQ,IAAI,CAAC;QAAEC,GAAG,EAAEH,cAAc;QAAEZ,IAAI,EAAEQ;MAAa,CAAC,CAAC;IACvD;IAEA,OAAOF,GAAG;EACZ,CAAC,EAAE,EAAE,CAAc,GACnB,EAAE;EAEN,IAAMU,oBAAoB;IAAA,4EAAG,kBAAOR,YAAoB;MAAA;MAAA;QAAA;UAAA;YAChDS,SAAS,GAAGlD,OAAO,CAACa,EAAE;YACtBsC,WAAW,GAAG,CAAC,CAACd,SAAS,CAACe,IAAI,CAClC,UAACR,QAAQ;cAAA,OAAKA,QAAQ,CAACI,GAAG,IAAIJ,QAAQ,CAACX,IAAI,KAAKQ,YAAY;YAAA,EAC7D;YAAA;YAAA,MAIK7C,OAAO,IAAIsD,SAAS;cAAA;cAAA;YAAA;YAAA,KAClBC,WAAW;cAAA;cAAA;YAAA;YAAA;YAAA,OACPpD,cAAc,CAAC0C,YAAY,EAAES,SAAS,CAAC;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA,OAEvChD,YAAY,CAACuC,YAAY,EAAES,SAAS,CAAC;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAI/CG,OAAO,CAACC,GAAG,cAAK;UAAC;UAAA;YAAA;QAAA;MAAA;IAAA,CAEpB;IAAA,gBAlBKL,oBAAoB;MAAA;IAAA;EAAA,GAkBzB;EAED,OAAO;IACLjC,mBAAmB,EAAnBA,mBAAmB;IACnBc,iBAAiB,EAAjBA,iBAAiB;IACjBvB,wBAAwB,EAAxBA,wBAAwB;IACxBD,mBAAmB,EAAnBA,mBAAmB;IACnBc,mBAAmB,EAAnBA,mBAAmB;IACnBH,oBAAoB,EAApBA,oBAAoB;IACpBQ,sBAAsB,EAAtBA,sBAAsB;IACtBwB,oBAAoB,EAApBA;EACF,CAAC;AACH,CAAC;AAAC"}
1
+ {"version":3,"names":["useMessageActionHandlers","_ref","channel","client","deleteMessage","deleteReaction","message","retrySendMessage","sendReaction","setEditingState","setQuotedMessageState","supportedReactions","handleResendMessage","handleQuotedReplyMessage","isMuted","mutedUsers","some","mute","_message$user","user","id","userID","target","handleDeleteMessage","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","stop","apply","arguments","handleToggleMuteUser","_ref3","_callee2","_message$user2","_callee2$","_context2","abrupt","unmuteUser","muteUser","handleToggleBanUser","_ref4","_callee3","messageUser","_callee3$","_context3","banned","unbanUser","banUser","handleTogglePinMessage","_ref5","_callee4","MessagePinnedHeaderStatus","_callee4$","_context4","pinned","pinMessage","unpinMessage","handleEditMessage","clientId","isMessageTypeDeleted","type","hasReactions","latest_reactions","length","reactions","reduce","acc","cur","_message$latest_react","reactionType","reactionsOfReactionType","filter","reaction","hasOwnReaction","user_id","push","own","handleToggleReaction","_ref6","_callee5","messageId","ownReaction","_callee5$","_context5","find","t0","console","log","_x","exports"],"sources":["useMessageActionHandlers.ts"],"sourcesContent":["import type { MessageResponse } from 'stream-chat';\n\nimport type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';\nimport type { ChatContextValue } from '../../../contexts/chatContext/ChatContext';\nimport type {\n MessageContextValue,\n Reactions,\n} from '../../../contexts/messageContext/MessageContext';\nimport type { MessagesContextValue } from '../../../contexts/messagesContext/MessagesContext';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\n\nexport const useMessageActionHandlers = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n channel,\n client,\n deleteMessage,\n deleteReaction,\n message,\n retrySendMessage,\n sendReaction,\n setEditingState,\n setQuotedMessageState,\n supportedReactions,\n}: Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'sendReaction'\n | 'deleteMessage'\n | 'deleteReaction'\n | 'retrySendMessage'\n | 'setEditingState'\n | 'setQuotedMessageState'\n | 'supportedReactions'\n> &\n Pick<ChannelContextValue<StreamChatGenerics>, 'channel' | 'enforceUniqueReaction'> &\n Pick<ChatContextValue<StreamChatGenerics>, 'client'> &\n Pick<MessageContextValue<StreamChatGenerics>, 'message'>) => {\n const handleResendMessage = () =>\n retrySendMessage(message as MessageResponse<StreamChatGenerics>);\n\n const handleQuotedReplyMessage = () => {\n setQuotedMessageState(message);\n };\n\n const isMuted = (client.mutedUsers || []).some(\n (mute) => mute.user.id === client.userID && mute.target.id === message.user?.id,\n );\n\n const handleDeleteMessage = async () => {\n await deleteMessage(message as MessageResponse<StreamChatGenerics>);\n };\n\n const handleToggleMuteUser = async () => {\n if (!message.user?.id) {\n return;\n }\n\n if (isMuted) {\n await client.unmuteUser(message.user.id);\n } else {\n await client.muteUser(message.user.id);\n }\n };\n\n const handleToggleBanUser = async () => {\n const messageUser = message.user;\n if (!messageUser) {\n return;\n }\n\n if (messageUser.banned) {\n await client.unbanUser(messageUser.id);\n } else {\n await client.banUser(messageUser.id);\n }\n };\n\n const handleTogglePinMessage = async () => {\n const MessagePinnedHeaderStatus = message.pinned;\n if (!MessagePinnedHeaderStatus) {\n await client.pinMessage(message, null);\n } else {\n await client.unpinMessage(message);\n }\n };\n\n const handleEditMessage = () => {\n setEditingState(message);\n };\n\n const clientId = client.userID;\n const isMessageTypeDeleted = message.type === 'deleted';\n\n const hasReactions =\n !isMessageTypeDeleted && !!message.latest_reactions && message.latest_reactions.length > 0;\n\n const reactions = hasReactions\n ? supportedReactions.reduce((acc, cur) => {\n const reactionType = cur.type;\n const reactionsOfReactionType = message.latest_reactions?.filter(\n (reaction) => reaction.type === reactionType,\n );\n\n if (reactionsOfReactionType?.length) {\n const hasOwnReaction = reactionsOfReactionType.some(\n (reaction) => reaction.user_id === clientId,\n );\n acc.push({ own: hasOwnReaction, type: reactionType });\n }\n\n return acc;\n }, [] as Reactions)\n : [];\n\n const handleToggleReaction = async (reactionType: string) => {\n const messageId = message.id;\n const ownReaction = !!reactions.find(\n (reaction) => reaction.own && reaction.type === reactionType,\n );\n\n // Change reaction in local state, make API call in background, revert to old message if fails\n try {\n if (channel && messageId) {\n if (ownReaction) {\n await deleteReaction(reactionType, messageId);\n } else {\n await sendReaction(reactionType, messageId);\n }\n }\n } catch (err) {\n console.log(err);\n }\n };\n\n return {\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleTogglePinMessage,\n handleToggleReaction,\n };\n};\n"],"mappings":"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"}