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

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 (590) 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 -418
  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 -132
  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 +11 -20
  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 +4 -6
  46. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  47. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +6 -18
  48. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  49. package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js +8 -28
  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/MessageMenu/MessageActionList.js +4 -2
  110. package/lib/commonjs/components/MessageMenu/MessageActionList.js.map +1 -1
  111. package/lib/commonjs/components/MessageMenu/MessageMenu.js.map +1 -1
  112. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +4 -8
  113. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +1 -1
  114. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js +4 -2
  115. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
  116. package/lib/commonjs/components/Poll/CreatePollContent.js +3 -1
  117. package/lib/commonjs/components/Poll/CreatePollContent.js.map +1 -1
  118. package/lib/commonjs/components/Poll/Poll.js +12 -9
  119. package/lib/commonjs/components/Poll/Poll.js.map +1 -1
  120. package/lib/commonjs/components/Poll/components/PollAnswersList.js +5 -3
  121. package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -1
  122. package/lib/commonjs/components/Poll/components/PollOption.js +5 -3
  123. package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -1
  124. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +5 -5
  125. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  126. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js +5 -3
  127. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js.map +1 -1
  128. package/lib/commonjs/components/Reply/Reply.js +4 -2
  129. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  130. package/lib/commonjs/components/Thread/Thread.js +4 -8
  131. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  132. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +4 -6
  133. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  134. package/lib/commonjs/components/ThreadList/ThreadList.js +12 -15
  135. package/lib/commonjs/components/ThreadList/ThreadList.js.map +1 -1
  136. package/lib/commonjs/components/ThreadList/ThreadListItem.js +8 -11
  137. package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
  138. package/lib/commonjs/components/ui/Avatar/Avatar.js +3 -3
  139. package/lib/commonjs/components/ui/Avatar/Avatar.js.map +1 -1
  140. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  141. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  142. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  143. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  144. package/lib/commonjs/contexts/componentsContext/ComponentsContext.js +37 -0
  145. package/lib/commonjs/contexts/componentsContext/ComponentsContext.js.map +1 -0
  146. package/lib/commonjs/contexts/componentsContext/PLAN.md +148 -0
  147. package/lib/commonjs/contexts/componentsContext/defaultComponents.js +286 -0
  148. package/lib/commonjs/contexts/componentsContext/defaultComponents.js.map +1 -0
  149. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +1 -9
  150. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  151. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -1
  152. package/lib/commonjs/contexts/index.js +11 -0
  153. package/lib/commonjs/contexts/index.js.map +1 -1
  154. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  155. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -76
  156. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  157. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  158. package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js +7 -5
  159. package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
  160. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  161. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +1 -4
  162. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  163. package/lib/commonjs/contexts/threadsContext/ThreadsContext.js.map +1 -1
  164. package/lib/commonjs/version.json +1 -1
  165. package/lib/module/components/Attachment/Attachment.js +15 -52
  166. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  167. package/lib/module/components/Attachment/FileAttachment.js +4 -6
  168. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  169. package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -10
  170. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  171. package/lib/module/components/Attachment/FilePreview.js +3 -6
  172. package/lib/module/components/Attachment/FilePreview.js.map +1 -1
  173. package/lib/module/components/Attachment/Gallery.js +9 -28
  174. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  175. package/lib/module/components/Attachment/GalleryImage.js +3 -3
  176. package/lib/module/components/Attachment/GalleryImage.js.map +1 -1
  177. package/lib/module/components/Attachment/Giphy/GiphyImage.js +7 -13
  178. package/lib/module/components/Attachment/Giphy/GiphyImage.js.map +1 -1
  179. package/lib/module/components/Attachment/UnsupportedAttachment.js +4 -6
  180. package/lib/module/components/Attachment/UnsupportedAttachment.js.map +1 -1
  181. package/lib/module/components/Attachment/UrlPreview/URLPreview.js +3 -3
  182. package/lib/module/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
  183. package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js +3 -3
  184. package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
  185. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +4 -2
  186. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  187. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +7 -4
  188. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
  189. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +9 -13
  190. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  191. package/lib/module/components/Channel/Channel.js +9 -418
  192. package/lib/module/components/Channel/Channel.js.map +1 -1
  193. package/lib/module/components/Channel/hooks/useCreateChannelContext.js +0 -8
  194. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  195. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +3 -77
  196. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  197. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +2 -132
  198. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  199. package/lib/module/components/ChannelList/ChannelList.js +1 -57
  200. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  201. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js +4 -2
  202. package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
  203. package/lib/module/components/ChannelList/ChannelListView.js +11 -20
  204. package/lib/module/components/ChannelList/ChannelListView.js.map +1 -1
  205. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +1 -39
  206. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  207. package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js +3 -2
  208. package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
  209. package/lib/module/components/ChannelPreview/ChannelPreview.js +4 -6
  210. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  211. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +6 -18
  212. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  213. package/lib/module/components/ChannelPreview/ChannelPreviewView.js +8 -28
  214. package/lib/module/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
  215. package/lib/module/components/ChannelPreview/ChannelSwipableWrapper.js +3 -3
  216. package/lib/module/components/ChannelPreview/ChannelSwipableWrapper.js.map +1 -1
  217. package/lib/module/components/Chat/Chat.js +4 -6
  218. package/lib/module/components/Chat/Chat.js.map +1 -1
  219. package/lib/module/components/Chat/hooks/useCreateChatContext.js +0 -2
  220. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  221. package/lib/module/components/ImageGallery/ImageGallery.js +7 -9
  222. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  223. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +4 -2
  224. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  225. package/lib/module/components/Message/Message.js +9 -13
  226. package/lib/module/components/Message/Message.js.map +1 -1
  227. package/lib/module/components/Message/MessageItemView/MessageBubble.js +4 -2
  228. package/lib/module/components/Message/MessageItemView/MessageBubble.js.map +1 -1
  229. package/lib/module/components/Message/MessageItemView/MessageContent.js +18 -39
  230. package/lib/module/components/Message/MessageItemView/MessageContent.js.map +1 -1
  231. package/lib/module/components/Message/MessageItemView/MessageDeleted.js +5 -7
  232. package/lib/module/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
  233. package/lib/module/components/Message/MessageItemView/MessageFooter.js +4 -8
  234. package/lib/module/components/Message/MessageItemView/MessageFooter.js.map +1 -1
  235. package/lib/module/components/Message/MessageItemView/MessageHeader.js +8 -16
  236. package/lib/module/components/Message/MessageItemView/MessageHeader.js.map +1 -1
  237. package/lib/module/components/Message/MessageItemView/MessageItemView.js +13 -35
  238. package/lib/module/components/Message/MessageItemView/MessageItemView.js.map +1 -1
  239. package/lib/module/components/Message/MessageItemView/MessageReplies.js +3 -5
  240. package/lib/module/components/Message/MessageItemView/MessageReplies.js.map +1 -1
  241. package/lib/module/components/Message/MessageItemView/MessageTextContainer.js +3 -3
  242. package/lib/module/components/Message/MessageItemView/MessageTextContainer.js.map +1 -1
  243. package/lib/module/components/Message/MessageItemView/MessageWrapper.js +6 -4
  244. package/lib/module/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
  245. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js +6 -8
  246. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -1
  247. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js +7 -11
  248. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -1
  249. package/lib/module/components/MessageInput/MessageComposer.js +15 -55
  250. package/lib/module/components/MessageInput/MessageComposer.js.map +1 -1
  251. package/lib/module/components/MessageInput/MessageInputHeaderView.js +5 -5
  252. package/lib/module/components/MessageInput/MessageInputHeaderView.js.map +1 -1
  253. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +9 -17
  254. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
  255. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +5 -5
  256. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
  257. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +5 -5
  258. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
  259. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +5 -5
  260. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
  261. package/lib/module/components/MessageInput/components/InputButtons/index.js +4 -4
  262. package/lib/module/components/MessageInput/components/InputButtons/index.js.map +1 -1
  263. package/lib/module/components/MessageInput/components/LinkPreviewList.js +3 -2
  264. package/lib/module/components/MessageInput/components/LinkPreviewList.js.map +1 -1
  265. package/lib/module/components/MessageInput/components/OutputButtons/index.js +7 -13
  266. package/lib/module/components/MessageInput/components/OutputButtons/index.js.map +1 -1
  267. package/lib/module/components/MessageList/MessageFlashList.js +14 -40
  268. package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
  269. package/lib/module/components/MessageList/MessageList.js +12 -38
  270. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  271. package/lib/module/components/MessageList/StickyHeader.js +3 -1
  272. package/lib/module/components/MessageList/StickyHeader.js.map +1 -1
  273. package/lib/module/components/MessageMenu/MessageActionList.js +4 -2
  274. package/lib/module/components/MessageMenu/MessageActionList.js.map +1 -1
  275. package/lib/module/components/MessageMenu/MessageMenu.js.map +1 -1
  276. package/lib/module/components/MessageMenu/MessageUserReactions.js +4 -8
  277. package/lib/module/components/MessageMenu/MessageUserReactions.js.map +1 -1
  278. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js +4 -2
  279. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
  280. package/lib/module/components/Poll/CreatePollContent.js +3 -1
  281. package/lib/module/components/Poll/CreatePollContent.js.map +1 -1
  282. package/lib/module/components/Poll/Poll.js +12 -9
  283. package/lib/module/components/Poll/Poll.js.map +1 -1
  284. package/lib/module/components/Poll/components/PollAnswersList.js +5 -3
  285. package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -1
  286. package/lib/module/components/Poll/components/PollOption.js +5 -3
  287. package/lib/module/components/Poll/components/PollOption.js.map +1 -1
  288. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +5 -5
  289. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  290. package/lib/module/components/Poll/components/PollResults/PollResults.js +5 -3
  291. package/lib/module/components/Poll/components/PollResults/PollResults.js.map +1 -1
  292. package/lib/module/components/Reply/Reply.js +4 -2
  293. package/lib/module/components/Reply/Reply.js.map +1 -1
  294. package/lib/module/components/Thread/Thread.js +4 -8
  295. package/lib/module/components/Thread/Thread.js.map +1 -1
  296. package/lib/module/components/Thread/components/ThreadFooterComponent.js +4 -6
  297. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  298. package/lib/module/components/ThreadList/ThreadList.js +12 -15
  299. package/lib/module/components/ThreadList/ThreadList.js.map +1 -1
  300. package/lib/module/components/ThreadList/ThreadListItem.js +8 -11
  301. package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
  302. package/lib/module/components/ui/Avatar/Avatar.js +3 -3
  303. package/lib/module/components/ui/Avatar/Avatar.js.map +1 -1
  304. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  305. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  306. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  307. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  308. package/lib/module/contexts/componentsContext/ComponentsContext.js +37 -0
  309. package/lib/module/contexts/componentsContext/ComponentsContext.js.map +1 -0
  310. package/lib/module/contexts/componentsContext/PLAN.md +148 -0
  311. package/lib/module/contexts/componentsContext/defaultComponents.js +286 -0
  312. package/lib/module/contexts/componentsContext/defaultComponents.js.map +1 -0
  313. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +1 -9
  314. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  315. package/lib/module/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -1
  316. package/lib/module/contexts/index.js +11 -0
  317. package/lib/module/contexts/index.js.map +1 -1
  318. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  319. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -76
  320. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  321. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  322. package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js +7 -5
  323. package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
  324. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  325. package/lib/module/contexts/overlayContext/OverlayProvider.js +1 -4
  326. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  327. package/lib/module/contexts/threadsContext/ThreadsContext.js.map +1 -1
  328. package/lib/module/version.json +1 -1
  329. package/lib/typescript/components/Attachment/Attachment.d.ts +1 -1
  330. package/lib/typescript/components/Attachment/Attachment.d.ts.map +1 -1
  331. package/lib/typescript/components/Attachment/FileAttachment.d.ts +1 -1
  332. package/lib/typescript/components/Attachment/FileAttachment.d.ts.map +1 -1
  333. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +1 -2
  334. package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts.map +1 -1
  335. package/lib/typescript/components/Attachment/FilePreview.d.ts +2 -3
  336. package/lib/typescript/components/Attachment/FilePreview.d.ts.map +1 -1
  337. package/lib/typescript/components/Attachment/Gallery.d.ts +1 -1
  338. package/lib/typescript/components/Attachment/Gallery.d.ts.map +1 -1
  339. package/lib/typescript/components/Attachment/GalleryImage.d.ts +3 -2
  340. package/lib/typescript/components/Attachment/GalleryImage.d.ts.map +1 -1
  341. package/lib/typescript/components/Attachment/Giphy/GiphyImage.d.ts +4 -2
  342. package/lib/typescript/components/Attachment/Giphy/GiphyImage.d.ts.map +1 -1
  343. package/lib/typescript/components/Attachment/UnsupportedAttachment.d.ts +2 -3
  344. package/lib/typescript/components/Attachment/UnsupportedAttachment.d.ts.map +1 -1
  345. package/lib/typescript/components/Attachment/UrlPreview/URLPreview.d.ts +4 -3
  346. package/lib/typescript/components/Attachment/UrlPreview/URLPreview.d.ts.map +1 -1
  347. package/lib/typescript/components/Attachment/UrlPreview/URLPreviewCompact.d.ts +4 -3
  348. package/lib/typescript/components/Attachment/UrlPreview/URLPreviewCompact.d.ts.map +1 -1
  349. package/lib/typescript/components/AttachmentPicker/AttachmentPicker.d.ts.map +1 -1
  350. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts.map +1 -1
  351. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +2 -3
  352. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts.map +1 -1
  353. package/lib/typescript/components/Channel/Channel.d.ts +3 -28
  354. package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
  355. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +1 -1
  356. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts.map +1 -1
  357. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
  358. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts.map +1 -1
  359. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
  360. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
  361. package/lib/typescript/components/Channel/hooks/useMessageListPagination.d.ts.map +1 -1
  362. package/lib/typescript/components/ChannelList/ChannelList.d.ts +2 -10
  363. package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
  364. package/lib/typescript/components/ChannelList/ChannelListLoadingIndicator.d.ts.map +1 -1
  365. package/lib/typescript/components/ChannelList/ChannelListView.d.ts +1 -1
  366. package/lib/typescript/components/ChannelList/ChannelListView.d.ts.map +1 -1
  367. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +1 -1
  368. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts.map +1 -1
  369. package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts +1 -2
  370. package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts.map +1 -1
  371. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +1 -1
  372. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
  373. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +1 -2
  374. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts.map +1 -1
  375. package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts +1 -1
  376. package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts.map +1 -1
  377. package/lib/typescript/components/ChannelPreview/ChannelSwipableWrapper.d.ts +1 -3
  378. package/lib/typescript/components/ChannelPreview/ChannelSwipableWrapper.d.ts.map +1 -1
  379. package/lib/typescript/components/Chat/Chat.d.ts +1 -7
  380. package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
  381. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +1 -1
  382. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  383. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +6 -1
  384. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts.map +1 -1
  385. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts.map +1 -1
  386. package/lib/typescript/components/ImageGallery/components/types.d.ts +0 -2
  387. package/lib/typescript/components/ImageGallery/components/types.d.ts.map +1 -1
  388. package/lib/typescript/components/Message/Message.d.ts +1 -1
  389. package/lib/typescript/components/Message/Message.d.ts.map +1 -1
  390. package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts +1 -2
  391. package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts.map +1 -1
  392. package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts +1 -1
  393. package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts.map +1 -1
  394. package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts +1 -2
  395. package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts.map +1 -1
  396. package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts +0 -2
  397. package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts.map +1 -1
  398. package/lib/typescript/components/Message/MessageItemView/MessageHeader.d.ts.map +1 -1
  399. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts +1 -1
  400. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts.map +1 -1
  401. package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts +1 -2
  402. package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts.map +1 -1
  403. package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts +1 -1
  404. package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts.map +1 -1
  405. package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts.map +1 -1
  406. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts +1 -1
  407. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts.map +1 -1
  408. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts +1 -1
  409. package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts.map +1 -1
  410. package/lib/typescript/components/MessageInput/MessageComposer.d.ts +1 -2
  411. package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -1
  412. package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts +3 -4
  413. package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts.map +1 -1
  414. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.d.ts +1 -1
  415. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.d.ts.map +1 -1
  416. package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts +1 -1
  417. package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts.map +1 -1
  418. package/lib/typescript/components/MessageInput/components/LinkPreviewList.d.ts.map +1 -1
  419. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts +1 -1
  420. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts.map +1 -1
  421. package/lib/typescript/components/MessageList/MessageFlashList.d.ts +1 -1
  422. package/lib/typescript/components/MessageList/MessageFlashList.d.ts.map +1 -1
  423. package/lib/typescript/components/MessageList/MessageList.d.ts +1 -1
  424. package/lib/typescript/components/MessageList/MessageList.d.ts.map +1 -1
  425. package/lib/typescript/components/MessageList/StickyHeader.d.ts +2 -3
  426. package/lib/typescript/components/MessageList/StickyHeader.d.ts.map +1 -1
  427. package/lib/typescript/components/MessageMenu/MessageActionList.d.ts +1 -2
  428. package/lib/typescript/components/MessageMenu/MessageActionList.d.ts.map +1 -1
  429. package/lib/typescript/components/MessageMenu/MessageMenu.d.ts +1 -2
  430. package/lib/typescript/components/MessageMenu/MessageMenu.d.ts.map +1 -1
  431. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts +1 -1
  432. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +1 -1
  433. package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts +2 -3
  434. package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts.map +1 -1
  435. package/lib/typescript/components/Poll/CreatePollContent.d.ts +2 -2
  436. package/lib/typescript/components/Poll/CreatePollContent.d.ts.map +1 -1
  437. package/lib/typescript/components/Poll/Poll.d.ts +5 -8
  438. package/lib/typescript/components/Poll/Poll.d.ts.map +1 -1
  439. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts +1 -2
  440. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -1
  441. package/lib/typescript/components/Poll/components/PollOption.d.ts +1 -2
  442. package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -1
  443. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts +1 -4
  444. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts.map +1 -1
  445. package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts +1 -2
  446. package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts.map +1 -1
  447. package/lib/typescript/components/Reply/Reply.d.ts +4 -3
  448. package/lib/typescript/components/Reply/Reply.d.ts.map +1 -1
  449. package/lib/typescript/components/Thread/Thread.d.ts +2 -8
  450. package/lib/typescript/components/Thread/Thread.d.ts.map +1 -1
  451. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +1 -2
  452. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts.map +1 -1
  453. package/lib/typescript/components/ThreadList/ThreadList.d.ts +2 -3
  454. package/lib/typescript/components/ThreadList/ThreadList.d.ts.map +1 -1
  455. package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
  456. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +0 -17
  457. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts.map +1 -1
  458. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +0 -23
  459. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts.map +1 -1
  460. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +0 -112
  461. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
  462. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +0 -5
  463. package/lib/typescript/contexts/chatContext/ChatContext.d.ts.map +1 -1
  464. package/lib/typescript/contexts/componentsContext/ComponentsContext.d.ts +321 -0
  465. package/lib/typescript/contexts/componentsContext/ComponentsContext.d.ts.map +1 -0
  466. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts +296 -0
  467. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts.map +1 -0
  468. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts.map +1 -1
  469. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts +0 -5
  470. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts.map +1 -1
  471. package/lib/typescript/contexts/index.d.ts +1 -0
  472. package/lib/typescript/contexts/index.d.ts.map +1 -1
  473. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +1 -169
  474. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
  475. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
  476. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts.map +1 -1
  477. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +3 -332
  478. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
  479. package/lib/typescript/contexts/overlayContext/MessageOverlayHostLayer.d.ts +2 -5
  480. package/lib/typescript/contexts/overlayContext/MessageOverlayHostLayer.d.ts.map +1 -1
  481. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +0 -4
  482. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts.map +1 -1
  483. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts.map +1 -1
  484. package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts +0 -9
  485. package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts.map +1 -1
  486. package/package.json +1 -1
  487. package/src/__tests__/offline-support/offline-feature.js +64 -67
  488. package/src/components/Attachment/Attachment.tsx +7 -69
  489. package/src/components/Attachment/FileAttachment.tsx +4 -7
  490. package/src/components/Attachment/FileAttachmentGroup.tsx +9 -19
  491. package/src/components/Attachment/FilePreview.tsx +4 -9
  492. package/src/components/Attachment/Gallery.tsx +6 -83
  493. package/src/components/Attachment/GalleryImage.tsx +5 -4
  494. package/src/components/Attachment/Giphy/GiphyImage.tsx +15 -37
  495. package/src/components/Attachment/UnsupportedAttachment.tsx +5 -10
  496. package/src/components/Attachment/UrlPreview/URLPreview.tsx +6 -4
  497. package/src/components/Attachment/UrlPreview/URLPreviewCompact.tsx +6 -4
  498. package/src/components/AttachmentPicker/AttachmentPicker.tsx +2 -2
  499. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx +5 -4
  500. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +4 -20
  501. package/src/components/Channel/Channel.tsx +31 -438
  502. package/src/components/Channel/__tests__/isAttachmentEqualHandler.test.js +12 -9
  503. package/src/components/Channel/hooks/useCreateChannelContext.ts +0 -8
  504. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +1 -81
  505. package/src/components/Channel/hooks/useCreateMessagesContext.ts +0 -130
  506. package/src/components/ChannelList/ChannelList.tsx +3 -76
  507. package/src/components/ChannelList/ChannelListLoadingIndicator.tsx +3 -1
  508. package/src/components/ChannelList/ChannelListView.tsx +12 -33
  509. package/src/components/ChannelList/__tests__/ChannelList.test.js +173 -116
  510. package/src/components/ChannelList/__tests__/ChannelListView.test.js +64 -41
  511. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +0 -39
  512. package/src/components/ChannelPreview/ChannelDetailsBottomSheet.tsx +2 -2
  513. package/src/components/ChannelPreview/ChannelPreview.tsx +6 -14
  514. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +7 -33
  515. package/src/components/ChannelPreview/ChannelPreviewView.tsx +11 -40
  516. package/src/components/ChannelPreview/ChannelSwipableWrapper.tsx +2 -4
  517. package/src/components/ChannelPreview/__tests__/ChannelDetailsBottomSheet.test.tsx +16 -12
  518. package/src/components/ChannelPreview/__tests__/ChannelPreview.test.tsx +25 -24
  519. package/src/components/ChannelPreview/__tests__/ChannelSwipableWrapper.test.tsx +11 -6
  520. package/src/components/Chat/Chat.tsx +5 -12
  521. package/src/components/Chat/hooks/useCreateChatContext.ts +0 -2
  522. package/src/components/ImageGallery/ImageGallery.tsx +14 -16
  523. package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +0 -8
  524. package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +25 -21
  525. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +3 -1
  526. package/src/components/ImageGallery/components/types.ts +0 -3
  527. package/src/components/Message/Message.tsx +11 -32
  528. package/src/components/Message/MessageItemView/MessageBubble.tsx +11 -7
  529. package/src/components/Message/MessageItemView/MessageContent.tsx +14 -47
  530. package/src/components/Message/MessageItemView/MessageDeleted.tsx +3 -9
  531. package/src/components/Message/MessageItemView/MessageFooter.tsx +2 -14
  532. package/src/components/Message/MessageItemView/MessageHeader.tsx +11 -29
  533. package/src/components/Message/MessageItemView/MessageItemView.tsx +10 -42
  534. package/src/components/Message/MessageItemView/MessageReplies.tsx +2 -8
  535. package/src/components/Message/MessageItemView/MessageTextContainer.tsx +4 -8
  536. package/src/components/Message/MessageItemView/MessageWrapper.tsx +4 -9
  537. package/src/components/Message/MessageItemView/ReactionList/ReactionListBottom.tsx +4 -12
  538. package/src/components/Message/MessageItemView/ReactionList/ReactionListTop.tsx +4 -20
  539. package/src/components/Message/MessageItemView/__tests__/MessageContent.test.js +47 -30
  540. package/src/components/Message/MessageItemView/__tests__/MessageItemView.test.js +16 -7
  541. package/src/components/Message/MessageItemView/__tests__/MessageTextContainer.test.tsx +8 -4
  542. package/src/components/MessageInput/MessageComposer.tsx +16 -76
  543. package/src/components/MessageInput/MessageInputHeaderView.tsx +3 -3
  544. package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.tsx +7 -35
  545. package/src/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.tsx +2 -2
  546. package/src/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.tsx +2 -2
  547. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.tsx +6 -4
  548. package/src/components/MessageInput/components/InputButtons/index.tsx +4 -5
  549. package/src/components/MessageInput/components/LinkPreviewList.tsx +3 -2
  550. package/src/components/MessageInput/components/OutputButtons/index.tsx +4 -23
  551. package/src/components/MessageList/MessageFlashList.tsx +13 -57
  552. package/src/components/MessageList/MessageList.tsx +15 -57
  553. package/src/components/MessageList/StickyHeader.tsx +4 -3
  554. package/src/components/MessageMenu/MessageActionList.tsx +4 -3
  555. package/src/components/MessageMenu/MessageMenu.tsx +35 -47
  556. package/src/components/MessageMenu/MessageUserReactions.tsx +7 -27
  557. package/src/components/MessageMenu/MessageUserReactionsItem.tsx +3 -6
  558. package/src/components/MessageMenu/__tests__/MessageUserReactions.test.tsx +12 -11
  559. package/src/components/Poll/CreatePollContent.tsx +3 -4
  560. package/src/components/Poll/Poll.tsx +22 -24
  561. package/src/components/Poll/components/PollAnswersList.tsx +9 -11
  562. package/src/components/Poll/components/PollOption.tsx +9 -11
  563. package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +10 -11
  564. package/src/components/Poll/components/PollResults/PollResults.tsx +9 -15
  565. package/src/components/Reply/Reply.tsx +18 -5
  566. package/src/components/Thread/Thread.tsx +3 -18
  567. package/src/components/Thread/components/ThreadFooterComponent.tsx +10 -11
  568. package/src/components/ThreadList/ThreadList.tsx +14 -22
  569. package/src/components/ThreadList/ThreadListItem.tsx +6 -11
  570. package/src/components/ui/Avatar/Avatar.tsx +2 -2
  571. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +0 -15
  572. package/src/contexts/channelContext/ChannelContext.tsx +0 -24
  573. package/src/contexts/channelsContext/ChannelsContext.tsx +0 -113
  574. package/src/contexts/chatContext/ChatContext.tsx +0 -5
  575. package/src/contexts/componentsContext/ComponentsContext.tsx +62 -0
  576. package/src/contexts/componentsContext/PLAN.md +148 -0
  577. package/src/contexts/componentsContext/__tests__/defaultComponents.test.ts +44 -0
  578. package/src/contexts/componentsContext/defaultComponents.ts +332 -0
  579. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +0 -8
  580. package/src/contexts/imageGalleryContext/ImageGalleryContextBase.tsx +0 -10
  581. package/src/contexts/index.ts +1 -0
  582. package/src/contexts/messageInputContext/MessageInputContext.tsx +0 -185
  583. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +1 -75
  584. package/src/contexts/messagesContext/MessagesContext.tsx +3 -358
  585. package/src/contexts/overlayContext/MessageOverlayHostLayer.tsx +5 -7
  586. package/src/contexts/overlayContext/OverlayContext.tsx +0 -4
  587. package/src/contexts/overlayContext/OverlayProvider.tsx +1 -2
  588. package/src/contexts/overlayContext/__tests__/MessageOverlayHostLayer.test.tsx +21 -6
  589. package/src/contexts/threadsContext/ThreadsContext.tsx +0 -9
  590. package/src/version.json +1 -1
@@ -6,6 +6,7 @@ import { GestureDetector } from 'react-native-gesture-handler';
6
6
  import { cleanup, render, screen, waitFor } from '@testing-library/react-native';
7
7
 
8
8
  import { ChannelsStateProvider } from '../../../../contexts/channelsStateContext/ChannelsStateContext';
9
+ import { WithComponents } from '../../../../contexts/componentsContext/ComponentsContext';
9
10
  import { useMessageContext } from '../../../../contexts/messageContext/MessageContext';
10
11
 
11
12
  import { getOrCreateChannelApi } from '../../../../mock-builders/api/getOrCreateChannel';
@@ -42,13 +43,21 @@ describe('MessageItemView', () => {
42
43
  useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
43
44
  channel = chatClient.channel('messaging', mockedChannel.id);
44
45
 
45
- renderMessage = (options, channelProps) =>
46
+ renderMessage = (options, channelProps, componentOverrides) =>
46
47
  render(
47
48
  <ChannelsStateProvider>
48
49
  <Chat client={chatClient}>
49
- <Channel channel={channel} {...channelProps}>
50
- <Message groupStyles={['bottom']} {...options} />
51
- </Channel>
50
+ {componentOverrides ? (
51
+ <WithComponents overrides={componentOverrides}>
52
+ <Channel channel={channel} {...channelProps}>
53
+ <Message groupStyles={['bottom']} {...options} />
54
+ </Channel>
55
+ </WithComponents>
56
+ ) : (
57
+ <Channel channel={channel} {...channelProps}>
58
+ <Message groupStyles={['bottom']} {...options} />
59
+ </Channel>
60
+ )}
52
61
  </Chat>
53
62
  </ChannelsStateProvider>,
54
63
  );
@@ -136,7 +145,7 @@ describe('MessageItemView', () => {
136
145
  return <Text ref={contextMenuAnchorRef}>Custom Message Item</Text>;
137
146
  };
138
147
 
139
- renderMessage({ message }, { MessageItemView: CustomMessageItemView });
148
+ renderMessage({ message }, {}, { MessageItemView: CustomMessageItemView });
140
149
 
141
150
  await waitFor(() => {
142
151
  expect(screen.queryByText('Custom Message Item')).not.toBeNull();
@@ -147,7 +156,7 @@ describe('MessageItemView', () => {
147
156
  const user = generateUser();
148
157
  const message = generateMessage({ user });
149
158
 
150
- renderMessage({ message }, { MessageSpacer: () => <Text>Message Spacer</Text> });
159
+ renderMessage({ message }, {}, { MessageSpacer: () => <Text>Message Spacer</Text> });
151
160
 
152
161
  await waitFor(() => {
153
162
  expect(screen.queryByText('Message Spacer')).not.toBeNull();
@@ -193,7 +202,7 @@ describe('MessageItemView', () => {
193
202
  const user = generateUser();
194
203
  const message = generateMessage({ user });
195
204
 
196
- renderMessage({ message }, { MessageHeader: () => <Text>Message Header</Text> });
205
+ renderMessage({ message }, {}, { MessageHeader: () => <Text>Message Header</Text> });
197
206
 
198
207
  await waitFor(() => {
199
208
  expect(screen.queryByText('Message Header')).not.toBeNull();
@@ -5,6 +5,7 @@ import { cleanup, render, waitFor } from '@testing-library/react-native';
5
5
 
6
6
  import { LocalMessage } from 'stream-chat';
7
7
 
8
+ import { WithComponents } from '../../../../contexts/componentsContext/ComponentsContext';
8
9
  import { OverlayProvider } from '../../../../contexts/overlayContext/OverlayProvider';
9
10
  import { ThemeProvider } from '../../../../contexts/themeContext/ThemeContext';
10
11
  import { defaultTheme } from '../../../../contexts/themeContext/utils/theme';
@@ -43,10 +44,13 @@ describe('MessageTextContainer', () => {
43
44
 
44
45
  rerender(
45
46
  <ThemeProvider theme={defaultTheme}>
46
- <MessageTextContainer
47
- message={message as unknown as LocalMessage}
48
- MessageText={({ message }) => <Text testID='message-text'>{message?.text}</Text>}
49
- />
47
+ <WithComponents
48
+ overrides={{
49
+ MessageText: ({ message }) => <Text testID='message-text'>{message?.text}</Text>,
50
+ }}
51
+ >
52
+ <MessageTextContainer message={message as unknown as LocalMessage} />
53
+ </WithComponents>
50
54
  </ThemeProvider>,
51
55
  );
52
56
 
@@ -27,6 +27,7 @@ import {
27
27
  ChannelContextValue,
28
28
  useChannelContext,
29
29
  } from '../../contexts/channelContext/ChannelContext';
30
+ import { useComponentsContext } from '../../contexts/componentsContext/ComponentsContext';
30
31
  import {
31
32
  MessageComposerAPIContextValue,
32
33
  useMessageComposerAPIContext,
@@ -36,10 +37,6 @@ import {
36
37
  MessageInputContextValue,
37
38
  useMessageInputContext,
38
39
  } from '../../contexts/messageInputContext/MessageInputContext';
39
- import {
40
- MessagesContextValue,
41
- useMessagesContext,
42
- } from '../../contexts/messagesContext/MessagesContext';
43
40
 
44
41
  import { useTheme } from '../../contexts/themeContext/ThemeContext';
45
42
  import {
@@ -160,36 +157,18 @@ type MessageComposerPropsWithContext = Pick<ChatContextValue, 'isOnline'> &
160
157
  | 'asyncMessagesLockDistance'
161
158
  | 'asyncMessagesMinimumPressDuration'
162
159
  | 'asyncMessagesSlideToCancelDistance'
163
- | 'AttachmentUploadPreviewList'
164
- | 'AudioRecorder'
165
- | 'AudioRecordingInProgress'
166
- | 'AudioRecordingLockIndicator'
167
- | 'AudioRecordingPreview'
168
- | 'AutoCompleteSuggestionList'
169
160
  | 'closeAttachmentPicker'
170
161
  | 'compressImageQuality'
171
- | 'Input'
172
- | 'InputView'
173
162
  | 'inputBoxRef'
174
- | 'InputButtons'
175
- | 'MessageComposerLeadingView'
176
- | 'MessageComposerTrailingView'
177
163
  | 'messageInputFloating'
178
164
  | 'messageInputHeightStore'
179
- | 'MessageInputHeaderView'
180
- | 'MessageInputTrailingView'
181
- | 'SendButton'
182
- | 'StartAudioRecordingButton'
183
165
  | 'uploadNewFile'
184
166
  | 'openPollCreationDialog'
185
167
  | 'closePollCreationDialog'
186
168
  | 'showPollCreationDialog'
187
169
  | 'sendMessage'
188
- | 'CreatePollContent'
189
170
  | 'createPollOptionGap'
190
- | 'StopMessageStreamingButton'
191
171
  > &
192
- Pick<MessagesContextValue, 'Reply'> &
193
172
  Pick<TranslationContextValue, 't'> &
194
173
  Pick<MessageComposerAPIContextValue, 'clearEditingState'> &
195
174
  Pick<AudioRecorderManagerState, 'micLocked'> & {
@@ -210,23 +189,11 @@ const MessageComposerWithContext = (props: MessageComposerPropsWithContext) => {
210
189
  additionalTextInputProps,
211
190
  asyncMessagesLockDistance,
212
191
  asyncMessagesSlideToCancelDistance,
213
- AudioRecorder,
214
- AudioRecordingInProgress,
215
- AudioRecordingLockIndicator,
216
- AudioRecordingPreview,
217
- AutoCompleteSuggestionList,
218
192
  closeAttachmentPicker,
219
193
  closePollCreationDialog,
220
- CreatePollContent,
221
194
  createPollOptionGap,
222
- InputView,
223
- MessageComposerLeadingView,
224
- MessageComposerTrailingView,
225
195
  messageInputFloating,
226
196
  messageInputHeightStore,
227
- MessageInputHeaderView,
228
- MessageInputTrailingView,
229
- Input,
230
197
  inputBoxRef,
231
198
  isKeyboardVisible,
232
199
  members,
@@ -239,6 +206,20 @@ const MessageComposerWithContext = (props: MessageComposerPropsWithContext) => {
239
206
  recordingStatus,
240
207
  } = props;
241
208
 
209
+ const {
210
+ AudioRecorder,
211
+ AudioRecordingInProgress,
212
+ AudioRecordingLockIndicator,
213
+ AudioRecordingPreview,
214
+ AutoCompleteSuggestionList,
215
+ Input,
216
+ InputView,
217
+ MessageComposerLeadingView,
218
+ MessageComposerTrailingView,
219
+ MessageInputHeaderView,
220
+ MessageInputTrailingView,
221
+ } = useComponentsContext();
222
+
242
223
  const styles = useStyles();
243
224
  const { selectedPicker } = useAttachmentPickerState();
244
225
  const { attachmentPickerBottomSheetHeight, bottomInset } = useAttachmentPickerContext();
@@ -486,7 +467,6 @@ const MessageComposerWithContext = (props: MessageComposerPropsWithContext) => {
486
467
  <SafeAreaViewWrapper style={styles.pollSafeArea}>
487
468
  <CreatePoll
488
469
  closePollCreationDialog={closePollCreationDialog}
489
- CreatePollContent={CreatePollContent}
490
470
  createPollOptionGap={createPollOptionGap}
491
471
  sendMessage={sendMessage}
492
472
  />
@@ -660,42 +640,22 @@ export const MessageComposer = (props: MessageComposerProps) => {
660
640
  asyncMessagesLockDistance,
661
641
  asyncMessagesMinimumPressDuration,
662
642
  asyncMessagesSlideToCancelDistance,
663
- AttachmentUploadPreviewList,
664
- AudioRecorder,
665
643
  audioRecordingEnabled,
666
- AudioRecordingInProgress,
667
- AudioRecordingLockIndicator,
668
- AudioRecordingPreview,
669
- AudioRecordingWaveform,
670
- AutoCompleteSuggestionList,
671
644
  closeAttachmentPicker,
672
645
  closePollCreationDialog,
673
646
  compressImageQuality,
674
- CreatePollContent,
675
- Input,
676
- InputView,
677
647
  inputBoxRef,
678
- InputButtons,
679
- MessageComposerLeadingView,
680
- MessageComposerTrailingView,
681
648
  messageInputFloating,
682
649
  messageInputHeightStore,
683
- MessageInputHeaderView,
684
- MessageInputTrailingView,
685
650
  openPollCreationDialog,
686
- SendButton,
687
651
  sendMessage,
688
- SendMessageDisallowedIndicator,
689
652
  showPollCreationDialog,
690
- StartAudioRecordingButton,
691
- StopMessageStreamingButton,
692
653
  uploadNewFile,
693
654
  } = useMessageInputContext();
655
+ const { SendMessageDisallowedIndicator } = useComponentsContext();
694
656
  const messageComposer = useMessageComposer();
695
657
  const editing = !!messageComposer.editedMessage;
696
658
  const { clearEditingState } = useMessageComposerAPIContext();
697
-
698
- const { Reply } = useMessagesContext();
699
659
  const isKeyboardVisible = useKeyboardVisibility();
700
660
 
701
661
  const { micLocked, isRecordingStateIdle, recordingStatus } = useStateStore(
@@ -725,43 +685,23 @@ export const MessageComposer = (props: MessageComposerProps) => {
725
685
  asyncMessagesLockDistance,
726
686
  asyncMessagesMinimumPressDuration,
727
687
  asyncMessagesSlideToCancelDistance,
728
- AttachmentUploadPreviewList,
729
- AudioRecorder,
730
688
  audioRecordingEnabled,
731
- AudioRecordingInProgress,
732
- AudioRecordingLockIndicator,
733
- AudioRecordingPreview,
734
- AudioRecordingWaveform,
735
- AutoCompleteSuggestionList,
736
689
  channel,
737
690
  clearEditingState,
738
691
  closeAttachmentPicker,
739
692
  closePollCreationDialog,
740
693
  compressImageQuality,
741
- CreatePollContent,
742
694
  // TODO: probably not needed anymore, please check
743
695
  editing,
744
- Input,
745
- InputView,
746
696
  inputBoxRef,
747
- InputButtons,
748
- MessageComposerLeadingView,
749
- MessageComposerTrailingView,
750
697
  isKeyboardVisible,
751
698
  isOnline,
752
699
  members,
753
700
  messageInputFloating,
754
701
  messageInputHeightStore,
755
- MessageInputHeaderView,
756
- MessageInputTrailingView,
757
702
  openPollCreationDialog,
758
- Reply,
759
- SendButton,
760
703
  sendMessage,
761
- SendMessageDisallowedIndicator,
762
704
  showPollCreationDialog,
763
- StartAudioRecordingButton,
764
- StopMessageStreamingButton,
765
705
  t,
766
706
  uploadNewFile,
767
707
  watchers,
@@ -9,11 +9,11 @@ import { useHasLinkPreviews } from './hooks/useLinkPreviews';
9
9
  import { idleRecordingStateSelector } from './utils/audioRecorderSelectors';
10
10
  import { messageComposerStateStoreSelector } from './utils/messageComposerSelectors';
11
11
 
12
+ import { useComponentsContext } from '../../contexts/componentsContext/ComponentsContext';
12
13
  import { useMessageComposerAPIContext } from '../../contexts/messageComposerContext/MessageComposerAPIContext';
13
14
  import { useHasAttachments } from '../../contexts/messageInputContext/hooks/useHasAttachments';
14
15
  import { useMessageComposer } from '../../contexts/messageInputContext/hooks/useMessageComposer';
15
16
  import { useMessageInputContext } from '../../contexts/messageInputContext/MessageInputContext';
16
- import { useMessagesContext } from '../../contexts/messagesContext/MessagesContext';
17
17
  import { useTheme } from '../../contexts/themeContext/ThemeContext';
18
18
  import { useStateStore } from '../../hooks/useStateStore';
19
19
  import { primitives } from '../../theme';
@@ -30,8 +30,8 @@ export const MessageInputHeaderView = () => {
30
30
  const { clearEditingState } = useMessageComposerAPIContext();
31
31
  const { quotedMessage } = useStateStore(messageComposer.state, messageComposerStateStoreSelector);
32
32
  const hasLinkPreviews = useHasLinkPreviews();
33
- const { audioRecorderManager, AttachmentUploadPreviewList } = useMessageInputContext();
34
- const { Reply } = useMessagesContext();
33
+ const { audioRecorderManager } = useMessageInputContext();
34
+ const { AttachmentUploadPreviewList, Reply } = useComponentsContext();
35
35
  const { isRecordingStateIdle } = useStateStore(
36
36
  audioRecorderManager.state,
37
37
  idleRecordingStateSelector,
@@ -31,11 +31,9 @@ import {
31
31
  } from 'stream-chat';
32
32
 
33
33
  import { useMessageComposer } from '../../../../contexts';
34
+ import { useComponentsContext } from '../../../../contexts/componentsContext/ComponentsContext';
34
35
  import { useAttachmentManagerState } from '../../../../contexts/messageInputContext/hooks/useAttachmentManagerState';
35
- import {
36
- MessageInputContextValue,
37
- useMessageInputContext,
38
- } from '../../../../contexts/messageInputContext/MessageInputContext';
36
+ import { useMessageInputContext } from '../../../../contexts/messageInputContext/MessageInputContext';
39
37
  import { useTheme } from '../../../../contexts/themeContext/ThemeContext';
40
38
  import { isSoundPackageAvailable } from '../../../../native';
41
39
  import { primitives } from '../../../../theme';
@@ -44,13 +42,7 @@ const END_ANCHOR_THRESHOLD = 16;
44
42
  const END_SHRINK_COMPENSATION_DURATION = 200;
45
43
  const MAX_AUDIO_ATTACHMENTS_CONTAINER_WIDTH = 560;
46
44
 
47
- export type AttachmentUploadListPreviewPropsWithContext = Pick<
48
- MessageInputContextValue,
49
- | 'AudioAttachmentUploadPreview'
50
- | 'FileAttachmentUploadPreview'
51
- | 'ImageAttachmentUploadPreview'
52
- | 'VideoAttachmentUploadPreview'
53
- >;
45
+ export type AttachmentUploadListPreviewPropsWithContext = Record<string, never>;
54
46
 
55
47
  const AttachmentPreviewCell = ({ children }: { children: React.ReactNode }) => (
56
48
  <Animated.View
@@ -85,15 +77,13 @@ const getIsAudioAttachmentPreview =
85
77
  * AttachmentUploadPreviewList
86
78
  * UI Component to preview the files set for upload
87
79
  */
88
- const UnMemoizedAttachmentUploadPreviewList = (
89
- props: AttachmentUploadListPreviewPropsWithContext,
90
- ) => {
80
+ const UnMemoizedAttachmentUploadPreviewList = () => {
91
81
  const {
92
82
  AudioAttachmentUploadPreview,
93
83
  FileAttachmentUploadPreview,
94
84
  ImageAttachmentUploadPreview,
95
85
  VideoAttachmentUploadPreview,
96
- } = props;
86
+ } = useComponentsContext();
97
87
  const { audioRecordingSendOnComplete } = useMessageInputContext();
98
88
  const { attachmentManager } = useMessageComposer();
99
89
  const { attachments } = useAttachmentManagerState();
@@ -370,7 +360,7 @@ const UnMemoizedAttachmentUploadPreviewList = (
370
360
  );
371
361
  };
372
362
 
373
- export type AttachmentUploadPreviewListProps = Partial<AttachmentUploadListPreviewPropsWithContext>;
363
+ export type AttachmentUploadPreviewListProps = Record<string, never>;
374
364
 
375
365
  const MemoizedAttachmentUploadPreviewListWithContext = React.memo(
376
366
  UnMemoizedAttachmentUploadPreviewList,
@@ -380,25 +370,7 @@ const MemoizedAttachmentUploadPreviewListWithContext = React.memo(
380
370
  * AttachmentUploadPreviewList
381
371
  * UI Component to preview the files set for upload
382
372
  */
383
- export const AttachmentUploadPreviewList = (props: AttachmentUploadPreviewListProps) => {
384
- const {
385
- AudioAttachmentUploadPreview,
386
- FileAttachmentUploadPreview,
387
- ImageAttachmentUploadPreview,
388
- VideoAttachmentUploadPreview,
389
- } = useMessageInputContext();
390
- return (
391
- <MemoizedAttachmentUploadPreviewListWithContext
392
- {...{
393
- AudioAttachmentUploadPreview,
394
- FileAttachmentUploadPreview,
395
- ImageAttachmentUploadPreview,
396
- VideoAttachmentUploadPreview,
397
- }}
398
- {...props}
399
- />
400
- );
401
- };
373
+ export const AttachmentUploadPreviewList = () => <MemoizedAttachmentUploadPreviewListWithContext />;
402
374
 
403
375
  const styles = StyleSheet.create({
404
376
  audioAttachmentsContainer: {
@@ -8,7 +8,7 @@ import { AttachmentRemoveControl } from './AttachmentRemoveControl';
8
8
 
9
9
  import { FilePreview } from '../../../../components/Attachment/FilePreview';
10
10
  import { useChatContext } from '../../../../contexts/chatContext/ChatContext';
11
- import { useMessageInputContext } from '../../../../contexts/messageInputContext/MessageInputContext';
11
+ import { useComponentsContext } from '../../../../contexts/componentsContext/ComponentsContext';
12
12
  import { useTheme } from '../../../../contexts/themeContext/ThemeContext';
13
13
  import { primitives } from '../../../../theme';
14
14
  import { UploadAttachmentPreviewProps } from '../../../../types/types';
@@ -31,7 +31,7 @@ export const FileAttachmentUploadPreview = ({
31
31
  FileUploadInProgressIndicator,
32
32
  FileUploadRetryIndicator,
33
33
  FileUploadNotSupportedIndicator,
34
- } = useMessageInputContext();
34
+ } = useComponentsContext();
35
35
  const { enableOfflineSupport } = useChatContext();
36
36
  const indicatorType = getIndicatorTypeForFileState(
37
37
  attachment.localMetadata.uploadState,
@@ -7,7 +7,7 @@ import { LocalImageAttachment } from 'stream-chat';
7
7
  import { AttachmentRemoveControl } from './AttachmentRemoveControl';
8
8
 
9
9
  import { useChatContext } from '../../../../contexts/chatContext/ChatContext';
10
- import { useMessageInputContext } from '../../../../contexts/messageInputContext/MessageInputContext';
10
+ import { useComponentsContext } from '../../../../contexts/componentsContext/ComponentsContext';
11
11
  import { useTheme } from '../../../../contexts/themeContext/ThemeContext';
12
12
  import { primitives } from '../../../../theme';
13
13
  import { UploadAttachmentPreviewProps } from '../../../../types/types';
@@ -29,7 +29,7 @@ export const ImageAttachmentUploadPreview = ({
29
29
  ImageUploadInProgressIndicator,
30
30
  ImageUploadRetryIndicator,
31
31
  ImageUploadNotSupportedIndicator,
32
- } = useMessageInputContext();
32
+ } = useComponentsContext();
33
33
  const indicatorType = loading
34
34
  ? ProgressIndicatorTypes.IN_PROGRESS
35
35
  : getIndicatorTypeForFileState(attachment.localMetadata.uploadState, enableOfflineSupport);
@@ -3,6 +3,7 @@ import { StyleSheet, Text, View } from 'react-native';
3
3
 
4
4
  import dayjs from 'dayjs';
5
5
 
6
+ import { useComponentsContext } from '../../../../contexts/componentsContext/ComponentsContext';
6
7
  import {
7
8
  MessageInputContextValue,
8
9
  useMessageInputContext,
@@ -15,7 +16,7 @@ import { primitives } from '../../../../theme';
15
16
 
16
17
  type AudioRecordingInProgressPropsWithContext = Pick<
17
18
  MessageInputContextValue,
18
- 'audioRecorderManager' | 'AudioRecordingWaveform'
19
+ 'audioRecorderManager'
19
20
  > &
20
21
  Pick<AudioRecorderManagerState, 'duration' | 'waveformData'> & {
21
22
  /**
@@ -25,7 +26,8 @@ type AudioRecordingInProgressPropsWithContext = Pick<
25
26
  };
26
27
 
27
28
  const AudioRecordingInProgressWithContext = (props: AudioRecordingInProgressPropsWithContext) => {
28
- const { AudioRecordingWaveform, maxDataPointsDrawn = 60, duration, waveformData } = props;
29
+ const { maxDataPointsDrawn = 60, duration, waveformData } = props;
30
+ const { AudioRecordingWaveform } = useComponentsContext();
29
31
 
30
32
  const styles = useStyles();
31
33
 
@@ -69,7 +71,7 @@ const audioRecorderSelector = (state: AudioRecorderManagerState) => ({
69
71
  * Component displayed when the audio is in the recording state.
70
72
  */
71
73
  export const AudioRecordingInProgress = (props: AudioRecordingInProgressProps) => {
72
- const { audioRecorderManager, AudioRecordingWaveform } = useMessageInputContext();
74
+ const { audioRecorderManager } = useMessageInputContext();
73
75
 
74
76
  const { duration, waveformData } = useStateStore(
75
77
  audioRecorderManager.state,
@@ -78,7 +80,7 @@ export const AudioRecordingInProgress = (props: AudioRecordingInProgressProps) =
78
80
 
79
81
  return (
80
82
  <MemoizedAudioRecordingInProgress
81
- {...{ audioRecorderManager, AudioRecordingWaveform, duration, waveformData }}
83
+ {...{ audioRecorderManager, duration, waveformData }}
82
84
  {...props}
83
85
  />
84
86
  );
@@ -10,6 +10,7 @@ import Animated, {
10
10
  } from 'react-native-reanimated';
11
11
 
12
12
  import { OwnCapabilitiesContextValue } from '../../../../contexts';
13
+ import { useComponentsContext } from '../../../../contexts/componentsContext/ComponentsContext';
13
14
  import { useActiveCommand } from '../../../../contexts/messageInputContext/hooks/useActiveCommand';
14
15
  import {
15
16
  MessageInputContextValue,
@@ -23,19 +24,19 @@ export type InputButtonsProps = Partial<InputButtonsWithContextProps>;
23
24
 
24
25
  export type InputButtonsWithContextProps = Pick<
25
26
  MessageInputContextValue,
26
- 'AttachButton' | 'hasCameraPicker' | 'hasCommands' | 'hasFilePicker' | 'hasImagePicker'
27
+ 'hasCameraPicker' | 'hasCommands' | 'hasFilePicker' | 'hasImagePicker'
27
28
  > &
28
29
  Pick<OwnCapabilitiesContextValue, 'uploadFile'>;
29
30
 
30
31
  export const InputButtonsWithContext = (props: InputButtonsWithContextProps) => {
31
32
  const {
32
- AttachButton,
33
33
  hasCameraPicker,
34
34
  hasCommands,
35
35
  hasFilePicker,
36
36
  hasImagePicker,
37
37
  uploadFile: ownCapabilitiesUploadFile,
38
38
  } = props;
39
+ const { AttachButton } = useComponentsContext();
39
40
  const { selectedPicker } = useAttachmentPickerState();
40
41
  const rotation = useSharedValue(0);
41
42
  const command = useActiveCommand();
@@ -107,14 +108,12 @@ const MemoizedInputButtonsWithContext = React.memo(
107
108
  ) as typeof InputButtonsWithContext;
108
109
 
109
110
  export const InputButtons = (props: InputButtonsProps) => {
110
- const { AttachButton, hasCameraPicker, hasCommands, hasFilePicker, hasImagePicker } =
111
- useMessageInputContext();
111
+ const { hasCameraPicker, hasCommands, hasFilePicker, hasImagePicker } = useMessageInputContext();
112
112
  const { uploadFile } = useOwnCapabilitiesContext();
113
113
 
114
114
  return (
115
115
  <MemoizedInputButtonsWithContext
116
116
  {...{
117
- AttachButton,
118
117
  hasCameraPicker,
119
118
  hasCommands,
120
119
  hasFilePicker,
@@ -9,7 +9,8 @@ import { LinkPreviewsManager } from 'stream-chat';
9
9
 
10
10
  import { AttachmentRemoveControl } from './AttachmentPreview/AttachmentRemoveControl';
11
11
 
12
- import { useChatContext, useMessageComposer, useTheme } from '../../../contexts';
12
+ import { useMessageComposer, useTheme } from '../../../contexts';
13
+ import { useComponentsContext } from '../../../contexts/componentsContext/ComponentsContext';
13
14
  import { Link } from '../../../icons/link';
14
15
  import { components, primitives } from '../../../theme';
15
16
  import { useLinkPreviews } from '../hooks/useLinkPreviews';
@@ -38,7 +39,7 @@ type LinkPreviewProps = {
38
39
 
39
40
  export const LinkPreviewCard = ({ linkPreview }: LinkPreviewProps) => {
40
41
  const styles = useStyles();
41
- const { ImageComponent } = useChatContext();
42
+ const { ImageComponent } = useComponentsContext();
42
43
  const { linkPreviewsManager } = useMessageComposer();
43
44
  const { image_url, thumb_url, title, text, og_scrape_url } = linkPreview;
44
45
 
@@ -14,6 +14,7 @@ import {
14
14
  useMessageComposerHasSendableData,
15
15
  useTheme,
16
16
  } from '../../../../contexts';
17
+ import { useComponentsContext } from '../../../../contexts/componentsContext/ComponentsContext';
17
18
  import { useHasAttachments } from '../../../../contexts/messageInputContext/hooks/useHasAttachments';
18
19
  import { useMessageComposer } from '../../../../contexts/messageInputContext/hooks/useMessageComposer';
19
20
  import {
@@ -36,10 +37,6 @@ export type OutputButtonsWithContextProps = Pick<ChatContextValue, 'isOnline'> &
36
37
  | 'asyncMessagesLockDistance'
37
38
  | 'audioRecordingSendOnComplete'
38
39
  | 'audioRecordingEnabled'
39
- | 'CooldownTimer'
40
- | 'SendButton'
41
- | 'StopMessageStreamingButton'
42
- | 'StartAudioRecordingButton'
43
40
  > & {
44
41
  cooldownIsActive: boolean;
45
42
  hasAttachments: boolean;
@@ -51,17 +48,9 @@ const textComposerStateSelector = (state: TextComposerState) => ({
51
48
  });
52
49
 
53
50
  export const OutputButtonsWithContext = (props: OutputButtonsWithContextProps) => {
54
- const {
55
- audioRecordingEnabled,
56
- channel,
57
- CooldownTimer,
58
- cooldownIsActive,
59
- isOnline,
60
- SendButton,
61
- StopMessageStreamingButton,
62
- StartAudioRecordingButton,
63
- hasAttachments,
64
- } = props;
51
+ const { audioRecordingEnabled, channel, cooldownIsActive, isOnline, hasAttachments } = props;
52
+ const { CooldownTimer, SendButton, StartAudioRecordingButton, StopMessageStreamingButton } =
53
+ useComponentsContext();
65
54
  const {
66
55
  theme: {
67
56
  messageComposer: {
@@ -180,10 +169,6 @@ export const OutputButtons = (props: OutputButtonsProps) => {
180
169
  asyncMessagesSlideToCancelDistance,
181
170
  asyncMessagesLockDistance,
182
171
  audioRecordingSendOnComplete,
183
- CooldownTimer,
184
- SendButton,
185
- StopMessageStreamingButton,
186
- StartAudioRecordingButton,
187
172
  } = useMessageInputContext();
188
173
  const cooldownIsActive = useIsCooldownActive();
189
174
  const hasAttachments = useHasAttachments();
@@ -198,11 +183,7 @@ export const OutputButtons = (props: OutputButtonsProps) => {
198
183
  audioRecordingEnabled,
199
184
  channel,
200
185
  cooldownIsActive,
201
- CooldownTimer,
202
186
  isOnline,
203
- SendButton,
204
- StartAudioRecordingButton,
205
- StopMessageStreamingButton,
206
187
  hasAttachments,
207
188
  }}
208
189
  {...props}