stream-chat-react-native-core 9.0.0-beta.31 → 9.0.0-beta.33

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 (598) hide show
  1. package/lib/commonjs/components/Attachment/Attachment.js +15 -52
  2. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/FileAttachment.js +4 -6
  4. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  5. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +4 -10
  6. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  7. package/lib/commonjs/components/Attachment/FilePreview.js +3 -6
  8. package/lib/commonjs/components/Attachment/FilePreview.js.map +1 -1
  9. package/lib/commonjs/components/Attachment/Gallery.js +9 -28
  10. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  11. package/lib/commonjs/components/Attachment/GalleryImage.js +3 -3
  12. package/lib/commonjs/components/Attachment/GalleryImage.js.map +1 -1
  13. package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js +7 -13
  14. package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js.map +1 -1
  15. package/lib/commonjs/components/Attachment/UnsupportedAttachment.js +4 -6
  16. package/lib/commonjs/components/Attachment/UnsupportedAttachment.js.map +1 -1
  17. package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js +3 -3
  18. package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
  19. package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js +3 -3
  20. package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
  21. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +4 -2
  22. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  23. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +7 -4
  24. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
  25. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +9 -13
  26. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  27. package/lib/commonjs/components/Channel/Channel.js +9 -421
  28. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  29. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +0 -8
  30. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  31. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +3 -77
  32. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  33. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +2 -134
  34. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  35. package/lib/commonjs/components/ChannelList/ChannelList.js +1 -57
  36. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  37. package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js +4 -2
  38. package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  39. package/lib/commonjs/components/ChannelList/ChannelListView.js +14 -23
  40. package/lib/commonjs/components/ChannelList/ChannelListView.js.map +1 -1
  41. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +1 -39
  42. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  43. package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js +3 -2
  44. package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
  45. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +6 -8
  46. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  47. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +12 -24
  48. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  49. package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js +15 -35
  50. package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
  51. package/lib/commonjs/components/ChannelPreview/ChannelSwipableWrapper.js +3 -3
  52. package/lib/commonjs/components/ChannelPreview/ChannelSwipableWrapper.js.map +1 -1
  53. package/lib/commonjs/components/Chat/Chat.js +4 -6
  54. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  55. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js +0 -2
  56. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  57. package/lib/commonjs/components/ImageGallery/ImageGallery.js +7 -9
  58. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  59. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +4 -2
  60. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  61. package/lib/commonjs/components/Message/Message.js +9 -13
  62. package/lib/commonjs/components/Message/Message.js.map +1 -1
  63. package/lib/commonjs/components/Message/MessageItemView/MessageBubble.js +4 -2
  64. package/lib/commonjs/components/Message/MessageItemView/MessageBubble.js.map +1 -1
  65. package/lib/commonjs/components/Message/MessageItemView/MessageContent.js +18 -39
  66. package/lib/commonjs/components/Message/MessageItemView/MessageContent.js.map +1 -1
  67. package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js +5 -7
  68. package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
  69. package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js +4 -8
  70. package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js.map +1 -1
  71. package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js +8 -16
  72. package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js.map +1 -1
  73. package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js +13 -35
  74. package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js.map +1 -1
  75. package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js +3 -5
  76. package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js.map +1 -1
  77. package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js +3 -3
  78. package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js.map +1 -1
  79. package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js +6 -4
  80. package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
  81. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListBottom.js +6 -8
  82. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -1
  83. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListTop.js +7 -11
  84. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -1
  85. package/lib/commonjs/components/MessageInput/MessageComposer.js +15 -55
  86. package/lib/commonjs/components/MessageInput/MessageComposer.js.map +1 -1
  87. package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js +5 -5
  88. package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js.map +1 -1
  89. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +9 -17
  90. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
  91. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +5 -5
  92. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
  93. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +5 -5
  94. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
  95. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +5 -5
  96. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
  97. package/lib/commonjs/components/MessageInput/components/InputButtons/index.js +4 -4
  98. package/lib/commonjs/components/MessageInput/components/InputButtons/index.js.map +1 -1
  99. package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js +3 -2
  100. package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js.map +1 -1
  101. package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js +7 -13
  102. package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js.map +1 -1
  103. package/lib/commonjs/components/MessageList/MessageFlashList.js +14 -40
  104. package/lib/commonjs/components/MessageList/MessageFlashList.js.map +1 -1
  105. package/lib/commonjs/components/MessageList/MessageList.js +12 -38
  106. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  107. package/lib/commonjs/components/MessageList/StickyHeader.js +3 -1
  108. package/lib/commonjs/components/MessageList/StickyHeader.js.map +1 -1
  109. package/lib/commonjs/components/MessageList/hooks/useMessageList.js +2 -35
  110. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  111. package/lib/commonjs/components/MessageMenu/MessageActionList.js +4 -2
  112. package/lib/commonjs/components/MessageMenu/MessageActionList.js.map +1 -1
  113. package/lib/commonjs/components/MessageMenu/MessageMenu.js.map +1 -1
  114. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +4 -8
  115. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +1 -1
  116. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js +4 -2
  117. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
  118. package/lib/commonjs/components/Poll/CreatePollContent.js +3 -1
  119. package/lib/commonjs/components/Poll/CreatePollContent.js.map +1 -1
  120. package/lib/commonjs/components/Poll/Poll.js +12 -9
  121. package/lib/commonjs/components/Poll/Poll.js.map +1 -1
  122. package/lib/commonjs/components/Poll/components/PollAnswersList.js +5 -3
  123. package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -1
  124. package/lib/commonjs/components/Poll/components/PollOption.js +5 -3
  125. package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -1
  126. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +5 -5
  127. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  128. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js +5 -3
  129. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js.map +1 -1
  130. package/lib/commonjs/components/Reply/Reply.js +4 -2
  131. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  132. package/lib/commonjs/components/Thread/Thread.js +4 -8
  133. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  134. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +4 -6
  135. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  136. package/lib/commonjs/components/ThreadList/ThreadList.js +12 -15
  137. package/lib/commonjs/components/ThreadList/ThreadList.js.map +1 -1
  138. package/lib/commonjs/components/ThreadList/ThreadListItem.js +8 -11
  139. package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
  140. package/lib/commonjs/components/ui/Avatar/Avatar.js +3 -3
  141. package/lib/commonjs/components/ui/Avatar/Avatar.js.map +1 -1
  142. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  143. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  144. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  145. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  146. package/lib/commonjs/contexts/componentsContext/ComponentsContext.js +37 -0
  147. package/lib/commonjs/contexts/componentsContext/ComponentsContext.js.map +1 -0
  148. package/lib/commonjs/contexts/componentsContext/PLAN.md +148 -0
  149. package/lib/commonjs/contexts/componentsContext/defaultComponents.js +287 -0
  150. package/lib/commonjs/contexts/componentsContext/defaultComponents.js.map +1 -0
  151. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +1 -9
  152. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  153. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -1
  154. package/lib/commonjs/contexts/index.js +11 -0
  155. package/lib/commonjs/contexts/index.js.map +1 -1
  156. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  157. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -76
  158. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  159. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  160. package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js +37 -27
  161. package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
  162. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  163. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +1 -4
  164. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  165. package/lib/commonjs/contexts/threadsContext/ThreadsContext.js.map +1 -1
  166. package/lib/commonjs/version.json +1 -1
  167. package/lib/module/components/Attachment/Attachment.js +15 -52
  168. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  169. package/lib/module/components/Attachment/FileAttachment.js +4 -6
  170. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  171. package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -10
  172. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  173. package/lib/module/components/Attachment/FilePreview.js +3 -6
  174. package/lib/module/components/Attachment/FilePreview.js.map +1 -1
  175. package/lib/module/components/Attachment/Gallery.js +9 -28
  176. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  177. package/lib/module/components/Attachment/GalleryImage.js +3 -3
  178. package/lib/module/components/Attachment/GalleryImage.js.map +1 -1
  179. package/lib/module/components/Attachment/Giphy/GiphyImage.js +7 -13
  180. package/lib/module/components/Attachment/Giphy/GiphyImage.js.map +1 -1
  181. package/lib/module/components/Attachment/UnsupportedAttachment.js +4 -6
  182. package/lib/module/components/Attachment/UnsupportedAttachment.js.map +1 -1
  183. package/lib/module/components/Attachment/UrlPreview/URLPreview.js +3 -3
  184. package/lib/module/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
  185. package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js +3 -3
  186. package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
  187. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +4 -2
  188. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  189. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +7 -4
  190. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
  191. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +9 -13
  192. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  193. package/lib/module/components/Channel/Channel.js +9 -421
  194. package/lib/module/components/Channel/Channel.js.map +1 -1
  195. package/lib/module/components/Channel/hooks/useCreateChannelContext.js +0 -8
  196. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  197. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +3 -77
  198. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  199. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +2 -134
  200. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  201. package/lib/module/components/ChannelList/ChannelList.js +1 -57
  202. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  203. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js +4 -2
  204. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  205. package/lib/module/components/ChannelList/ChannelListView.js +14 -23
  206. package/lib/module/components/ChannelList/ChannelListView.js.map +1 -1
  207. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +1 -39
  208. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  209. package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js +3 -2
  210. package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
  211. package/lib/module/components/ChannelPreview/ChannelPreview.js +6 -8
  212. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  213. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +12 -24
  214. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  215. package/lib/module/components/ChannelPreview/ChannelPreviewView.js +15 -35
  216. package/lib/module/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
  217. package/lib/module/components/ChannelPreview/ChannelSwipableWrapper.js +3 -3
  218. package/lib/module/components/ChannelPreview/ChannelSwipableWrapper.js.map +1 -1
  219. package/lib/module/components/Chat/Chat.js +4 -6
  220. package/lib/module/components/Chat/Chat.js.map +1 -1
  221. package/lib/module/components/Chat/hooks/useCreateChatContext.js +0 -2
  222. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  223. package/lib/module/components/ImageGallery/ImageGallery.js +7 -9
  224. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  225. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +4 -2
  226. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  227. package/lib/module/components/Message/Message.js +9 -13
  228. package/lib/module/components/Message/Message.js.map +1 -1
  229. package/lib/module/components/Message/MessageItemView/MessageBubble.js +4 -2
  230. package/lib/module/components/Message/MessageItemView/MessageBubble.js.map +1 -1
  231. package/lib/module/components/Message/MessageItemView/MessageContent.js +18 -39
  232. package/lib/module/components/Message/MessageItemView/MessageContent.js.map +1 -1
  233. package/lib/module/components/Message/MessageItemView/MessageDeleted.js +5 -7
  234. package/lib/module/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
  235. package/lib/module/components/Message/MessageItemView/MessageFooter.js +4 -8
  236. package/lib/module/components/Message/MessageItemView/MessageFooter.js.map +1 -1
  237. package/lib/module/components/Message/MessageItemView/MessageHeader.js +8 -16
  238. package/lib/module/components/Message/MessageItemView/MessageHeader.js.map +1 -1
  239. package/lib/module/components/Message/MessageItemView/MessageItemView.js +13 -35
  240. package/lib/module/components/Message/MessageItemView/MessageItemView.js.map +1 -1
  241. package/lib/module/components/Message/MessageItemView/MessageReplies.js +3 -5
  242. package/lib/module/components/Message/MessageItemView/MessageReplies.js.map +1 -1
  243. package/lib/module/components/Message/MessageItemView/MessageTextContainer.js +3 -3
  244. package/lib/module/components/Message/MessageItemView/MessageTextContainer.js.map +1 -1
  245. package/lib/module/components/Message/MessageItemView/MessageWrapper.js +6 -4
  246. package/lib/module/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
  247. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js +6 -8
  248. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -1
  249. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js +7 -11
  250. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -1
  251. package/lib/module/components/MessageInput/MessageComposer.js +15 -55
  252. package/lib/module/components/MessageInput/MessageComposer.js.map +1 -1
  253. package/lib/module/components/MessageInput/MessageInputHeaderView.js +5 -5
  254. package/lib/module/components/MessageInput/MessageInputHeaderView.js.map +1 -1
  255. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +9 -17
  256. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
  257. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +5 -5
  258. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
  259. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +5 -5
  260. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
  261. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +5 -5
  262. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
  263. package/lib/module/components/MessageInput/components/InputButtons/index.js +4 -4
  264. package/lib/module/components/MessageInput/components/InputButtons/index.js.map +1 -1
  265. package/lib/module/components/MessageInput/components/LinkPreviewList.js +3 -2
  266. package/lib/module/components/MessageInput/components/LinkPreviewList.js.map +1 -1
  267. package/lib/module/components/MessageInput/components/OutputButtons/index.js +7 -13
  268. package/lib/module/components/MessageInput/components/OutputButtons/index.js.map +1 -1
  269. package/lib/module/components/MessageList/MessageFlashList.js +14 -40
  270. package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
  271. package/lib/module/components/MessageList/MessageList.js +12 -38
  272. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  273. package/lib/module/components/MessageList/StickyHeader.js +3 -1
  274. package/lib/module/components/MessageList/StickyHeader.js.map +1 -1
  275. package/lib/module/components/MessageList/hooks/useMessageList.js +2 -35
  276. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  277. package/lib/module/components/MessageMenu/MessageActionList.js +4 -2
  278. package/lib/module/components/MessageMenu/MessageActionList.js.map +1 -1
  279. package/lib/module/components/MessageMenu/MessageMenu.js.map +1 -1
  280. package/lib/module/components/MessageMenu/MessageUserReactions.js +4 -8
  281. package/lib/module/components/MessageMenu/MessageUserReactions.js.map +1 -1
  282. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js +4 -2
  283. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
  284. package/lib/module/components/Poll/CreatePollContent.js +3 -1
  285. package/lib/module/components/Poll/CreatePollContent.js.map +1 -1
  286. package/lib/module/components/Poll/Poll.js +12 -9
  287. package/lib/module/components/Poll/Poll.js.map +1 -1
  288. package/lib/module/components/Poll/components/PollAnswersList.js +5 -3
  289. package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -1
  290. package/lib/module/components/Poll/components/PollOption.js +5 -3
  291. package/lib/module/components/Poll/components/PollOption.js.map +1 -1
  292. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +5 -5
  293. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  294. package/lib/module/components/Poll/components/PollResults/PollResults.js +5 -3
  295. package/lib/module/components/Poll/components/PollResults/PollResults.js.map +1 -1
  296. package/lib/module/components/Reply/Reply.js +4 -2
  297. package/lib/module/components/Reply/Reply.js.map +1 -1
  298. package/lib/module/components/Thread/Thread.js +4 -8
  299. package/lib/module/components/Thread/Thread.js.map +1 -1
  300. package/lib/module/components/Thread/components/ThreadFooterComponent.js +4 -6
  301. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  302. package/lib/module/components/ThreadList/ThreadList.js +12 -15
  303. package/lib/module/components/ThreadList/ThreadList.js.map +1 -1
  304. package/lib/module/components/ThreadList/ThreadListItem.js +8 -11
  305. package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
  306. package/lib/module/components/ui/Avatar/Avatar.js +3 -3
  307. package/lib/module/components/ui/Avatar/Avatar.js.map +1 -1
  308. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  309. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  310. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  311. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  312. package/lib/module/contexts/componentsContext/ComponentsContext.js +37 -0
  313. package/lib/module/contexts/componentsContext/ComponentsContext.js.map +1 -0
  314. package/lib/module/contexts/componentsContext/PLAN.md +148 -0
  315. package/lib/module/contexts/componentsContext/defaultComponents.js +287 -0
  316. package/lib/module/contexts/componentsContext/defaultComponents.js.map +1 -0
  317. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +1 -9
  318. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  319. package/lib/module/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -1
  320. package/lib/module/contexts/index.js +11 -0
  321. package/lib/module/contexts/index.js.map +1 -1
  322. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  323. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -76
  324. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  325. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  326. package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js +37 -27
  327. package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
  328. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  329. package/lib/module/contexts/overlayContext/OverlayProvider.js +1 -4
  330. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  331. package/lib/module/contexts/threadsContext/ThreadsContext.js.map +1 -1
  332. package/lib/module/version.json +1 -1
  333. package/lib/typescript/components/Attachment/Attachment.d.ts +1 -1
  334. package/lib/typescript/components/Attachment/Attachment.d.ts.map +1 -1
  335. package/lib/typescript/components/Attachment/FileAttachment.d.ts +1 -1
  336. package/lib/typescript/components/Attachment/FileAttachment.d.ts.map +1 -1
  337. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +1 -2
  338. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts.map +1 -1
  339. package/lib/typescript/components/Attachment/FilePreview.d.ts +2 -3
  340. package/lib/typescript/components/Attachment/FilePreview.d.ts.map +1 -1
  341. package/lib/typescript/components/Attachment/Gallery.d.ts +1 -1
  342. package/lib/typescript/components/Attachment/Gallery.d.ts.map +1 -1
  343. package/lib/typescript/components/Attachment/GalleryImage.d.ts +3 -2
  344. package/lib/typescript/components/Attachment/GalleryImage.d.ts.map +1 -1
  345. package/lib/typescript/components/Attachment/Giphy/GiphyImage.d.ts +4 -2
  346. package/lib/typescript/components/Attachment/Giphy/GiphyImage.d.ts.map +1 -1
  347. package/lib/typescript/components/Attachment/UnsupportedAttachment.d.ts +2 -3
  348. package/lib/typescript/components/Attachment/UnsupportedAttachment.d.ts.map +1 -1
  349. package/lib/typescript/components/Attachment/UrlPreview/URLPreview.d.ts +4 -3
  350. package/lib/typescript/components/Attachment/UrlPreview/URLPreview.d.ts.map +1 -1
  351. package/lib/typescript/components/Attachment/UrlPreview/URLPreviewCompact.d.ts +4 -3
  352. package/lib/typescript/components/Attachment/UrlPreview/URLPreviewCompact.d.ts.map +1 -1
  353. package/lib/typescript/components/AttachmentPicker/AttachmentPicker.d.ts.map +1 -1
  354. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts.map +1 -1
  355. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +2 -3
  356. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts.map +1 -1
  357. package/lib/typescript/components/Channel/Channel.d.ts +3 -28
  358. package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
  359. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +1 -1
  360. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts.map +1 -1
  361. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
  362. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts.map +1 -1
  363. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
  364. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
  365. package/lib/typescript/components/Channel/hooks/useMessageListPagination.d.ts.map +1 -1
  366. package/lib/typescript/components/ChannelList/ChannelList.d.ts +2 -10
  367. package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
  368. package/lib/typescript/components/ChannelList/ChannelListLoadingIndicator.d.ts.map +1 -1
  369. package/lib/typescript/components/ChannelList/ChannelListView.d.ts +1 -1
  370. package/lib/typescript/components/ChannelList/ChannelListView.d.ts.map +1 -1
  371. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +1 -1
  372. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts.map +1 -1
  373. package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts +1 -2
  374. package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts.map +1 -1
  375. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +1 -1
  376. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
  377. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +1 -2
  378. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts.map +1 -1
  379. package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts +1 -1
  380. package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts.map +1 -1
  381. package/lib/typescript/components/ChannelPreview/ChannelSwipableWrapper.d.ts +1 -3
  382. package/lib/typescript/components/ChannelPreview/ChannelSwipableWrapper.d.ts.map +1 -1
  383. package/lib/typescript/components/Chat/Chat.d.ts +1 -7
  384. package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
  385. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +1 -1
  386. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  387. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +6 -1
  388. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts.map +1 -1
  389. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts.map +1 -1
  390. package/lib/typescript/components/ImageGallery/components/types.d.ts +0 -2
  391. package/lib/typescript/components/ImageGallery/components/types.d.ts.map +1 -1
  392. package/lib/typescript/components/Message/Message.d.ts +1 -1
  393. package/lib/typescript/components/Message/Message.d.ts.map +1 -1
  394. package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts +1 -2
  395. package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts.map +1 -1
  396. package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts +1 -1
  397. package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts.map +1 -1
  398. package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts +1 -2
  399. package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts.map +1 -1
  400. package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts +0 -2
  401. package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts.map +1 -1
  402. package/lib/typescript/components/Message/MessageItemView/MessageHeader.d.ts.map +1 -1
  403. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts +1 -1
  404. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts.map +1 -1
  405. package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts +1 -2
  406. package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts.map +1 -1
  407. package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts +1 -1
  408. package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts.map +1 -1
  409. package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts.map +1 -1
  410. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts +1 -1
  411. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts.map +1 -1
  412. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts +1 -1
  413. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts.map +1 -1
  414. package/lib/typescript/components/MessageInput/MessageComposer.d.ts +1 -2
  415. package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -1
  416. package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts +3 -4
  417. package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts.map +1 -1
  418. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.d.ts +1 -1
  419. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.d.ts.map +1 -1
  420. package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts +1 -1
  421. package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts.map +1 -1
  422. package/lib/typescript/components/MessageInput/components/LinkPreviewList.d.ts.map +1 -1
  423. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts +1 -1
  424. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts.map +1 -1
  425. package/lib/typescript/components/MessageList/MessageFlashList.d.ts +1 -1
  426. package/lib/typescript/components/MessageList/MessageFlashList.d.ts.map +1 -1
  427. package/lib/typescript/components/MessageList/MessageList.d.ts +1 -1
  428. package/lib/typescript/components/MessageList/MessageList.d.ts.map +1 -1
  429. package/lib/typescript/components/MessageList/StickyHeader.d.ts +2 -3
  430. package/lib/typescript/components/MessageList/StickyHeader.d.ts.map +1 -1
  431. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +0 -5
  432. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts.map +1 -1
  433. package/lib/typescript/components/MessageMenu/MessageActionList.d.ts +1 -2
  434. package/lib/typescript/components/MessageMenu/MessageActionList.d.ts.map +1 -1
  435. package/lib/typescript/components/MessageMenu/MessageMenu.d.ts +1 -2
  436. package/lib/typescript/components/MessageMenu/MessageMenu.d.ts.map +1 -1
  437. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts +1 -1
  438. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +1 -1
  439. package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts +2 -3
  440. package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts.map +1 -1
  441. package/lib/typescript/components/Poll/CreatePollContent.d.ts +2 -2
  442. package/lib/typescript/components/Poll/CreatePollContent.d.ts.map +1 -1
  443. package/lib/typescript/components/Poll/Poll.d.ts +5 -8
  444. package/lib/typescript/components/Poll/Poll.d.ts.map +1 -1
  445. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts +1 -2
  446. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -1
  447. package/lib/typescript/components/Poll/components/PollOption.d.ts +1 -2
  448. package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -1
  449. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts +1 -4
  450. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts.map +1 -1
  451. package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts +1 -2
  452. package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts.map +1 -1
  453. package/lib/typescript/components/Reply/Reply.d.ts +4 -3
  454. package/lib/typescript/components/Reply/Reply.d.ts.map +1 -1
  455. package/lib/typescript/components/Thread/Thread.d.ts +2 -8
  456. package/lib/typescript/components/Thread/Thread.d.ts.map +1 -1
  457. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +1 -2
  458. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts.map +1 -1
  459. package/lib/typescript/components/ThreadList/ThreadList.d.ts +2 -3
  460. package/lib/typescript/components/ThreadList/ThreadList.d.ts.map +1 -1
  461. package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
  462. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +0 -17
  463. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts.map +1 -1
  464. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +0 -23
  465. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts.map +1 -1
  466. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +2 -113
  467. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
  468. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +0 -5
  469. package/lib/typescript/contexts/chatContext/ChatContext.d.ts.map +1 -1
  470. package/lib/typescript/contexts/componentsContext/ComponentsContext.d.ts +322 -0
  471. package/lib/typescript/contexts/componentsContext/ComponentsContext.d.ts.map +1 -0
  472. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts +298 -0
  473. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts.map +1 -0
  474. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts.map +1 -1
  475. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts +0 -5
  476. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts.map +1 -1
  477. package/lib/typescript/contexts/index.d.ts +1 -0
  478. package/lib/typescript/contexts/index.d.ts.map +1 -1
  479. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +1 -169
  480. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
  481. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
  482. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts.map +1 -1
  483. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +3 -340
  484. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
  485. package/lib/typescript/contexts/overlayContext/MessageOverlayHostLayer.d.ts +8 -4
  486. package/lib/typescript/contexts/overlayContext/MessageOverlayHostLayer.d.ts.map +1 -1
  487. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +0 -4
  488. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts.map +1 -1
  489. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts.map +1 -1
  490. package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts +0 -9
  491. package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts.map +1 -1
  492. package/package.json +1 -1
  493. package/src/__tests__/offline-support/offline-feature.js +64 -67
  494. package/src/components/Attachment/Attachment.tsx +7 -69
  495. package/src/components/Attachment/FileAttachment.tsx +4 -7
  496. package/src/components/Attachment/FileAttachmentGroup.tsx +9 -19
  497. package/src/components/Attachment/FilePreview.tsx +4 -9
  498. package/src/components/Attachment/Gallery.tsx +6 -83
  499. package/src/components/Attachment/GalleryImage.tsx +5 -4
  500. package/src/components/Attachment/Giphy/GiphyImage.tsx +15 -37
  501. package/src/components/Attachment/UnsupportedAttachment.tsx +5 -10
  502. package/src/components/Attachment/UrlPreview/URLPreview.tsx +6 -4
  503. package/src/components/Attachment/UrlPreview/URLPreviewCompact.tsx +6 -4
  504. package/src/components/AttachmentPicker/AttachmentPicker.tsx +2 -2
  505. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx +5 -4
  506. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +4 -20
  507. package/src/components/Channel/Channel.tsx +31 -441
  508. package/src/components/Channel/__tests__/isAttachmentEqualHandler.test.js +12 -9
  509. package/src/components/Channel/hooks/useCreateChannelContext.ts +0 -8
  510. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +1 -81
  511. package/src/components/Channel/hooks/useCreateMessagesContext.ts +0 -132
  512. package/src/components/ChannelList/ChannelList.tsx +3 -76
  513. package/src/components/ChannelList/ChannelListLoadingIndicator.tsx +3 -1
  514. package/src/components/ChannelList/ChannelListView.tsx +16 -36
  515. package/src/components/ChannelList/__tests__/ChannelList.test.js +173 -116
  516. package/src/components/ChannelList/__tests__/ChannelListView.test.js +64 -41
  517. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +0 -39
  518. package/src/components/ChannelPreview/ChannelDetailsBottomSheet.tsx +2 -2
  519. package/src/components/ChannelPreview/ChannelPreview.tsx +8 -16
  520. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +15 -38
  521. package/src/components/ChannelPreview/ChannelPreviewView.tsx +22 -47
  522. package/src/components/ChannelPreview/ChannelSwipableWrapper.tsx +2 -4
  523. package/src/components/ChannelPreview/__tests__/ChannelDetailsBottomSheet.test.tsx +16 -12
  524. package/src/components/ChannelPreview/__tests__/ChannelPreview.test.tsx +25 -24
  525. package/src/components/ChannelPreview/__tests__/ChannelSwipableWrapper.test.tsx +11 -6
  526. package/src/components/Chat/Chat.tsx +5 -12
  527. package/src/components/Chat/hooks/useCreateChatContext.ts +0 -2
  528. package/src/components/ImageGallery/ImageGallery.tsx +14 -16
  529. package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +0 -8
  530. package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +25 -21
  531. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +3 -1
  532. package/src/components/ImageGallery/components/types.ts +0 -3
  533. package/src/components/Message/Message.tsx +11 -32
  534. package/src/components/Message/MessageItemView/MessageBubble.tsx +11 -7
  535. package/src/components/Message/MessageItemView/MessageContent.tsx +14 -47
  536. package/src/components/Message/MessageItemView/MessageDeleted.tsx +3 -9
  537. package/src/components/Message/MessageItemView/MessageFooter.tsx +2 -14
  538. package/src/components/Message/MessageItemView/MessageHeader.tsx +11 -29
  539. package/src/components/Message/MessageItemView/MessageItemView.tsx +10 -42
  540. package/src/components/Message/MessageItemView/MessageReplies.tsx +2 -8
  541. package/src/components/Message/MessageItemView/MessageTextContainer.tsx +4 -8
  542. package/src/components/Message/MessageItemView/MessageWrapper.tsx +4 -9
  543. package/src/components/Message/MessageItemView/ReactionList/ReactionListBottom.tsx +4 -12
  544. package/src/components/Message/MessageItemView/ReactionList/ReactionListTop.tsx +4 -20
  545. package/src/components/Message/MessageItemView/__tests__/MessageContent.test.js +47 -30
  546. package/src/components/Message/MessageItemView/__tests__/MessageItemView.test.js +16 -7
  547. package/src/components/Message/MessageItemView/__tests__/MessageTextContainer.test.tsx +8 -4
  548. package/src/components/MessageInput/MessageComposer.tsx +16 -76
  549. package/src/components/MessageInput/MessageInputHeaderView.tsx +3 -3
  550. package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.tsx +7 -35
  551. package/src/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.tsx +2 -2
  552. package/src/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.tsx +2 -2
  553. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.tsx +6 -4
  554. package/src/components/MessageInput/components/InputButtons/index.tsx +4 -5
  555. package/src/components/MessageInput/components/LinkPreviewList.tsx +3 -2
  556. package/src/components/MessageInput/components/OutputButtons/index.tsx +4 -23
  557. package/src/components/MessageList/MessageFlashList.tsx +13 -57
  558. package/src/components/MessageList/MessageList.tsx +15 -57
  559. package/src/components/MessageList/StickyHeader.tsx +4 -3
  560. package/src/components/MessageList/__tests__/MessageList.test.js +1 -130
  561. package/src/components/MessageList/hooks/useMessageList.ts +1 -41
  562. package/src/components/MessageMenu/MessageActionList.tsx +4 -3
  563. package/src/components/MessageMenu/MessageMenu.tsx +35 -47
  564. package/src/components/MessageMenu/MessageUserReactions.tsx +7 -27
  565. package/src/components/MessageMenu/MessageUserReactionsItem.tsx +3 -6
  566. package/src/components/MessageMenu/__tests__/MessageUserReactions.test.tsx +12 -11
  567. package/src/components/Poll/CreatePollContent.tsx +3 -4
  568. package/src/components/Poll/Poll.tsx +22 -24
  569. package/src/components/Poll/components/PollAnswersList.tsx +9 -11
  570. package/src/components/Poll/components/PollOption.tsx +9 -11
  571. package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +10 -11
  572. package/src/components/Poll/components/PollResults/PollResults.tsx +9 -15
  573. package/src/components/Reply/Reply.tsx +18 -5
  574. package/src/components/Thread/Thread.tsx +3 -18
  575. package/src/components/Thread/components/ThreadFooterComponent.tsx +10 -11
  576. package/src/components/ThreadList/ThreadList.tsx +14 -22
  577. package/src/components/ThreadList/ThreadListItem.tsx +6 -11
  578. package/src/components/ui/Avatar/Avatar.tsx +2 -2
  579. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +0 -15
  580. package/src/contexts/channelContext/ChannelContext.tsx +0 -24
  581. package/src/contexts/channelsContext/ChannelsContext.tsx +2 -114
  582. package/src/contexts/chatContext/ChatContext.tsx +0 -5
  583. package/src/contexts/componentsContext/ComponentsContext.tsx +62 -0
  584. package/src/contexts/componentsContext/PLAN.md +148 -0
  585. package/src/contexts/componentsContext/__tests__/defaultComponents.test.ts +45 -0
  586. package/src/contexts/componentsContext/defaultComponents.ts +334 -0
  587. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +0 -8
  588. package/src/contexts/imageGalleryContext/ImageGalleryContextBase.tsx +0 -10
  589. package/src/contexts/index.ts +1 -0
  590. package/src/contexts/messageInputContext/MessageInputContext.tsx +0 -185
  591. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +1 -75
  592. package/src/contexts/messagesContext/MessagesContext.tsx +3 -367
  593. package/src/contexts/overlayContext/MessageOverlayHostLayer.tsx +38 -20
  594. package/src/contexts/overlayContext/OverlayContext.tsx +0 -4
  595. package/src/contexts/overlayContext/OverlayProvider.tsx +1 -2
  596. package/src/contexts/overlayContext/__tests__/MessageOverlayHostLayer.test.tsx +80 -7
  597. package/src/contexts/threadsContext/ThreadsContext.tsx +0 -9
  598. package/src/version.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import React, { PropsWithChildren, useContext } from 'react';
2
2
 
3
- import { PressableProps, View, ViewProps } from 'react-native';
3
+ import { PressableProps, ViewProps } from 'react-native';
4
4
 
5
5
  import type {
6
6
  Attachment,
@@ -12,79 +12,14 @@ import type {
12
12
  MessageResponse,
13
13
  } from 'stream-chat';
14
14
 
15
- import type {
16
- InlineUnreadIndicatorProps,
17
- PollContentProps,
18
- StreamingMessageViewProps,
19
- } from '../../components';
20
- import type { AttachmentProps } from '../../components/Attachment/Attachment';
21
- import type { AudioAttachmentProps } from '../../components/Attachment/Audio';
22
- import type { FileAttachmentProps } from '../../components/Attachment/FileAttachment';
23
- import type { FileAttachmentGroupProps } from '../../components/Attachment/FileAttachmentGroup';
24
- import type { FileIconProps } from '../../components/Attachment/FileIcon';
25
- import { FilePreviewProps } from '../../components/Attachment/FilePreview';
26
- import type { GalleryProps } from '../../components/Attachment/Gallery';
27
- import type { GiphyProps } from '../../components/Attachment/Giphy';
28
- import type { ImageLoadingFailedIndicatorProps } from '../../components/Attachment/ImageLoadingFailedIndicator';
29
- import { UnsupportedAttachmentProps } from '../../components/Attachment/UnsupportedAttachment';
30
- import type {
31
- URLPreviewCompactProps,
32
- URLPreviewProps,
33
- } from '../../components/Attachment/UrlPreview';
34
- import type { VideoThumbnailProps } from '../../components/Attachment/VideoThumbnail';
35
- import type {
36
- MessagePressableHandlerPayload,
37
- MessageProps,
38
- } from '../../components/Message/Message';
39
- import type { MessagePinnedHeaderProps } from '../../components/Message/MessageItemView/Headers/MessagePinnedHeader';
40
- import type { MessageReminderHeaderProps } from '../../components/Message/MessageItemView/Headers/MessageReminderHeader';
41
- import type { MessageSavedForLaterHeaderProps } from '../../components/Message/MessageItemView/Headers/MessageSavedForLaterHeader';
42
- import type { SentToChannelHeaderProps } from '../../components/Message/MessageItemView/Headers/SentToChannelHeader';
43
- import type { MessageAuthorProps } from '../../components/Message/MessageItemView/MessageAuthor';
44
- import type { MessageBlockedProps } from '../../components/Message/MessageItemView/MessageBlocked';
45
- import type { MessageBounceProps } from '../../components/Message/MessageItemView/MessageBounce';
46
- import type { MessageContentProps } from '../../components/Message/MessageItemView/MessageContent';
47
- import type { MessageDeletedProps } from '../../components/Message/MessageItemView/MessageDeleted';
48
- import type { MessageFooterProps } from '../../components/Message/MessageItemView/MessageFooter';
49
- import { MessageHeaderProps } from '../../components/Message/MessageItemView/MessageHeader';
50
- import type { MessageItemViewProps } from '../../components/Message/MessageItemView/MessageItemView';
51
- import type { MessageRepliesProps } from '../../components/Message/MessageItemView/MessageReplies';
52
- import type { MessageRepliesAvatarsProps } from '../../components/Message/MessageItemView/MessageRepliesAvatars';
53
- import type { MessageStatusProps } from '../../components/Message/MessageItemView/MessageStatus';
54
- import type { MessageTextProps } from '../../components/Message/MessageItemView/MessageTextContainer';
55
- import { MessageTimestampProps } from '../../components/Message/MessageItemView/MessageTimestamp';
56
- import { ReactionListBottomProps } from '../../components/Message/MessageItemView/ReactionList/ReactionListBottom';
57
- import { ReactionListClusteredProps } from '../../components/Message/MessageItemView/ReactionList/ReactionListClustered';
58
- import {
59
- ReactionListItemProps,
60
- ReactionListCountItemProps,
61
- } from '../../components/Message/MessageItemView/ReactionList/ReactionListItem';
62
- import { ReactionListItemWrapperProps } from '../../components/Message/MessageItemView/ReactionList/ReactionListItemWrapper';
63
- import type { ReactionListTopProps } from '../../components/Message/MessageItemView/ReactionList/ReactionListTop';
15
+ import type { MessagePressableHandlerPayload } from '../../components/Message/Message';
64
16
  import type { MarkdownRules } from '../../components/Message/MessageItemView/utils/renderText';
65
17
  import type { MessageActionsParams } from '../../components/Message/utils/messageActions';
66
- import type { DateHeaderProps } from '../../components/MessageList/DateHeader';
67
- import type { InlineDateSeparatorProps } from '../../components/MessageList/InlineDateSeparator';
68
- import type { MessageListProps } from '../../components/MessageList/MessageList';
69
- import type { MessageSystemProps } from '../../components/MessageList/MessageSystem';
70
- import type { ScrollToBottomButtonProps } from '../../components/MessageList/ScrollToBottomButton';
71
- import { TypingIndicatorContainerProps } from '../../components/MessageList/TypingIndicatorContainer';
72
- import { UnreadMessagesNotificationProps } from '../../components/MessageList/UnreadMessagesNotification';
73
18
  import type {
74
19
  GroupStyle,
75
20
  MessageGroupStylesParams,
76
21
  } from '../../components/MessageList/utils/getGroupStyles';
77
- import { MessageActionListProps } from '../../components/MessageMenu/MessageActionList';
78
- import type {
79
- MessageActionListItemProps,
80
- MessageActionType,
81
- } from '../../components/MessageMenu/MessageActionListItem';
82
- import { MessageMenuProps } from '../../components/MessageMenu/MessageMenu';
83
- import type { MessageReactionPickerProps } from '../../components/MessageMenu/MessageReactionPicker';
84
- import { MessageUserReactionsProps } from '../../components/MessageMenu/MessageUserReactions';
85
- import { MessageUserReactionsAvatarProps } from '../../components/MessageMenu/MessageUserReactionsAvatar';
86
- import { MessageUserReactionsItemProps } from '../../components/MessageMenu/MessageUserReactionsItem';
87
- import type { ReplyProps } from '../../components/Reply/Reply';
22
+ import type { MessageActionType } from '../../components/MessageMenu/MessageActionListItem';
88
23
  import { NativeHandlers } from '../../native';
89
24
 
90
25
  import type { ReactionData } from '../../utils/utils';
@@ -104,25 +39,12 @@ export type MessageContentType =
104
39
  | 'ai_text'
105
40
  | 'text'
106
41
  | 'location';
107
- export type DeletedMessagesVisibilityType = 'always' | 'never' | 'receiver' | 'sender';
108
42
 
109
43
  export type MessageLocationProps = {
110
44
  message: LocalMessage;
111
45
  };
112
46
 
113
47
  export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerated'> & {
114
- /**
115
- * UI component for Attachment.
116
- * Defaults to: [Attachment](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Attachment.tsx)
117
- */
118
- Attachment: React.ComponentType<AttachmentProps>;
119
- /** Custom UI component for AudioAttachment. */
120
- AudioAttachment: React.ComponentType<AudioAttachmentProps>;
121
- /**
122
- * UI component for DateHeader
123
- * Defaults to: [DateHeader](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageList/DateHeader.tsx)
124
- **/
125
- DateHeader: React.ComponentType<DateHeaderProps>;
126
48
  // FIXME: Remove the signature with optionsOrHardDelete boolean with the next major release
127
49
  deleteMessage: (
128
50
  message: LocalMessage,
@@ -141,249 +63,24 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
141
63
  */
142
64
  urlPreviewType: 'compact' | 'full';
143
65
 
144
- /**
145
- * UI component to display unsupported attachment.
146
- * Defaults to: [UnsupportedAttachment](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/UnsupportedAttachment.tsx)
147
- */
148
- UnsupportedAttachment: React.ComponentType<UnsupportedAttachmentProps>;
149
-
150
- /**
151
- * UI component for FilePreview
152
- * Defaults to: [FilePreview](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/FilePreview.tsx)
153
- */
154
- FilePreview: React.ComponentType<FilePreviewProps>;
155
-
156
- /**
157
- * UI component to display File type attachment.
158
- * Defaults to: [FilePickerIcon](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/FileAttachment.tsx)
159
- */
160
- FileAttachment: React.ComponentType<FileAttachmentProps>;
161
- /**
162
- * UI component to display group of File type attachments or multiple file attachments (in single message).
163
- * Defaults to: [FileAttachmentGroup](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/FileAttachmentGroup.tsx)
164
- */
165
- FileAttachmentGroup: React.ComponentType<FileAttachmentGroupProps>;
166
- /**
167
- * UI component for attachment icon for type 'file' attachment.
168
- * Defaults to: https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/FileIcon.tsx
169
- */
170
- FileAttachmentIcon: React.ComponentType<FileIconProps>;
171
66
  FlatList: typeof NativeHandlers.FlatList | undefined;
172
- /**
173
- * UI component to display image attachments
174
- * Defaults to: [Gallery](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Gallery.tsx)
175
- */
176
- Gallery: React.ComponentType<GalleryProps>;
177
- /**
178
- * UI component for Giphy
179
- * Defaults to: [Giphy](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Giphy.tsx)
180
- */
181
- Giphy: React.ComponentType<GiphyProps>;
182
67
  /**
183
68
  * The giphy version to render - check the keys of the [Image Object](https://developers.giphy.com/docs/api/schema#image-object) for possible values. Uses 'fixed_height' by default
184
69
  * */
185
70
  giphyVersion: keyof NonNullable<Attachment['giphy']>;
186
71
 
187
- /**
188
- * The indicator rendered when loading an image fails.
189
- */
190
- ImageLoadingFailedIndicator: React.ComponentType<ImageLoadingFailedIndicatorProps>;
191
-
192
- /**
193
- * The indicator rendered when image is loading. By default renders <ActivityIndicator/>
194
- */
195
- ImageLoadingIndicator: React.ComponentType;
196
-
197
72
  /**
198
73
  * When true, messageList will be scrolled at first unread message, when opened.
199
74
  */
200
75
  initialScrollToFirstUnreadMessage: boolean;
201
- /**
202
- * UI component for Message Date Separator Component
203
- * Defaults to: [InlineDateSeparator](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageList/InlineDateSeparator.tsx)
204
- */
205
- InlineDateSeparator: React.ComponentType<InlineDateSeparatorProps>;
206
- /**
207
- * UI component for InlineUnreadIndicator
208
- * Defaults to: [InlineUnreadIndicator](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageList/InlineUnreadIndicator.tsx)
209
- **/
210
- InlineUnreadIndicator: React.ComponentType<InlineUnreadIndicatorProps>;
211
-
212
- Message: React.ComponentType<MessageProps>;
213
- /**
214
- * Custom UI component for rendering Message actions in message menu.
215
- *
216
- * **Default** [MessageActionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageMenu/MessageActionList.tsx)
217
- */
218
- MessageActionList: React.ComponentType<MessageActionListProps>;
219
- /**
220
- * Custom UI component for rendering Message action item in message menu.
221
- *
222
- * **Default** [MessageActionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageMenu/MessageActionList.tsx)
223
- */
224
- MessageActionListItem: React.ComponentType<MessageActionListItemProps>;
225
- /**
226
- * UI component for MessageAuthor
227
- * Defaults to: [MessageAuthor](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageAuthor.tsx)
228
- **/
229
- MessageAuthor: React.ComponentType<MessageAuthorProps>;
230
- /**
231
- * UI component for MessageBlocked
232
- * Defaults to: [MessageBlocked](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageBlocked.tsx)
233
- */
234
- MessageBlocked: React.ComponentType<MessageBlockedProps>;
235
- /**
236
- * UI Component for MessageBounce
237
- */
238
- MessageBounce: React.ComponentType<MessageBounceProps>;
239
- /**
240
- * UI component for MessageContent
241
- * Defaults to: [MessageContent](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageContent.tsx)
242
- */
243
- MessageContent: React.ComponentType<MessageContentProps>;
244
- /**
245
- * Optional UI component rendered above the message content body.
246
- */
247
- MessageContentTopView?: React.ComponentType;
248
- /**
249
- * Optional UI component rendered to the left of the message content body.
250
- */
251
- MessageContentLeadingView?: React.ComponentType;
252
- /**
253
- * Optional UI component rendered to the right of the message content body.
254
- */
255
- MessageContentTrailingView?: React.ComponentType;
256
- /**
257
- * Optional UI component rendered below the message content body.
258
- */
259
- MessageContentBottomView?: React.ComponentType;
260
76
  /** Order to render the message content */
261
77
  messageContentOrder: MessageContentType[];
262
- /**
263
- * UI component for MessageDeleted
264
- * Defaults to: [MessageDeleted](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageDeleted.tsx)
265
- */
266
- MessageDeleted: React.ComponentType<MessageDeletedProps>;
267
- /**
268
- * UI component for the MessageError.
269
- */
270
- MessageError: React.ComponentType;
271
- /**
272
- * Custom message footer component
273
- */
274
- MessageFooter: React.ComponentType<MessageFooterProps>;
275
- MessageList: React.ComponentType<MessageListProps>;
276
- MessageLocation?: React.ComponentType<MessageLocationProps>;
277
- /**
278
- * UI component for MessageMenu
279
- */
280
- MessageMenu: React.ComponentType<MessageMenuProps>;
281
- /**
282
- * Custom message pinned component
283
- */
284
- MessagePinnedHeader: React.ComponentType<MessagePinnedHeaderProps>;
285
- /**
286
- * Custom message reminder component
287
- */
288
- MessageReminderHeader: React.ComponentType<MessageReminderHeaderProps>;
289
- /**
290
- * Custom message saved for later component
291
- */
292
- MessageSavedForLaterHeader: React.ComponentType<MessageSavedForLaterHeaderProps>;
293
- /**
294
- * Custom message sent to channel component
295
- */
296
- SentToChannelHeader: React.ComponentType<SentToChannelHeaderProps>;
297
- /**
298
- * UI component for MessageReactionPicker
299
- */
300
- MessageReactionPicker: React.ComponentType<MessageReactionPickerProps>;
301
- /**
302
- * UI component for MessageReplies
303
- * Defaults to: [MessageReplies](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageReplies.tsx)
304
- */
305
- MessageReplies: React.ComponentType<MessageRepliesProps>;
306
- /**
307
- * UI Component for MessageRepliesAvatars
308
- * Defaults to: [MessageRepliesAvatars](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageRepliesAvatars.tsx)
309
- */
310
- MessageRepliesAvatars: React.ComponentType<MessageRepliesAvatarsProps>;
311
- /**
312
- * Optional UI component for overriding the empty space on a message row. If the message is left aligned, it will be to the right of it - otherwise left.
313
- */
314
- MessageSpacer?: React.ComponentType;
315
- /**
316
- * UI component for MessageItemView. It encapsulates the entirety of a message row.
317
- * Defaults to: [MessageItemView](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageItemView.tsx)
318
- */
319
- MessageItemView: React.ComponentType<
320
- MessageItemViewProps & { ref?: React.RefObject<View | null> }
321
- >;
322
- /**
323
- * UI component for MessageStatus (delivered/read)
324
- * Defaults to: [MessageStatus](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageItemView/MessageStatus.tsx)
325
- */
326
- MessageStatus: React.ComponentType<MessageStatusProps>;
327
- /**
328
- * UI component for MessageSystem
329
- * Defaults to: [MessageSystem](https://getstream.io/chat/docs/sdk/reactnative/ui-components/message-system/)
330
- */
331
- MessageSystem: React.ComponentType<MessageSystemProps>;
332
- /**
333
- * UI component for MessageTimestamp
334
- * Defaults to: [MessageTimestamp](https://github.com/GetStream/stream-chat-react-native/blob/develop/package/src/components/Message/MessageItemView/MessageTimestamp.tsx)
335
- */
336
- MessageTimestamp: React.ComponentType<MessageTimestampProps>;
337
- /**
338
- * Custom UI component for rendering user reactions, in message menu.
339
- *
340
- * **Default** [MessageUserReactions](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageMenu/MessageUserReactions.tsx)
341
- */
342
- MessageUserReactions: React.ComponentType<MessageUserReactionsProps>;
343
- /**
344
- * Custom UI component for rendering user reactions avatar under `MessageUserReactionsItem`, in message menu.
345
- *
346
- * **Default** [MessageUserReactionsAvatar](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageMenu/MessageUserReactionsAvatar.tsx)
347
- */
348
- MessageUserReactionsAvatar: React.ComponentType<MessageUserReactionsAvatarProps>;
349
- /**
350
- * Custom UI component for rendering individual user reactions item under `MessageUserReactions`, in message menu.
351
- *
352
- * **Default** [MessageUserReactionsItem](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageMenu/MessageUserReactionsItem.tsx)
353
- */
354
- MessageUserReactionsItem: React.ComponentType<MessageUserReactionsItemProps>;
355
-
356
78
  removeMessage: (message: { id: string; parent_id?: string }) => Promise<void>;
357
- /**
358
- * UI component for Reply
359
- * Defaults to: [Reply](https://getstream.io/chat/docs/sdk/reactnative/ui-components/reply/)
360
- */
361
- Reply: React.ComponentType<ReplyProps>;
362
79
  /**
363
80
  * Override the api request for retry message functionality.
364
81
  */
365
82
  retrySendMessage: (message: LocalMessage) => Promise<void>;
366
- /**
367
- * UI component for ScrollToBottomButton
368
- * Defaults to: [ScrollToBottomButton](https://getstream.io/chat/docs/sdk/reactnative/ui-components/scroll-to-bottom-button/)
369
- */
370
- ScrollToBottomButton: React.ComponentType<ScrollToBottomButtonProps>;
371
83
  sendReaction: (type: string, messageId: string) => Promise<void>;
372
- /**
373
- * UI component for StreamingMessageView. Displays the text of a message with a typewriter animation.
374
- */
375
- StreamingMessageView: React.ComponentType<StreamingMessageViewProps>;
376
- /**
377
- * UI component for TypingIndicator
378
- * Defaults to: [TypingIndicator](https://getstream.io/chat/docs/sdk/reactnative/ui-components/typing-indicator/)
379
- */
380
- TypingIndicator: React.ComponentType;
381
- /**
382
- * UI component for TypingIndicatorContainer
383
- * Defaults to: [TypingIndicatorContainer](https://getstream.io/chat/docs/sdk/reactnative/contexts/messages-context/#typingindicatorcontainer)
384
- */
385
- TypingIndicatorContainer: React.ComponentType<TypingIndicatorContainerProps>;
386
- UnreadMessagesNotification: React.ComponentType<UnreadMessagesNotificationProps>;
387
84
  updateMessage: (
388
85
  updatedMessage: MessageResponse | LocalMessage,
389
86
  extraState?: {
@@ -393,17 +90,6 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
393
90
  },
394
91
  throttled?: boolean,
395
92
  ) => void;
396
- /**
397
- * Custom UI component to display enriched url preview.
398
- * Defaults to https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/UrlPreview/URLPreview.tsx
399
- */
400
- UrlPreview: React.ComponentType<URLPreviewProps>;
401
- /**
402
- * Custom UI component to display compact url preview.
403
- * Defaults to https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/UrlPreview/URLPreviewCompact.tsx
404
- */
405
- URLPreviewCompact: React.ComponentType<URLPreviewCompactProps>;
406
- VideoThumbnail: React.ComponentType<VideoThumbnailProps>;
407
93
  /**
408
94
  * Provide any additional props for `Pressable` which wraps inner MessageContent component here.
409
95
  * Please check docs for Pressable for supported props - https://reactnative.dev/docs/pressable#props
@@ -425,14 +111,6 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
425
111
  message: LocalMessage;
426
112
  }) => void;
427
113
 
428
- /**
429
- * Full override of the delete message button in the Message Actions
430
- *
431
- * Please check [cookbook](https://github.com/GetStream/stream-chat-react-native/wiki/Cookbook-v3.0#override-or-intercept-message-actions-edit-delete-reaction-reply-etc) for details.
432
- */
433
- /** Control if the deleted message is visible to both the send and reciever, either of them or none */
434
- deletedMessagesVisibilityType?: DeletedMessagesVisibilityType;
435
-
436
114
  disableTypingIndicator?: boolean;
437
115
  /**
438
116
  * Enable swipe to reply on messages.
@@ -537,17 +215,10 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
537
215
  */
538
216
  messageActions?: (param: MessageActionsParams) => MessageActionType[];
539
217
 
540
- /**
541
- * Custom message header component
542
- */
543
- MessageHeader: React.ComponentType<MessageHeaderProps>;
544
- MessageSwipeContent?: React.ComponentType;
545
218
  /**
546
219
  * HitSlop for the message swipe to reply gesture
547
220
  */
548
221
  messageSwipeToReplyHitSlop?: ViewProps['hitSlop'];
549
- /** Custom UI component for message text */
550
- MessageText?: React.ComponentType<MessageTextProps>;
551
222
  /**
552
223
  * The number of lines of the message text to be displayed
553
224
  */
@@ -637,17 +308,7 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
637
308
  * ```
638
309
  */
639
310
  onPressMessage?: (payload: MessagePressableHandlerPayload) => void;
640
- /**
641
- * Override the entire content of the Poll component. The component has full access to the
642
- * usePollState() and usePollContext() hooks.
643
- * */
644
- PollContent?: React.ComponentType<PollContentProps>;
645
311
  quotedMessage?: LocalMessage | null;
646
- /**
647
- * UI component for ReactionListTop
648
- * Defaults to: [ReactionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Reaction/ReactionList.tsx)
649
- */
650
- ReactionListBottom?: React.ComponentType<ReactionListBottomProps>;
651
312
  /**
652
313
  * The position of the reaction list in the message
653
314
  */
@@ -658,31 +319,6 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
658
319
  */
659
320
  reactionListType?: 'clustered' | 'segmented';
660
321
 
661
- /**
662
- * UI component for ReactionListTop
663
- * Defaults to: [ReactionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Reaction/ReactionList.tsx)
664
- */
665
- ReactionListTop?: React.ComponentType<ReactionListTopProps>;
666
-
667
- /**
668
- * UI component for ReactionListBottom
669
- * Defaults to: [ReactionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Reaction/ReactionList.tsx)
670
- */
671
- ReactionListClustered: React.ComponentType<ReactionListClusteredProps>;
672
- /**
673
- * UI component for ReactionListSegmented
674
- * Defaults to: [ReactionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Reaction/ReactionList.tsx)
675
- */
676
- ReactionListItem: React.ComponentType<ReactionListItemProps>;
677
-
678
- /**
679
- * UI component for ReactionListItemWrapper
680
- * Defaults to: [ReactionListItemWrapper](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Reaction/ReactionListItemWrapper.tsx)
681
- */
682
- ReactionListItemWrapper: React.ComponentType<ReactionListItemWrapperProps>;
683
-
684
- ReactionListCountItem: React.ComponentType<ReactionListCountItemProps>;
685
-
686
322
  /**
687
323
  * Full override of the reaction function on Message and Message Overlay
688
324
  *
@@ -4,8 +4,10 @@ import {
4
4
  Platform,
5
5
  Pressable,
6
6
  StyleSheet,
7
+ StyleProp,
7
8
  useWindowDimensions,
8
9
  View,
10
+ ViewStyle,
9
11
  } from 'react-native';
10
12
  import { Gesture, GestureDetector } from 'react-native-gesture-handler';
11
13
  import Animated, {
@@ -28,11 +30,12 @@ import {
28
30
  Rect,
29
31
  useOverlayController,
30
32
  } from '../../state-store';
33
+ import { useComponentsContext } from '../componentsContext/ComponentsContext';
31
34
  import { useTheme } from '../themeContext/ThemeContext';
32
35
 
33
36
  const DURATION = 300;
34
37
 
35
- const DefaultMessageOverlayBackground = () => {
38
+ export const DefaultMessageOverlayBackground = () => {
36
39
  const {
37
40
  theme: { semantics },
38
41
  } = useTheme();
@@ -52,11 +55,15 @@ const DefaultMessageOverlayBackground = () => {
52
55
  );
53
56
  };
54
57
 
55
- type MessageOverlayHostLayerProps = {
56
- BackgroundComponent?: React.ComponentType;
58
+ export type MessageActionsProps = {
59
+ bottomItemStyle: StyleProp<ViewStyle>;
60
+ hostStyle: StyleProp<ViewStyle>;
61
+ portalHostStyle: StyleProp<ViewStyle>;
62
+ topItemStyle: StyleProp<ViewStyle>;
57
63
  };
58
64
 
59
- export const MessageOverlayHostLayer = ({ BackgroundComponent }: MessageOverlayHostLayerProps) => {
65
+ export const MessageOverlayHostLayer = () => {
66
+ const { MessageActions, MessageOverlayBackground } = useComponentsContext();
60
67
  const { id, closing } = useOverlayController();
61
68
  const insets = useSafeAreaInsets();
62
69
  const { height: screenH } = useWindowDimensions();
@@ -123,7 +130,7 @@ export const MessageOverlayHostLayer = ({ BackgroundComponent }: MessageOverlayH
123
130
  opacity: backdrop.value,
124
131
  }));
125
132
 
126
- const OverlayBackground = BackgroundComponent ?? DefaultMessageOverlayBackground;
133
+ const OverlayBackground = MessageOverlayBackground;
127
134
 
128
135
  const messageShiftY = useDerivedValue(() => {
129
136
  if (!messageH.value || !topH.value || !bottomH.value) return 0;
@@ -261,21 +268,32 @@ export const MessageOverlayHostLayer = ({ BackgroundComponent }: MessageOverlayH
261
268
  />
262
269
  ) : null}
263
270
 
264
- <Animated.View style={topItemStyle} testID='message-overlay-top'>
265
- <PortalHost name='top-item' style={styles.absoluteFill} />
266
- </Animated.View>
267
-
268
- <Animated.View
269
- pointerEvents='box-none'
270
- style={hostStyle}
271
- testID='message-overlay-message'
272
- >
273
- <PortalHost name='message-overlay' style={styles.absoluteFill} />
274
- </Animated.View>
275
-
276
- <Animated.View style={bottomItemStyle} testID='message-overlay-bottom'>
277
- <PortalHost name='bottom-item' style={styles.absoluteFill} />
278
- </Animated.View>
271
+ {MessageActions ? (
272
+ <MessageActions
273
+ bottomItemStyle={bottomItemStyle}
274
+ hostStyle={hostStyle}
275
+ portalHostStyle={styles.absoluteFill}
276
+ topItemStyle={topItemStyle}
277
+ />
278
+ ) : (
279
+ <>
280
+ <Animated.View style={topItemStyle} testID='message-overlay-top'>
281
+ <PortalHost name='top-item' style={styles.absoluteFill} />
282
+ </Animated.View>
283
+
284
+ <Animated.View
285
+ pointerEvents='box-none'
286
+ style={hostStyle}
287
+ testID='message-overlay-message'
288
+ >
289
+ <PortalHost name='message-overlay' style={styles.absoluteFill} />
290
+ </Animated.View>
291
+
292
+ <Animated.View style={bottomItemStyle} testID='message-overlay-bottom'>
293
+ <PortalHost name='bottom-item' style={styles.absoluteFill} />
294
+ </Animated.View>
295
+ </>
296
+ )}
279
297
  </View>
280
298
 
281
299
  <ClosingPortalHostsLayer closeCoverOpacity={closeCoverOpacity} />
@@ -26,10 +26,6 @@ export const OverlayContext = React.createContext(
26
26
  export type OverlayProviderProps = ImageGalleryProviderProps & {
27
27
  /** https://github.com/GetStream/stream-chat-react-native/wiki/Internationalization-(i18n) */
28
28
  i18nInstance?: Streami18n;
29
- /**
30
- * Custom backdrop component rendered behind overlay content in `MessageOverlayHostLayer`.
31
- */
32
- MessageOverlayBackground?: React.ComponentType;
33
29
  value?: Partial<OverlayContextValue>;
34
30
  };
35
31
 
@@ -44,7 +44,6 @@ export const OverlayProvider = (props: PropsWithChildren<OverlayProviderProps>)
44
44
  const {
45
45
  children,
46
46
  i18nInstance,
47
- MessageOverlayBackground,
48
47
  value,
49
48
  autoPlayVideo,
50
49
  giphyVersion,
@@ -107,7 +106,7 @@ export const OverlayProvider = (props: PropsWithChildren<OverlayProviderProps>)
107
106
  <PortalProvider>
108
107
  {children}
109
108
  {overlay === 'gallery' && <ImageGallery overlayOpacity={overlayOpacity} />}
110
- <MessageOverlayHostLayer BackgroundComponent={MessageOverlayBackground} />
109
+ <MessageOverlayHostLayer />
111
110
  </PortalProvider>
112
111
  </ThemeProvider>
113
112
  </ImageGalleryProvider>