stream-chat-react-native-core 9.0.0-beta.1 → 9.0.0-beta.10

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 (955) hide show
  1. package/lib/commonjs/components/AITypingIndicatorView/AITypingIndicatorView.js +1 -1
  2. package/lib/commonjs/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js +2 -3
  4. package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js.map +1 -1
  5. package/lib/commonjs/components/Attachment/FileAttachment.js +1 -1
  6. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  7. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +2 -2
  8. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  9. package/lib/commonjs/components/Attachment/FileIcon.js +2 -2
  10. package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
  11. package/lib/commonjs/components/Attachment/FilePreview.js +2 -2
  12. package/lib/commonjs/components/Attachment/FilePreview.js.map +1 -1
  13. package/lib/commonjs/components/Attachment/Gallery.js +4 -4
  14. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  15. package/lib/commonjs/components/Attachment/Giphy/Giphy.js +2 -2
  16. package/lib/commonjs/components/Attachment/Giphy/Giphy.js.map +1 -1
  17. package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js +1 -1
  18. package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js.map +1 -1
  19. package/lib/commonjs/components/Attachment/UnsupportedAttachment.js +2 -2
  20. package/lib/commonjs/components/Attachment/UnsupportedAttachment.js.map +1 -1
  21. package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js +2 -2
  22. package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
  23. package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js +2 -2
  24. package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
  25. package/lib/commonjs/components/Attachment/VideoThumbnail.js +3 -3
  26. package/lib/commonjs/components/Attachment/VideoThumbnail.js.map +1 -1
  27. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +5 -8
  28. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
  29. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +2 -2
  30. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
  31. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js +9 -0
  32. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js.map +1 -0
  33. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js +10 -78
  34. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
  35. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerGenericContent.js +83 -0
  36. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerGenericContent.js.map +1 -0
  37. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  38. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  39. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +1 -1
  40. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  41. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +3 -3
  42. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  43. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
  44. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  45. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +3 -3
  46. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  47. package/lib/commonjs/components/Channel/Channel.js +47 -36
  48. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  49. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -2
  50. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  51. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +14 -4
  52. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  53. package/lib/commonjs/components/ChannelList/ChannelList.js +4 -4
  54. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  55. package/lib/commonjs/components/ChannelList/{ChannelListMessenger.js → ChannelListView.js} +9 -9
  56. package/lib/commonjs/components/ChannelList/ChannelListView.js.map +1 -0
  57. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +16 -9
  58. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  59. package/lib/{module/components/ChannelPreview/ChannelPreviewMessenger.js → commonjs/components/ChannelPreview/ChannelPreviewView.js} +8 -8
  60. package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js.map +1 -0
  61. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +2 -2
  62. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  63. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +2 -2
  64. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  65. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +4 -4
  66. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  67. package/lib/commonjs/components/ImageGallery/components/types.js +4 -0
  68. package/lib/commonjs/components/ImageGallery/components/types.js.map +1 -0
  69. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js +2 -2
  70. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js.map +1 -1
  71. package/lib/commonjs/components/Message/Message.js +21 -16
  72. package/lib/commonjs/components/Message/Message.js.map +1 -1
  73. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.js +2 -2
  74. package/lib/commonjs/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -0
  75. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/Headers/MessageReminderHeader.js +2 -2
  76. package/lib/commonjs/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -0
  77. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/Headers/MessageSavedForLaterHeader.js +2 -2
  78. package/lib/commonjs/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -0
  79. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.js +2 -2
  80. package/lib/commonjs/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -0
  81. package/lib/commonjs/components/Message/MessageItemView/Headers/index.js.map +1 -0
  82. package/lib/{module/components/Message/MessageSimple/MessageAvatar.js → commonjs/components/Message/MessageItemView/MessageAuthor.js} +10 -10
  83. package/lib/commonjs/components/Message/MessageItemView/MessageAuthor.js.map +1 -0
  84. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageBlocked.js +2 -2
  85. package/lib/commonjs/components/Message/MessageItemView/MessageBlocked.js.map +1 -0
  86. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageBounce.js +1 -1
  87. package/lib/commonjs/components/Message/MessageItemView/MessageBounce.js.map +1 -0
  88. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageBubble.js +14 -88
  89. package/lib/commonjs/components/Message/MessageItemView/MessageBubble.js.map +1 -0
  90. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageContent.js +98 -63
  91. package/lib/commonjs/components/Message/MessageItemView/MessageContent.js.map +1 -0
  92. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.js +4 -4
  93. package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js.map +1 -0
  94. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageError.js +1 -1
  95. package/lib/commonjs/components/Message/MessageItemView/MessageError.js.map +1 -0
  96. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageFooter.js +8 -3
  97. package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js.map +1 -0
  98. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageHeader.js +1 -1
  99. package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js.map +1 -0
  100. package/lib/commonjs/components/Message/{MessageSimple/MessageSimple.js → MessageItemView/MessageItemView.js} +88 -84
  101. package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js.map +1 -0
  102. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageReplies.js +3 -3
  103. package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js.map +1 -0
  104. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.js +2 -2
  105. package/lib/commonjs/components/Message/MessageItemView/MessageRepliesAvatars.js.map +1 -0
  106. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageStatus.js +10 -32
  107. package/lib/commonjs/components/Message/MessageItemView/MessageStatus.js.map +1 -0
  108. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageSwipeContent.js +2 -2
  109. package/lib/commonjs/components/Message/MessageItemView/MessageSwipeContent.js.map +1 -0
  110. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageTextContainer.js +7 -7
  111. package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js.map +1 -0
  112. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.js +2 -2
  113. package/lib/commonjs/components/Message/MessageItemView/MessageTimestamp.js.map +1 -0
  114. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.js +1 -1
  115. package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js.map +1 -0
  116. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/ReactionList/ReactionListBottom.js +2 -2
  117. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -0
  118. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/ReactionList/ReactionListClustered.js +3 -3
  119. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -0
  120. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.js +3 -3
  121. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -0
  122. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.js +2 -2
  123. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItemWrapper.js.map +1 -0
  124. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.js +2 -2
  125. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -0
  126. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/StreamingMessageView.js +2 -2
  127. package/lib/commonjs/components/Message/MessageItemView/StreamingMessageView.js.map +1 -0
  128. package/lib/commonjs/components/Message/MessageItemView/utils/generateMarkdownText.js.map +1 -0
  129. package/lib/commonjs/components/Message/MessageItemView/utils/generateMarkdownText.test.js.map +1 -0
  130. package/lib/commonjs/components/Message/MessageItemView/utils/parseLinks.js.map +1 -0
  131. package/lib/commonjs/components/Message/MessageItemView/utils/parseLinks.test.js.map +1 -0
  132. package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/utils/renderText.js +1 -1
  133. package/lib/commonjs/components/Message/MessageItemView/utils/renderText.js.map +1 -0
  134. package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.js +1 -1
  135. package/lib/commonjs/components/Message/MessageItemView/utils/renderText.test.js.map +1 -0
  136. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +2 -0
  137. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  138. package/lib/commonjs/components/MessageInput/{MessageInput.js → MessageComposer.js} +18 -12
  139. package/lib/commonjs/components/MessageInput/MessageComposer.js.map +1 -0
  140. package/lib/commonjs/components/MessageInput/MessageComposerLeadingView.js +1 -1
  141. package/lib/commonjs/components/MessageInput/MessageComposerLeadingView.js.map +1 -1
  142. package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js +2 -2
  143. package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js.map +1 -1
  144. package/lib/commonjs/components/MessageInput/MessageInputTrailingView.js +1 -1
  145. package/lib/commonjs/components/MessageInput/MessageInputTrailingView.js.map +1 -1
  146. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
  147. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  148. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +2 -2
  149. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  150. package/lib/commonjs/components/MessageInput/StopMessageStreamingButton.js +2 -2
  151. package/lib/commonjs/components/MessageInput/StopMessageStreamingButton.js.map +1 -1
  152. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
  153. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
  154. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +16 -11
  155. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
  156. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +5 -5
  157. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
  158. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +1 -1
  159. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
  160. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +1 -1
  161. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
  162. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +1 -1
  163. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
  164. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js +9 -9
  165. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
  166. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +6 -6
  167. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
  168. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +2 -2
  169. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
  170. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js +1 -1
  171. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js.map +1 -1
  172. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js +2 -3
  173. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js.map +1 -1
  174. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js +2 -2
  175. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js.map +1 -1
  176. package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
  177. package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
  178. package/lib/commonjs/components/MessageInput/components/InputButtons/index.js +1 -1
  179. package/lib/commonjs/components/MessageInput/components/InputButtons/index.js.map +1 -1
  180. package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js +1 -1
  181. package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js.map +1 -1
  182. package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
  183. package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
  184. package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
  185. package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
  186. package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js +3 -3
  187. package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js.map +1 -1
  188. package/lib/commonjs/components/MessageInput/contexts/MicPositionContext.js +1 -1
  189. package/lib/commonjs/components/MessageInput/contexts/MicPositionContext.js.map +1 -1
  190. package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js +5 -16
  191. package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
  192. package/lib/commonjs/components/MessageList/MessageFlashList.js +12 -5
  193. package/lib/commonjs/components/MessageList/MessageFlashList.js.map +1 -1
  194. package/lib/commonjs/components/MessageList/MessageList.js +1 -1
  195. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  196. package/lib/commonjs/components/MessageList/MessageSystem.js +1 -1
  197. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  198. package/lib/commonjs/components/MessageMenu/EmojiPickerList.js +5 -5
  199. package/lib/commonjs/components/MessageMenu/EmojiPickerList.js.map +1 -1
  200. package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js +1 -8
  201. package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js.map +1 -1
  202. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +1 -0
  203. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +1 -1
  204. package/lib/commonjs/components/MessageMenu/utils/toUnicodeScalarString.js +12 -0
  205. package/lib/commonjs/components/MessageMenu/utils/toUnicodeScalarString.js.map +1 -0
  206. package/lib/commonjs/components/Poll/components/PollAnswersList.js +52 -45
  207. package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -1
  208. package/lib/commonjs/components/Poll/components/PollOption.js +24 -14
  209. package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -1
  210. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +4 -1
  211. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  212. package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js +46 -19
  213. package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
  214. package/lib/commonjs/components/Poll/hooks/usePollState.js +6 -3
  215. package/lib/commonjs/components/Poll/hooks/usePollState.js.map +1 -1
  216. package/lib/commonjs/components/Thread/Thread.js +6 -6
  217. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  218. package/lib/commonjs/components/ThreadList/ThreadListItem.js +46 -15
  219. package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
  220. package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js +23 -5
  221. package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
  222. package/lib/commonjs/components/UIComponents/PortalWhileClosingView.js +48 -33
  223. package/lib/commonjs/components/UIComponents/PortalWhileClosingView.js.map +1 -1
  224. package/lib/commonjs/components/index.js +73 -40
  225. package/lib/commonjs/components/index.js.map +1 -1
  226. package/lib/commonjs/components/ui/SpeedSettingsButton.js +3 -3
  227. package/lib/commonjs/components/ui/SpeedSettingsButton.js.map +1 -1
  228. package/lib/commonjs/components/ui/VideoPlayIndicator.js +3 -3
  229. package/lib/commonjs/components/ui/VideoPlayIndicator.js.map +1 -1
  230. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +15 -12
  231. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  232. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContextBase.js +18 -0
  233. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -0
  234. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  235. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +1 -1
  236. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  237. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -2
  238. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  239. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  240. package/lib/commonjs/contexts/themeContext/utils/theme.js +12 -11
  241. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  242. package/lib/commonjs/contexts/threadsContext/ThreadListItemContext.js.map +1 -1
  243. package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js +2 -2
  244. package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
  245. package/lib/commonjs/hooks/useAttachmentPickerState.js +2 -2
  246. package/lib/commonjs/hooks/useAttachmentPickerState.js.map +1 -1
  247. package/lib/commonjs/icons/index.js +11 -0
  248. package/lib/commonjs/icons/index.js.map +1 -1
  249. package/lib/commonjs/state-store/message-overlay-store.js +11 -1
  250. package/lib/commonjs/state-store/message-overlay-store.js.map +1 -1
  251. package/lib/commonjs/version.json +1 -1
  252. package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js +1 -1
  253. package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
  254. package/lib/module/components/Attachment/Audio/AudioAttachment.js +2 -3
  255. package/lib/module/components/Attachment/Audio/AudioAttachment.js.map +1 -1
  256. package/lib/module/components/Attachment/FileAttachment.js +1 -1
  257. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  258. package/lib/module/components/Attachment/FileAttachmentGroup.js +2 -2
  259. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  260. package/lib/module/components/Attachment/FileIcon.js +2 -2
  261. package/lib/module/components/Attachment/FileIcon.js.map +1 -1
  262. package/lib/module/components/Attachment/FilePreview.js +2 -2
  263. package/lib/module/components/Attachment/FilePreview.js.map +1 -1
  264. package/lib/module/components/Attachment/Gallery.js +4 -4
  265. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  266. package/lib/module/components/Attachment/Giphy/Giphy.js +2 -2
  267. package/lib/module/components/Attachment/Giphy/Giphy.js.map +1 -1
  268. package/lib/module/components/Attachment/Giphy/GiphyImage.js +1 -1
  269. package/lib/module/components/Attachment/Giphy/GiphyImage.js.map +1 -1
  270. package/lib/module/components/Attachment/UnsupportedAttachment.js +2 -2
  271. package/lib/module/components/Attachment/UnsupportedAttachment.js.map +1 -1
  272. package/lib/module/components/Attachment/UrlPreview/URLPreview.js +2 -2
  273. package/lib/module/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
  274. package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js +2 -2
  275. package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
  276. package/lib/module/components/Attachment/VideoThumbnail.js +3 -3
  277. package/lib/module/components/Attachment/VideoThumbnail.js.map +1 -1
  278. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +5 -8
  279. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
  280. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +2 -2
  281. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
  282. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js +9 -0
  283. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js.map +1 -0
  284. package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js +10 -78
  285. package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
  286. package/lib/module/components/AttachmentPicker/components/AttachmentPickerGenericContent.js +83 -0
  287. package/lib/module/components/AttachmentPicker/components/AttachmentPickerGenericContent.js.map +1 -0
  288. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
  289. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  290. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +1 -1
  291. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  292. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +3 -3
  293. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
  294. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
  295. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
  296. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +3 -3
  297. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  298. package/lib/module/components/Channel/Channel.js +47 -36
  299. package/lib/module/components/Channel/Channel.js.map +1 -1
  300. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -2
  301. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  302. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +14 -4
  303. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  304. package/lib/module/components/ChannelList/ChannelList.js +4 -4
  305. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  306. package/lib/module/components/ChannelList/{ChannelListMessenger.js → ChannelListView.js} +9 -9
  307. package/lib/module/components/ChannelList/ChannelListView.js.map +1 -0
  308. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +16 -9
  309. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  310. package/lib/{commonjs/components/ChannelPreview/ChannelPreviewMessenger.js → module/components/ChannelPreview/ChannelPreviewView.js} +8 -8
  311. package/lib/module/components/ChannelPreview/ChannelPreviewView.js.map +1 -0
  312. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +2 -2
  313. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  314. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +2 -2
  315. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  316. package/lib/module/components/ImageGallery/components/ImageGrid.js +4 -4
  317. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  318. package/lib/module/components/ImageGallery/components/types.js +4 -0
  319. package/lib/module/components/ImageGallery/components/types.js.map +1 -0
  320. package/lib/module/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js +2 -2
  321. package/lib/module/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js.map +1 -1
  322. package/lib/module/components/Message/Message.js +21 -16
  323. package/lib/module/components/Message/Message.js.map +1 -1
  324. package/lib/module/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.js +2 -2
  325. package/lib/module/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -0
  326. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/Headers/MessageReminderHeader.js +2 -2
  327. package/lib/module/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -0
  328. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/Headers/MessageSavedForLaterHeader.js +2 -2
  329. package/lib/module/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -0
  330. package/lib/module/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.js +2 -2
  331. package/lib/module/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -0
  332. package/lib/module/components/Message/MessageItemView/Headers/index.js.map +1 -0
  333. package/lib/{commonjs/components/Message/MessageSimple/MessageAvatar.js → module/components/Message/MessageItemView/MessageAuthor.js} +10 -10
  334. package/lib/module/components/Message/MessageItemView/MessageAuthor.js.map +1 -0
  335. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageBlocked.js +2 -2
  336. package/lib/module/components/Message/MessageItemView/MessageBlocked.js.map +1 -0
  337. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageBounce.js +1 -1
  338. package/lib/module/components/Message/MessageItemView/MessageBounce.js.map +1 -0
  339. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageBubble.js +14 -88
  340. package/lib/module/components/Message/MessageItemView/MessageBubble.js.map +1 -0
  341. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageContent.js +98 -63
  342. package/lib/module/components/Message/MessageItemView/MessageContent.js.map +1 -0
  343. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.js +4 -4
  344. package/lib/module/components/Message/MessageItemView/MessageDeleted.js.map +1 -0
  345. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageError.js +1 -1
  346. package/lib/module/components/Message/MessageItemView/MessageError.js.map +1 -0
  347. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageFooter.js +8 -3
  348. package/lib/module/components/Message/MessageItemView/MessageFooter.js.map +1 -0
  349. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageHeader.js +1 -1
  350. package/lib/module/components/Message/MessageItemView/MessageHeader.js.map +1 -0
  351. package/lib/module/components/Message/{MessageSimple/MessageSimple.js → MessageItemView/MessageItemView.js} +88 -84
  352. package/lib/module/components/Message/MessageItemView/MessageItemView.js.map +1 -0
  353. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageReplies.js +3 -3
  354. package/lib/module/components/Message/MessageItemView/MessageReplies.js.map +1 -0
  355. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.js +2 -2
  356. package/lib/module/components/Message/MessageItemView/MessageRepliesAvatars.js.map +1 -0
  357. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageStatus.js +10 -32
  358. package/lib/module/components/Message/MessageItemView/MessageStatus.js.map +1 -0
  359. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageSwipeContent.js +2 -2
  360. package/lib/module/components/Message/MessageItemView/MessageSwipeContent.js.map +1 -0
  361. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageTextContainer.js +7 -7
  362. package/lib/module/components/Message/MessageItemView/MessageTextContainer.js.map +1 -0
  363. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.js +2 -2
  364. package/lib/module/components/Message/MessageItemView/MessageTimestamp.js.map +1 -0
  365. package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.js +1 -1
  366. package/lib/module/components/Message/MessageItemView/MessageWrapper.js.map +1 -0
  367. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/ReactionList/ReactionListBottom.js +2 -2
  368. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -0
  369. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/ReactionList/ReactionListClustered.js +3 -3
  370. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -0
  371. package/lib/module/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.js +3 -3
  372. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -0
  373. package/lib/module/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.js +2 -2
  374. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItemWrapper.js.map +1 -0
  375. package/lib/module/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.js +2 -2
  376. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -0
  377. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/StreamingMessageView.js +2 -2
  378. package/lib/module/components/Message/MessageItemView/StreamingMessageView.js.map +1 -0
  379. package/lib/module/components/Message/MessageItemView/utils/generateMarkdownText.js.map +1 -0
  380. package/lib/module/components/Message/MessageItemView/utils/generateMarkdownText.test.js.map +1 -0
  381. package/lib/module/components/Message/MessageItemView/utils/parseLinks.js.map +1 -0
  382. package/lib/module/components/Message/MessageItemView/utils/parseLinks.test.js.map +1 -0
  383. package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/utils/renderText.js +1 -1
  384. package/lib/module/components/Message/MessageItemView/utils/renderText.js.map +1 -0
  385. package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.js +1 -1
  386. package/lib/module/components/Message/MessageItemView/utils/renderText.test.js.map +1 -0
  387. package/lib/module/components/Message/hooks/useCreateMessageContext.js +2 -0
  388. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  389. package/lib/module/components/MessageInput/{MessageInput.js → MessageComposer.js} +18 -12
  390. package/lib/module/components/MessageInput/MessageComposer.js.map +1 -0
  391. package/lib/module/components/MessageInput/MessageComposerLeadingView.js +1 -1
  392. package/lib/module/components/MessageInput/MessageComposerLeadingView.js.map +1 -1
  393. package/lib/module/components/MessageInput/MessageInputHeaderView.js +2 -2
  394. package/lib/module/components/MessageInput/MessageInputHeaderView.js.map +1 -1
  395. package/lib/module/components/MessageInput/MessageInputTrailingView.js +1 -1
  396. package/lib/module/components/MessageInput/MessageInputTrailingView.js.map +1 -1
  397. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
  398. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  399. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +2 -2
  400. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  401. package/lib/module/components/MessageInput/StopMessageStreamingButton.js +2 -2
  402. package/lib/module/components/MessageInput/StopMessageStreamingButton.js.map +1 -1
  403. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
  404. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
  405. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +16 -11
  406. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
  407. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +5 -5
  408. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
  409. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +1 -1
  410. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
  411. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +1 -1
  412. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
  413. package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +1 -1
  414. package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
  415. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js +9 -9
  416. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
  417. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +6 -6
  418. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
  419. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +2 -2
  420. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
  421. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js +1 -1
  422. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js.map +1 -1
  423. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js +2 -3
  424. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js.map +1 -1
  425. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js +2 -2
  426. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js.map +1 -1
  427. package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
  428. package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
  429. package/lib/module/components/MessageInput/components/InputButtons/index.js +1 -1
  430. package/lib/module/components/MessageInput/components/InputButtons/index.js.map +1 -1
  431. package/lib/module/components/MessageInput/components/LinkPreviewList.js +1 -1
  432. package/lib/module/components/MessageInput/components/LinkPreviewList.js.map +1 -1
  433. package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
  434. package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
  435. package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
  436. package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
  437. package/lib/module/components/MessageInput/components/OutputButtons/index.js +3 -3
  438. package/lib/module/components/MessageInput/components/OutputButtons/index.js.map +1 -1
  439. package/lib/module/components/MessageInput/contexts/MicPositionContext.js +1 -1
  440. package/lib/module/components/MessageInput/contexts/MicPositionContext.js.map +1 -1
  441. package/lib/module/components/MessageInput/hooks/useAudioRecorder.js +5 -16
  442. package/lib/module/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
  443. package/lib/module/components/MessageList/MessageFlashList.js +12 -5
  444. package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
  445. package/lib/module/components/MessageList/MessageList.js +1 -1
  446. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  447. package/lib/module/components/MessageList/MessageSystem.js +1 -1
  448. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  449. package/lib/module/components/MessageMenu/EmojiPickerList.js +5 -5
  450. package/lib/module/components/MessageMenu/EmojiPickerList.js.map +1 -1
  451. package/lib/module/components/MessageMenu/MessageReactionPicker.js +1 -8
  452. package/lib/module/components/MessageMenu/MessageReactionPicker.js.map +1 -1
  453. package/lib/module/components/MessageMenu/MessageUserReactions.js +1 -0
  454. package/lib/module/components/MessageMenu/MessageUserReactions.js.map +1 -1
  455. package/lib/module/components/MessageMenu/utils/toUnicodeScalarString.js +12 -0
  456. package/lib/module/components/MessageMenu/utils/toUnicodeScalarString.js.map +1 -0
  457. package/lib/module/components/Poll/components/PollAnswersList.js +52 -45
  458. package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -1
  459. package/lib/module/components/Poll/components/PollOption.js +24 -14
  460. package/lib/module/components/Poll/components/PollOption.js.map +1 -1
  461. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +4 -1
  462. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  463. package/lib/module/components/Poll/components/PollResults/PollResultItem.js +46 -19
  464. package/lib/module/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
  465. package/lib/module/components/Poll/hooks/usePollState.js +6 -3
  466. package/lib/module/components/Poll/hooks/usePollState.js.map +1 -1
  467. package/lib/module/components/Thread/Thread.js +6 -6
  468. package/lib/module/components/Thread/Thread.js.map +1 -1
  469. package/lib/module/components/ThreadList/ThreadListItem.js +46 -15
  470. package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
  471. package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js +23 -5
  472. package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
  473. package/lib/module/components/UIComponents/PortalWhileClosingView.js +48 -33
  474. package/lib/module/components/UIComponents/PortalWhileClosingView.js.map +1 -1
  475. package/lib/module/components/index.js +73 -40
  476. package/lib/module/components/index.js.map +1 -1
  477. package/lib/module/components/ui/SpeedSettingsButton.js +3 -3
  478. package/lib/module/components/ui/SpeedSettingsButton.js.map +1 -1
  479. package/lib/module/components/ui/VideoPlayIndicator.js +3 -3
  480. package/lib/module/components/ui/VideoPlayIndicator.js.map +1 -1
  481. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +15 -12
  482. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  483. package/lib/module/contexts/imageGalleryContext/ImageGalleryContextBase.js +18 -0
  484. package/lib/module/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -0
  485. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  486. package/lib/module/contexts/messageInputContext/MessageInputContext.js +1 -1
  487. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  488. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -2
  489. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  490. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  491. package/lib/module/contexts/themeContext/utils/theme.js +12 -11
  492. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  493. package/lib/module/contexts/threadsContext/ThreadListItemContext.js.map +1 -1
  494. package/lib/module/hooks/messagePreview/useMessagePreviewText.js +2 -2
  495. package/lib/module/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
  496. package/lib/module/hooks/useAttachmentPickerState.js +2 -2
  497. package/lib/module/hooks/useAttachmentPickerState.js.map +1 -1
  498. package/lib/module/icons/index.js +11 -0
  499. package/lib/module/icons/index.js.map +1 -1
  500. package/lib/module/state-store/message-overlay-store.js +11 -1
  501. package/lib/module/state-store/message-overlay-store.js.map +1 -1
  502. package/lib/module/version.json +1 -1
  503. package/lib/typescript/components/Attachment/Audio/AudioAttachment.d.ts.map +1 -1
  504. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.d.ts +1 -8
  505. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.d.ts.map +1 -1
  506. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts +1 -1
  507. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts.map +1 -1
  508. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/shared.d.ts +8 -0
  509. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/shared.d.ts.map +1 -0
  510. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerContent.d.ts +2 -10
  511. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerContent.d.ts.map +1 -1
  512. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerGenericContent.d.ts +13 -0
  513. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerGenericContent.d.ts.map +1 -0
  514. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +1 -1
  515. package/lib/typescript/components/Channel/Channel.d.ts +2 -2
  516. package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
  517. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
  518. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts.map +1 -1
  519. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
  520. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
  521. package/lib/typescript/components/ChannelList/ChannelList.d.ts +4 -4
  522. package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
  523. package/lib/typescript/components/ChannelList/ChannelListView.d.ts +15 -0
  524. package/lib/typescript/components/ChannelList/ChannelListView.d.ts.map +1 -0
  525. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +1 -1
  526. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
  527. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +2 -2
  528. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts.map +1 -1
  529. package/lib/typescript/components/ChannelPreview/{ChannelPreviewMessenger.d.ts → ChannelPreviewView.d.ts} +5 -5
  530. package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts.map +1 -0
  531. package/lib/typescript/components/Chat/Chat.d.ts +1 -1
  532. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +1 -11
  533. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts.map +1 -1
  534. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +1 -5
  535. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts.map +1 -1
  536. package/lib/typescript/components/ImageGallery/components/ImageGalleryVideoControl.d.ts +1 -1
  537. package/lib/typescript/components/ImageGallery/components/ImageGalleryVideoControl.d.ts.map +1 -1
  538. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +1 -4
  539. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts.map +1 -1
  540. package/lib/typescript/components/ImageGallery/components/types.d.ts +21 -0
  541. package/lib/typescript/components/ImageGallery/components/types.d.ts.map +1 -0
  542. package/lib/typescript/components/Message/Message.d.ts +1 -1
  543. package/lib/typescript/components/Message/Message.d.ts.map +1 -1
  544. package/lib/typescript/components/Message/MessageItemView/Headers/MessagePinnedHeader.d.ts.map +1 -0
  545. package/lib/typescript/components/Message/MessageItemView/Headers/MessageReminderHeader.d.ts.map +1 -0
  546. package/lib/typescript/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.d.ts.map +1 -0
  547. package/lib/typescript/components/Message/MessageItemView/Headers/SentToChannelHeader.d.ts.map +1 -0
  548. package/lib/typescript/components/Message/MessageItemView/Headers/index.d.ts.map +1 -0
  549. package/lib/typescript/components/Message/{MessageSimple/MessageAvatar.d.ts → MessageItemView/MessageAuthor.d.ts} +5 -5
  550. package/lib/typescript/components/Message/MessageItemView/MessageAuthor.d.ts.map +1 -0
  551. package/lib/typescript/components/Message/MessageItemView/MessageBlocked.d.ts.map +1 -0
  552. package/lib/typescript/components/Message/MessageItemView/MessageBounce.d.ts.map +1 -0
  553. package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts +10 -0
  554. package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts.map +1 -0
  555. package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageContent.d.ts +3 -4
  556. package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts.map +1 -0
  557. package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts.map +1 -0
  558. package/lib/typescript/components/Message/MessageItemView/MessageError.d.ts.map +1 -0
  559. package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts.map +1 -0
  560. package/lib/typescript/components/Message/MessageItemView/MessageHeader.d.ts.map +1 -0
  561. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts +14 -0
  562. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts.map +1 -0
  563. package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts.map +1 -0
  564. package/lib/typescript/components/Message/MessageItemView/MessageRepliesAvatars.d.ts.map +1 -0
  565. package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageStatus.d.ts +1 -5
  566. package/lib/typescript/components/Message/MessageItemView/MessageStatus.d.ts.map +1 -0
  567. package/lib/typescript/components/Message/MessageItemView/MessageSwipeContent.d.ts.map +1 -0
  568. package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts.map +1 -0
  569. package/lib/typescript/components/Message/MessageItemView/MessageTimestamp.d.ts.map +1 -0
  570. package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts.map +1 -0
  571. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts.map +1 -0
  572. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListClustered.d.ts.map +1 -0
  573. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListItem.d.ts.map +1 -0
  574. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListItemWrapper.d.ts.map +1 -0
  575. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts.map +1 -0
  576. package/lib/typescript/components/Message/MessageItemView/StreamingMessageView.d.ts.map +1 -0
  577. package/lib/typescript/components/Message/MessageItemView/utils/generateMarkdownText.d.ts.map +1 -0
  578. package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.d.ts.map +1 -1
  579. package/lib/typescript/components/Message/MessageItemView/utils/parseLinks.d.ts.map +1 -0
  580. package/lib/typescript/components/Message/MessageItemView/utils/parseLinks.test.d.ts.map +1 -0
  581. package/lib/typescript/components/Message/MessageItemView/utils/renderText.d.ts.map +1 -0
  582. package/lib/typescript/components/Message/MessageItemView/utils/renderText.test.d.ts.map +1 -0
  583. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
  584. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts.map +1 -1
  585. package/lib/typescript/components/Message/hooks/useStreamingMessage.d.ts +1 -1
  586. package/lib/typescript/components/Message/hooks/useStreamingMessage.d.ts.map +1 -1
  587. package/lib/typescript/components/MessageInput/MessageComposer.d.ts +33 -0
  588. package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -0
  589. package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts.map +1 -1
  590. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecorder.d.ts +1 -1
  591. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecorder.d.ts.map +1 -1
  592. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingButton.d.ts +1 -1
  593. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingButton.d.ts.map +1 -1
  594. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.d.ts.map +1 -1
  595. package/lib/typescript/components/MessageInput/components/InputButtons/AttachButton.d.ts +1 -1
  596. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts +1 -1
  597. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts.map +1 -1
  598. package/lib/typescript/components/MessageInput/hooks/useAudioRecorder.d.ts +1 -3
  599. package/lib/typescript/components/MessageInput/hooks/useAudioRecorder.d.ts.map +1 -1
  600. package/lib/typescript/components/MessageList/MessageFlashList.d.ts +1 -1
  601. package/lib/typescript/components/MessageList/MessageFlashList.d.ts.map +1 -1
  602. package/lib/typescript/components/MessageMenu/MessageReactionPicker.d.ts +0 -1
  603. package/lib/typescript/components/MessageMenu/MessageReactionPicker.d.ts.map +1 -1
  604. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +1 -1
  605. package/lib/typescript/components/MessageMenu/utils/toUnicodeScalarString.d.ts +2 -0
  606. package/lib/typescript/components/MessageMenu/utils/toUnicodeScalarString.d.ts.map +1 -0
  607. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -1
  608. package/lib/typescript/components/Poll/components/PollOption.d.ts +2 -1
  609. package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -1
  610. package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts.map +1 -1
  611. package/lib/typescript/components/Poll/hooks/usePollState.d.ts +1 -0
  612. package/lib/typescript/components/Poll/hooks/usePollState.d.ts.map +1 -1
  613. package/lib/typescript/components/Thread/Thread.d.ts +9 -9
  614. package/lib/typescript/components/Thread/Thread.d.ts.map +1 -1
  615. package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
  616. package/lib/typescript/components/ThreadList/ThreadListItemMessagePreview.d.ts.map +1 -1
  617. package/lib/typescript/components/UIComponents/PortalWhileClosingView.d.ts.map +1 -1
  618. package/lib/typescript/components/index.d.ts +28 -25
  619. package/lib/typescript/components/index.d.ts.map +1 -1
  620. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +6 -6
  621. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
  622. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +3 -22
  623. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts.map +1 -1
  624. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts +19 -0
  625. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts.map +1 -0
  626. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +6 -0
  627. package/lib/typescript/contexts/messageContext/MessageContext.d.ts.map +1 -1
  628. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +8 -7
  629. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
  630. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
  631. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts.map +1 -1
  632. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +56 -36
  633. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
  634. package/lib/typescript/contexts/themeContext/ThemeContext.d.ts +11 -10
  635. package/lib/typescript/contexts/themeContext/ThemeContext.d.ts.map +1 -1
  636. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +11 -10
  637. package/lib/typescript/contexts/themeContext/utils/theme.d.ts.map +1 -1
  638. package/lib/typescript/contexts/threadsContext/ThreadListItemContext.d.ts +2 -1
  639. package/lib/typescript/contexts/threadsContext/ThreadListItemContext.d.ts.map +1 -1
  640. package/lib/typescript/icons/index.d.ts +1 -0
  641. package/lib/typescript/icons/index.d.ts.map +1 -1
  642. package/lib/typescript/state-store/message-overlay-store.d.ts +4 -0
  643. package/lib/typescript/state-store/message-overlay-store.d.ts.map +1 -1
  644. package/package.json +1 -1
  645. package/src/__tests__/offline-support/offline-feature.js +1 -1
  646. package/src/components/AITypingIndicatorView/AITypingIndicatorView.tsx +1 -1
  647. package/src/components/Attachment/Audio/AudioAttachment.tsx +2 -3
  648. package/src/components/Attachment/FileAttachment.tsx +1 -1
  649. package/src/components/Attachment/FileAttachmentGroup.tsx +2 -2
  650. package/src/components/Attachment/FileIcon.tsx +2 -2
  651. package/src/components/Attachment/FilePreview.tsx +2 -2
  652. package/src/components/Attachment/Gallery.tsx +4 -4
  653. package/src/components/Attachment/Giphy/Giphy.tsx +2 -2
  654. package/src/components/Attachment/Giphy/GiphyImage.tsx +1 -1
  655. package/src/components/Attachment/UnsupportedAttachment.tsx +2 -2
  656. package/src/components/Attachment/UrlPreview/URLPreview.tsx +2 -2
  657. package/src/components/Attachment/UrlPreview/URLPreviewCompact.tsx +2 -2
  658. package/src/components/Attachment/VideoThumbnail.tsx +2 -2
  659. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.tsx +3 -12
  660. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx +1 -1
  661. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/shared.ts +10 -0
  662. package/src/components/AttachmentPicker/components/AttachmentPickerContent.tsx +8 -84
  663. package/src/components/AttachmentPicker/components/AttachmentPickerGenericContent.tsx +90 -0
  664. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +3 -3
  665. package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +1 -1
  666. package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +3 -3
  667. package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +4 -4
  668. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +3 -3
  669. package/src/components/Channel/Channel.tsx +51 -38
  670. package/src/components/Channel/__tests__/ownCapabilities.test.js +2 -2
  671. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +2 -2
  672. package/src/components/Channel/hooks/useCreateMessagesContext.ts +14 -4
  673. package/src/components/ChannelList/ChannelList.tsx +7 -7
  674. package/src/components/ChannelList/{ChannelListMessenger.tsx → ChannelListView.tsx} +9 -9
  675. package/src/components/ChannelList/__tests__/ChannelList.test.js +45 -2
  676. package/src/components/ChannelList/__tests__/{ChannelListMessenger.test.js → ChannelListView.test.js} +4 -4
  677. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +8 -5
  678. package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +2 -2
  679. package/src/components/ChannelPreview/{ChannelPreviewMessenger.tsx → ChannelPreviewView.tsx} +10 -12
  680. package/src/components/ChannelPreview/__tests__/{ChannelPreviewMessenger.test.js → ChannelPreviewView.test.js} +3 -3
  681. package/src/components/Chat/Chat.tsx +1 -1
  682. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +4 -24
  683. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +4 -12
  684. package/src/components/ImageGallery/components/ImageGalleryVideoControl.tsx +1 -1
  685. package/src/components/ImageGallery/components/ImageGrid.tsx +4 -7
  686. package/src/components/ImageGallery/components/types.ts +25 -0
  687. package/src/components/ImageGallery/hooks/useImageGalleryVideoPlayer.ts +1 -1
  688. package/src/components/KeyboardCompatibleView/KeyboardCompatibleView.tsx +1 -1
  689. package/src/components/Message/Message.tsx +28 -21
  690. package/src/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.tsx +1 -1
  691. package/src/components/Message/{MessageSimple → MessageItemView}/Headers/MessageReminderHeader.tsx +1 -1
  692. package/src/components/Message/{MessageSimple → MessageItemView}/Headers/MessageSavedForLaterHeader.tsx +1 -1
  693. package/src/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.tsx +1 -1
  694. package/src/components/Message/{MessageSimple/MessageAvatar.tsx → MessageItemView/MessageAuthor.tsx} +14 -14
  695. package/src/components/Message/{MessageSimple → MessageItemView}/MessageBlocked.tsx +1 -1
  696. package/src/components/Message/MessageItemView/MessageBubble.tsx +145 -0
  697. package/src/components/Message/{MessageSimple → MessageItemView}/MessageContent.tsx +135 -101
  698. package/src/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.tsx +3 -3
  699. package/src/components/Message/{MessageSimple → MessageItemView}/MessageFooter.tsx +10 -4
  700. package/src/components/Message/{MessageSimple/MessageSimple.tsx → MessageItemView/MessageItemView.tsx} +119 -99
  701. package/src/components/Message/{MessageSimple → MessageItemView}/MessageReplies.tsx +2 -2
  702. package/src/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.tsx +1 -1
  703. package/src/components/Message/{MessageSimple → MessageItemView}/MessageStatus.tsx +6 -39
  704. package/src/components/Message/{MessageSimple → MessageItemView}/MessageSwipeContent.tsx +1 -1
  705. package/src/components/Message/{MessageSimple → MessageItemView}/MessageTextContainer.tsx +2 -2
  706. package/src/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.tsx +1 -1
  707. package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListBottom.tsx +1 -1
  708. package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListClustered.tsx +2 -2
  709. package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.tsx +2 -2
  710. package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.tsx +1 -1
  711. package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.tsx +1 -1
  712. package/src/components/Message/{MessageSimple → MessageItemView}/StreamingMessageView.tsx +1 -1
  713. package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/Message.test.js +4 -4
  714. package/src/components/Message/{MessageSimple/__tests__/MessageAvatar.test.js → MessageItemView/__tests__/MessageAuthor.test.js} +8 -8
  715. package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageContent.test.js +102 -13
  716. package/src/components/Message/{MessageSimple/__tests__/MessageSimple.test.js → MessageItemView/__tests__/MessageItemView.test.js} +52 -9
  717. package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/ReactionListTop.test.js +0 -3
  718. package/src/components/Message/{MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap → MessageItemView/__tests__/__snapshots__/MessageAuthor.test.js.snap} +2 -2
  719. package/src/components/Message/hooks/useCreateMessageContext.ts +2 -0
  720. package/src/components/Message/hooks/useStreamingMessage.ts +1 -1
  721. package/src/components/MessageInput/{MessageInput.tsx → MessageComposer.tsx} +25 -20
  722. package/src/components/MessageInput/MessageComposerLeadingView.tsx +1 -1
  723. package/src/components/MessageInput/MessageInputHeaderView.tsx +2 -2
  724. package/src/components/MessageInput/MessageInputTrailingView.tsx +1 -1
  725. package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +1 -1
  726. package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +2 -2
  727. package/src/components/MessageInput/StopMessageStreamingButton.tsx +2 -2
  728. package/src/components/MessageInput/__tests__/{MessageInput.test.js → MessageComposer.test.js} +4 -4
  729. package/src/components/MessageInput/__tests__/SendMessageDisallowedIndicator.test.js +4 -4
  730. package/src/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.tsx +1 -1
  731. package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.tsx +10 -6
  732. package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.tsx +5 -5
  733. package/src/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.tsx +1 -1
  734. package/src/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.tsx +1 -1
  735. package/src/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.tsx +1 -1
  736. package/src/components/MessageInput/components/AudioRecorder/AudioRecorder.tsx +12 -12
  737. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingButton.tsx +7 -7
  738. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.tsx +2 -2
  739. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.tsx +1 -1
  740. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.tsx +2 -3
  741. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.tsx +2 -2
  742. package/src/components/MessageInput/components/InputButtons/AttachButton.tsx +2 -2
  743. package/src/components/MessageInput/components/InputButtons/index.tsx +1 -1
  744. package/src/components/MessageInput/components/LinkPreviewList.tsx +1 -1
  745. package/src/components/MessageInput/components/OutputButtons/EditButton.tsx +1 -1
  746. package/src/components/MessageInput/components/OutputButtons/SendButton.tsx +1 -1
  747. package/src/components/MessageInput/components/OutputButtons/index.tsx +4 -4
  748. package/src/components/MessageInput/contexts/MicPositionContext.tsx +1 -1
  749. package/src/components/MessageInput/hooks/useAudioRecorder.tsx +7 -18
  750. package/src/components/MessageList/MessageFlashList.tsx +13 -4
  751. package/src/components/MessageList/MessageList.tsx +1 -1
  752. package/src/components/MessageList/MessageSystem.tsx +1 -1
  753. package/src/components/MessageMenu/EmojiPickerList.tsx +2 -2
  754. package/src/components/MessageMenu/MessageReactionPicker.tsx +0 -8
  755. package/src/components/MessageMenu/MessageUserReactions.tsx +1 -0
  756. package/src/components/MessageMenu/utils/toUnicodeScalarString.ts +5 -0
  757. package/src/components/Poll/components/PollAnswersList.tsx +45 -32
  758. package/src/components/Poll/components/PollOption.tsx +24 -15
  759. package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +4 -1
  760. package/src/components/Poll/components/PollResults/PollResultItem.tsx +36 -12
  761. package/src/components/Poll/hooks/usePollState.ts +4 -0
  762. package/src/components/Thread/Thread.tsx +15 -15
  763. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +425 -385
  764. package/src/components/ThreadList/ThreadListItem.tsx +56 -10
  765. package/src/components/ThreadList/ThreadListItemMessagePreview.tsx +18 -3
  766. package/src/components/UIComponents/PortalWhileClosingView.tsx +50 -34
  767. package/src/components/index.ts +28 -25
  768. package/src/components/ui/SpeedSettingsButton.tsx +1 -1
  769. package/src/components/ui/VideoPlayIndicator.tsx +1 -1
  770. package/src/contexts/channelsContext/ChannelsContext.tsx +6 -6
  771. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +9 -44
  772. package/src/contexts/imageGalleryContext/ImageGalleryContextBase.tsx +44 -0
  773. package/src/contexts/messageContext/MessageContext.tsx +6 -0
  774. package/src/contexts/messageInputContext/MessageInputContext.tsx +9 -8
  775. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +2 -2
  776. package/src/contexts/messagesContext/MessagesContext.tsx +58 -36
  777. package/src/contexts/themeContext/utils/theme.ts +22 -20
  778. package/src/contexts/threadsContext/ThreadListItemContext.tsx +2 -1
  779. package/src/hooks/messagePreview/useMessagePreviewText.tsx +1 -1
  780. package/src/hooks/useAttachmentPickerState.ts +1 -1
  781. package/src/icons/index.ts +1 -0
  782. package/src/state-store/message-overlay-store.ts +8 -0
  783. package/src/version.json +1 -1
  784. package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +0 -1
  785. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +0 -1
  786. package/lib/commonjs/components/Message/MessageSimple/Headers/MessagePinnedHeader.js.map +0 -1
  787. package/lib/commonjs/components/Message/MessageSimple/Headers/MessageReminderHeader.js.map +0 -1
  788. package/lib/commonjs/components/Message/MessageSimple/Headers/MessageSavedForLaterHeader.js.map +0 -1
  789. package/lib/commonjs/components/Message/MessageSimple/Headers/SentToChannelHeader.js.map +0 -1
  790. package/lib/commonjs/components/Message/MessageSimple/Headers/index.js.map +0 -1
  791. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +0 -1
  792. package/lib/commonjs/components/Message/MessageSimple/MessageBlocked.js.map +0 -1
  793. package/lib/commonjs/components/Message/MessageSimple/MessageBounce.js.map +0 -1
  794. package/lib/commonjs/components/Message/MessageSimple/MessageBubble.js.map +0 -1
  795. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +0 -1
  796. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +0 -1
  797. package/lib/commonjs/components/Message/MessageSimple/MessageError.js.map +0 -1
  798. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +0 -1
  799. package/lib/commonjs/components/Message/MessageSimple/MessageHeader.js.map +0 -1
  800. package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +0 -1
  801. package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +0 -1
  802. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +0 -1
  803. package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +0 -1
  804. package/lib/commonjs/components/Message/MessageSimple/MessageSwipeContent.js.map +0 -1
  805. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +0 -1
  806. package/lib/commonjs/components/Message/MessageSimple/MessageTimestamp.js.map +0 -1
  807. package/lib/commonjs/components/Message/MessageSimple/MessageWrapper.js.map +0 -1
  808. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListBottom.js.map +0 -1
  809. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListClustered.js.map +0 -1
  810. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListItem.js.map +0 -1
  811. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListItemWrapper.js.map +0 -1
  812. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListTop.js.map +0 -1
  813. package/lib/commonjs/components/Message/MessageSimple/StreamingMessageView.js.map +0 -1
  814. package/lib/commonjs/components/Message/MessageSimple/utils/generateMarkdownText.js.map +0 -1
  815. package/lib/commonjs/components/Message/MessageSimple/utils/generateMarkdownText.test.js.map +0 -1
  816. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +0 -1
  817. package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +0 -1
  818. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +0 -1
  819. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +0 -1
  820. package/lib/commonjs/components/MessageInput/MessageInput.js.map +0 -1
  821. package/lib/module/components/ChannelList/ChannelListMessenger.js.map +0 -1
  822. package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +0 -1
  823. package/lib/module/components/Message/MessageSimple/Headers/MessagePinnedHeader.js.map +0 -1
  824. package/lib/module/components/Message/MessageSimple/Headers/MessageReminderHeader.js.map +0 -1
  825. package/lib/module/components/Message/MessageSimple/Headers/MessageSavedForLaterHeader.js.map +0 -1
  826. package/lib/module/components/Message/MessageSimple/Headers/SentToChannelHeader.js.map +0 -1
  827. package/lib/module/components/Message/MessageSimple/Headers/index.js.map +0 -1
  828. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +0 -1
  829. package/lib/module/components/Message/MessageSimple/MessageBlocked.js.map +0 -1
  830. package/lib/module/components/Message/MessageSimple/MessageBounce.js.map +0 -1
  831. package/lib/module/components/Message/MessageSimple/MessageBubble.js.map +0 -1
  832. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +0 -1
  833. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +0 -1
  834. package/lib/module/components/Message/MessageSimple/MessageError.js.map +0 -1
  835. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +0 -1
  836. package/lib/module/components/Message/MessageSimple/MessageHeader.js.map +0 -1
  837. package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +0 -1
  838. package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +0 -1
  839. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +0 -1
  840. package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +0 -1
  841. package/lib/module/components/Message/MessageSimple/MessageSwipeContent.js.map +0 -1
  842. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +0 -1
  843. package/lib/module/components/Message/MessageSimple/MessageTimestamp.js.map +0 -1
  844. package/lib/module/components/Message/MessageSimple/MessageWrapper.js.map +0 -1
  845. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListBottom.js.map +0 -1
  846. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListClustered.js.map +0 -1
  847. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListItem.js.map +0 -1
  848. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListItemWrapper.js.map +0 -1
  849. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListTop.js.map +0 -1
  850. package/lib/module/components/Message/MessageSimple/StreamingMessageView.js.map +0 -1
  851. package/lib/module/components/Message/MessageSimple/utils/generateMarkdownText.js.map +0 -1
  852. package/lib/module/components/Message/MessageSimple/utils/generateMarkdownText.test.js.map +0 -1
  853. package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +0 -1
  854. package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +0 -1
  855. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +0 -1
  856. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +0 -1
  857. package/lib/module/components/MessageInput/MessageInput.js.map +0 -1
  858. package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +0 -15
  859. package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts.map +0 -1
  860. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts.map +0 -1
  861. package/lib/typescript/components/Message/MessageSimple/Headers/MessagePinnedHeader.d.ts.map +0 -1
  862. package/lib/typescript/components/Message/MessageSimple/Headers/MessageReminderHeader.d.ts.map +0 -1
  863. package/lib/typescript/components/Message/MessageSimple/Headers/MessageSavedForLaterHeader.d.ts.map +0 -1
  864. package/lib/typescript/components/Message/MessageSimple/Headers/SentToChannelHeader.d.ts.map +0 -1
  865. package/lib/typescript/components/Message/MessageSimple/Headers/index.d.ts.map +0 -1
  866. package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts.map +0 -1
  867. package/lib/typescript/components/Message/MessageSimple/MessageBlocked.d.ts.map +0 -1
  868. package/lib/typescript/components/Message/MessageSimple/MessageBounce.d.ts.map +0 -1
  869. package/lib/typescript/components/Message/MessageSimple/MessageBubble.d.ts +0 -12
  870. package/lib/typescript/components/Message/MessageSimple/MessageBubble.d.ts.map +0 -1
  871. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts.map +0 -1
  872. package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts.map +0 -1
  873. package/lib/typescript/components/Message/MessageSimple/MessageError.d.ts.map +0 -1
  874. package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts.map +0 -1
  875. package/lib/typescript/components/Message/MessageSimple/MessageHeader.d.ts.map +0 -1
  876. package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts.map +0 -1
  877. package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts.map +0 -1
  878. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +0 -21
  879. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts.map +0 -1
  880. package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts.map +0 -1
  881. package/lib/typescript/components/Message/MessageSimple/MessageSwipeContent.d.ts.map +0 -1
  882. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts.map +0 -1
  883. package/lib/typescript/components/Message/MessageSimple/MessageTimestamp.d.ts.map +0 -1
  884. package/lib/typescript/components/Message/MessageSimple/MessageWrapper.d.ts.map +0 -1
  885. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListBottom.d.ts.map +0 -1
  886. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListClustered.d.ts.map +0 -1
  887. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListItem.d.ts.map +0 -1
  888. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListItemWrapper.d.ts.map +0 -1
  889. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListTop.d.ts.map +0 -1
  890. package/lib/typescript/components/Message/MessageSimple/StreamingMessageView.d.ts.map +0 -1
  891. package/lib/typescript/components/Message/MessageSimple/utils/generateMarkdownText.d.ts.map +0 -1
  892. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.d.ts.map +0 -1
  893. package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.test.d.ts.map +0 -1
  894. package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts.map +0 -1
  895. package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts.map +0 -1
  896. package/lib/typescript/components/MessageInput/MessageInput.d.ts +0 -33
  897. package/lib/typescript/components/MessageInput/MessageInput.d.ts.map +0 -1
  898. package/src/components/Message/MessageSimple/MessageBubble.tsx +0 -264
  899. /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/Headers/index.js +0 -0
  900. /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.js +0 -0
  901. /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.js +0 -0
  902. /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.js +0 -0
  903. /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.js +0 -0
  904. /package/lib/module/components/Message/{MessageSimple → MessageItemView}/Headers/index.js +0 -0
  905. /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.js +0 -0
  906. /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.js +0 -0
  907. /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.js +0 -0
  908. /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.js +0 -0
  909. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.d.ts +0 -0
  910. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/MessageReminderHeader.d.ts +0 -0
  911. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/MessageSavedForLaterHeader.d.ts +0 -0
  912. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.d.ts +0 -0
  913. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/index.d.ts +0 -0
  914. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageBlocked.d.ts +0 -0
  915. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageBounce.d.ts +0 -0
  916. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.d.ts +0 -0
  917. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageError.d.ts +0 -0
  918. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageFooter.d.ts +0 -0
  919. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageHeader.d.ts +0 -0
  920. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageReplies.d.ts +0 -0
  921. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.d.ts +0 -0
  922. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageSwipeContent.d.ts +0 -0
  923. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageTextContainer.d.ts +0 -0
  924. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.d.ts +0 -0
  925. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.d.ts +0 -0
  926. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListBottom.d.ts +0 -0
  927. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListClustered.d.ts +0 -0
  928. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.d.ts +0 -0
  929. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.d.ts +0 -0
  930. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.d.ts +0 -0
  931. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/StreamingMessageView.d.ts +0 -0
  932. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.d.ts +0 -0
  933. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.d.ts +0 -0
  934. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.d.ts +0 -0
  935. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.d.ts +0 -0
  936. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/renderText.d.ts +0 -0
  937. /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.d.ts +0 -0
  938. /package/src/components/Message/{MessageSimple → MessageItemView}/Headers/index.tsx +0 -0
  939. /package/src/components/Message/{MessageSimple → MessageItemView}/MessageBounce.tsx +0 -0
  940. /package/src/components/Message/{MessageSimple → MessageItemView}/MessageError.tsx +0 -0
  941. /package/src/components/Message/{MessageSimple → MessageItemView}/MessageHeader.tsx +0 -0
  942. /package/src/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.tsx +0 -0
  943. /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessagePinnedHeader.test.js +0 -0
  944. /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageReplies.test.js +0 -0
  945. /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageStatus.test.js +0 -0
  946. /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageTextContainer.test.tsx +0 -0
  947. /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/ReactionListBottom.test.js +0 -0
  948. /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/__snapshots__/MessagePinnedHeader.test.js.snap +0 -0
  949. /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/__snapshots__/MessageTextContainer.test.tsx.snap +0 -0
  950. /package/src/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.ts +0 -0
  951. /package/src/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.ts +0 -0
  952. /package/src/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.ts +0 -0
  953. /package/src/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.ts +0 -0
  954. /package/src/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.tsx +0 -0
  955. /package/src/components/Message/{MessageSimple → MessageItemView}/utils/renderText.tsx +0 -0
@@ -20,7 +20,7 @@ import { useStableCallback } from '../../hooks';
20
20
  import { primitives } from '../../theme';
21
21
  import { ChannelAvatar } from '../ui/Avatar/ChannelAvatar';
22
22
 
23
- export type ChannelPreviewMessengerPropsWithContext = Pick<ChannelPreviewProps, 'channel'> &
23
+ export type ChannelPreviewViewPropsWithContext = Pick<ChannelPreviewProps, 'channel'> &
24
24
  Pick<
25
25
  ChannelsContextValue,
26
26
  | 'maxUnreadCount'
@@ -50,7 +50,7 @@ export type ChannelPreviewMessengerPropsWithContext = Pick<ChannelPreviewProps,
50
50
  lastMessage?: LastMessageType;
51
51
  };
52
52
 
53
- const ChannelPreviewMessengerWithContext = (props: ChannelPreviewMessengerPropsWithContext) => {
53
+ const ChannelPreviewViewWithContext = (props: ChannelPreviewViewPropsWithContext) => {
54
54
  const {
55
55
  channel,
56
56
  formatLatestMessageDate,
@@ -146,20 +146,18 @@ const ChannelPreviewMessengerWithContext = (props: ChannelPreviewMessengerPropsW
146
146
  );
147
147
  };
148
148
 
149
- export type ChannelPreviewMessengerProps = Partial<
150
- Omit<ChannelPreviewMessengerPropsWithContext, 'channel'>
151
- > &
152
- Pick<ChannelPreviewMessengerPropsWithContext, 'channel'>;
149
+ export type ChannelPreviewViewProps = Partial<Omit<ChannelPreviewViewPropsWithContext, 'channel'>> &
150
+ Pick<ChannelPreviewViewPropsWithContext, 'channel'>;
153
151
 
154
- const MemoizedChannelPreviewMessengerWithContext = React.memo(
155
- ChannelPreviewMessengerWithContext,
156
- ) as typeof ChannelPreviewMessengerWithContext;
152
+ const MemoizedChannelPreviewViewWithContext = React.memo(
153
+ ChannelPreviewViewWithContext,
154
+ ) as typeof ChannelPreviewViewWithContext;
157
155
 
158
156
  /**
159
157
  * This UI component displays an individual preview item for each channel in a list. It also receives all props
160
158
  * from the ChannelPreview component.
161
159
  */
162
- export const ChannelPreviewMessenger = (props: ChannelPreviewMessengerProps) => {
160
+ export const ChannelPreviewView = (props: ChannelPreviewViewProps) => {
163
161
  const {
164
162
  forceUpdate,
165
163
  maxUnreadCount,
@@ -172,7 +170,7 @@ export const ChannelPreviewMessenger = (props: ChannelPreviewMessengerProps) =>
172
170
  mutedStatusPosition,
173
171
  } = useChannelsContext();
174
172
  return (
175
- <MemoizedChannelPreviewMessengerWithContext
173
+ <MemoizedChannelPreviewViewWithContext
176
174
  {...{
177
175
  forceUpdate,
178
176
  maxUnreadCount,
@@ -189,7 +187,7 @@ export const ChannelPreviewMessenger = (props: ChannelPreviewMessengerProps) =>
189
187
  );
190
188
  };
191
189
 
192
- ChannelPreviewMessenger.displayName = 'ChannelPreviewMessenger{channelPreview}';
190
+ ChannelPreviewView.displayName = 'ChannelPreviewView{channelPreview}';
193
191
 
194
192
  const useStyles = () => {
195
193
  const {
@@ -11,16 +11,16 @@ import { generateMessage } from '../../../mock-builders/generator/message';
11
11
  import { generateUser } from '../../../mock-builders/generator/user';
12
12
  import { getTestClientWithUser } from '../../../mock-builders/mock';
13
13
  import { Chat } from '../../Chat/Chat';
14
- import { ChannelPreviewMessenger } from '../ChannelPreviewMessenger';
14
+ import { ChannelPreviewView } from '../ChannelPreviewView';
15
15
 
16
- describe('ChannelPreviewMessenger', () => {
16
+ describe('ChannelPreviewView', () => {
17
17
  const clientUser = generateUser();
18
18
  let chatClient;
19
19
  let channel;
20
20
 
21
21
  const getComponent = (props = {}) => (
22
22
  <Chat client={chatClient}>
23
- <ChannelPreviewMessenger
23
+ <ChannelPreviewView
24
24
  channel={channel}
25
25
  client={chatClient}
26
26
  latestMessagePreview={{
@@ -109,7 +109,7 @@ export type ChatProps = Pick<ChatContextValue, 'client'> &
109
109
  * import type { DeepPartial, Theme } from 'stream-chat-react-native';
110
110
  *
111
111
  * const theme: DeepPartial<Theme> = {
112
- * messageSimple: {
112
+ * messageItemView: {
113
113
  * file: {
114
114
  * container: {
115
115
  * backgroundColor: 'red',
@@ -1,16 +1,10 @@
1
1
  import React, { useMemo, useRef, useState } from 'react';
2
2
  import { ActivityIndicator, StyleSheet, Text, View, ViewStyle } from 'react-native';
3
- import Animated, {
4
- Extrapolation,
5
- interpolate,
6
- SharedValue,
7
- useAnimatedStyle,
8
- } from 'react-native-reanimated';
3
+ import Animated, { Extrapolation, interpolate, useAnimatedStyle } from 'react-native-reanimated';
9
4
 
10
- import {
11
- ImageGalleryProviderProps,
12
- useImageGalleryContext,
13
- } from '../../../contexts/imageGalleryContext/ImageGalleryContext';
5
+ import type { ImageGalleryFooterProps, ImageGalleryVideoControlProps } from './types';
6
+
7
+ import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
14
8
  import { useTheme } from '../../../contexts/themeContext/ThemeContext';
15
9
  import { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';
16
10
  import { useStateStore } from '../../../hooks/useStateStore';
@@ -38,24 +32,10 @@ export type ImageGalleryFooterCustomComponent = ({
38
32
  shareMenuOpen: boolean;
39
33
  }) => React.ReactElement | null;
40
34
 
41
- export type ImageGalleryVideoControlProps = {
42
- attachmentId: string;
43
- };
44
-
45
35
  export type ImageGalleryVideoControlComponent = ({
46
36
  attachmentId,
47
37
  }: ImageGalleryVideoControlProps) => React.ReactElement | null;
48
38
 
49
- export type ImageGalleryFooterProps = Pick<
50
- ImageGalleryProviderProps,
51
- 'ImageGalleryVideoControls'
52
- > & {
53
- accessibilityLabel: string;
54
- opacity: SharedValue<number>;
55
- openGridView: () => void;
56
- visible: SharedValue<number>;
57
- };
58
-
59
39
  const imageGallerySelector = (state: ImageGalleryState) => ({
60
40
  asset: state.assets[state.currentIndex],
61
41
  currentIndex: state.currentIndex,
@@ -2,14 +2,11 @@ import React, { useEffect, useMemo, useState } from 'react';
2
2
 
3
3
  import { StyleSheet, Text, View, ViewStyle } from 'react-native';
4
4
 
5
- import Animated, {
6
- Extrapolation,
7
- interpolate,
8
- SharedValue,
9
- useAnimatedStyle,
10
- } from 'react-native-reanimated';
5
+ import Animated, { Extrapolation, interpolate, useAnimatedStyle } from 'react-native-reanimated';
11
6
 
12
- import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContext';
7
+ import type { ImageGalleryHeaderProps } from './types';
8
+
9
+ import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
13
10
  import { useOverlayContext } from '../../../contexts/overlayContext/OverlayContext';
14
11
  import { useTheme } from '../../../contexts/themeContext/ThemeContext';
15
12
  import { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';
@@ -26,11 +23,6 @@ const ReanimatedSafeAreaView = Animated.createAnimatedComponent
26
23
  ? Animated.createAnimatedComponent(SafeAreaView)
27
24
  : SafeAreaView;
28
25
 
29
- export type ImageGalleryHeaderProps = {
30
- opacity: SharedValue<number>;
31
- visible: SharedValue<number>;
32
- };
33
-
34
26
  const imageGallerySelector = (state: ImageGalleryState) => ({
35
27
  asset: state.assets[state.currentIndex],
36
28
  });
@@ -1,7 +1,7 @@
1
1
  import React, { useCallback, useMemo } from 'react';
2
2
  import { StyleSheet, Text, View } from 'react-native';
3
3
 
4
- import { ImageGalleryVideoControlProps } from './ImageGalleryFooter';
4
+ import type { ImageGalleryVideoControlProps } from './types';
5
5
 
6
6
  import { useTheme } from '../../../contexts/themeContext/ThemeContext';
7
7
 
@@ -1,8 +1,10 @@
1
1
  import React, { useMemo } from 'react';
2
2
  import { Image, Pressable, StyleSheet, View } from 'react-native';
3
3
 
4
+ import type { ImageGalleryGridProps } from './types';
5
+
4
6
  import { VideoThumbnail } from '../../../components/Attachment/VideoThumbnail';
5
- import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContext';
7
+ import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
6
8
  import { useTheme } from '../../../contexts/themeContext/ThemeContext';
7
9
  import { useStateStore } from '../../../hooks/useStateStore';
8
10
  import { useViewport } from '../../../hooks/useViewport';
@@ -11,7 +13,7 @@ import type {
11
13
  ImageGalleryState,
12
14
  } from '../../../state-store/image-gallery-state-store';
13
15
  import { FileTypes } from '../../../types/types';
14
- import { StreamBottomSheetModalFlatList } from '../../UIComponents';
16
+ import { StreamBottomSheetModalFlatList } from '../../UIComponents/StreamBottomSheetModalFlatList';
15
17
 
16
18
  export type ImageGalleryGridImageComponent = ({
17
19
  item,
@@ -51,11 +53,6 @@ const GridImage = ({ item }: { item: GridImageItem }) => {
51
53
 
52
54
  const renderItem = ({ item }: { item: GridImageItem }) => <GridImage item={item} />;
53
55
 
54
- export type ImageGalleryGridProps = {
55
- closeGridView: () => void;
56
- numberOfImageGalleryGridColumns?: number;
57
- };
58
-
59
56
  const imageGallerySelector = (state: ImageGalleryState) => ({
60
57
  assets: state.assets,
61
58
  });
@@ -0,0 +1,25 @@
1
+ import type React from 'react';
2
+
3
+ import type { SharedValue } from 'react-native-reanimated';
4
+
5
+ export type ImageGalleryVideoControlProps = {
6
+ attachmentId: string;
7
+ };
8
+
9
+ export type ImageGalleryHeaderProps = {
10
+ opacity: SharedValue<number>;
11
+ visible: SharedValue<number>;
12
+ };
13
+
14
+ export type ImageGalleryFooterProps = {
15
+ accessibilityLabel: string;
16
+ ImageGalleryVideoControls?: React.ComponentType<ImageGalleryVideoControlProps>;
17
+ opacity: SharedValue<number>;
18
+ openGridView: () => void;
19
+ visible: SharedValue<number>;
20
+ };
21
+
22
+ export type ImageGalleryGridProps = {
23
+ closeGridView: () => void;
24
+ numberOfImageGalleryGridColumns?: number;
25
+ };
@@ -1,6 +1,6 @@
1
1
  import { useMemo } from 'react';
2
2
 
3
- import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContext';
3
+ import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
4
4
  import { VideoPlayerOptions } from '../../../state-store/video-player';
5
5
 
6
6
  export type UseImageGalleryVideoPlayerProps = VideoPlayerOptions;
@@ -41,7 +41,7 @@ export class KeyboardCompatibleView extends React.Component<
41
41
  > = {
42
42
  behavior: Platform.OS === 'ios' ? 'padding' : 'position',
43
43
  enabled: true,
44
- keyboardVerticalOffset: Platform.OS === 'ios' ? 86.5 : -300, // default MessageInput height
44
+ keyboardVerticalOffset: Platform.OS === 'ios' ? 86.5 : -300, // default MessageComposer height
45
45
  };
46
46
 
47
47
  _frame: LayoutRectangle | null = null;
@@ -1,12 +1,5 @@
1
1
  import React, { useEffect, useMemo, useRef, useState } from 'react';
2
- import {
3
- GestureResponderEvent,
4
- StyleProp,
5
- StyleSheet,
6
- useWindowDimensions,
7
- View,
8
- ViewStyle,
9
- } from 'react-native';
2
+ import { GestureResponderEvent, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';
10
3
 
11
4
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
12
5
  import { Portal } from 'react-native-teleport';
@@ -54,6 +47,7 @@ import { isVideoPlayerAvailable, NativeHandlers } from '../../native';
54
47
  import {
55
48
  closeOverlay,
56
49
  openOverlay,
50
+ Rect,
57
51
  setOverlayBottomH,
58
52
  setOverlayMessageH,
59
53
  setOverlayTopH,
@@ -209,7 +203,7 @@ export type MessagePropsWithContext = Pick<
209
203
  | 'messageContentOrder'
210
204
  | 'MessageBounce'
211
205
  | 'MessageBlocked'
212
- | 'MessageSimple'
206
+ | 'MessageItemView'
213
207
  | 'onLongPressMessage'
214
208
  | 'onPressInMessage'
215
209
  | 'onPressMessage'
@@ -293,7 +287,7 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
293
287
  MessageBounce,
294
288
  messageContentOrder: messageContentOrderProp,
295
289
  messagesContext,
296
- MessageSimple,
290
+ MessageItemView,
297
291
  onLongPressMessage: onLongPressMessageProp,
298
292
  onPressInMessage: onPressInMessageProp,
299
293
  onPressMessage: onPressMessageProp,
@@ -332,16 +326,18 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
332
326
  const isMessageTypeDeleted = message.type === 'deleted';
333
327
  const { client } = chatContext;
334
328
 
335
- const [rect, setRect] = useState<{ w: number; h: number; x: number; y: number } | undefined>(
336
- undefined,
337
- );
338
- const { width: screenW } = useWindowDimensions();
329
+ const rectRef = useRef<Rect>(undefined);
330
+ const bubbleRect = useRef<Rect>(undefined);
331
+ const contextMenuAnchorRef = useRef<View>(null);
339
332
 
340
333
  const showMessageOverlay = useStableCallback(async () => {
341
334
  dismissKeyboard();
342
335
  try {
343
336
  const layout = await measureInWindow(messageWrapperRef, insets);
344
- setRect(layout);
337
+ const bubbleLayout = await measureInWindow(contextMenuAnchorRef, insets).catch(() => layout);
338
+
339
+ rectRef.current = layout;
340
+ bubbleRect.current = bubbleLayout;
345
341
  setOverlayMessageH(layout);
346
342
  openOverlay({ id: messageOverlayId, messageId: message.id });
347
343
  } catch (e) {
@@ -698,6 +694,7 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
698
694
  actionsEnabled,
699
695
  alignment,
700
696
  channel,
697
+ contextMenuAnchorRef,
701
698
  deliveredToCount,
702
699
  dismissOverlay,
703
700
  files: attachments.files,
@@ -815,6 +812,8 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
815
812
  const styles = useStyles({
816
813
  highlightedMessage: (isTargetedMessage || message.pinned) && !isMessageTypeDeleted,
817
814
  });
815
+ const rect = rectRef.current;
816
+ const overlayItemsAnchorRect = bubbleRect.current ?? rect;
818
817
 
819
818
  if (!(isMessageTypeDeleted || messageContentOrder.length)) {
820
819
  return null;
@@ -841,7 +840,7 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
841
840
  ) : null}
842
841
  {/*TODO: V9: Find a way to separate these in a dedicated file*/}
843
842
  <Portal hostName={overlayActive && rect ? 'top-item' : undefined}>
844
- {overlayActive && rect ? (
843
+ {overlayActive && rect && overlayItemsAnchorRect ? (
845
844
  <View
846
845
  onLayout={(e) => {
847
846
  const { width: w, height: h } = e.nativeEvent.layout;
@@ -849,7 +848,10 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
849
848
  setOverlayTopH({
850
849
  h,
851
850
  w,
852
- x: isMyMessage ? screenW - rect.x - w : rect.x,
851
+ x:
852
+ alignment === 'right'
853
+ ? overlayItemsAnchorRect.x + overlayItemsAnchorRect.w - w
854
+ : overlayItemsAnchorRect.x,
853
855
  y: rect.y - h,
854
856
  });
855
857
  }}
@@ -865,7 +867,9 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
865
867
  hostName={overlayActive ? 'message-overlay' : undefined}
866
868
  style={overlayActive && rect ? { width: rect.w } : undefined}
867
869
  >
868
- <MessageSimple ref={messageWrapperRef} />
870
+ <View ref={messageWrapperRef}>
871
+ <MessageItemView />
872
+ </View>
869
873
  </Portal>
870
874
  {showMessageReactions ? (
871
875
  <BottomSheetModal
@@ -883,14 +887,17 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
883
887
  </BottomSheetModal>
884
888
  ) : null}
885
889
  <Portal hostName={overlayActive && rect ? 'bottom-item' : undefined}>
886
- {overlayActive && rect ? (
890
+ {overlayActive && rect && overlayItemsAnchorRect ? (
887
891
  <View
888
892
  onLayout={(e) => {
889
893
  const { width: w, height: h } = e.nativeEvent.layout;
890
894
  setOverlayBottomH({
891
895
  h,
892
896
  w,
893
- x: isMyMessage ? screenW - rect.x - w : rect.x,
897
+ x:
898
+ alignment === 'right'
899
+ ? overlayItemsAnchorRect.x + overlayItemsAnchorRect.w - w
900
+ : overlayItemsAnchorRect.x,
894
901
  y: rect.y + rect.h,
895
902
  });
896
903
  }}
@@ -1132,7 +1139,7 @@ export const Message = (props: MessageProps) => {
1132
1139
  const useStyles = ({ highlightedMessage }: { highlightedMessage?: boolean }) => {
1133
1140
  const {
1134
1141
  theme: {
1135
- messageSimple: { wrapper, targetedMessageContainer, blockedMessageContainer },
1142
+ messageItemView: { wrapper, targetedMessageContainer, blockedMessageContainer },
1136
1143
  screenPadding,
1137
1144
  semantics,
1138
1145
  },
@@ -41,7 +41,7 @@ const useStyles = () => {
41
41
  const {
42
42
  theme: {
43
43
  semantics,
44
- messageSimple: {
44
+ messageItemView: {
45
45
  pinnedHeader: { container, label },
46
46
  },
47
47
  },
@@ -65,7 +65,7 @@ const useStyles = () => {
65
65
  const {
66
66
  theme: {
67
67
  semantics,
68
- messageSimple: {
68
+ messageItemView: {
69
69
  reminderHeader: { container, label, dot, time },
70
70
  },
71
71
  },
@@ -26,7 +26,7 @@ const useStyles = () => {
26
26
  const {
27
27
  theme: {
28
28
  semantics,
29
- messageSimple: {
29
+ messageItemView: {
30
30
  savedForLaterHeader: { container, label },
31
31
  },
32
32
  },
@@ -111,7 +111,7 @@ const useStyles = () => {
111
111
  const {
112
112
  theme: {
113
113
  semantics,
114
- messageSimple: {
114
+ messageItemView: {
115
115
  sentToChannelHeader: { container, label, dot, link },
116
116
  },
117
117
  },
@@ -9,18 +9,18 @@ import { useTheme } from '../../../contexts/themeContext/ThemeContext';
9
9
  import { AvatarProps, UserAvatar } from '../../ui';
10
10
  import { avatarSizes } from '../../ui/Avatar/constants';
11
11
 
12
- export type MessageAvatarPropsWithContext = Pick<
12
+ export type MessageAuthorPropsWithContext = Pick<
13
13
  MessageContextValue,
14
14
  'lastGroupMessage' | 'message' | 'showAvatar'
15
15
  > &
16
16
  Partial<Pick<AvatarProps, 'size'>>;
17
17
 
18
- const MessageAvatarWithContext = (props: MessageAvatarPropsWithContext) => {
18
+ const MessageAuthorWithContext = (props: MessageAuthorPropsWithContext) => {
19
19
  const { lastGroupMessage, message, showAvatar, size } = props;
20
20
  const {
21
21
  theme: {
22
- messageSimple: {
23
- avatarWrapper: { container },
22
+ messageItemView: {
23
+ authorWrapper: { container },
24
24
  },
25
25
  },
26
26
  } = useTheme();
@@ -28,7 +28,7 @@ const MessageAvatarWithContext = (props: MessageAvatarPropsWithContext) => {
28
28
  const visible = typeof showAvatar === 'boolean' ? showAvatar : lastGroupMessage;
29
29
 
30
30
  return (
31
- <View style={container} testID='message-avatar'>
31
+ <View style={container} testID='message-author'>
32
32
  {visible && message.user ? (
33
33
  <UserAvatar user={message.user} size={size ?? 'md'} />
34
34
  ) : (
@@ -39,8 +39,8 @@ const MessageAvatarWithContext = (props: MessageAvatarPropsWithContext) => {
39
39
  };
40
40
 
41
41
  const areEqual = (
42
- prevProps: MessageAvatarPropsWithContext,
43
- nextProps: MessageAvatarPropsWithContext,
42
+ prevProps: MessageAuthorPropsWithContext,
43
+ nextProps: MessageAuthorPropsWithContext,
44
44
  ) => {
45
45
  const { lastGroupMessage: prevLastGroupMessage, message: prevMessage } = prevProps;
46
46
  const { lastGroupMessage: nextLastGroupMessage, message: nextMessage } = nextProps;
@@ -61,18 +61,18 @@ const areEqual = (
61
61
  return true;
62
62
  };
63
63
 
64
- const MemoizedMessageAvatar = React.memo(
65
- MessageAvatarWithContext,
64
+ const MemoizedMessageAuthor = React.memo(
65
+ MessageAuthorWithContext,
66
66
  areEqual,
67
- ) as typeof MessageAvatarWithContext;
67
+ ) as typeof MessageAuthorWithContext;
68
68
 
69
- export type MessageAvatarProps = Partial<MessageAvatarPropsWithContext>;
69
+ export type MessageAuthorProps = Partial<MessageAuthorPropsWithContext>;
70
70
 
71
- export const MessageAvatar = (props: MessageAvatarProps) => {
71
+ export const MessageAuthor = (props: MessageAuthorProps) => {
72
72
  const { lastGroupMessage, message, showAvatar } = useMessageContext();
73
73
 
74
74
  return (
75
- <MemoizedMessageAvatar
75
+ <MemoizedMessageAuthor
76
76
  {...{
77
77
  lastGroupMessage,
78
78
  message,
@@ -83,4 +83,4 @@ export const MessageAvatar = (props: MessageAvatarProps) => {
83
83
  );
84
84
  };
85
85
 
86
- MessageAvatar.displayName = 'MessageAvatar{messageSimple{avatarWrapper}}';
86
+ MessageAuthor.displayName = 'MessageAuthor{messageItemView{authorWrapper}}';
@@ -35,7 +35,7 @@ MessageBlocked.displayName = 'MessageBlocked{messageList{messageBlocked}}';
35
35
  const useStyles = () => {
36
36
  const {
37
37
  theme: {
38
- messageSimple: {
38
+ messageItemView: {
39
39
  messageBlocked: { container, text },
40
40
  },
41
41
  semantics,
@@ -0,0 +1,145 @@
1
+ import React, { ReactNode, useMemo, useState } from 'react';
2
+ import { StyleSheet, View } from 'react-native';
3
+ import { Gesture, GestureDetector } from 'react-native-gesture-handler';
4
+
5
+ import Animated, {
6
+ interpolate,
7
+ runOnJS,
8
+ useAnimatedStyle,
9
+ useSharedValue,
10
+ withSpring,
11
+ } from 'react-native-reanimated';
12
+
13
+ import { MessageItemViewPropsWithContext } from './MessageItemView';
14
+
15
+ import { MessagesContextValue, useTheme } from '../../../contexts';
16
+
17
+ import { NativeHandlers } from '../../../native';
18
+
19
+ const AnimatedWrapper = Animated.createAnimatedComponent(View);
20
+
21
+ type SwipableMessageWrapperProps = Pick<MessagesContextValue, 'MessageSwipeContent'> &
22
+ Pick<MessageItemViewPropsWithContext, 'messageSwipeToReplyHitSlop'> & {
23
+ children: ReactNode;
24
+ onSwipe: () => void;
25
+ };
26
+
27
+ export const SwipableMessageWrapper = React.memo((props: SwipableMessageWrapperProps) => {
28
+ const { MessageSwipeContent, children, messageSwipeToReplyHitSlop, onSwipe } = props;
29
+
30
+ const styles = useStyles();
31
+
32
+ const translateX = useSharedValue(0);
33
+ const touchStart = useSharedValue<{ x: number; y: number } | null>(null);
34
+ const isSwiping = useSharedValue<boolean>(false);
35
+ const [shouldRenderAnimatedWrapper, setShouldRenderAnimatedWrapper] = useState<boolean>(false);
36
+
37
+ const SWIPABLE_THRESHOLD = 25;
38
+ const MINIMUM_DISTANCE = 8;
39
+
40
+ const triggerHaptic = NativeHandlers.triggerHaptic;
41
+
42
+ const swipeGesture = useMemo(
43
+ () =>
44
+ Gesture.Pan()
45
+ .hitSlop(messageSwipeToReplyHitSlop)
46
+ .onBegin((event) => {
47
+ touchStart.value = { x: event.x, y: event.y };
48
+ })
49
+ .onTouchesMove((event, state) => {
50
+ if (!touchStart.value || !event.changedTouches.length) {
51
+ state.fail();
52
+ return;
53
+ }
54
+
55
+ const xDiff = Math.abs(event.changedTouches[0].x - touchStart.value.x);
56
+ const yDiff = Math.abs(event.changedTouches[0].y - touchStart.value.y);
57
+ const isHorizontalPanning = xDiff > yDiff;
58
+ const hasMinimumDistance = xDiff > MINIMUM_DISTANCE || yDiff > MINIMUM_DISTANCE;
59
+
60
+ // Only activate if there's significant horizontal movement
61
+ if (isHorizontalPanning && hasMinimumDistance) {
62
+ state.activate();
63
+ if (!isSwiping.value) {
64
+ runOnJS(setShouldRenderAnimatedWrapper)(true);
65
+ }
66
+ isSwiping.value = true;
67
+ } else if (hasMinimumDistance) {
68
+ // If there's significant movement but not horizontal, fail the gesture
69
+ state.fail();
70
+ }
71
+ })
72
+ .onStart(() => {
73
+ translateX.value = 0;
74
+ })
75
+ .onChange(({ translationX }) => {
76
+ if (translationX > 0) {
77
+ translateX.value = translationX;
78
+ }
79
+ })
80
+ .onEnd(() => {
81
+ if (translateX.value >= SWIPABLE_THRESHOLD) {
82
+ runOnJS(onSwipe)();
83
+ if (triggerHaptic) {
84
+ runOnJS(triggerHaptic)('impactMedium');
85
+ }
86
+ }
87
+ isSwiping.value = false;
88
+ translateX.value = withSpring(
89
+ 0,
90
+ {
91
+ dampingRatio: 1,
92
+ duration: 500,
93
+ overshootClamping: true,
94
+ stiffness: 1,
95
+ },
96
+ () => {
97
+ runOnJS(setShouldRenderAnimatedWrapper)(false);
98
+ },
99
+ );
100
+ }),
101
+ [messageSwipeToReplyHitSlop, touchStart, isSwiping, translateX, onSwipe, triggerHaptic],
102
+ );
103
+
104
+ const swipeContentAnimatedStyle = useAnimatedStyle(
105
+ () => ({
106
+ opacity: interpolate(translateX.value, [0, SWIPABLE_THRESHOLD], [0, 1]),
107
+ width: translateX.value,
108
+ }),
109
+ [],
110
+ );
111
+
112
+ return (
113
+ <GestureDetector gesture={swipeGesture}>
114
+ <View hitSlop={messageSwipeToReplyHitSlop} style={styles.contentWrapper}>
115
+ {shouldRenderAnimatedWrapper ? (
116
+ <AnimatedWrapper style={[styles.swipeContentContainer, swipeContentAnimatedStyle]}>
117
+ {MessageSwipeContent ? <MessageSwipeContent /> : null}
118
+ </AnimatedWrapper>
119
+ ) : null}
120
+ {children}
121
+ </View>
122
+ </GestureDetector>
123
+ );
124
+ });
125
+
126
+ const useStyles = () => {
127
+ const {
128
+ theme: {
129
+ messageItemView: { contentWrapper, swipeContentContainer },
130
+ },
131
+ } = useTheme();
132
+ return useMemo(() => {
133
+ return StyleSheet.create({
134
+ contentWrapper: {
135
+ alignItems: 'center',
136
+ flexDirection: 'row',
137
+ zIndex: 1, // To hide the stick inside the message content
138
+ ...contentWrapper,
139
+ },
140
+ swipeContentContainer: {
141
+ ...swipeContentContainer,
142
+ },
143
+ });
144
+ }, [contentWrapper, swipeContentContainer]);
145
+ };