stream-chat-react-native-core 9.10.1-beta.2 → 10.0.0-rc.1

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 (2846) hide show
  1. package/lib/commonjs/a11y/hooks/useA11yLabel.js +2 -1
  2. package/lib/commonjs/a11y/hooks/useA11yLabel.js.map +1 -1
  3. package/lib/commonjs/components/AITypingIndicatorView/AITypingIndicatorView.js +2 -2
  4. package/lib/commonjs/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
  5. package/lib/commonjs/components/AITypingIndicatorView/hooks/useAIState.js +15 -47
  6. package/lib/commonjs/components/AITypingIndicatorView/hooks/useAIState.js.map +1 -1
  7. package/lib/commonjs/components/Accessibility/NotificationAnnouncer.js +9 -7
  8. package/lib/commonjs/components/Accessibility/NotificationAnnouncer.js.map +1 -1
  9. package/lib/commonjs/components/Accessibility/hooks/useIncomingMessageAnnouncements.js +10 -10
  10. package/lib/commonjs/components/Accessibility/hooks/useIncomingMessageAnnouncements.js.map +1 -1
  11. package/lib/commonjs/components/Attachment/Attachment.js +6 -6
  12. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  13. package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js +14 -13
  14. package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js.map +1 -1
  15. package/lib/commonjs/components/Attachment/FileAttachment.js +4 -4
  16. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  17. package/lib/commonjs/components/Attachment/FilePreview.js +4 -2
  18. package/lib/commonjs/components/Attachment/FilePreview.js.map +1 -1
  19. package/lib/commonjs/components/Attachment/Gallery.js +9 -5
  20. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  21. package/lib/commonjs/components/Attachment/Giphy/Giphy.js +1 -1
  22. package/lib/commonjs/components/Attachment/Giphy/Giphy.js.map +1 -1
  23. package/lib/commonjs/components/Attachment/UnsupportedAttachment.js +3 -3
  24. package/lib/commonjs/components/Attachment/UnsupportedAttachment.js.map +1 -1
  25. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +2 -1
  26. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
  27. package/lib/commonjs/components/Attachment/utils/openUrlSafely.js +3 -0
  28. package/lib/commonjs/components/Attachment/utils/openUrlSafely.js.map +1 -1
  29. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +2 -2
  30. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
  31. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +29 -24
  32. package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
  33. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js +22 -21
  34. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
  35. package/lib/commonjs/components/AttachmentPicker/components/AttachmentTypePickerButton.js +9 -9
  36. package/lib/commonjs/components/AttachmentPicker/components/AttachmentTypePickerButton.js.map +1 -1
  37. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +8 -9
  38. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  39. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  40. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +1 -1
  41. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  42. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js +2 -2
  43. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js.map +1 -1
  44. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionRoleItem.js +1 -1
  45. package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionRoleItem.js.map +1 -1
  46. package/lib/commonjs/components/Channel/Channel.js +54 -1410
  47. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  48. package/lib/commonjs/components/Channel/ChannelShell.js +398 -0
  49. package/lib/commonjs/components/Channel/ChannelShell.js.map +1 -0
  50. package/lib/commonjs/components/Channel/hooks/useChannelLifecycle.js +120 -0
  51. package/lib/commonjs/components/Channel/hooks/useChannelLifecycle.js.map +1 -0
  52. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +3 -53
  53. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  54. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +1 -9
  55. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  56. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +3 -19
  57. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  58. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +11 -27
  59. package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  60. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js +6 -46
  61. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  62. package/lib/commonjs/components/Channel/hooks/useSupersededChannelSwap.js +28 -0
  63. package/lib/commonjs/components/Channel/hooks/useSupersededChannelSwap.js.map +1 -0
  64. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js +2 -2
  65. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -1
  66. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsMemberSection.js +10 -6
  67. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsMemberSection.js.map +1 -1
  68. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js +2 -2
  69. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
  70. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js +1 -1
  71. package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
  72. package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormContent.js +2 -2
  73. package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormContent.js.map +1 -1
  74. package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js +2 -2
  75. package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js.map +1 -1
  76. package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js +5 -5
  77. package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
  78. package/lib/commonjs/components/ChannelDetails/components/ChannelEditName.js +2 -2
  79. package/lib/commonjs/components/ChannelDetails/components/ChannelEditName.js.map +1 -1
  80. package/lib/commonjs/components/ChannelDetails/components/members/AddMemberSearchResultItem.js +3 -3
  81. package/lib/commonjs/components/ChannelDetails/components/members/AddMemberSearchResultItem.js.map +1 -1
  82. package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersButton.js +3 -3
  83. package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersButton.js.map +1 -1
  84. package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js +3 -3
  85. package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js.map +1 -1
  86. package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js +2 -2
  87. package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js.map +1 -1
  88. package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -2
  89. package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
  90. package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberList.js +3 -3
  91. package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberList.js.map +1 -1
  92. package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js +1 -1
  93. package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
  94. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +3 -3
  95. package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -1
  96. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js +2 -2
  97. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -1
  98. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js +3 -3
  99. package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -1
  100. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +5 -5
  101. package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -1
  102. package/lib/commonjs/components/ChannelDetails/hooks/members/useMemberRoles.js +3 -3
  103. package/lib/commonjs/components/ChannelDetails/hooks/members/useMemberRoles.js.map +1 -1
  104. package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js +5 -3
  105. package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js.map +1 -1
  106. package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +5 -4
  107. package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -1
  108. package/lib/commonjs/components/ChannelDetails/hooks/useEditChannelImage.js +6 -6
  109. package/lib/commonjs/components/ChannelDetails/hooks/useEditChannelImage.js.map +1 -1
  110. package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js +9 -5
  111. package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -1
  112. package/lib/commonjs/components/ChannelDetails/hooks/useUserActivityStatus.js +8 -7
  113. package/lib/commonjs/components/ChannelDetails/hooks/useUserActivityStatus.js.map +1 -1
  114. package/lib/commonjs/components/ChannelList/ChannelList.js +23 -98
  115. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  116. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js +1 -1
  117. package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  118. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +1 -1
  119. package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  120. package/lib/commonjs/components/ChannelList/ChannelListView.js +28 -68
  121. package/lib/commonjs/components/ChannelList/ChannelListView.js.map +1 -1
  122. package/lib/commonjs/components/ChannelList/hooks/index.js +0 -11
  123. package/lib/commonjs/components/ChannelList/hooks/index.js.map +1 -1
  124. package/lib/commonjs/components/ChannelList/hooks/useChannelMembersState.js +32 -9
  125. package/lib/commonjs/components/ChannelList/hooks/useChannelMembersState.js.map +1 -1
  126. package/lib/commonjs/components/ChannelList/hooks/useChannelOnlineMemberCount.js +6 -15
  127. package/lib/commonjs/components/ChannelList/hooks/useChannelOnlineMemberCount.js.map +1 -1
  128. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +20 -44
  129. package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  130. package/lib/commonjs/components/ChannelList/hooks/useMutedChannels.js +7 -7
  131. package/lib/commonjs/components/ChannelList/hooks/useMutedChannels.js.map +1 -1
  132. package/lib/commonjs/components/ChannelList/hooks/useMutedUsers.js +7 -9
  133. package/lib/commonjs/components/ChannelList/hooks/useMutedUsers.js.map +1 -1
  134. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +69 -125
  135. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  136. package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js +12 -3
  137. package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
  138. package/lib/commonjs/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js +19 -11
  139. package/lib/commonjs/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js.map +1 -1
  140. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +2 -3
  141. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  142. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +6 -5
  143. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  144. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +1 -1
  145. package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
  146. package/lib/commonjs/components/ChannelPreview/ChannelPreviewPinnedStatus.js +1 -1
  147. package/lib/commonjs/components/ChannelPreview/ChannelPreviewPinnedStatus.js.map +1 -1
  148. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +9 -8
  149. package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  150. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTypingIndicator.js +8 -8
  151. package/lib/commonjs/components/ChannelPreview/ChannelPreviewTypingIndicator.js.map +1 -1
  152. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +1 -1
  153. package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  154. package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js +1 -3
  155. package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
  156. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewData.js +25 -118
  157. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewData.js.map +1 -1
  158. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js +11 -4
  159. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  160. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  161. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.js +14 -5
  162. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.js.map +1 -1
  163. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js +3 -3
  164. package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js.map +1 -1
  165. package/lib/commonjs/components/ChannelPreview/hooks/useChannelTypingState.js +2 -37
  166. package/lib/commonjs/components/ChannelPreview/hooks/useChannelTypingState.js.map +1 -1
  167. package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelMuted.js +6 -29
  168. package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelMuted.js.map +1 -1
  169. package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelPinned.js +1 -1
  170. package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelPinned.js.map +1 -1
  171. package/lib/commonjs/components/Chat/Chat.js +53 -59
  172. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  173. package/lib/commonjs/components/Chat/hooks/index.js +16 -16
  174. package/lib/commonjs/components/Chat/hooks/index.js.map +1 -1
  175. package/lib/commonjs/components/Chat/hooks/useAppSettingsGetter.js +75 -0
  176. package/lib/commonjs/components/Chat/hooks/useAppSettingsGetter.js.map +1 -0
  177. package/lib/commonjs/components/Chat/hooks/useClientUserId.js +17 -0
  178. package/lib/commonjs/components/Chat/hooks/useClientUserId.js.map +1 -0
  179. package/lib/commonjs/components/Chat/hooks/useConnectionLifecycle.js +53 -0
  180. package/lib/commonjs/components/Chat/hooks/useConnectionLifecycle.js.map +1 -0
  181. package/lib/commonjs/components/Chat/hooks/useCreateChatClient.js +15 -1
  182. package/lib/commonjs/components/Chat/hooks/useCreateChatClient.js.map +1 -1
  183. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js +7 -25
  184. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  185. package/lib/commonjs/components/Chat/hooks/useInitializeOfflineDb.js +11 -4
  186. package/lib/commonjs/components/Chat/hooks/useInitializeOfflineDb.js.map +1 -1
  187. package/lib/commonjs/components/Chat/hooks/useNetworkConnectionState.js +22 -0
  188. package/lib/commonjs/components/Chat/hooks/useNetworkConnectionState.js.map +1 -0
  189. package/lib/commonjs/components/Chat/hooks/usePendingUploadsDefault.js +24 -0
  190. package/lib/commonjs/components/Chat/hooks/usePendingUploadsDefault.js.map +1 -0
  191. package/lib/commonjs/components/Chat/hooks/useWSConnectionState.js +63 -0
  192. package/lib/commonjs/components/Chat/hooks/useWSConnectionState.js.map +1 -0
  193. package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js +1 -1
  194. package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -1
  195. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +3 -3
  196. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  197. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +6 -6
  198. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  199. package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js +1 -1
  200. package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  201. package/lib/commonjs/components/Indicators/EmptyStateIndicator.js +4 -4
  202. package/lib/commonjs/components/Indicators/EmptyStateIndicator.js.map +1 -1
  203. package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js +3 -3
  204. package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  205. package/lib/commonjs/components/Indicators/LoadingIndicator.js +3 -3
  206. package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
  207. package/lib/commonjs/components/Message/Message.js +64 -195
  208. package/lib/commonjs/components/Message/Message.js.map +1 -1
  209. package/lib/commonjs/components/Message/MessageItemView/Headers/MessagePinnedHeader.js +1 -1
  210. package/lib/commonjs/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -1
  211. package/lib/commonjs/components/Message/MessageItemView/Headers/MessageReminderHeader.js +2 -2
  212. package/lib/commonjs/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -1
  213. package/lib/commonjs/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js +1 -1
  214. package/lib/commonjs/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -1
  215. package/lib/commonjs/components/Message/MessageItemView/Headers/SentToChannelHeader.js +34 -19
  216. package/lib/commonjs/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -1
  217. package/lib/commonjs/components/Message/MessageItemView/MessageBounce.js +8 -8
  218. package/lib/commonjs/components/Message/MessageItemView/MessageBounce.js.map +1 -1
  219. package/lib/commonjs/components/Message/MessageItemView/MessageContent.js +4 -8
  220. package/lib/commonjs/components/Message/MessageItemView/MessageContent.js.map +1 -1
  221. package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js +1 -1
  222. package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
  223. package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js +17 -15
  224. package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js.map +1 -1
  225. package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js +27 -23
  226. package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js.map +1 -1
  227. package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js +14 -19
  228. package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js.map +1 -1
  229. package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js +7 -16
  230. package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js.map +1 -1
  231. package/lib/commonjs/components/Message/MessageItemView/MessageStatus.js +25 -33
  232. package/lib/commonjs/components/Message/MessageItemView/MessageStatus.js.map +1 -1
  233. package/lib/commonjs/components/Message/MessageItemView/MessageTimestamp.js +4 -4
  234. package/lib/commonjs/components/Message/MessageItemView/MessageTimestamp.js.map +1 -1
  235. package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js +37 -31
  236. package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
  237. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListClustered.js +3 -3
  238. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -1
  239. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItem.js +1 -1
  240. package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -1
  241. package/lib/commonjs/components/Message/hooks/useCreateMessageActionHandlers.js +453 -0
  242. package/lib/commonjs/components/Message/hooks/useCreateMessageActionHandlers.js.map +1 -0
  243. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +5 -12
  244. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  245. package/lib/commonjs/components/Message/hooks/useIsMessageDeliveredToOthers.js +25 -0
  246. package/lib/commonjs/components/Message/hooks/useIsMessageDeliveredToOthers.js.map +1 -0
  247. package/lib/commonjs/components/Message/hooks/useIsMessageReadByOthers.js +25 -0
  248. package/lib/commonjs/components/Message/hooks/useIsMessageReadByOthers.js.map +1 -0
  249. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +9 -440
  250. package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  251. package/lib/commonjs/components/Message/hooks/useMessageActions.js +59 -87
  252. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
  253. package/lib/commonjs/components/Message/hooks/useMessageData.js +4 -5
  254. package/lib/commonjs/components/Message/hooks/useMessageData.js.map +1 -1
  255. package/lib/commonjs/components/Message/hooks/useMessageDeliveryData.js +12 -36
  256. package/lib/commonjs/components/Message/hooks/useMessageDeliveryData.js.map +1 -1
  257. package/lib/commonjs/components/Message/hooks/useMessageOperations.js +144 -0
  258. package/lib/commonjs/components/Message/hooks/useMessageOperations.js.map +1 -0
  259. package/lib/commonjs/components/Message/hooks/useMessageReadData.js +12 -36
  260. package/lib/commonjs/components/Message/hooks/useMessageReadData.js.map +1 -1
  261. package/lib/commonjs/components/Message/hooks/useProcessReactions.js +4 -2
  262. package/lib/commonjs/components/Message/hooks/useProcessReactions.js.map +1 -1
  263. package/lib/commonjs/components/Message/hooks/useUserMuteActive.js +15 -7
  264. package/lib/commonjs/components/Message/hooks/useUserMuteActive.js.map +1 -1
  265. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  266. package/lib/commonjs/components/MessageInput/MessageComposer.js +25 -18
  267. package/lib/commonjs/components/MessageInput/MessageComposer.js.map +1 -1
  268. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
  269. package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  270. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -12
  271. package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  272. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
  273. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
  274. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +3 -3
  275. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
  276. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js +6 -6
  277. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js.map +1 -1
  278. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +6 -6
  279. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
  280. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +3 -4
  281. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
  282. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +6 -5
  283. package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
  284. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js +5 -5
  285. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
  286. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +4 -4
  287. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
  288. package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
  289. package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
  290. package/lib/commonjs/components/MessageInput/components/InputButtons/index.js +9 -2
  291. package/lib/commonjs/components/MessageInput/components/InputButtons/index.js.map +1 -1
  292. package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
  293. package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
  294. package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
  295. package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
  296. package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js +3 -3
  297. package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js.map +1 -1
  298. package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js +7 -5
  299. package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
  300. package/lib/commonjs/components/MessageList/InlineDateSeparator.js +6 -6
  301. package/lib/commonjs/components/MessageList/InlineDateSeparator.js.map +1 -1
  302. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +5 -8
  303. package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  304. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +5 -8
  305. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  306. package/lib/commonjs/components/MessageList/InlineUnreadIndicator.js +5 -3
  307. package/lib/commonjs/components/MessageList/InlineUnreadIndicator.js.map +1 -1
  308. package/lib/commonjs/components/MessageList/MessageFlashList.js +152 -390
  309. package/lib/commonjs/components/MessageList/MessageFlashList.js.map +1 -1
  310. package/lib/commonjs/components/MessageList/MessageList.js +141 -436
  311. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  312. package/lib/commonjs/components/MessageList/MessageSystem.js +5 -4
  313. package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
  314. package/lib/commonjs/components/MessageList/NetworkDownIndicator.js +8 -16
  315. package/lib/commonjs/components/MessageList/NetworkDownIndicator.js.map +1 -1
  316. package/lib/commonjs/components/MessageList/ScrollToBottomButton.js +13 -7
  317. package/lib/commonjs/components/MessageList/ScrollToBottomButton.js.map +1 -1
  318. package/lib/commonjs/components/MessageList/StickyHeader.js +5 -5
  319. package/lib/commonjs/components/MessageList/StickyHeader.js.map +1 -1
  320. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +15 -6
  321. package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  322. package/lib/commonjs/components/MessageList/UnreadMessagesNotification.js +39 -26
  323. package/lib/commonjs/components/MessageList/UnreadMessagesNotification.js.map +1 -1
  324. package/lib/commonjs/components/MessageList/hooks/useMarkRead.js +50 -0
  325. package/lib/commonjs/components/MessageList/hooks/useMarkRead.js.map +1 -0
  326. package/lib/commonjs/components/MessageList/hooks/useMessageDateSeparator.js +4 -3
  327. package/lib/commonjs/components/MessageList/hooks/useMessageDateSeparator.js.map +1 -1
  328. package/lib/commonjs/components/MessageList/hooks/useMessageList.js +20 -27
  329. package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
  330. package/lib/commonjs/components/MessageList/hooks/useMessageListFocus.js +41 -0
  331. package/lib/commonjs/components/MessageList/hooks/useMessageListFocus.js.map +1 -0
  332. package/lib/commonjs/components/MessageList/hooks/useMessageListLiveState.js +72 -0
  333. package/lib/commonjs/components/MessageList/hooks/useMessageListLiveState.js.map +1 -0
  334. package/lib/commonjs/components/MessageList/hooks/useMessageListPagination.js +71 -0
  335. package/lib/commonjs/components/MessageList/hooks/useMessageListPagination.js.map +1 -0
  336. package/lib/commonjs/components/MessageList/hooks/useOwnUnreadCount.js +22 -0
  337. package/lib/commonjs/components/MessageList/hooks/useOwnUnreadCount.js.map +1 -0
  338. package/lib/commonjs/components/MessageList/hooks/useScrollToBottomAccessibilityAction.js.map +1 -1
  339. package/lib/commonjs/components/MessageList/hooks/useStickyHeaderDate.js +41 -0
  340. package/lib/commonjs/components/MessageList/hooks/useStickyHeaderDate.js.map +1 -0
  341. package/lib/commonjs/components/MessageList/hooks/useTypingString.js +2 -2
  342. package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
  343. package/lib/commonjs/components/MessageList/hooks/useTypingUsers.js +21 -8
  344. package/lib/commonjs/components/MessageList/hooks/useTypingUsers.js.map +1 -1
  345. package/lib/commonjs/components/MessageList/hooks/useUnreadNotificationVisibility.js +56 -0
  346. package/lib/commonjs/components/MessageList/hooks/useUnreadNotificationVisibility.js.map +1 -0
  347. package/lib/commonjs/components/MessageList/utils/buildMessageListWithNeighbours.js +2 -2
  348. package/lib/commonjs/components/MessageList/utils/buildMessageListWithNeighbours.js.map +1 -1
  349. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js +8 -7
  350. package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  351. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js +2 -1
  352. package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
  353. package/lib/commonjs/components/MessageMenu/MessageActionList.js +1 -1
  354. package/lib/commonjs/components/MessageMenu/MessageActionList.js.map +1 -1
  355. package/lib/commonjs/components/MessageMenu/MessageActionListWithActions.js +77 -0
  356. package/lib/commonjs/components/MessageMenu/MessageActionListWithActions.js.map +1 -0
  357. package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js +1 -1
  358. package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js.map +1 -1
  359. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +14 -11
  360. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +1 -1
  361. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js +2 -2
  362. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
  363. package/lib/commonjs/components/MessageMenu/hooks/useFetchReactions.js +37 -28
  364. package/lib/commonjs/components/MessageMenu/hooks/useFetchReactions.js.map +1 -1
  365. package/lib/commonjs/components/Notifications/Notification.js +1 -1
  366. package/lib/commonjs/components/Notifications/Notification.js.map +1 -1
  367. package/lib/commonjs/components/Notifications/NotificationList.js +1 -1
  368. package/lib/commonjs/components/Notifications/NotificationList.js.map +1 -1
  369. package/lib/commonjs/components/Notifications/hooks/useNotificationTarget.js +1 -2
  370. package/lib/commonjs/components/Notifications/hooks/useNotificationTarget.js.map +1 -1
  371. package/lib/commonjs/components/Notifications/notificationTranslations.js +59 -45
  372. package/lib/commonjs/components/Notifications/notificationTranslations.js.map +1 -1
  373. package/lib/commonjs/components/Poll/CreatePollContent.js +9 -9
  374. package/lib/commonjs/components/Poll/CreatePollContent.js.map +1 -1
  375. package/lib/commonjs/components/Poll/Poll.js +7 -5
  376. package/lib/commonjs/components/Poll/Poll.js.map +1 -1
  377. package/lib/commonjs/components/Poll/components/CreatePollHeader.js +3 -3
  378. package/lib/commonjs/components/Poll/components/CreatePollHeader.js.map +1 -1
  379. package/lib/commonjs/components/Poll/components/CreatePollOptions.js +9 -4
  380. package/lib/commonjs/components/Poll/components/CreatePollOptions.js.map +1 -1
  381. package/lib/commonjs/components/Poll/components/MultipleAnswersField.js +2 -2
  382. package/lib/commonjs/components/Poll/components/MultipleAnswersField.js.map +1 -1
  383. package/lib/commonjs/components/Poll/components/MultipleVotesSettings.js +4 -4
  384. package/lib/commonjs/components/Poll/components/MultipleVotesSettings.js.map +1 -1
  385. package/lib/commonjs/components/Poll/components/NameField.js +2 -2
  386. package/lib/commonjs/components/Poll/components/NameField.js.map +1 -1
  387. package/lib/commonjs/components/Poll/components/PollAnswersList.js +10 -10
  388. package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -1
  389. package/lib/commonjs/components/Poll/components/PollButtons.js +19 -15
  390. package/lib/commonjs/components/Poll/components/PollButtons.js.map +1 -1
  391. package/lib/commonjs/components/Poll/components/PollInputDialog.js +2 -2
  392. package/lib/commonjs/components/Poll/components/PollInputDialog.js.map +1 -1
  393. package/lib/commonjs/components/Poll/components/PollModalHeader.js +1 -1
  394. package/lib/commonjs/components/Poll/components/PollModalHeader.js.map +1 -1
  395. package/lib/commonjs/components/Poll/components/PollOption.js +6 -4
  396. package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -1
  397. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +4 -2
  398. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  399. package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js +7 -5
  400. package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
  401. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js +1 -1
  402. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js.map +1 -1
  403. package/lib/commonjs/components/Poll/components/PollResults/PollVote.js +6 -6
  404. package/lib/commonjs/components/Poll/components/PollResults/PollVote.js.map +1 -1
  405. package/lib/commonjs/components/Poll/contexts/PollUIStateContext.js +2 -2
  406. package/lib/commonjs/components/Poll/contexts/PollUIStateContext.js.map +1 -1
  407. package/lib/commonjs/components/Poll/hooks/useEndVote.js +2 -2
  408. package/lib/commonjs/components/Poll/hooks/useEndVote.js.map +1 -1
  409. package/lib/commonjs/components/Poll/hooks/usePollAnswersPagination.js +8 -7
  410. package/lib/commonjs/components/Poll/hooks/usePollAnswersPagination.js.map +1 -1
  411. package/lib/commonjs/components/Poll/hooks/usePollOptionVotesPagination.js +14 -12
  412. package/lib/commonjs/components/Poll/hooks/usePollOptionVotesPagination.js.map +1 -1
  413. package/lib/commonjs/components/Poll/hooks/usePollState.js +21 -18
  414. package/lib/commonjs/components/Poll/hooks/usePollState.js.map +1 -1
  415. package/lib/commonjs/components/Reply/Reply.js +10 -9
  416. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  417. package/lib/commonjs/components/Thread/Thread.js +77 -104
  418. package/lib/commonjs/components/Thread/Thread.js.map +1 -1
  419. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +26 -46
  420. package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  421. package/lib/commonjs/components/ThreadList/ThreadList.js +17 -18
  422. package/lib/commonjs/components/ThreadList/ThreadList.js.map +1 -1
  423. package/lib/commonjs/components/ThreadList/ThreadListItem.js +20 -15
  424. package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
  425. package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js +1 -1
  426. package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
  427. package/lib/commonjs/components/ThreadList/ThreadListUnreadBanner.js +23 -20
  428. package/lib/commonjs/components/ThreadList/ThreadListUnreadBanner.js.map +1 -1
  429. package/lib/commonjs/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js +15 -8
  430. package/lib/commonjs/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js.map +1 -1
  431. package/lib/commonjs/components/UIComponents/BottomSheetModal.js +2 -2
  432. package/lib/commonjs/components/UIComponents/BottomSheetModal.js.map +1 -1
  433. package/lib/commonjs/components/UIComponents/SearchInput.js +2 -2
  434. package/lib/commonjs/components/UIComponents/SearchInput.js.map +1 -1
  435. package/lib/commonjs/components/index.js +235 -44
  436. package/lib/commonjs/components/index.js.map +1 -1
  437. package/lib/commonjs/components/ui/Avatar/Avatar.js +1 -1
  438. package/lib/commonjs/components/ui/Avatar/Avatar.js.map +1 -1
  439. package/lib/commonjs/components/ui/Avatar/ChannelAvatar.js +12 -4
  440. package/lib/commonjs/components/ui/Avatar/ChannelAvatar.js.map +1 -1
  441. package/lib/commonjs/contexts/channelAddMembersContext/ChannelAddMembersContext.js +2 -1
  442. package/lib/commonjs/contexts/channelAddMembersContext/ChannelAddMembersContext.js.map +1 -1
  443. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  444. package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +4 -3
  445. package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -1
  446. package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js +4 -3
  447. package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -1
  448. package/lib/commonjs/contexts/channelMemberListContext/ChannelMemberListContext.js +4 -3
  449. package/lib/commonjs/contexts/channelMemberListContext/ChannelMemberListContext.js.map +1 -1
  450. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  451. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  452. package/lib/commonjs/contexts/componentsContext/defaultComponents.js +0 -2
  453. package/lib/commonjs/contexts/componentsContext/defaultComponents.js.map +1 -1
  454. package/lib/commonjs/contexts/index.js +11 -33
  455. package/lib/commonjs/contexts/index.js.map +1 -1
  456. package/lib/commonjs/contexts/liveLocationManagerContext/LiveLocationManagerContext.js +2 -1
  457. package/lib/commonjs/contexts/liveLocationManagerContext/LiveLocationManagerContext.js.map +1 -1
  458. package/lib/commonjs/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js +5 -6
  459. package/lib/commonjs/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js.map +1 -1
  460. package/lib/commonjs/contexts/messageComposerContext/MessageComposerContext.js +49 -10
  461. package/lib/commonjs/contexts/messageComposerContext/MessageComposerContext.js.map +1 -1
  462. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  463. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +23 -130
  464. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  465. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -8
  466. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  467. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposer.js +1 -5
  468. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposer.js.map +1 -1
  469. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js +3 -4
  470. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js.map +1 -1
  471. package/lib/commonjs/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js +16 -0
  472. package/lib/commonjs/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js.map +1 -0
  473. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  474. package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js +1 -1
  475. package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
  476. package/lib/commonjs/contexts/threadContext/ThreadContext.js +6 -10
  477. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  478. package/lib/commonjs/contexts/threadsContext/ThreadsContext.js.map +1 -1
  479. package/lib/commonjs/contexts/translationContext/TranslationContext.js +4 -6
  480. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  481. package/lib/commonjs/contexts/translationContext/index.js +0 -11
  482. package/lib/commonjs/contexts/translationContext/index.js.map +1 -1
  483. package/lib/commonjs/hooks/actions/useChannelActionItems.js +21 -21
  484. package/lib/commonjs/hooks/actions/useChannelActionItems.js.map +1 -1
  485. package/lib/commonjs/hooks/actions/useChannelActions.js +52 -38
  486. package/lib/commonjs/hooks/actions/useChannelActions.js.map +1 -1
  487. package/lib/commonjs/hooks/actions/useChannelMemberActionItems.js +10 -10
  488. package/lib/commonjs/hooks/actions/useChannelMemberActionItems.js.map +1 -1
  489. package/lib/commonjs/hooks/actions/useUserActions.js +15 -11
  490. package/lib/commonjs/hooks/actions/useUserActions.js.map +1 -1
  491. package/lib/commonjs/hooks/index.js +33 -11
  492. package/lib/commonjs/hooks/index.js.map +1 -1
  493. package/lib/commonjs/hooks/messagePreview/useGroupedAttachments.js.map +1 -1
  494. package/lib/commonjs/hooks/messagePreview/useMessageDeliveryStatus.js +26 -52
  495. package/lib/commonjs/hooks/messagePreview/useMessageDeliveryStatus.js.map +1 -1
  496. package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js +34 -22
  497. package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
  498. package/lib/commonjs/hooks/useAudioPlayer.js +3 -3
  499. package/lib/commonjs/hooks/useAudioPlayer.js.map +1 -1
  500. package/lib/commonjs/hooks/useChannel.js +16 -0
  501. package/lib/commonjs/hooks/useChannel.js.map +1 -0
  502. package/lib/commonjs/hooks/useChannelImage.js +8 -10
  503. package/lib/commonjs/hooks/useChannelImage.js.map +1 -1
  504. package/lib/commonjs/hooks/useChannelMemberCount.js +6 -11
  505. package/lib/commonjs/hooks/useChannelMemberCount.js.map +1 -1
  506. package/lib/commonjs/hooks/useChannelMembershipState.js +6 -8
  507. package/lib/commonjs/hooks/useChannelMembershipState.js.map +1 -1
  508. package/lib/commonjs/hooks/useChannelMuteActive.js +3 -6
  509. package/lib/commonjs/hooks/useChannelMuteActive.js.map +1 -1
  510. package/lib/commonjs/hooks/useChannelName.js +8 -10
  511. package/lib/commonjs/hooks/useChannelName.js.map +1 -1
  512. package/lib/commonjs/hooks/useChannelOwnCapabilities.js +6 -11
  513. package/lib/commonjs/hooks/useChannelOwnCapabilities.js.map +1 -1
  514. package/lib/commonjs/hooks/useIsDirectChat.js +9 -3
  515. package/lib/commonjs/hooks/useIsDirectChat.js.map +1 -1
  516. package/lib/commonjs/hooks/useIsTargetedMessage.js +20 -0
  517. package/lib/commonjs/hooks/useIsTargetedMessage.js.map +1 -0
  518. package/lib/commonjs/hooks/useLoadingImage.js +5 -5
  519. package/lib/commonjs/hooks/useLoadingImage.js.map +1 -1
  520. package/lib/commonjs/hooks/useMessagePaginator.js +15 -0
  521. package/lib/commonjs/hooks/useMessagePaginator.js.map +1 -0
  522. package/lib/commonjs/hooks/usePrunableMessageList.js +17 -16
  523. package/lib/commonjs/hooks/usePrunableMessageList.js.map +1 -1
  524. package/lib/commonjs/hooks/useQueryReminders.js +7 -6
  525. package/lib/commonjs/hooks/useQueryReminders.js.map +1 -1
  526. package/lib/commonjs/hooks/useStreami18n.js +13 -44
  527. package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
  528. package/lib/commonjs/hooks/useTranslatedMessage.js +8 -4
  529. package/lib/commonjs/hooks/useTranslatedMessage.js.map +1 -1
  530. package/lib/commonjs/i18n/index.js +37 -0
  531. package/lib/commonjs/i18n/index.js.map +1 -0
  532. package/lib/commonjs/i18n/keys.js +2 -0
  533. package/lib/commonjs/i18n/keys.js.map +1 -0
  534. package/lib/commonjs/i18n/runtimeDefaults.js +103 -0
  535. package/lib/commonjs/i18n/runtimeDefaults.js.map +1 -0
  536. package/lib/commonjs/i18n/types.js.map +1 -0
  537. package/lib/commonjs/i18n/utils.js +72 -0
  538. package/lib/commonjs/i18n/utils.js.map +1 -0
  539. package/lib/commonjs/index.js +16 -101
  540. package/lib/commonjs/index.js.map +1 -1
  541. package/lib/commonjs/middlewares/attachments.js +1 -80
  542. package/lib/commonjs/middlewares/attachments.js.map +1 -1
  543. package/lib/commonjs/mock-builders/DB/mock.js +5 -4
  544. package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
  545. package/lib/commonjs/mock-builders/api/channelMocks.js +38 -35
  546. package/lib/commonjs/mock-builders/api/channelMocks.js.map +1 -1
  547. package/lib/commonjs/mock-builders/api/initiateClientWithChannels.js +6 -1
  548. package/lib/commonjs/mock-builders/api/initiateClientWithChannels.js.map +1 -1
  549. package/lib/commonjs/mock-builders/api/queryMembers.js +15 -14
  550. package/lib/commonjs/mock-builders/api/queryMembers.js.map +1 -1
  551. package/lib/commonjs/mock-builders/api/useMockedApis.js +31 -1
  552. package/lib/commonjs/mock-builders/api/useMockedApis.js.map +1 -1
  553. package/lib/commonjs/mock-builders/attachments.js +5 -0
  554. package/lib/commonjs/mock-builders/attachments.js.map +1 -1
  555. package/lib/commonjs/mock-builders/event/connectionChanged.js +13 -6
  556. package/lib/commonjs/mock-builders/event/connectionChanged.js.map +1 -1
  557. package/lib/commonjs/mock-builders/event/connectionRecovered.js.map +1 -1
  558. package/lib/commonjs/mock-builders/event/messageDeleted.js +0 -1
  559. package/lib/commonjs/mock-builders/event/messageDeleted.js.map +1 -1
  560. package/lib/commonjs/mock-builders/event/messageRead.js +2 -1
  561. package/lib/commonjs/mock-builders/event/messageRead.js.map +1 -1
  562. package/lib/commonjs/mock-builders/event/messageUpdated.js +0 -1
  563. package/lib/commonjs/mock-builders/event/messageUpdated.js.map +1 -1
  564. package/lib/commonjs/mock-builders/event/notificationChannelMutesUpdated.js +1 -3
  565. package/lib/commonjs/mock-builders/event/notificationChannelMutesUpdated.js.map +1 -1
  566. package/lib/commonjs/mock-builders/event/notificationMarkUnread.js +2 -1
  567. package/lib/commonjs/mock-builders/event/notificationMarkUnread.js.map +1 -1
  568. package/lib/commonjs/mock-builders/event/notificationMutesUpdated.js +2 -1
  569. package/lib/commonjs/mock-builders/event/notificationMutesUpdated.js.map +1 -1
  570. package/lib/commonjs/mock-builders/event/typing.js +1 -3
  571. package/lib/commonjs/mock-builders/event/typing.js.map +1 -1
  572. package/lib/commonjs/mock-builders/event/userPresence.js +1 -3
  573. package/lib/commonjs/mock-builders/event/userPresence.js.map +1 -1
  574. package/lib/commonjs/mock-builders/event/userUpdated.js +1 -3
  575. package/lib/commonjs/mock-builders/event/userUpdated.js.map +1 -1
  576. package/lib/commonjs/mock-builders/event/utils.js +18 -0
  577. package/lib/commonjs/mock-builders/event/utils.js.map +1 -0
  578. package/lib/commonjs/mock-builders/generator/attachment.js +11 -3
  579. package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
  580. package/lib/commonjs/mock-builders/generator/channel.js +5 -4
  581. package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
  582. package/lib/commonjs/mock-builders/generator/channelState.js +53 -0
  583. package/lib/commonjs/mock-builders/generator/channelState.js.map +1 -0
  584. package/lib/commonjs/mock-builders/generator/message.js +15 -8
  585. package/lib/commonjs/mock-builders/generator/message.js.map +1 -1
  586. package/lib/commonjs/mock-builders/generator/reaction.js +2 -1
  587. package/lib/commonjs/mock-builders/generator/reaction.js.map +1 -1
  588. package/lib/commonjs/mock-builders/generator/time.js +13 -0
  589. package/lib/commonjs/mock-builders/generator/time.js.map +1 -0
  590. package/lib/commonjs/mock-builders/generator/user.js +3 -2
  591. package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
  592. package/lib/commonjs/mock-builders/mock.js +5 -3
  593. package/lib/commonjs/mock-builders/mock.js.map +1 -1
  594. package/lib/commonjs/state-store/attachment-picker-store.js +2 -2
  595. package/lib/commonjs/state-store/attachment-picker-store.js.map +1 -1
  596. package/lib/commonjs/state-store/audio-player-pool.js +2 -2
  597. package/lib/commonjs/state-store/audio-player-pool.js.map +1 -1
  598. package/lib/commonjs/state-store/audio-player.js +2 -2
  599. package/lib/commonjs/state-store/audio-player.js.map +1 -1
  600. package/lib/commonjs/state-store/audio-recorder-manager.js +2 -2
  601. package/lib/commonjs/state-store/audio-recorder-manager.js.map +1 -1
  602. package/lib/commonjs/state-store/edit-channel-details-store.js +5 -5
  603. package/lib/commonjs/state-store/edit-channel-details-store.js.map +1 -1
  604. package/lib/commonjs/state-store/image-gallery-state-store.js +5 -4
  605. package/lib/commonjs/state-store/image-gallery-state-store.js.map +1 -1
  606. package/lib/commonjs/state-store/in-app-notifications-store.js +2 -2
  607. package/lib/commonjs/state-store/in-app-notifications-store.js.map +1 -1
  608. package/lib/commonjs/state-store/message-input-height-store.js +2 -2
  609. package/lib/commonjs/state-store/message-input-height-store.js.map +1 -1
  610. package/lib/commonjs/state-store/message-overlay-store.js +4 -4
  611. package/lib/commonjs/state-store/message-overlay-store.js.map +1 -1
  612. package/lib/commonjs/state-store/selection-store.js +2 -2
  613. package/lib/commonjs/state-store/selection-store.js.map +1 -1
  614. package/lib/commonjs/state-store/signal-store.js +2 -2
  615. package/lib/commonjs/state-store/signal-store.js.map +1 -1
  616. package/lib/commonjs/state-store/video-player-pool.js +2 -2
  617. package/lib/commonjs/state-store/video-player-pool.js.map +1 -1
  618. package/lib/commonjs/state-store/video-player.js +2 -2
  619. package/lib/commonjs/state-store/video-player.js.map +1 -1
  620. package/lib/commonjs/store/OfflineDB.js +11 -13
  621. package/lib/commonjs/store/OfflineDB.js.map +1 -1
  622. package/lib/commonjs/store/SqliteClient.js +1 -1
  623. package/lib/commonjs/store/apis/channelExists.js +1 -1
  624. package/lib/commonjs/store/apis/channelExists.js.map +1 -1
  625. package/lib/commonjs/store/apis/deleteMessagesForChannel.js +2 -1
  626. package/lib/commonjs/store/apis/deleteMessagesForChannel.js.map +1 -1
  627. package/lib/commonjs/store/apis/getAppSettings.js +3 -3
  628. package/lib/commonjs/store/apis/getAppSettings.js.map +1 -1
  629. package/lib/commonjs/store/apis/getChannelActiveLocations.js.map +1 -1
  630. package/lib/commonjs/store/apis/getChannelMessages.js +3 -3
  631. package/lib/commonjs/store/apis/getChannelMessages.js.map +1 -1
  632. package/lib/commonjs/store/apis/getChannels.js +7 -6
  633. package/lib/commonjs/store/apis/getChannels.js.map +1 -1
  634. package/lib/commonjs/store/apis/getChannelsForFilterSort.js +18 -10
  635. package/lib/commonjs/store/apis/getChannelsForFilterSort.js.map +1 -1
  636. package/lib/commonjs/store/apis/getDraft.js +1 -1
  637. package/lib/commonjs/store/apis/getDraft.js.map +1 -1
  638. package/lib/commonjs/store/apis/getDraftsForChannels.js +2 -2
  639. package/lib/commonjs/store/apis/getDraftsForChannels.js.map +1 -1
  640. package/lib/commonjs/store/apis/getLastSyncedAt.js +3 -3
  641. package/lib/commonjs/store/apis/getLastSyncedAt.js.map +1 -1
  642. package/lib/commonjs/store/apis/getReads.js.map +1 -1
  643. package/lib/commonjs/store/apis/index.js +0 -11
  644. package/lib/commonjs/store/apis/index.js.map +1 -1
  645. package/lib/commonjs/store/apis/insertReaction.js +6 -2
  646. package/lib/commonjs/store/apis/insertReaction.js.map +1 -1
  647. package/lib/commonjs/store/apis/queries/selectActiveLocationsForChannels.js +2 -1
  648. package/lib/commonjs/store/apis/queries/selectActiveLocationsForChannels.js.map +1 -1
  649. package/lib/commonjs/store/apis/queries/selectChannelQueryForFilterSort.js +56 -0
  650. package/lib/commonjs/store/apis/queries/selectChannelQueryForFilterSort.js.map +1 -0
  651. package/lib/commonjs/store/apis/queries/selectDraftMessageFromDraftForChannels.js +1 -1
  652. package/lib/commonjs/store/apis/queries/selectDraftMessageFromDraftForChannels.js.map +1 -1
  653. package/lib/commonjs/store/apis/queries/selectMembersForChannels.js +1 -1
  654. package/lib/commonjs/store/apis/queries/selectMembersForChannels.js.map +1 -1
  655. package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js +2 -2
  656. package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js.map +1 -1
  657. package/lib/commonjs/store/apis/softDeleteMessage.js +2 -1
  658. package/lib/commonjs/store/apis/softDeleteMessage.js.map +1 -1
  659. package/lib/commonjs/store/apis/updateReaction.js +6 -1
  660. package/lib/commonjs/store/apis/updateReaction.js.map +1 -1
  661. package/lib/commonjs/store/apis/upsertAppSettings.js +3 -3
  662. package/lib/commonjs/store/apis/upsertAppSettings.js.map +1 -1
  663. package/lib/commonjs/store/apis/upsertChannels.js +13 -6
  664. package/lib/commonjs/store/apis/upsertChannels.js.map +1 -1
  665. package/lib/commonjs/store/apis/upsertCidsForQuery.js +6 -2
  666. package/lib/commonjs/store/apis/upsertCidsForQuery.js.map +1 -1
  667. package/lib/commonjs/store/apis/upsertDraft.js.map +1 -1
  668. package/lib/commonjs/store/apis/upsertUserSyncStatus.js +3 -3
  669. package/lib/commonjs/store/apis/upsertUserSyncStatus.js.map +1 -1
  670. package/lib/commonjs/store/mappers/mapChannelDataToStorable.js +8 -11
  671. package/lib/commonjs/store/mappers/mapChannelDataToStorable.js.map +1 -1
  672. package/lib/commonjs/store/mappers/mapChannelToStorable.js +8 -11
  673. package/lib/commonjs/store/mappers/mapChannelToStorable.js.map +1 -1
  674. package/lib/commonjs/store/mappers/mapDraftMessageToStorable.js +1 -1
  675. package/lib/commonjs/store/mappers/mapDraftMessageToStorable.js.map +1 -1
  676. package/lib/commonjs/store/mappers/mapDraftToStorable.js +2 -2
  677. package/lib/commonjs/store/mappers/mapDraftToStorable.js.map +1 -1
  678. package/lib/commonjs/store/mappers/mapMemberToStorable.js +7 -7
  679. package/lib/commonjs/store/mappers/mapMemberToStorable.js.map +1 -1
  680. package/lib/commonjs/store/mappers/mapMessageToStorable.js +6 -6
  681. package/lib/commonjs/store/mappers/mapMessageToStorable.js.map +1 -1
  682. package/lib/commonjs/store/mappers/mapPollToStorable.js +4 -4
  683. package/lib/commonjs/store/mappers/mapPollToStorable.js.map +1 -1
  684. package/lib/commonjs/store/mappers/mapReactionToStorable.js +3 -3
  685. package/lib/commonjs/store/mappers/mapReactionToStorable.js.map +1 -1
  686. package/lib/commonjs/store/mappers/mapReadToStorable.js +3 -3
  687. package/lib/commonjs/store/mappers/mapReadToStorable.js.map +1 -1
  688. package/lib/commonjs/store/mappers/mapReminderToStorable.js +4 -4
  689. package/lib/commonjs/store/mappers/mapReminderToStorable.js.map +1 -1
  690. package/lib/commonjs/store/mappers/mapSharedLocationToStorable.js +4 -4
  691. package/lib/commonjs/store/mappers/mapSharedLocationToStorable.js.map +1 -1
  692. package/lib/commonjs/store/mappers/mapStorableToChannel.js +6 -5
  693. package/lib/commonjs/store/mappers/mapStorableToChannel.js.map +1 -1
  694. package/lib/commonjs/store/mappers/mapStorableToDraft.js +4 -3
  695. package/lib/commonjs/store/mappers/mapStorableToDraft.js.map +1 -1
  696. package/lib/commonjs/store/mappers/mapStorableToMember.js +12 -9
  697. package/lib/commonjs/store/mappers/mapStorableToMember.js.map +1 -1
  698. package/lib/commonjs/store/mappers/mapStorableToMessage.js +7 -6
  699. package/lib/commonjs/store/mappers/mapStorableToMessage.js.map +1 -1
  700. package/lib/commonjs/store/mappers/mapStorableToPoll.js +9 -6
  701. package/lib/commonjs/store/mappers/mapStorableToPoll.js.map +1 -1
  702. package/lib/commonjs/store/mappers/mapStorableToReaction.js +3 -2
  703. package/lib/commonjs/store/mappers/mapStorableToReaction.js.map +1 -1
  704. package/lib/commonjs/store/mappers/mapStorableToRead.js +4 -3
  705. package/lib/commonjs/store/mappers/mapStorableToRead.js.map +1 -1
  706. package/lib/commonjs/store/mappers/mapStorableToReminder.js +4 -3
  707. package/lib/commonjs/store/mappers/mapStorableToReminder.js.map +1 -1
  708. package/lib/commonjs/store/mappers/mapStorableToSharedLocation.js +4 -3
  709. package/lib/commonjs/store/mappers/mapStorableToSharedLocation.js.map +1 -1
  710. package/lib/commonjs/store/mappers/mapStorableToTimestamp.js +13 -0
  711. package/lib/commonjs/store/mappers/mapStorableToTimestamp.js.map +1 -0
  712. package/lib/commonjs/store/mappers/mapStorableToUser.js +5 -4
  713. package/lib/commonjs/store/mappers/mapStorableToUser.js.map +1 -1
  714. package/lib/commonjs/store/mappers/mapTimestampToStorable.js +7 -0
  715. package/lib/commonjs/store/mappers/mapTimestampToStorable.js.map +1 -0
  716. package/lib/commonjs/store/mappers/mapUserToStorable.js +4 -3
  717. package/lib/commonjs/store/mappers/mapUserToStorable.js.map +1 -1
  718. package/lib/commonjs/store/schema.js +33 -32
  719. package/lib/commonjs/store/schema.js.map +1 -1
  720. package/lib/commonjs/store/sqlite-utils/createUpsertQuery.js +17 -3
  721. package/lib/commonjs/store/sqlite-utils/createUpsertQuery.js.map +1 -1
  722. package/lib/commonjs/store/sqlite-utils/createUpsertQueryIfParentExists.js +15 -0
  723. package/lib/commonjs/store/sqlite-utils/createUpsertQueryIfParentExists.js.map +1 -0
  724. package/lib/commonjs/types/types.js.map +1 -1
  725. package/lib/commonjs/utils/attachmentUrls.js +15 -0
  726. package/lib/commonjs/utils/attachmentUrls.js.map +1 -0
  727. package/lib/commonjs/utils/getUrlOfImageAttachment.js +6 -1
  728. package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -1
  729. package/lib/commonjs/utils/i18n/Streami18n.js +43 -408
  730. package/lib/commonjs/utils/i18n/Streami18n.js.map +1 -1
  731. package/lib/commonjs/utils/installNativeMultipartAdapter.js +25 -25
  732. package/lib/commonjs/utils/installNativeMultipartAdapter.js.map +1 -1
  733. package/lib/commonjs/utils/removeReservedFields.js.map +1 -1
  734. package/lib/commonjs/utils/utils.js +16 -54
  735. package/lib/commonjs/utils/utils.js.map +1 -1
  736. package/lib/commonjs/version.json +1 -1
  737. package/lib/module/a11y/hooks/useA11yLabel.js +2 -1
  738. package/lib/module/a11y/hooks/useA11yLabel.js.map +1 -1
  739. package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js +2 -2
  740. package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
  741. package/lib/module/components/AITypingIndicatorView/hooks/useAIState.js +15 -47
  742. package/lib/module/components/AITypingIndicatorView/hooks/useAIState.js.map +1 -1
  743. package/lib/module/components/Accessibility/NotificationAnnouncer.js +9 -7
  744. package/lib/module/components/Accessibility/NotificationAnnouncer.js.map +1 -1
  745. package/lib/module/components/Accessibility/hooks/useIncomingMessageAnnouncements.js +10 -10
  746. package/lib/module/components/Accessibility/hooks/useIncomingMessageAnnouncements.js.map +1 -1
  747. package/lib/module/components/Attachment/Attachment.js +6 -6
  748. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  749. package/lib/module/components/Attachment/Audio/AudioAttachment.js +14 -13
  750. package/lib/module/components/Attachment/Audio/AudioAttachment.js.map +1 -1
  751. package/lib/module/components/Attachment/FileAttachment.js +4 -4
  752. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  753. package/lib/module/components/Attachment/FilePreview.js +4 -2
  754. package/lib/module/components/Attachment/FilePreview.js.map +1 -1
  755. package/lib/module/components/Attachment/Gallery.js +9 -5
  756. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  757. package/lib/module/components/Attachment/Giphy/Giphy.js +1 -1
  758. package/lib/module/components/Attachment/Giphy/Giphy.js.map +1 -1
  759. package/lib/module/components/Attachment/UnsupportedAttachment.js +3 -3
  760. package/lib/module/components/Attachment/UnsupportedAttachment.js.map +1 -1
  761. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +2 -1
  762. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
  763. package/lib/module/components/Attachment/utils/openUrlSafely.js +3 -0
  764. package/lib/module/components/Attachment/utils/openUrlSafely.js.map +1 -1
  765. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +2 -2
  766. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
  767. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +29 -24
  768. package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
  769. package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js +22 -21
  770. package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
  771. package/lib/module/components/AttachmentPicker/components/AttachmentTypePickerButton.js +9 -9
  772. package/lib/module/components/AttachmentPicker/components/AttachmentTypePickerButton.js.map +1 -1
  773. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +8 -9
  774. package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
  775. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
  776. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +1 -1
  777. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  778. package/lib/module/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js +2 -2
  779. package/lib/module/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js.map +1 -1
  780. package/lib/module/components/AutoCompleteInput/mentionItems/MentionRoleItem.js +1 -1
  781. package/lib/module/components/AutoCompleteInput/mentionItems/MentionRoleItem.js.map +1 -1
  782. package/lib/module/components/Channel/Channel.js +54 -1410
  783. package/lib/module/components/Channel/Channel.js.map +1 -1
  784. package/lib/module/components/Channel/ChannelShell.js +398 -0
  785. package/lib/module/components/Channel/ChannelShell.js.map +1 -0
  786. package/lib/module/components/Channel/hooks/useChannelLifecycle.js +120 -0
  787. package/lib/module/components/Channel/hooks/useChannelLifecycle.js.map +1 -0
  788. package/lib/module/components/Channel/hooks/useCreateChannelContext.js +3 -53
  789. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  790. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +1 -9
  791. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  792. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +3 -19
  793. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  794. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +11 -27
  795. package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
  796. package/lib/module/components/Channel/hooks/useCreateThreadContext.js +6 -46
  797. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  798. package/lib/module/components/Channel/hooks/useSupersededChannelSwap.js +28 -0
  799. package/lib/module/components/Channel/hooks/useSupersededChannelSwap.js.map +1 -0
  800. package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js +2 -2
  801. package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -1
  802. package/lib/module/components/ChannelDetails/components/ChannelDetailsMemberSection.js +10 -6
  803. package/lib/module/components/ChannelDetails/components/ChannelDetailsMemberSection.js.map +1 -1
  804. package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js +2 -2
  805. package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
  806. package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js +1 -1
  807. package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
  808. package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormContent.js +2 -2
  809. package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormContent.js.map +1 -1
  810. package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js +2 -2
  811. package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js.map +1 -1
  812. package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js +5 -5
  813. package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
  814. package/lib/module/components/ChannelDetails/components/ChannelEditName.js +2 -2
  815. package/lib/module/components/ChannelDetails/components/ChannelEditName.js.map +1 -1
  816. package/lib/module/components/ChannelDetails/components/members/AddMemberSearchResultItem.js +3 -3
  817. package/lib/module/components/ChannelDetails/components/members/AddMemberSearchResultItem.js.map +1 -1
  818. package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersButton.js +3 -3
  819. package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersButton.js.map +1 -1
  820. package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js +3 -3
  821. package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js.map +1 -1
  822. package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js +2 -2
  823. package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js.map +1 -1
  824. package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -2
  825. package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
  826. package/lib/module/components/ChannelDetails/components/members/ChannelMemberList.js +3 -3
  827. package/lib/module/components/ChannelDetails/components/members/ChannelMemberList.js.map +1 -1
  828. package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js +1 -1
  829. package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
  830. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +3 -3
  831. package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -1
  832. package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js +2 -2
  833. package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -1
  834. package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js +3 -3
  835. package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -1
  836. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +5 -5
  837. package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -1
  838. package/lib/module/components/ChannelDetails/hooks/members/useMemberRoles.js +3 -3
  839. package/lib/module/components/ChannelDetails/hooks/members/useMemberRoles.js.map +1 -1
  840. package/lib/module/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js +5 -3
  841. package/lib/module/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js.map +1 -1
  842. package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +5 -4
  843. package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -1
  844. package/lib/module/components/ChannelDetails/hooks/useEditChannelImage.js +6 -6
  845. package/lib/module/components/ChannelDetails/hooks/useEditChannelImage.js.map +1 -1
  846. package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js +9 -5
  847. package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -1
  848. package/lib/module/components/ChannelDetails/hooks/useUserActivityStatus.js +8 -7
  849. package/lib/module/components/ChannelDetails/hooks/useUserActivityStatus.js.map +1 -1
  850. package/lib/module/components/ChannelList/ChannelList.js +23 -98
  851. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  852. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js +1 -1
  853. package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
  854. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +1 -1
  855. package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
  856. package/lib/module/components/ChannelList/ChannelListView.js +28 -68
  857. package/lib/module/components/ChannelList/ChannelListView.js.map +1 -1
  858. package/lib/module/components/ChannelList/hooks/index.js +0 -11
  859. package/lib/module/components/ChannelList/hooks/index.js.map +1 -1
  860. package/lib/module/components/ChannelList/hooks/useChannelMembersState.js +32 -9
  861. package/lib/module/components/ChannelList/hooks/useChannelMembersState.js.map +1 -1
  862. package/lib/module/components/ChannelList/hooks/useChannelOnlineMemberCount.js +6 -15
  863. package/lib/module/components/ChannelList/hooks/useChannelOnlineMemberCount.js.map +1 -1
  864. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +20 -44
  865. package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
  866. package/lib/module/components/ChannelList/hooks/useMutedChannels.js +7 -7
  867. package/lib/module/components/ChannelList/hooks/useMutedChannels.js.map +1 -1
  868. package/lib/module/components/ChannelList/hooks/useMutedUsers.js +7 -9
  869. package/lib/module/components/ChannelList/hooks/useMutedUsers.js.map +1 -1
  870. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +69 -125
  871. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  872. package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js +12 -3
  873. package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
  874. package/lib/module/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js +19 -11
  875. package/lib/module/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js.map +1 -1
  876. package/lib/module/components/ChannelPreview/ChannelPreview.js +2 -3
  877. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  878. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +6 -5
  879. package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
  880. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +1 -1
  881. package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
  882. package/lib/module/components/ChannelPreview/ChannelPreviewPinnedStatus.js +1 -1
  883. package/lib/module/components/ChannelPreview/ChannelPreviewPinnedStatus.js.map +1 -1
  884. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +9 -8
  885. package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
  886. package/lib/module/components/ChannelPreview/ChannelPreviewTypingIndicator.js +8 -8
  887. package/lib/module/components/ChannelPreview/ChannelPreviewTypingIndicator.js.map +1 -1
  888. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +1 -1
  889. package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
  890. package/lib/module/components/ChannelPreview/ChannelPreviewView.js +1 -3
  891. package/lib/module/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
  892. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewData.js +25 -118
  893. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewData.js.map +1 -1
  894. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js +11 -4
  895. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
  896. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
  897. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.js +14 -5
  898. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.js.map +1 -1
  899. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js +3 -3
  900. package/lib/module/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js.map +1 -1
  901. package/lib/module/components/ChannelPreview/hooks/useChannelTypingState.js +2 -37
  902. package/lib/module/components/ChannelPreview/hooks/useChannelTypingState.js.map +1 -1
  903. package/lib/module/components/ChannelPreview/hooks/useIsChannelMuted.js +6 -29
  904. package/lib/module/components/ChannelPreview/hooks/useIsChannelMuted.js.map +1 -1
  905. package/lib/module/components/ChannelPreview/hooks/useIsChannelPinned.js +1 -1
  906. package/lib/module/components/ChannelPreview/hooks/useIsChannelPinned.js.map +1 -1
  907. package/lib/module/components/Chat/Chat.js +53 -59
  908. package/lib/module/components/Chat/Chat.js.map +1 -1
  909. package/lib/module/components/Chat/hooks/index.js +16 -16
  910. package/lib/module/components/Chat/hooks/index.js.map +1 -1
  911. package/lib/module/components/Chat/hooks/useAppSettingsGetter.js +75 -0
  912. package/lib/module/components/Chat/hooks/useAppSettingsGetter.js.map +1 -0
  913. package/lib/module/components/Chat/hooks/useClientUserId.js +17 -0
  914. package/lib/module/components/Chat/hooks/useClientUserId.js.map +1 -0
  915. package/lib/module/components/Chat/hooks/useConnectionLifecycle.js +53 -0
  916. package/lib/module/components/Chat/hooks/useConnectionLifecycle.js.map +1 -0
  917. package/lib/module/components/Chat/hooks/useCreateChatClient.js +15 -1
  918. package/lib/module/components/Chat/hooks/useCreateChatClient.js.map +1 -1
  919. package/lib/module/components/Chat/hooks/useCreateChatContext.js +7 -25
  920. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  921. package/lib/module/components/Chat/hooks/useInitializeOfflineDb.js +11 -4
  922. package/lib/module/components/Chat/hooks/useInitializeOfflineDb.js.map +1 -1
  923. package/lib/module/components/Chat/hooks/useNetworkConnectionState.js +22 -0
  924. package/lib/module/components/Chat/hooks/useNetworkConnectionState.js.map +1 -0
  925. package/lib/module/components/Chat/hooks/usePendingUploadsDefault.js +24 -0
  926. package/lib/module/components/Chat/hooks/usePendingUploadsDefault.js.map +1 -0
  927. package/lib/module/components/Chat/hooks/useWSConnectionState.js +63 -0
  928. package/lib/module/components/Chat/hooks/useWSConnectionState.js.map +1 -0
  929. package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js +1 -1
  930. package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -1
  931. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +3 -3
  932. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  933. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +6 -6
  934. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  935. package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js +1 -1
  936. package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  937. package/lib/module/components/Indicators/EmptyStateIndicator.js +4 -4
  938. package/lib/module/components/Indicators/EmptyStateIndicator.js.map +1 -1
  939. package/lib/module/components/Indicators/LoadingErrorIndicator.js +3 -3
  940. package/lib/module/components/Indicators/LoadingErrorIndicator.js.map +1 -1
  941. package/lib/module/components/Indicators/LoadingIndicator.js +3 -3
  942. package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
  943. package/lib/module/components/Message/Message.js +64 -195
  944. package/lib/module/components/Message/Message.js.map +1 -1
  945. package/lib/module/components/Message/MessageItemView/Headers/MessagePinnedHeader.js +1 -1
  946. package/lib/module/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -1
  947. package/lib/module/components/Message/MessageItemView/Headers/MessageReminderHeader.js +2 -2
  948. package/lib/module/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -1
  949. package/lib/module/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js +1 -1
  950. package/lib/module/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -1
  951. package/lib/module/components/Message/MessageItemView/Headers/SentToChannelHeader.js +34 -19
  952. package/lib/module/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -1
  953. package/lib/module/components/Message/MessageItemView/MessageBounce.js +8 -8
  954. package/lib/module/components/Message/MessageItemView/MessageBounce.js.map +1 -1
  955. package/lib/module/components/Message/MessageItemView/MessageContent.js +4 -8
  956. package/lib/module/components/Message/MessageItemView/MessageContent.js.map +1 -1
  957. package/lib/module/components/Message/MessageItemView/MessageDeleted.js +1 -1
  958. package/lib/module/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
  959. package/lib/module/components/Message/MessageItemView/MessageFooter.js +17 -15
  960. package/lib/module/components/Message/MessageItemView/MessageFooter.js.map +1 -1
  961. package/lib/module/components/Message/MessageItemView/MessageHeader.js +27 -23
  962. package/lib/module/components/Message/MessageItemView/MessageHeader.js.map +1 -1
  963. package/lib/module/components/Message/MessageItemView/MessageItemView.js +14 -19
  964. package/lib/module/components/Message/MessageItemView/MessageItemView.js.map +1 -1
  965. package/lib/module/components/Message/MessageItemView/MessageReplies.js +7 -16
  966. package/lib/module/components/Message/MessageItemView/MessageReplies.js.map +1 -1
  967. package/lib/module/components/Message/MessageItemView/MessageStatus.js +25 -33
  968. package/lib/module/components/Message/MessageItemView/MessageStatus.js.map +1 -1
  969. package/lib/module/components/Message/MessageItemView/MessageTimestamp.js +4 -4
  970. package/lib/module/components/Message/MessageItemView/MessageTimestamp.js.map +1 -1
  971. package/lib/module/components/Message/MessageItemView/MessageWrapper.js +37 -31
  972. package/lib/module/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
  973. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListClustered.js +3 -3
  974. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -1
  975. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItem.js +1 -1
  976. package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -1
  977. package/lib/module/components/Message/hooks/useCreateMessageActionHandlers.js +453 -0
  978. package/lib/module/components/Message/hooks/useCreateMessageActionHandlers.js.map +1 -0
  979. package/lib/module/components/Message/hooks/useCreateMessageContext.js +5 -12
  980. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  981. package/lib/module/components/Message/hooks/useIsMessageDeliveredToOthers.js +25 -0
  982. package/lib/module/components/Message/hooks/useIsMessageDeliveredToOthers.js.map +1 -0
  983. package/lib/module/components/Message/hooks/useIsMessageReadByOthers.js +25 -0
  984. package/lib/module/components/Message/hooks/useIsMessageReadByOthers.js.map +1 -0
  985. package/lib/module/components/Message/hooks/useMessageActionHandlers.js +9 -440
  986. package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
  987. package/lib/module/components/Message/hooks/useMessageActions.js +59 -87
  988. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
  989. package/lib/module/components/Message/hooks/useMessageData.js +4 -5
  990. package/lib/module/components/Message/hooks/useMessageData.js.map +1 -1
  991. package/lib/module/components/Message/hooks/useMessageDeliveryData.js +12 -36
  992. package/lib/module/components/Message/hooks/useMessageDeliveryData.js.map +1 -1
  993. package/lib/module/components/Message/hooks/useMessageOperations.js +144 -0
  994. package/lib/module/components/Message/hooks/useMessageOperations.js.map +1 -0
  995. package/lib/module/components/Message/hooks/useMessageReadData.js +12 -36
  996. package/lib/module/components/Message/hooks/useMessageReadData.js.map +1 -1
  997. package/lib/module/components/Message/hooks/useProcessReactions.js +4 -2
  998. package/lib/module/components/Message/hooks/useProcessReactions.js.map +1 -1
  999. package/lib/module/components/Message/hooks/useUserMuteActive.js +15 -7
  1000. package/lib/module/components/Message/hooks/useUserMuteActive.js.map +1 -1
  1001. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  1002. package/lib/module/components/MessageInput/MessageComposer.js +25 -18
  1003. package/lib/module/components/MessageInput/MessageComposer.js.map +1 -1
  1004. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
  1005. package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
  1006. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -12
  1007. package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
  1008. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
  1009. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
  1010. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +3 -3
  1011. package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
  1012. package/lib/module/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js +6 -6
  1013. package/lib/module/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js.map +1 -1
  1014. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +6 -6
  1015. package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
  1016. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +3 -4
  1017. package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
  1018. package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +6 -5
  1019. package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
  1020. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js +5 -5
  1021. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
  1022. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +4 -4
  1023. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
  1024. package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
  1025. package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
  1026. package/lib/module/components/MessageInput/components/InputButtons/index.js +9 -2
  1027. package/lib/module/components/MessageInput/components/InputButtons/index.js.map +1 -1
  1028. package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
  1029. package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
  1030. package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
  1031. package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
  1032. package/lib/module/components/MessageInput/components/OutputButtons/index.js +3 -3
  1033. package/lib/module/components/MessageInput/components/OutputButtons/index.js.map +1 -1
  1034. package/lib/module/components/MessageInput/hooks/useAudioRecorder.js +7 -5
  1035. package/lib/module/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
  1036. package/lib/module/components/MessageList/InlineDateSeparator.js +6 -6
  1037. package/lib/module/components/MessageList/InlineDateSeparator.js.map +1 -1
  1038. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +5 -8
  1039. package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
  1040. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +5 -8
  1041. package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
  1042. package/lib/module/components/MessageList/InlineUnreadIndicator.js +5 -3
  1043. package/lib/module/components/MessageList/InlineUnreadIndicator.js.map +1 -1
  1044. package/lib/module/components/MessageList/MessageFlashList.js +152 -390
  1045. package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
  1046. package/lib/module/components/MessageList/MessageList.js +141 -436
  1047. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  1048. package/lib/module/components/MessageList/MessageSystem.js +5 -4
  1049. package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
  1050. package/lib/module/components/MessageList/NetworkDownIndicator.js +8 -16
  1051. package/lib/module/components/MessageList/NetworkDownIndicator.js.map +1 -1
  1052. package/lib/module/components/MessageList/ScrollToBottomButton.js +13 -7
  1053. package/lib/module/components/MessageList/ScrollToBottomButton.js.map +1 -1
  1054. package/lib/module/components/MessageList/StickyHeader.js +5 -5
  1055. package/lib/module/components/MessageList/StickyHeader.js.map +1 -1
  1056. package/lib/module/components/MessageList/TypingIndicatorContainer.js +15 -6
  1057. package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
  1058. package/lib/module/components/MessageList/UnreadMessagesNotification.js +39 -26
  1059. package/lib/module/components/MessageList/UnreadMessagesNotification.js.map +1 -1
  1060. package/lib/module/components/MessageList/hooks/useMarkRead.js +50 -0
  1061. package/lib/module/components/MessageList/hooks/useMarkRead.js.map +1 -0
  1062. package/lib/module/components/MessageList/hooks/useMessageDateSeparator.js +4 -3
  1063. package/lib/module/components/MessageList/hooks/useMessageDateSeparator.js.map +1 -1
  1064. package/lib/module/components/MessageList/hooks/useMessageList.js +20 -27
  1065. package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
  1066. package/lib/module/components/MessageList/hooks/useMessageListFocus.js +41 -0
  1067. package/lib/module/components/MessageList/hooks/useMessageListFocus.js.map +1 -0
  1068. package/lib/module/components/MessageList/hooks/useMessageListLiveState.js +72 -0
  1069. package/lib/module/components/MessageList/hooks/useMessageListLiveState.js.map +1 -0
  1070. package/lib/module/components/MessageList/hooks/useMessageListPagination.js +71 -0
  1071. package/lib/module/components/MessageList/hooks/useMessageListPagination.js.map +1 -0
  1072. package/lib/module/components/MessageList/hooks/useOwnUnreadCount.js +22 -0
  1073. package/lib/module/components/MessageList/hooks/useOwnUnreadCount.js.map +1 -0
  1074. package/lib/module/components/MessageList/hooks/useScrollToBottomAccessibilityAction.js.map +1 -1
  1075. package/lib/module/components/MessageList/hooks/useStickyHeaderDate.js +41 -0
  1076. package/lib/module/components/MessageList/hooks/useStickyHeaderDate.js.map +1 -0
  1077. package/lib/module/components/MessageList/hooks/useTypingString.js +2 -2
  1078. package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
  1079. package/lib/module/components/MessageList/hooks/useTypingUsers.js +21 -8
  1080. package/lib/module/components/MessageList/hooks/useTypingUsers.js.map +1 -1
  1081. package/lib/module/components/MessageList/hooks/useUnreadNotificationVisibility.js +56 -0
  1082. package/lib/module/components/MessageList/hooks/useUnreadNotificationVisibility.js.map +1 -0
  1083. package/lib/module/components/MessageList/utils/buildMessageListWithNeighbours.js +2 -2
  1084. package/lib/module/components/MessageList/utils/buildMessageListWithNeighbours.js.map +1 -1
  1085. package/lib/module/components/MessageList/utils/filterTypingUsers.js +8 -7
  1086. package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
  1087. package/lib/module/components/MessageList/utils/getGroupStyles.js +2 -1
  1088. package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
  1089. package/lib/module/components/MessageMenu/MessageActionList.js +1 -1
  1090. package/lib/module/components/MessageMenu/MessageActionList.js.map +1 -1
  1091. package/lib/module/components/MessageMenu/MessageActionListWithActions.js +77 -0
  1092. package/lib/module/components/MessageMenu/MessageActionListWithActions.js.map +1 -0
  1093. package/lib/module/components/MessageMenu/MessageReactionPicker.js +1 -1
  1094. package/lib/module/components/MessageMenu/MessageReactionPicker.js.map +1 -1
  1095. package/lib/module/components/MessageMenu/MessageUserReactions.js +14 -11
  1096. package/lib/module/components/MessageMenu/MessageUserReactions.js.map +1 -1
  1097. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js +2 -2
  1098. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
  1099. package/lib/module/components/MessageMenu/hooks/useFetchReactions.js +37 -28
  1100. package/lib/module/components/MessageMenu/hooks/useFetchReactions.js.map +1 -1
  1101. package/lib/module/components/Notifications/Notification.js +1 -1
  1102. package/lib/module/components/Notifications/Notification.js.map +1 -1
  1103. package/lib/module/components/Notifications/NotificationList.js +1 -1
  1104. package/lib/module/components/Notifications/NotificationList.js.map +1 -1
  1105. package/lib/module/components/Notifications/hooks/useNotificationTarget.js +1 -2
  1106. package/lib/module/components/Notifications/hooks/useNotificationTarget.js.map +1 -1
  1107. package/lib/module/components/Notifications/notificationTranslations.js +59 -45
  1108. package/lib/module/components/Notifications/notificationTranslations.js.map +1 -1
  1109. package/lib/module/components/Poll/CreatePollContent.js +9 -9
  1110. package/lib/module/components/Poll/CreatePollContent.js.map +1 -1
  1111. package/lib/module/components/Poll/Poll.js +7 -5
  1112. package/lib/module/components/Poll/Poll.js.map +1 -1
  1113. package/lib/module/components/Poll/components/CreatePollHeader.js +3 -3
  1114. package/lib/module/components/Poll/components/CreatePollHeader.js.map +1 -1
  1115. package/lib/module/components/Poll/components/CreatePollOptions.js +9 -4
  1116. package/lib/module/components/Poll/components/CreatePollOptions.js.map +1 -1
  1117. package/lib/module/components/Poll/components/MultipleAnswersField.js +2 -2
  1118. package/lib/module/components/Poll/components/MultipleAnswersField.js.map +1 -1
  1119. package/lib/module/components/Poll/components/MultipleVotesSettings.js +4 -4
  1120. package/lib/module/components/Poll/components/MultipleVotesSettings.js.map +1 -1
  1121. package/lib/module/components/Poll/components/NameField.js +2 -2
  1122. package/lib/module/components/Poll/components/NameField.js.map +1 -1
  1123. package/lib/module/components/Poll/components/PollAnswersList.js +10 -10
  1124. package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -1
  1125. package/lib/module/components/Poll/components/PollButtons.js +19 -15
  1126. package/lib/module/components/Poll/components/PollButtons.js.map +1 -1
  1127. package/lib/module/components/Poll/components/PollInputDialog.js +2 -2
  1128. package/lib/module/components/Poll/components/PollInputDialog.js.map +1 -1
  1129. package/lib/module/components/Poll/components/PollModalHeader.js +1 -1
  1130. package/lib/module/components/Poll/components/PollModalHeader.js.map +1 -1
  1131. package/lib/module/components/Poll/components/PollOption.js +6 -4
  1132. package/lib/module/components/Poll/components/PollOption.js.map +1 -1
  1133. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +4 -2
  1134. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
  1135. package/lib/module/components/Poll/components/PollResults/PollResultItem.js +7 -5
  1136. package/lib/module/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
  1137. package/lib/module/components/Poll/components/PollResults/PollResults.js +1 -1
  1138. package/lib/module/components/Poll/components/PollResults/PollResults.js.map +1 -1
  1139. package/lib/module/components/Poll/components/PollResults/PollVote.js +6 -6
  1140. package/lib/module/components/Poll/components/PollResults/PollVote.js.map +1 -1
  1141. package/lib/module/components/Poll/contexts/PollUIStateContext.js +2 -2
  1142. package/lib/module/components/Poll/contexts/PollUIStateContext.js.map +1 -1
  1143. package/lib/module/components/Poll/hooks/useEndVote.js +2 -2
  1144. package/lib/module/components/Poll/hooks/useEndVote.js.map +1 -1
  1145. package/lib/module/components/Poll/hooks/usePollAnswersPagination.js +8 -7
  1146. package/lib/module/components/Poll/hooks/usePollAnswersPagination.js.map +1 -1
  1147. package/lib/module/components/Poll/hooks/usePollOptionVotesPagination.js +14 -12
  1148. package/lib/module/components/Poll/hooks/usePollOptionVotesPagination.js.map +1 -1
  1149. package/lib/module/components/Poll/hooks/usePollState.js +21 -18
  1150. package/lib/module/components/Poll/hooks/usePollState.js.map +1 -1
  1151. package/lib/module/components/Reply/Reply.js +10 -9
  1152. package/lib/module/components/Reply/Reply.js.map +1 -1
  1153. package/lib/module/components/Thread/Thread.js +77 -104
  1154. package/lib/module/components/Thread/Thread.js.map +1 -1
  1155. package/lib/module/components/Thread/components/ThreadFooterComponent.js +26 -46
  1156. package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
  1157. package/lib/module/components/ThreadList/ThreadList.js +17 -18
  1158. package/lib/module/components/ThreadList/ThreadList.js.map +1 -1
  1159. package/lib/module/components/ThreadList/ThreadListItem.js +20 -15
  1160. package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
  1161. package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js +1 -1
  1162. package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
  1163. package/lib/module/components/ThreadList/ThreadListUnreadBanner.js +23 -20
  1164. package/lib/module/components/ThreadList/ThreadListUnreadBanner.js.map +1 -1
  1165. package/lib/module/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js +15 -8
  1166. package/lib/module/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js.map +1 -1
  1167. package/lib/module/components/UIComponents/BottomSheetModal.js +2 -2
  1168. package/lib/module/components/UIComponents/BottomSheetModal.js.map +1 -1
  1169. package/lib/module/components/UIComponents/SearchInput.js +2 -2
  1170. package/lib/module/components/UIComponents/SearchInput.js.map +1 -1
  1171. package/lib/module/components/index.js +235 -44
  1172. package/lib/module/components/index.js.map +1 -1
  1173. package/lib/module/components/ui/Avatar/Avatar.js +1 -1
  1174. package/lib/module/components/ui/Avatar/Avatar.js.map +1 -1
  1175. package/lib/module/components/ui/Avatar/ChannelAvatar.js +12 -4
  1176. package/lib/module/components/ui/Avatar/ChannelAvatar.js.map +1 -1
  1177. package/lib/module/contexts/channelAddMembersContext/ChannelAddMembersContext.js +2 -1
  1178. package/lib/module/contexts/channelAddMembersContext/ChannelAddMembersContext.js.map +1 -1
  1179. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  1180. package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +4 -3
  1181. package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -1
  1182. package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js +4 -3
  1183. package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -1
  1184. package/lib/module/contexts/channelMemberListContext/ChannelMemberListContext.js +4 -3
  1185. package/lib/module/contexts/channelMemberListContext/ChannelMemberListContext.js.map +1 -1
  1186. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  1187. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  1188. package/lib/module/contexts/componentsContext/defaultComponents.js +0 -2
  1189. package/lib/module/contexts/componentsContext/defaultComponents.js.map +1 -1
  1190. package/lib/module/contexts/index.js +11 -33
  1191. package/lib/module/contexts/index.js.map +1 -1
  1192. package/lib/module/contexts/liveLocationManagerContext/LiveLocationManagerContext.js +2 -1
  1193. package/lib/module/contexts/liveLocationManagerContext/LiveLocationManagerContext.js.map +1 -1
  1194. package/lib/module/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js +5 -6
  1195. package/lib/module/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js.map +1 -1
  1196. package/lib/module/contexts/messageComposerContext/MessageComposerContext.js +49 -10
  1197. package/lib/module/contexts/messageComposerContext/MessageComposerContext.js.map +1 -1
  1198. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  1199. package/lib/module/contexts/messageInputContext/MessageInputContext.js +23 -130
  1200. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  1201. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -8
  1202. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  1203. package/lib/module/contexts/messageInputContext/hooks/useMessageComposer.js +1 -5
  1204. package/lib/module/contexts/messageInputContext/hooks/useMessageComposer.js.map +1 -1
  1205. package/lib/module/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js +3 -4
  1206. package/lib/module/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js.map +1 -1
  1207. package/lib/module/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js +16 -0
  1208. package/lib/module/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js.map +1 -0
  1209. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  1210. package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js +1 -1
  1211. package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
  1212. package/lib/module/contexts/threadContext/ThreadContext.js +6 -10
  1213. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  1214. package/lib/module/contexts/threadsContext/ThreadsContext.js.map +1 -1
  1215. package/lib/module/contexts/translationContext/TranslationContext.js +4 -6
  1216. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  1217. package/lib/module/contexts/translationContext/index.js +0 -11
  1218. package/lib/module/contexts/translationContext/index.js.map +1 -1
  1219. package/lib/module/hooks/actions/useChannelActionItems.js +21 -21
  1220. package/lib/module/hooks/actions/useChannelActionItems.js.map +1 -1
  1221. package/lib/module/hooks/actions/useChannelActions.js +52 -38
  1222. package/lib/module/hooks/actions/useChannelActions.js.map +1 -1
  1223. package/lib/module/hooks/actions/useChannelMemberActionItems.js +10 -10
  1224. package/lib/module/hooks/actions/useChannelMemberActionItems.js.map +1 -1
  1225. package/lib/module/hooks/actions/useUserActions.js +15 -11
  1226. package/lib/module/hooks/actions/useUserActions.js.map +1 -1
  1227. package/lib/module/hooks/index.js +33 -11
  1228. package/lib/module/hooks/index.js.map +1 -1
  1229. package/lib/module/hooks/messagePreview/useGroupedAttachments.js.map +1 -1
  1230. package/lib/module/hooks/messagePreview/useMessageDeliveryStatus.js +26 -52
  1231. package/lib/module/hooks/messagePreview/useMessageDeliveryStatus.js.map +1 -1
  1232. package/lib/module/hooks/messagePreview/useMessagePreviewText.js +34 -22
  1233. package/lib/module/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
  1234. package/lib/module/hooks/useAudioPlayer.js +3 -3
  1235. package/lib/module/hooks/useAudioPlayer.js.map +1 -1
  1236. package/lib/module/hooks/useChannel.js +16 -0
  1237. package/lib/module/hooks/useChannel.js.map +1 -0
  1238. package/lib/module/hooks/useChannelImage.js +8 -10
  1239. package/lib/module/hooks/useChannelImage.js.map +1 -1
  1240. package/lib/module/hooks/useChannelMemberCount.js +6 -11
  1241. package/lib/module/hooks/useChannelMemberCount.js.map +1 -1
  1242. package/lib/module/hooks/useChannelMembershipState.js +6 -8
  1243. package/lib/module/hooks/useChannelMembershipState.js.map +1 -1
  1244. package/lib/module/hooks/useChannelMuteActive.js +3 -6
  1245. package/lib/module/hooks/useChannelMuteActive.js.map +1 -1
  1246. package/lib/module/hooks/useChannelName.js +8 -10
  1247. package/lib/module/hooks/useChannelName.js.map +1 -1
  1248. package/lib/module/hooks/useChannelOwnCapabilities.js +6 -11
  1249. package/lib/module/hooks/useChannelOwnCapabilities.js.map +1 -1
  1250. package/lib/module/hooks/useIsDirectChat.js +9 -3
  1251. package/lib/module/hooks/useIsDirectChat.js.map +1 -1
  1252. package/lib/module/hooks/useIsTargetedMessage.js +20 -0
  1253. package/lib/module/hooks/useIsTargetedMessage.js.map +1 -0
  1254. package/lib/module/hooks/useLoadingImage.js +5 -5
  1255. package/lib/module/hooks/useLoadingImage.js.map +1 -1
  1256. package/lib/module/hooks/useMessagePaginator.js +15 -0
  1257. package/lib/module/hooks/useMessagePaginator.js.map +1 -0
  1258. package/lib/module/hooks/usePrunableMessageList.js +17 -16
  1259. package/lib/module/hooks/usePrunableMessageList.js.map +1 -1
  1260. package/lib/module/hooks/useQueryReminders.js +7 -6
  1261. package/lib/module/hooks/useQueryReminders.js.map +1 -1
  1262. package/lib/module/hooks/useStreami18n.js +13 -44
  1263. package/lib/module/hooks/useStreami18n.js.map +1 -1
  1264. package/lib/module/hooks/useTranslatedMessage.js +8 -4
  1265. package/lib/module/hooks/useTranslatedMessage.js.map +1 -1
  1266. package/lib/module/i18n/index.js +37 -0
  1267. package/lib/module/i18n/index.js.map +1 -0
  1268. package/lib/module/i18n/keys.js +2 -0
  1269. package/lib/module/i18n/keys.js.map +1 -0
  1270. package/lib/module/i18n/runtimeDefaults.js +103 -0
  1271. package/lib/module/i18n/runtimeDefaults.js.map +1 -0
  1272. package/lib/module/i18n/types.js.map +1 -0
  1273. package/lib/module/i18n/utils.js +72 -0
  1274. package/lib/module/i18n/utils.js.map +1 -0
  1275. package/lib/module/index.js +16 -101
  1276. package/lib/module/index.js.map +1 -1
  1277. package/lib/module/middlewares/attachments.js +1 -80
  1278. package/lib/module/middlewares/attachments.js.map +1 -1
  1279. package/lib/module/mock-builders/DB/mock.js +5 -4
  1280. package/lib/module/mock-builders/DB/mock.js.map +1 -1
  1281. package/lib/module/mock-builders/api/channelMocks.js +38 -35
  1282. package/lib/module/mock-builders/api/channelMocks.js.map +1 -1
  1283. package/lib/module/mock-builders/api/initiateClientWithChannels.js +6 -1
  1284. package/lib/module/mock-builders/api/initiateClientWithChannels.js.map +1 -1
  1285. package/lib/module/mock-builders/api/queryMembers.js +15 -14
  1286. package/lib/module/mock-builders/api/queryMembers.js.map +1 -1
  1287. package/lib/module/mock-builders/api/useMockedApis.js +31 -1
  1288. package/lib/module/mock-builders/api/useMockedApis.js.map +1 -1
  1289. package/lib/module/mock-builders/attachments.js +5 -0
  1290. package/lib/module/mock-builders/attachments.js.map +1 -1
  1291. package/lib/module/mock-builders/event/connectionChanged.js +13 -6
  1292. package/lib/module/mock-builders/event/connectionChanged.js.map +1 -1
  1293. package/lib/module/mock-builders/event/connectionRecovered.js.map +1 -1
  1294. package/lib/module/mock-builders/event/messageDeleted.js +0 -1
  1295. package/lib/module/mock-builders/event/messageDeleted.js.map +1 -1
  1296. package/lib/module/mock-builders/event/messageRead.js +2 -1
  1297. package/lib/module/mock-builders/event/messageRead.js.map +1 -1
  1298. package/lib/module/mock-builders/event/messageUpdated.js +0 -1
  1299. package/lib/module/mock-builders/event/messageUpdated.js.map +1 -1
  1300. package/lib/module/mock-builders/event/notificationChannelMutesUpdated.js +1 -3
  1301. package/lib/module/mock-builders/event/notificationChannelMutesUpdated.js.map +1 -1
  1302. package/lib/module/mock-builders/event/notificationMarkUnread.js +2 -1
  1303. package/lib/module/mock-builders/event/notificationMarkUnread.js.map +1 -1
  1304. package/lib/module/mock-builders/event/notificationMutesUpdated.js +2 -1
  1305. package/lib/module/mock-builders/event/notificationMutesUpdated.js.map +1 -1
  1306. package/lib/module/mock-builders/event/typing.js +1 -3
  1307. package/lib/module/mock-builders/event/typing.js.map +1 -1
  1308. package/lib/module/mock-builders/event/userPresence.js +1 -3
  1309. package/lib/module/mock-builders/event/userPresence.js.map +1 -1
  1310. package/lib/module/mock-builders/event/userUpdated.js +1 -3
  1311. package/lib/module/mock-builders/event/userUpdated.js.map +1 -1
  1312. package/lib/module/mock-builders/event/utils.js +18 -0
  1313. package/lib/module/mock-builders/event/utils.js.map +1 -0
  1314. package/lib/module/mock-builders/generator/attachment.js +11 -3
  1315. package/lib/module/mock-builders/generator/attachment.js.map +1 -1
  1316. package/lib/module/mock-builders/generator/channel.js +5 -4
  1317. package/lib/module/mock-builders/generator/channel.js.map +1 -1
  1318. package/lib/module/mock-builders/generator/channelState.js +53 -0
  1319. package/lib/module/mock-builders/generator/channelState.js.map +1 -0
  1320. package/lib/module/mock-builders/generator/message.js +15 -8
  1321. package/lib/module/mock-builders/generator/message.js.map +1 -1
  1322. package/lib/module/mock-builders/generator/reaction.js +2 -1
  1323. package/lib/module/mock-builders/generator/reaction.js.map +1 -1
  1324. package/lib/module/mock-builders/generator/time.js +13 -0
  1325. package/lib/module/mock-builders/generator/time.js.map +1 -0
  1326. package/lib/module/mock-builders/generator/user.js +3 -2
  1327. package/lib/module/mock-builders/generator/user.js.map +1 -1
  1328. package/lib/module/mock-builders/mock.js +5 -3
  1329. package/lib/module/mock-builders/mock.js.map +1 -1
  1330. package/lib/module/state-store/attachment-picker-store.js +2 -2
  1331. package/lib/module/state-store/attachment-picker-store.js.map +1 -1
  1332. package/lib/module/state-store/audio-player-pool.js +2 -2
  1333. package/lib/module/state-store/audio-player-pool.js.map +1 -1
  1334. package/lib/module/state-store/audio-player.js +2 -2
  1335. package/lib/module/state-store/audio-player.js.map +1 -1
  1336. package/lib/module/state-store/audio-recorder-manager.js +2 -2
  1337. package/lib/module/state-store/audio-recorder-manager.js.map +1 -1
  1338. package/lib/module/state-store/edit-channel-details-store.js +5 -5
  1339. package/lib/module/state-store/edit-channel-details-store.js.map +1 -1
  1340. package/lib/module/state-store/image-gallery-state-store.js +5 -4
  1341. package/lib/module/state-store/image-gallery-state-store.js.map +1 -1
  1342. package/lib/module/state-store/in-app-notifications-store.js +2 -2
  1343. package/lib/module/state-store/in-app-notifications-store.js.map +1 -1
  1344. package/lib/module/state-store/message-input-height-store.js +2 -2
  1345. package/lib/module/state-store/message-input-height-store.js.map +1 -1
  1346. package/lib/module/state-store/message-overlay-store.js +4 -4
  1347. package/lib/module/state-store/message-overlay-store.js.map +1 -1
  1348. package/lib/module/state-store/selection-store.js +2 -2
  1349. package/lib/module/state-store/selection-store.js.map +1 -1
  1350. package/lib/module/state-store/signal-store.js +2 -2
  1351. package/lib/module/state-store/signal-store.js.map +1 -1
  1352. package/lib/module/state-store/video-player-pool.js +2 -2
  1353. package/lib/module/state-store/video-player-pool.js.map +1 -1
  1354. package/lib/module/state-store/video-player.js +2 -2
  1355. package/lib/module/state-store/video-player.js.map +1 -1
  1356. package/lib/module/store/OfflineDB.js +11 -13
  1357. package/lib/module/store/OfflineDB.js.map +1 -1
  1358. package/lib/module/store/SqliteClient.js +1 -1
  1359. package/lib/module/store/apis/channelExists.js +1 -1
  1360. package/lib/module/store/apis/channelExists.js.map +1 -1
  1361. package/lib/module/store/apis/deleteMessagesForChannel.js +2 -1
  1362. package/lib/module/store/apis/deleteMessagesForChannel.js.map +1 -1
  1363. package/lib/module/store/apis/getAppSettings.js +3 -3
  1364. package/lib/module/store/apis/getAppSettings.js.map +1 -1
  1365. package/lib/module/store/apis/getChannelActiveLocations.js.map +1 -1
  1366. package/lib/module/store/apis/getChannelMessages.js +3 -3
  1367. package/lib/module/store/apis/getChannelMessages.js.map +1 -1
  1368. package/lib/module/store/apis/getChannels.js +7 -6
  1369. package/lib/module/store/apis/getChannels.js.map +1 -1
  1370. package/lib/module/store/apis/getChannelsForFilterSort.js +18 -10
  1371. package/lib/module/store/apis/getChannelsForFilterSort.js.map +1 -1
  1372. package/lib/module/store/apis/getDraft.js +1 -1
  1373. package/lib/module/store/apis/getDraft.js.map +1 -1
  1374. package/lib/module/store/apis/getDraftsForChannels.js +2 -2
  1375. package/lib/module/store/apis/getDraftsForChannels.js.map +1 -1
  1376. package/lib/module/store/apis/getLastSyncedAt.js +3 -3
  1377. package/lib/module/store/apis/getLastSyncedAt.js.map +1 -1
  1378. package/lib/module/store/apis/getReads.js.map +1 -1
  1379. package/lib/module/store/apis/index.js +0 -11
  1380. package/lib/module/store/apis/index.js.map +1 -1
  1381. package/lib/module/store/apis/insertReaction.js +6 -2
  1382. package/lib/module/store/apis/insertReaction.js.map +1 -1
  1383. package/lib/module/store/apis/queries/selectActiveLocationsForChannels.js +2 -1
  1384. package/lib/module/store/apis/queries/selectActiveLocationsForChannels.js.map +1 -1
  1385. package/lib/module/store/apis/queries/selectChannelQueryForFilterSort.js +56 -0
  1386. package/lib/module/store/apis/queries/selectChannelQueryForFilterSort.js.map +1 -0
  1387. package/lib/module/store/apis/queries/selectDraftMessageFromDraftForChannels.js +1 -1
  1388. package/lib/module/store/apis/queries/selectDraftMessageFromDraftForChannels.js.map +1 -1
  1389. package/lib/module/store/apis/queries/selectMembersForChannels.js +1 -1
  1390. package/lib/module/store/apis/queries/selectMembersForChannels.js.map +1 -1
  1391. package/lib/module/store/apis/queries/selectReactionsForMessages.js +2 -2
  1392. package/lib/module/store/apis/queries/selectReactionsForMessages.js.map +1 -1
  1393. package/lib/module/store/apis/softDeleteMessage.js +2 -1
  1394. package/lib/module/store/apis/softDeleteMessage.js.map +1 -1
  1395. package/lib/module/store/apis/updateReaction.js +6 -1
  1396. package/lib/module/store/apis/updateReaction.js.map +1 -1
  1397. package/lib/module/store/apis/upsertAppSettings.js +3 -3
  1398. package/lib/module/store/apis/upsertAppSettings.js.map +1 -1
  1399. package/lib/module/store/apis/upsertChannels.js +13 -6
  1400. package/lib/module/store/apis/upsertChannels.js.map +1 -1
  1401. package/lib/module/store/apis/upsertCidsForQuery.js +6 -2
  1402. package/lib/module/store/apis/upsertCidsForQuery.js.map +1 -1
  1403. package/lib/module/store/apis/upsertDraft.js.map +1 -1
  1404. package/lib/module/store/apis/upsertUserSyncStatus.js +3 -3
  1405. package/lib/module/store/apis/upsertUserSyncStatus.js.map +1 -1
  1406. package/lib/module/store/mappers/mapChannelDataToStorable.js +8 -11
  1407. package/lib/module/store/mappers/mapChannelDataToStorable.js.map +1 -1
  1408. package/lib/module/store/mappers/mapChannelToStorable.js +8 -11
  1409. package/lib/module/store/mappers/mapChannelToStorable.js.map +1 -1
  1410. package/lib/module/store/mappers/mapDraftMessageToStorable.js +1 -1
  1411. package/lib/module/store/mappers/mapDraftMessageToStorable.js.map +1 -1
  1412. package/lib/module/store/mappers/mapDraftToStorable.js +2 -2
  1413. package/lib/module/store/mappers/mapDraftToStorable.js.map +1 -1
  1414. package/lib/module/store/mappers/mapMemberToStorable.js +7 -7
  1415. package/lib/module/store/mappers/mapMemberToStorable.js.map +1 -1
  1416. package/lib/module/store/mappers/mapMessageToStorable.js +6 -6
  1417. package/lib/module/store/mappers/mapMessageToStorable.js.map +1 -1
  1418. package/lib/module/store/mappers/mapPollToStorable.js +4 -4
  1419. package/lib/module/store/mappers/mapPollToStorable.js.map +1 -1
  1420. package/lib/module/store/mappers/mapReactionToStorable.js +3 -3
  1421. package/lib/module/store/mappers/mapReactionToStorable.js.map +1 -1
  1422. package/lib/module/store/mappers/mapReadToStorable.js +3 -3
  1423. package/lib/module/store/mappers/mapReadToStorable.js.map +1 -1
  1424. package/lib/module/store/mappers/mapReminderToStorable.js +4 -4
  1425. package/lib/module/store/mappers/mapReminderToStorable.js.map +1 -1
  1426. package/lib/module/store/mappers/mapSharedLocationToStorable.js +4 -4
  1427. package/lib/module/store/mappers/mapSharedLocationToStorable.js.map +1 -1
  1428. package/lib/module/store/mappers/mapStorableToChannel.js +6 -5
  1429. package/lib/module/store/mappers/mapStorableToChannel.js.map +1 -1
  1430. package/lib/module/store/mappers/mapStorableToDraft.js +4 -3
  1431. package/lib/module/store/mappers/mapStorableToDraft.js.map +1 -1
  1432. package/lib/module/store/mappers/mapStorableToMember.js +12 -9
  1433. package/lib/module/store/mappers/mapStorableToMember.js.map +1 -1
  1434. package/lib/module/store/mappers/mapStorableToMessage.js +7 -6
  1435. package/lib/module/store/mappers/mapStorableToMessage.js.map +1 -1
  1436. package/lib/module/store/mappers/mapStorableToPoll.js +9 -6
  1437. package/lib/module/store/mappers/mapStorableToPoll.js.map +1 -1
  1438. package/lib/module/store/mappers/mapStorableToReaction.js +3 -2
  1439. package/lib/module/store/mappers/mapStorableToReaction.js.map +1 -1
  1440. package/lib/module/store/mappers/mapStorableToRead.js +4 -3
  1441. package/lib/module/store/mappers/mapStorableToRead.js.map +1 -1
  1442. package/lib/module/store/mappers/mapStorableToReminder.js +4 -3
  1443. package/lib/module/store/mappers/mapStorableToReminder.js.map +1 -1
  1444. package/lib/module/store/mappers/mapStorableToSharedLocation.js +4 -3
  1445. package/lib/module/store/mappers/mapStorableToSharedLocation.js.map +1 -1
  1446. package/lib/module/store/mappers/mapStorableToTimestamp.js +13 -0
  1447. package/lib/module/store/mappers/mapStorableToTimestamp.js.map +1 -0
  1448. package/lib/module/store/mappers/mapStorableToUser.js +5 -4
  1449. package/lib/module/store/mappers/mapStorableToUser.js.map +1 -1
  1450. package/lib/module/store/mappers/mapTimestampToStorable.js +7 -0
  1451. package/lib/module/store/mappers/mapTimestampToStorable.js.map +1 -0
  1452. package/lib/module/store/mappers/mapUserToStorable.js +4 -3
  1453. package/lib/module/store/mappers/mapUserToStorable.js.map +1 -1
  1454. package/lib/module/store/schema.js +33 -32
  1455. package/lib/module/store/schema.js.map +1 -1
  1456. package/lib/module/store/sqlite-utils/createUpsertQuery.js +17 -3
  1457. package/lib/module/store/sqlite-utils/createUpsertQuery.js.map +1 -1
  1458. package/lib/module/store/sqlite-utils/createUpsertQueryIfParentExists.js +15 -0
  1459. package/lib/module/store/sqlite-utils/createUpsertQueryIfParentExists.js.map +1 -0
  1460. package/lib/module/types/types.js.map +1 -1
  1461. package/lib/module/utils/attachmentUrls.js +15 -0
  1462. package/lib/module/utils/attachmentUrls.js.map +1 -0
  1463. package/lib/module/utils/getUrlOfImageAttachment.js +6 -1
  1464. package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -1
  1465. package/lib/module/utils/i18n/Streami18n.js +43 -408
  1466. package/lib/module/utils/i18n/Streami18n.js.map +1 -1
  1467. package/lib/module/utils/installNativeMultipartAdapter.js +25 -25
  1468. package/lib/module/utils/installNativeMultipartAdapter.js.map +1 -1
  1469. package/lib/module/utils/removeReservedFields.js.map +1 -1
  1470. package/lib/module/utils/utils.js +16 -54
  1471. package/lib/module/utils/utils.js.map +1 -1
  1472. package/lib/module/version.json +1 -1
  1473. package/lib/typescript/a11y/hooks/useA11yLabel.d.ts.map +1 -1
  1474. package/lib/typescript/components/AITypingIndicatorView/hooks/useAIState.d.ts +2 -8
  1475. package/lib/typescript/components/AITypingIndicatorView/hooks/useAIState.d.ts.map +1 -1
  1476. package/lib/typescript/components/Accessibility/NotificationAnnouncer.d.ts.map +1 -1
  1477. package/lib/typescript/components/Accessibility/hooks/useIncomingMessageAnnouncements.d.ts +2 -2
  1478. package/lib/typescript/components/Accessibility/hooks/useIncomingMessageAnnouncements.d.ts.map +1 -1
  1479. package/lib/typescript/components/Attachment/Attachment.d.ts.map +1 -1
  1480. package/lib/typescript/components/Attachment/Audio/AudioAttachment.d.ts +2 -1
  1481. package/lib/typescript/components/Attachment/Audio/AudioAttachment.d.ts.map +1 -1
  1482. package/lib/typescript/components/Attachment/FileAttachment.d.ts +1 -1
  1483. package/lib/typescript/components/Attachment/FileAttachment.d.ts.map +1 -1
  1484. package/lib/typescript/components/Attachment/FilePreview.d.ts.map +1 -1
  1485. package/lib/typescript/components/Attachment/Gallery.d.ts.map +1 -1
  1486. package/lib/typescript/components/Attachment/Giphy/Giphy.d.ts.map +1 -1
  1487. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +1 -1
  1488. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts.map +1 -1
  1489. package/lib/typescript/components/Attachment/utils/openUrlSafely.d.ts.map +1 -1
  1490. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.d.ts.map +1 -1
  1491. package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts.map +1 -1
  1492. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerContent.d.ts.map +1 -1
  1493. package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts.map +1 -1
  1494. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +2 -3
  1495. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts.map +1 -1
  1496. package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionRoleItem.d.ts.map +1 -1
  1497. package/lib/typescript/components/Channel/Channel.d.ts +13 -87
  1498. package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
  1499. package/lib/typescript/components/Channel/ChannelShell.d.ts +52 -0
  1500. package/lib/typescript/components/Channel/ChannelShell.d.ts.map +1 -0
  1501. package/lib/typescript/components/Channel/hooks/useChannelLifecycle.d.ts +21 -0
  1502. package/lib/typescript/components/Channel/hooks/useChannelLifecycle.d.ts.map +1 -0
  1503. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +1 -1
  1504. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts.map +1 -1
  1505. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
  1506. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts.map +1 -1
  1507. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
  1508. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
  1509. package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts.map +1 -1
  1510. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +1 -35
  1511. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts.map +1 -1
  1512. package/lib/typescript/components/Channel/hooks/useSupersededChannelSwap.d.ts +8 -0
  1513. package/lib/typescript/components/Channel/hooks/useSupersededChannelSwap.d.ts.map +1 -0
  1514. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsMemberSection.d.ts.map +1 -1
  1515. package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavHeader.d.ts.map +1 -1
  1516. package/lib/typescript/components/ChannelDetails/components/ChannelEditDetailsFormHeader.d.ts.map +1 -1
  1517. package/lib/typescript/components/ChannelDetails/components/members/AddMemberSearchResultItem.d.ts.map +1 -1
  1518. package/lib/typescript/components/ChannelDetails/components/members/ChannelAddMembersFormContent.d.ts.map +1 -1
  1519. package/lib/typescript/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.d.ts.map +1 -1
  1520. package/lib/typescript/components/ChannelDetails/components/members/ChannelMemberList.d.ts.map +1 -1
  1521. package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentList.d.ts.map +1 -1
  1522. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaItem.d.ts.map +1 -1
  1523. package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaList.d.ts.map +1 -1
  1524. package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageList.d.ts.map +1 -1
  1525. package/lib/typescript/components/ChannelDetails/hooks/members/useMemberRoles.d.ts.map +1 -1
  1526. package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.d.ts.map +1 -1
  1527. package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.d.ts.map +1 -1
  1528. package/lib/typescript/components/ChannelDetails/hooks/useEditChannelImage.d.ts.map +1 -1
  1529. package/lib/typescript/components/ChannelDetails/hooks/useFileAttachmentListSections.d.ts.map +1 -1
  1530. package/lib/typescript/components/ChannelDetails/hooks/useUserActivityStatus.d.ts.map +1 -1
  1531. package/lib/typescript/components/ChannelList/ChannelList.d.ts +7 -129
  1532. package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
  1533. package/lib/typescript/components/ChannelList/ChannelListView.d.ts +37 -2
  1534. package/lib/typescript/components/ChannelList/ChannelListView.d.ts.map +1 -1
  1535. package/lib/typescript/components/ChannelList/hooks/index.d.ts +0 -1
  1536. package/lib/typescript/components/ChannelList/hooks/index.d.ts.map +1 -1
  1537. package/lib/typescript/components/ChannelList/hooks/useChannelMembersState.d.ts +14 -3
  1538. package/lib/typescript/components/ChannelList/hooks/useChannelMembersState.d.ts.map +1 -1
  1539. package/lib/typescript/components/ChannelList/hooks/useChannelOnlineMemberCount.d.ts +5 -1
  1540. package/lib/typescript/components/ChannelList/hooks/useChannelOnlineMemberCount.d.ts.map +1 -1
  1541. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +1 -1
  1542. package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts.map +1 -1
  1543. package/lib/typescript/components/ChannelList/hooks/useMutedChannels.d.ts +5 -3
  1544. package/lib/typescript/components/ChannelList/hooks/useMutedChannels.d.ts.map +1 -1
  1545. package/lib/typescript/components/ChannelList/hooks/useMutedUsers.d.ts +3 -6
  1546. package/lib/typescript/components/ChannelList/hooks/useMutedUsers.d.ts.map +1 -1
  1547. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +8 -19
  1548. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
  1549. package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts.map +1 -1
  1550. package/lib/typescript/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.d.ts.map +1 -1
  1551. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +1 -2
  1552. package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
  1553. package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts.map +1 -1
  1554. package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts.map +1 -1
  1555. package/lib/typescript/components/ChannelPreview/ChannelPreviewTypingIndicator.d.ts.map +1 -1
  1556. package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts.map +1 -1
  1557. package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts.map +1 -1
  1558. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewData.d.ts +2 -2
  1559. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewData.d.ts.map +1 -1
  1560. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts.map +1 -1
  1561. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts.map +1 -1
  1562. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.d.ts.map +1 -1
  1563. package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewPollLabel.d.ts.map +1 -1
  1564. package/lib/typescript/components/ChannelPreview/hooks/useChannelTypingState.d.ts +8 -2
  1565. package/lib/typescript/components/ChannelPreview/hooks/useChannelTypingState.d.ts.map +1 -1
  1566. package/lib/typescript/components/ChannelPreview/hooks/useIsChannelMuted.d.ts +6 -6
  1567. package/lib/typescript/components/ChannelPreview/hooks/useIsChannelMuted.d.ts.map +1 -1
  1568. package/lib/typescript/components/Chat/Chat.d.ts +11 -42
  1569. package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
  1570. package/lib/typescript/components/Chat/hooks/index.d.ts +3 -3
  1571. package/lib/typescript/components/Chat/hooks/index.d.ts.map +1 -1
  1572. package/lib/typescript/components/Chat/hooks/useAppSettingsGetter.d.ts +16 -0
  1573. package/lib/typescript/components/Chat/hooks/useAppSettingsGetter.d.ts.map +1 -0
  1574. package/lib/typescript/components/Chat/hooks/useClientUserId.d.ts +14 -0
  1575. package/lib/typescript/components/Chat/hooks/useClientUserId.d.ts.map +1 -0
  1576. package/lib/typescript/components/Chat/hooks/useConnectionLifecycle.d.ts +42 -0
  1577. package/lib/typescript/components/Chat/hooks/useConnectionLifecycle.d.ts.map +1 -0
  1578. package/lib/typescript/components/Chat/hooks/useCreateChatClient.d.ts +7 -3
  1579. package/lib/typescript/components/Chat/hooks/useCreateChatClient.d.ts.map +1 -1
  1580. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +1 -1
  1581. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  1582. package/lib/typescript/components/Chat/hooks/useInitializeOfflineDb.d.ts +3 -2
  1583. package/lib/typescript/components/Chat/hooks/useInitializeOfflineDb.d.ts.map +1 -1
  1584. package/lib/typescript/components/Chat/hooks/useNetworkConnectionState.d.ts +23 -0
  1585. package/lib/typescript/components/Chat/hooks/useNetworkConnectionState.d.ts.map +1 -0
  1586. package/lib/typescript/components/Chat/hooks/usePendingUploadsDefault.d.ts +22 -0
  1587. package/lib/typescript/components/Chat/hooks/usePendingUploadsDefault.d.ts.map +1 -0
  1588. package/lib/typescript/components/Chat/hooks/useWSConnectionState.d.ts +54 -0
  1589. package/lib/typescript/components/Chat/hooks/useWSConnectionState.d.ts.map +1 -0
  1590. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts.map +1 -1
  1591. package/lib/typescript/components/Indicators/EmptyStateIndicator.d.ts.map +1 -1
  1592. package/lib/typescript/components/Indicators/LoadingErrorIndicator.d.ts +1 -1
  1593. package/lib/typescript/components/Indicators/LoadingErrorIndicator.d.ts.map +1 -1
  1594. package/lib/typescript/components/Indicators/LoadingIndicator.d.ts.map +1 -1
  1595. package/lib/typescript/components/Message/Message.d.ts +5 -7
  1596. package/lib/typescript/components/Message/Message.d.ts.map +1 -1
  1597. package/lib/typescript/components/Message/MessageItemView/Headers/MessagePinnedHeader.d.ts.map +1 -1
  1598. package/lib/typescript/components/Message/MessageItemView/Headers/MessageReminderHeader.d.ts.map +1 -1
  1599. package/lib/typescript/components/Message/MessageItemView/Headers/SentToChannelHeader.d.ts +2 -2
  1600. package/lib/typescript/components/Message/MessageItemView/Headers/SentToChannelHeader.d.ts.map +1 -1
  1601. package/lib/typescript/components/Message/MessageItemView/MessageBounce.d.ts +2 -2
  1602. package/lib/typescript/components/Message/MessageItemView/MessageBounce.d.ts.map +1 -1
  1603. package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts +1 -1
  1604. package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts.map +1 -1
  1605. package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts.map +1 -1
  1606. package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts +1 -2
  1607. package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts.map +1 -1
  1608. package/lib/typescript/components/Message/MessageItemView/MessageHeader.d.ts.map +1 -1
  1609. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts +2 -1
  1610. package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts.map +1 -1
  1611. package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts +1 -1
  1612. package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts.map +1 -1
  1613. package/lib/typescript/components/Message/MessageItemView/MessageStatus.d.ts +6 -1
  1614. package/lib/typescript/components/Message/MessageItemView/MessageStatus.d.ts.map +1 -1
  1615. package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts +1 -1
  1616. package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts.map +1 -1
  1617. package/lib/typescript/components/Message/hooks/useCreateMessageActionHandlers.d.ts +30 -0
  1618. package/lib/typescript/components/Message/hooks/useCreateMessageActionHandlers.d.ts.map +1 -0
  1619. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
  1620. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts.map +1 -1
  1621. package/lib/typescript/components/Message/hooks/useIsMessageDeliveredToOthers.d.ts +15 -0
  1622. package/lib/typescript/components/Message/hooks/useIsMessageDeliveredToOthers.d.ts.map +1 -0
  1623. package/lib/typescript/components/Message/hooks/useIsMessageReadByOthers.d.ts +18 -0
  1624. package/lib/typescript/components/Message/hooks/useIsMessageReadByOthers.d.ts.map +1 -0
  1625. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +7 -22
  1626. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts.map +1 -1
  1627. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +8 -13
  1628. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts.map +1 -1
  1629. package/lib/typescript/components/Message/hooks/useMessageData.d.ts +2 -2
  1630. package/lib/typescript/components/Message/hooks/useMessageData.d.ts.map +1 -1
  1631. package/lib/typescript/components/Message/hooks/useMessageDeliveryData.d.ts +1 -1
  1632. package/lib/typescript/components/Message/hooks/useMessageDeliveryData.d.ts.map +1 -1
  1633. package/lib/typescript/components/Message/hooks/useMessageOperations.d.ts +22 -0
  1634. package/lib/typescript/components/Message/hooks/useMessageOperations.d.ts.map +1 -0
  1635. package/lib/typescript/components/Message/hooks/useMessageReadData.d.ts +1 -1
  1636. package/lib/typescript/components/Message/hooks/useMessageReadData.d.ts.map +1 -1
  1637. package/lib/typescript/components/Message/hooks/useProcessReactions.d.ts.map +1 -1
  1638. package/lib/typescript/components/Message/hooks/useUserMuteActive.d.ts +11 -1
  1639. package/lib/typescript/components/Message/hooks/useUserMuteActive.d.ts.map +1 -1
  1640. package/lib/typescript/components/Message/utils/messageActions.d.ts +2 -2
  1641. package/lib/typescript/components/Message/utils/messageActions.d.ts.map +1 -1
  1642. package/lib/typescript/components/MessageInput/MessageComposer.d.ts +7 -3
  1643. package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -1
  1644. package/lib/typescript/components/MessageInput/SendMessageDisallowedIndicator.d.ts.map +1 -1
  1645. package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +1 -4
  1646. package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts.map +1 -1
  1647. package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.d.ts.map +1 -1
  1648. package/lib/typescript/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.d.ts.map +1 -1
  1649. package/lib/typescript/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.d.ts.map +1 -1
  1650. package/lib/typescript/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.d.ts.map +1 -1
  1651. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingButton.d.ts.map +1 -1
  1652. package/lib/typescript/components/MessageInput/components/InputButtons/AttachButton.d.ts.map +1 -1
  1653. package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts.map +1 -1
  1654. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts +4 -2
  1655. package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts.map +1 -1
  1656. package/lib/typescript/components/MessageInput/hooks/useAudioRecorder.d.ts.map +1 -1
  1657. package/lib/typescript/components/MessageInput/utils/messageComposerSelectors.d.ts +2 -2
  1658. package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +1 -1
  1659. package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts.map +1 -1
  1660. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +1 -1
  1661. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts.map +1 -1
  1662. package/lib/typescript/components/MessageList/InlineUnreadIndicator.d.ts.map +1 -1
  1663. package/lib/typescript/components/MessageList/MessageFlashList.d.ts +15 -6
  1664. package/lib/typescript/components/MessageList/MessageFlashList.d.ts.map +1 -1
  1665. package/lib/typescript/components/MessageList/MessageList.d.ts +16 -6
  1666. package/lib/typescript/components/MessageList/MessageList.d.ts.map +1 -1
  1667. package/lib/typescript/components/MessageList/MessageSystem.d.ts.map +1 -1
  1668. package/lib/typescript/components/MessageList/NetworkDownIndicator.d.ts.map +1 -1
  1669. package/lib/typescript/components/MessageList/ScrollToBottomButton.d.ts +2 -3
  1670. package/lib/typescript/components/MessageList/ScrollToBottomButton.d.ts.map +1 -1
  1671. package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +5 -3
  1672. package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts.map +1 -1
  1673. package/lib/typescript/components/MessageList/UnreadMessagesNotification.d.ts +7 -6
  1674. package/lib/typescript/components/MessageList/UnreadMessagesNotification.d.ts.map +1 -1
  1675. package/lib/typescript/components/MessageList/hooks/useMarkRead.d.ts +16 -0
  1676. package/lib/typescript/components/MessageList/hooks/useMarkRead.d.ts.map +1 -0
  1677. package/lib/typescript/components/MessageList/hooks/useMessageDateSeparator.d.ts.map +1 -1
  1678. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +11 -5
  1679. package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts.map +1 -1
  1680. package/lib/typescript/components/MessageList/hooks/useMessageListFocus.d.ts +18 -0
  1681. package/lib/typescript/components/MessageList/hooks/useMessageListFocus.d.ts.map +1 -0
  1682. package/lib/typescript/components/MessageList/hooks/useMessageListLiveState.d.ts +24 -0
  1683. package/lib/typescript/components/MessageList/hooks/useMessageListLiveState.d.ts.map +1 -0
  1684. package/lib/typescript/components/MessageList/hooks/useMessageListPagination.d.ts +18 -0
  1685. package/lib/typescript/components/MessageList/hooks/useMessageListPagination.d.ts.map +1 -0
  1686. package/lib/typescript/components/MessageList/hooks/useOwnUnreadCount.d.ts +7 -0
  1687. package/lib/typescript/components/MessageList/hooks/useOwnUnreadCount.d.ts.map +1 -0
  1688. package/lib/typescript/components/MessageList/hooks/useScrollToBottomAccessibilityAction.d.ts +2 -3
  1689. package/lib/typescript/components/MessageList/hooks/useScrollToBottomAccessibilityAction.d.ts.map +1 -1
  1690. package/lib/typescript/components/MessageList/hooks/useStickyHeaderDate.d.ts +13 -0
  1691. package/lib/typescript/components/MessageList/hooks/useStickyHeaderDate.d.ts.map +1 -0
  1692. package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts.map +1 -1
  1693. package/lib/typescript/components/MessageList/hooks/useTypingUsers.d.ts +13 -0
  1694. package/lib/typescript/components/MessageList/hooks/useTypingUsers.d.ts.map +1 -1
  1695. package/lib/typescript/components/MessageList/hooks/useUnreadNotificationVisibility.d.ts +25 -0
  1696. package/lib/typescript/components/MessageList/hooks/useUnreadNotificationVisibility.d.ts.map +1 -0
  1697. package/lib/typescript/components/MessageList/utils/buildMessageListWithNeighbours.d.ts +5 -0
  1698. package/lib/typescript/components/MessageList/utils/buildMessageListWithNeighbours.d.ts.map +1 -1
  1699. package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +6 -5
  1700. package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts.map +1 -1
  1701. package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts.map +1 -1
  1702. package/lib/typescript/components/MessageMenu/MessageActionListWithActions.d.ts +7 -0
  1703. package/lib/typescript/components/MessageMenu/MessageActionListWithActions.d.ts.map +1 -0
  1704. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +1 -1
  1705. package/lib/typescript/components/MessageMenu/hooks/useFetchReactions.d.ts +2 -2
  1706. package/lib/typescript/components/MessageMenu/hooks/useFetchReactions.d.ts.map +1 -1
  1707. package/lib/typescript/components/Notifications/hooks/useNotificationTarget.d.ts.map +1 -1
  1708. package/lib/typescript/components/Notifications/notificationTranslations.d.ts +2 -2
  1709. package/lib/typescript/components/Notifications/notificationTranslations.d.ts.map +1 -1
  1710. package/lib/typescript/components/Poll/CreatePollContent.d.ts.map +1 -1
  1711. package/lib/typescript/components/Poll/Poll.d.ts.map +1 -1
  1712. package/lib/typescript/components/Poll/components/Button.d.ts +2 -2
  1713. package/lib/typescript/components/Poll/components/Button.d.ts.map +1 -1
  1714. package/lib/typescript/components/Poll/components/CreatePollOptions.d.ts +2 -1
  1715. package/lib/typescript/components/Poll/components/CreatePollOptions.d.ts.map +1 -1
  1716. package/lib/typescript/components/Poll/components/MultipleAnswersField.d.ts.map +1 -1
  1717. package/lib/typescript/components/Poll/components/MultipleVotesSettings.d.ts.map +1 -1
  1718. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts +3 -3
  1719. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -1
  1720. package/lib/typescript/components/Poll/components/PollButtons.d.ts.map +1 -1
  1721. package/lib/typescript/components/Poll/components/PollOption.d.ts +1 -1
  1722. package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -1
  1723. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts +2 -2
  1724. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts.map +1 -1
  1725. package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts +4 -4
  1726. package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts.map +1 -1
  1727. package/lib/typescript/components/Poll/components/PollResults/PollVote.d.ts +1 -1
  1728. package/lib/typescript/components/Poll/components/PollResults/PollVote.d.ts.map +1 -1
  1729. package/lib/typescript/components/Poll/contexts/PollUIStateContext.d.ts +1 -1
  1730. package/lib/typescript/components/Poll/contexts/PollUIStateContext.d.ts.map +1 -1
  1731. package/lib/typescript/components/Poll/hooks/useEndVote.d.ts +1 -1
  1732. package/lib/typescript/components/Poll/hooks/useEndVote.d.ts.map +1 -1
  1733. package/lib/typescript/components/Poll/hooks/usePollAnswersPagination.d.ts +2 -2
  1734. package/lib/typescript/components/Poll/hooks/usePollAnswersPagination.d.ts.map +1 -1
  1735. package/lib/typescript/components/Poll/hooks/usePollOptionVotesPagination.d.ts +4 -4
  1736. package/lib/typescript/components/Poll/hooks/usePollOptionVotesPagination.d.ts.map +1 -1
  1737. package/lib/typescript/components/Poll/hooks/usePollState.d.ts +7 -7
  1738. package/lib/typescript/components/Poll/hooks/usePollState.d.ts.map +1 -1
  1739. package/lib/typescript/components/Reply/Reply.d.ts +3 -2
  1740. package/lib/typescript/components/Reply/Reply.d.ts.map +1 -1
  1741. package/lib/typescript/components/Thread/Thread.d.ts +24 -38
  1742. package/lib/typescript/components/Thread/Thread.d.ts.map +1 -1
  1743. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +8 -1
  1744. package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts.map +1 -1
  1745. package/lib/typescript/components/ThreadList/ThreadList.d.ts.map +1 -1
  1746. package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
  1747. package/lib/typescript/components/ThreadList/ThreadListUnreadBanner.d.ts.map +1 -1
  1748. package/lib/typescript/components/ThreadList/ThreadMessagePreviewDeliveryStatus.d.ts.map +1 -1
  1749. package/lib/typescript/components/UIComponents/BottomSheetModal.d.ts.map +1 -1
  1750. package/lib/typescript/components/index.d.ts +5 -8
  1751. package/lib/typescript/components/index.d.ts.map +1 -1
  1752. package/lib/typescript/components/ui/Avatar/ChannelAvatar.d.ts.map +1 -1
  1753. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +1 -106
  1754. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts.map +1 -1
  1755. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +5 -34
  1756. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
  1757. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +9 -34
  1758. package/lib/typescript/contexts/chatContext/ChatContext.d.ts.map +1 -1
  1759. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts +0 -4
  1760. package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts.map +1 -1
  1761. package/lib/typescript/contexts/index.d.ts +1 -3
  1762. package/lib/typescript/contexts/index.d.ts.map +1 -1
  1763. package/lib/typescript/contexts/liveLocationManagerContext/LiveLocationManagerContext.d.ts.map +1 -1
  1764. package/lib/typescript/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.d.ts.map +1 -1
  1765. package/lib/typescript/contexts/messageComposerContext/MessageComposerContext.d.ts +8 -5
  1766. package/lib/typescript/contexts/messageComposerContext/MessageComposerContext.d.ts.map +1 -1
  1767. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +13 -17
  1768. package/lib/typescript/contexts/messageContext/MessageContext.d.ts.map +1 -1
  1769. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +1 -20
  1770. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
  1771. package/lib/typescript/contexts/messageInputContext/hooks/useActiveCommand.d.ts +1 -1
  1772. package/lib/typescript/contexts/messageInputContext/hooks/useActiveCommand.d.ts.map +1 -1
  1773. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -2
  1774. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts.map +1 -1
  1775. package/lib/typescript/contexts/messageInputContext/hooks/useMessageComposer.d.ts +4 -0
  1776. package/lib/typescript/contexts/messageInputContext/hooks/useMessageComposer.d.ts.map +1 -1
  1777. package/lib/typescript/contexts/messageInputContext/hooks/usePendingUploadsEnabled.d.ts +11 -0
  1778. package/lib/typescript/contexts/messageInputContext/hooks/usePendingUploadsEnabled.d.ts.map +1 -0
  1779. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +10 -25
  1780. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
  1781. package/lib/typescript/contexts/pollContext/createPollContentContext.d.ts +1 -1
  1782. package/lib/typescript/contexts/pollContext/createPollContentContext.d.ts.map +1 -1
  1783. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +8 -28
  1784. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts.map +1 -1
  1785. package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts +2 -3
  1786. package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts.map +1 -1
  1787. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +11 -3
  1788. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts.map +1 -1
  1789. package/lib/typescript/contexts/translationContext/index.d.ts +0 -1
  1790. package/lib/typescript/contexts/translationContext/index.d.ts.map +1 -1
  1791. package/lib/typescript/contexts/translationContext/types.d.ts +20 -8
  1792. package/lib/typescript/contexts/translationContext/types.d.ts.map +1 -1
  1793. package/lib/typescript/hooks/actions/useChannelActionItems.d.ts.map +1 -1
  1794. package/lib/typescript/hooks/actions/useChannelActions.d.ts.map +1 -1
  1795. package/lib/typescript/hooks/actions/useChannelMemberActionItems.d.ts.map +1 -1
  1796. package/lib/typescript/hooks/actions/useUserActions.d.ts.map +1 -1
  1797. package/lib/typescript/hooks/index.d.ts +3 -1
  1798. package/lib/typescript/hooks/index.d.ts.map +1 -1
  1799. package/lib/typescript/hooks/messagePreview/useGroupedAttachments.d.ts +2 -2
  1800. package/lib/typescript/hooks/messagePreview/useGroupedAttachments.d.ts.map +1 -1
  1801. package/lib/typescript/hooks/messagePreview/useMessageDeliveryStatus.d.ts +9 -2
  1802. package/lib/typescript/hooks/messagePreview/useMessageDeliveryStatus.d.ts.map +1 -1
  1803. package/lib/typescript/hooks/messagePreview/useMessagePreviewText.d.ts.map +1 -1
  1804. package/lib/typescript/hooks/useAudioPlayer.d.ts.map +1 -1
  1805. package/lib/typescript/hooks/useChannel.d.ts +11 -0
  1806. package/lib/typescript/hooks/useChannel.d.ts.map +1 -0
  1807. package/lib/typescript/hooks/useChannelImage.d.ts +3 -0
  1808. package/lib/typescript/hooks/useChannelImage.d.ts.map +1 -1
  1809. package/lib/typescript/hooks/useChannelMemberCount.d.ts +4 -0
  1810. package/lib/typescript/hooks/useChannelMemberCount.d.ts.map +1 -1
  1811. package/lib/typescript/hooks/useChannelMembershipState.d.ts +4 -0
  1812. package/lib/typescript/hooks/useChannelMembershipState.d.ts.map +1 -1
  1813. package/lib/typescript/hooks/useChannelMuteActive.d.ts.map +1 -1
  1814. package/lib/typescript/hooks/useChannelName.d.ts +3 -0
  1815. package/lib/typescript/hooks/useChannelName.d.ts.map +1 -1
  1816. package/lib/typescript/hooks/useChannelOwnCapabilities.d.ts +5 -2
  1817. package/lib/typescript/hooks/useChannelOwnCapabilities.d.ts.map +1 -1
  1818. package/lib/typescript/hooks/useIsDirectChat.d.ts.map +1 -1
  1819. package/lib/typescript/hooks/useIsTargetedMessage.d.ts +12 -0
  1820. package/lib/typescript/hooks/useIsTargetedMessage.d.ts.map +1 -0
  1821. package/lib/typescript/hooks/useMessagePaginator.d.ts +6 -0
  1822. package/lib/typescript/hooks/useMessagePaginator.d.ts.map +1 -0
  1823. package/lib/typescript/hooks/usePrunableMessageList.d.ts +18 -6
  1824. package/lib/typescript/hooks/usePrunableMessageList.d.ts.map +1 -1
  1825. package/lib/typescript/hooks/useQueryReminders.d.ts +3 -3
  1826. package/lib/typescript/hooks/useQueryReminders.d.ts.map +1 -1
  1827. package/lib/typescript/hooks/useStateStore.d.ts +1 -1
  1828. package/lib/typescript/hooks/useStateStore.d.ts.map +1 -1
  1829. package/lib/typescript/hooks/useStreami18n.d.ts.map +1 -1
  1830. package/lib/typescript/hooks/useSyncClientEvents.d.ts +5 -5
  1831. package/lib/typescript/hooks/useSyncClientEvents.d.ts.map +1 -1
  1832. package/lib/typescript/hooks/useTranslatedMessage.d.ts +203 -114
  1833. package/lib/typescript/hooks/useTranslatedMessage.d.ts.map +1 -1
  1834. package/lib/typescript/i18n/index.d.ts +5 -0
  1835. package/lib/typescript/i18n/index.d.ts.map +1 -0
  1836. package/lib/typescript/i18n/keys.d.ts +432 -0
  1837. package/lib/typescript/i18n/keys.d.ts.map +1 -0
  1838. package/lib/typescript/i18n/runtimeDefaults.d.ts +135 -0
  1839. package/lib/typescript/i18n/runtimeDefaults.d.ts.map +1 -0
  1840. package/lib/typescript/i18n/types.d.ts +29 -0
  1841. package/lib/typescript/i18n/types.d.ts.map +1 -0
  1842. package/lib/typescript/i18n/utils.d.ts +33 -0
  1843. package/lib/typescript/i18n/utils.d.ts.map +1 -0
  1844. package/lib/typescript/index.d.ts +2 -13
  1845. package/lib/typescript/index.d.ts.map +1 -1
  1846. package/lib/typescript/middlewares/attachments.d.ts +1 -4
  1847. package/lib/typescript/middlewares/attachments.d.ts.map +1 -1
  1848. package/lib/typescript/state-store/attachment-picker-store.d.ts +1 -1
  1849. package/lib/typescript/state-store/attachment-picker-store.d.ts.map +1 -1
  1850. package/lib/typescript/state-store/audio-player-pool.d.ts +1 -1
  1851. package/lib/typescript/state-store/audio-player-pool.d.ts.map +1 -1
  1852. package/lib/typescript/state-store/audio-player.d.ts +1 -1
  1853. package/lib/typescript/state-store/audio-player.d.ts.map +1 -1
  1854. package/lib/typescript/state-store/audio-recorder-manager.d.ts +1 -1
  1855. package/lib/typescript/state-store/audio-recorder-manager.d.ts.map +1 -1
  1856. package/lib/typescript/state-store/edit-channel-details-store.d.ts +2 -1
  1857. package/lib/typescript/state-store/edit-channel-details-store.d.ts.map +1 -1
  1858. package/lib/typescript/state-store/image-gallery-state-store.d.ts +5 -4
  1859. package/lib/typescript/state-store/image-gallery-state-store.d.ts.map +1 -1
  1860. package/lib/typescript/state-store/in-app-notifications-store.d.ts +2 -1
  1861. package/lib/typescript/state-store/in-app-notifications-store.d.ts.map +1 -1
  1862. package/lib/typescript/state-store/message-input-height-store.d.ts +1 -1
  1863. package/lib/typescript/state-store/message-input-height-store.d.ts.map +1 -1
  1864. package/lib/typescript/state-store/message-overlay-store.d.ts +1 -1
  1865. package/lib/typescript/state-store/message-overlay-store.d.ts.map +1 -1
  1866. package/lib/typescript/state-store/selection-store.d.ts +1 -1
  1867. package/lib/typescript/state-store/selection-store.d.ts.map +1 -1
  1868. package/lib/typescript/state-store/signal-store.d.ts +1 -1
  1869. package/lib/typescript/state-store/signal-store.d.ts.map +1 -1
  1870. package/lib/typescript/state-store/video-player-pool.d.ts +1 -1
  1871. package/lib/typescript/state-store/video-player-pool.d.ts.map +1 -1
  1872. package/lib/typescript/state-store/video-player.d.ts +1 -1
  1873. package/lib/typescript/state-store/video-player.d.ts.map +1 -1
  1874. package/lib/typescript/store/OfflineDB.d.ts +12 -11
  1875. package/lib/typescript/store/OfflineDB.d.ts.map +1 -1
  1876. package/lib/typescript/store/SqliteClient.d.ts +2 -2
  1877. package/lib/typescript/store/SqliteClient.d.ts.map +1 -1
  1878. package/lib/typescript/store/apis/channelExists.d.ts +9 -0
  1879. package/lib/typescript/store/apis/channelExists.d.ts.map +1 -1
  1880. package/lib/typescript/store/apis/deleteMessagesForChannel.d.ts +3 -1
  1881. package/lib/typescript/store/apis/deleteMessagesForChannel.d.ts.map +1 -1
  1882. package/lib/typescript/store/apis/deleteReaction.d.ts +2 -2
  1883. package/lib/typescript/store/apis/deleteReaction.d.ts.map +1 -1
  1884. package/lib/typescript/store/apis/getAppSettings.d.ts +4 -4
  1885. package/lib/typescript/store/apis/getAppSettings.d.ts.map +1 -1
  1886. package/lib/typescript/store/apis/getChannelActiveLocations.d.ts +2 -2
  1887. package/lib/typescript/store/apis/getChannelActiveLocations.d.ts.map +1 -1
  1888. package/lib/typescript/store/apis/getChannelMessages.d.ts +2 -2
  1889. package/lib/typescript/store/apis/getChannelMessages.d.ts.map +1 -1
  1890. package/lib/typescript/store/apis/getChannels.d.ts +5 -5
  1891. package/lib/typescript/store/apis/getChannels.d.ts.map +1 -1
  1892. package/lib/typescript/store/apis/getChannelsForFilterSort.d.ts +8 -7
  1893. package/lib/typescript/store/apis/getChannelsForFilterSort.d.ts.map +1 -1
  1894. package/lib/typescript/store/apis/getDraftsForChannels.d.ts +2 -2
  1895. package/lib/typescript/store/apis/getDraftsForChannels.d.ts.map +1 -1
  1896. package/lib/typescript/store/apis/getLastSyncedAt.d.ts +2 -2
  1897. package/lib/typescript/store/apis/getLastSyncedAt.d.ts.map +1 -1
  1898. package/lib/typescript/store/apis/getReactionsforFilterSort.d.ts +2 -2
  1899. package/lib/typescript/store/apis/getReactionsforFilterSort.d.ts.map +1 -1
  1900. package/lib/typescript/store/apis/getReads.d.ts +2 -2
  1901. package/lib/typescript/store/apis/getReads.d.ts.map +1 -1
  1902. package/lib/typescript/store/apis/index.d.ts +0 -1
  1903. package/lib/typescript/store/apis/index.d.ts.map +1 -1
  1904. package/lib/typescript/store/apis/insertReaction.d.ts.map +1 -1
  1905. package/lib/typescript/store/apis/queries/selectActiveLocationsForChannels.d.ts.map +1 -1
  1906. package/lib/typescript/store/apis/queries/selectChannelQueryForFilterSort.d.ts +24 -0
  1907. package/lib/typescript/store/apis/queries/selectChannelQueryForFilterSort.d.ts.map +1 -0
  1908. package/lib/typescript/store/apis/queries/selectReactionsForMessages.d.ts +2 -2
  1909. package/lib/typescript/store/apis/queries/selectReactionsForMessages.d.ts.map +1 -1
  1910. package/lib/typescript/store/apis/softDeleteMessage.d.ts.map +1 -1
  1911. package/lib/typescript/store/apis/updateReaction.d.ts.map +1 -1
  1912. package/lib/typescript/store/apis/upsertAppSettings.d.ts +4 -4
  1913. package/lib/typescript/store/apis/upsertAppSettings.d.ts.map +1 -1
  1914. package/lib/typescript/store/apis/upsertChannels.d.ts +2 -2
  1915. package/lib/typescript/store/apis/upsertChannels.d.ts.map +1 -1
  1916. package/lib/typescript/store/apis/upsertCidsForQuery.d.ts +4 -3
  1917. package/lib/typescript/store/apis/upsertCidsForQuery.d.ts.map +1 -1
  1918. package/lib/typescript/store/apis/upsertDraft.d.ts.map +1 -1
  1919. package/lib/typescript/store/apis/upsertLocation.d.ts +2 -2
  1920. package/lib/typescript/store/apis/upsertLocation.d.ts.map +1 -1
  1921. package/lib/typescript/store/apis/upsertPoll.d.ts +2 -2
  1922. package/lib/typescript/store/apis/upsertPoll.d.ts.map +1 -1
  1923. package/lib/typescript/store/apis/upsertReads.d.ts +2 -2
  1924. package/lib/typescript/store/apis/upsertReads.d.ts.map +1 -1
  1925. package/lib/typescript/store/apis/upsertUserSyncStatus.d.ts +2 -2
  1926. package/lib/typescript/store/apis/upsertUserSyncStatus.d.ts.map +1 -1
  1927. package/lib/typescript/store/apis/utils/convertFilterSortToQuery.d.ts +2 -2
  1928. package/lib/typescript/store/apis/utils/convertFilterSortToQuery.d.ts.map +1 -1
  1929. package/lib/typescript/store/mappers/mapChannelDataToStorable.d.ts.map +1 -1
  1930. package/lib/typescript/store/mappers/mapChannelToStorable.d.ts.map +1 -1
  1931. package/lib/typescript/store/mappers/mapDraftMessageToStorable.d.ts.map +1 -1
  1932. package/lib/typescript/store/mappers/mapMessageToStorable.d.ts.map +1 -1
  1933. package/lib/typescript/store/mappers/mapPollToStorable.d.ts +2 -2
  1934. package/lib/typescript/store/mappers/mapPollToStorable.d.ts.map +1 -1
  1935. package/lib/typescript/store/mappers/mapReadToStorable.d.ts +2 -2
  1936. package/lib/typescript/store/mappers/mapReadToStorable.d.ts.map +1 -1
  1937. package/lib/typescript/store/mappers/mapReminderToStorable.d.ts +2 -2
  1938. package/lib/typescript/store/mappers/mapSharedLocationToStorable.d.ts +2 -2
  1939. package/lib/typescript/store/mappers/mapSharedLocationToStorable.d.ts.map +1 -1
  1940. package/lib/typescript/store/mappers/mapStorableToChannel.d.ts +2 -2
  1941. package/lib/typescript/store/mappers/mapStorableToChannel.d.ts.map +1 -1
  1942. package/lib/typescript/store/mappers/mapStorableToDraft.d.ts +2 -2
  1943. package/lib/typescript/store/mappers/mapStorableToDraft.d.ts.map +1 -1
  1944. package/lib/typescript/store/mappers/mapStorableToMember.d.ts.map +1 -1
  1945. package/lib/typescript/store/mappers/mapStorableToMessage.d.ts +2 -2
  1946. package/lib/typescript/store/mappers/mapStorableToMessage.d.ts.map +1 -1
  1947. package/lib/typescript/store/mappers/mapStorableToPoll.d.ts +2 -2
  1948. package/lib/typescript/store/mappers/mapStorableToPoll.d.ts.map +1 -1
  1949. package/lib/typescript/store/mappers/mapStorableToReaction.d.ts.map +1 -1
  1950. package/lib/typescript/store/mappers/mapStorableToRead.d.ts +2 -2
  1951. package/lib/typescript/store/mappers/mapStorableToRead.d.ts.map +1 -1
  1952. package/lib/typescript/store/mappers/mapStorableToReminder.d.ts +2 -2
  1953. package/lib/typescript/store/mappers/mapStorableToReminder.d.ts.map +1 -1
  1954. package/lib/typescript/store/mappers/mapStorableToSharedLocation.d.ts +2 -2
  1955. package/lib/typescript/store/mappers/mapStorableToSharedLocation.d.ts.map +1 -1
  1956. package/lib/typescript/store/mappers/mapStorableToTimestamp.d.ts +20 -0
  1957. package/lib/typescript/store/mappers/mapStorableToTimestamp.d.ts.map +1 -0
  1958. package/lib/typescript/store/mappers/mapStorableToUser.d.ts.map +1 -1
  1959. package/lib/typescript/store/mappers/mapTaskToStorable.d.ts +7 -7
  1960. package/lib/typescript/store/mappers/mapTimestampToStorable.d.ts +14 -0
  1961. package/lib/typescript/store/mappers/mapTimestampToStorable.d.ts.map +1 -0
  1962. package/lib/typescript/store/mappers/mapUserToStorable.d.ts.map +1 -1
  1963. package/lib/typescript/store/schema.d.ts +38 -33
  1964. package/lib/typescript/store/schema.d.ts.map +1 -1
  1965. package/lib/typescript/store/sqlite-utils/createUpsertQuery.d.ts +13 -0
  1966. package/lib/typescript/store/sqlite-utils/createUpsertQuery.d.ts.map +1 -1
  1967. package/lib/typescript/store/sqlite-utils/createUpsertQueryIfParentExists.d.ts +40 -0
  1968. package/lib/typescript/store/sqlite-utils/createUpsertQueryIfParentExists.d.ts.map +1 -0
  1969. package/lib/typescript/store/types.d.ts +4 -4
  1970. package/lib/typescript/store/types.d.ts.map +1 -1
  1971. package/lib/typescript/types/react-native-compat.d.ts +2 -2
  1972. package/lib/typescript/types/types.d.ts +11 -6
  1973. package/lib/typescript/types/types.d.ts.map +1 -1
  1974. package/lib/typescript/utils/attachmentUrls.d.ts +13 -0
  1975. package/lib/typescript/utils/attachmentUrls.d.ts.map +1 -0
  1976. package/lib/typescript/utils/getUrlOfImageAttachment.d.ts +1 -1
  1977. package/lib/typescript/utils/getUrlOfImageAttachment.d.ts.map +1 -1
  1978. package/lib/typescript/utils/i18n/Streami18n.d.ts +60 -632
  1979. package/lib/typescript/utils/i18n/Streami18n.d.ts.map +1 -1
  1980. package/lib/typescript/utils/installNativeMultipartAdapter.d.ts +9 -5
  1981. package/lib/typescript/utils/installNativeMultipartAdapter.d.ts.map +1 -1
  1982. package/lib/typescript/utils/removeReservedFields.d.ts +1 -1
  1983. package/lib/typescript/utils/removeReservedFields.d.ts.map +1 -1
  1984. package/lib/typescript/utils/utils.d.ts +13 -32
  1985. package/lib/typescript/utils/utils.d.ts.map +1 -1
  1986. package/package.json +11 -11
  1987. package/src/__tests__/instanceConfiguration.test.tsx +287 -0
  1988. package/src/__tests__/offline-support/index.test.ts +6 -0
  1989. package/src/__tests__/offline-support/offline-feature.tsx +149 -69
  1990. package/src/__tests__/offline-support/optimistic-update.tsx +702 -132
  1991. package/src/a11y/hooks/useA11yLabel.ts +3 -1
  1992. package/src/components/AITypingIndicatorView/AITypingIndicatorView.tsx +3 -3
  1993. package/src/components/AITypingIndicatorView/hooks/__tests__/useAIState.test.ts +46 -0
  1994. package/src/components/AITypingIndicatorView/hooks/useAIState.ts +8 -49
  1995. package/src/components/Accessibility/NotificationAnnouncer.tsx +15 -5
  1996. package/src/components/Accessibility/hooks/useIncomingMessageAnnouncements.ts +22 -23
  1997. package/src/components/Attachment/Attachment.tsx +10 -6
  1998. package/src/components/Attachment/Audio/AudioAttachment.tsx +10 -10
  1999. package/src/components/Attachment/FileAttachment.tsx +13 -5
  2000. package/src/components/Attachment/FilePreview.tsx +8 -4
  2001. package/src/components/Attachment/Gallery.tsx +17 -5
  2002. package/src/components/Attachment/Giphy/Giphy.tsx +3 -1
  2003. package/src/components/Attachment/UnsupportedAttachment.tsx +2 -2
  2004. package/src/components/Attachment/__tests__/Attachment.test.tsx +84 -13
  2005. package/src/components/Attachment/__tests__/openUrlSafely.test.ts +13 -0
  2006. package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +3 -3
  2007. package/src/components/Attachment/utils/openUrlSafely.ts +7 -1
  2008. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.tsx +5 -2
  2009. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx +57 -25
  2010. package/src/components/AttachmentPicker/components/AttachmentMediaPicker/__tests__/AttachmentPickerItem.test.tsx +63 -0
  2011. package/src/components/AttachmentPicker/components/AttachmentPickerContent.tsx +24 -16
  2012. package/src/components/AttachmentPicker/components/AttachmentTypePickerButton.tsx +9 -9
  2013. package/src/components/AttachmentPicker/components/__tests__/AttachmentCommandPicker.test.tsx +47 -0
  2014. package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +17 -7
  2015. package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +2 -4
  2016. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +3 -3
  2017. package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.tsx +12 -3
  2018. package/src/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.tsx +2 -2
  2019. package/src/components/AutoCompleteInput/mentionItems/MentionRoleItem.tsx +3 -1
  2020. package/src/components/AutoCompleteInput/mentionItems/__tests__/MentionItems.test.tsx +5 -5
  2021. package/src/components/Channel/Channel.tsx +60 -1783
  2022. package/src/components/Channel/ChannelShell.tsx +542 -0
  2023. package/src/components/Channel/__tests__/Channel.test.tsx +584 -221
  2024. package/src/components/Channel/__tests__/isAttachmentEqualHandler.test.tsx +7 -2
  2025. package/src/components/Channel/__tests__/ownCapabilities.test.tsx +12 -13
  2026. package/src/components/Channel/__tests__/useCreateChannelContext.test.ts +56 -0
  2027. package/src/components/Channel/hooks/useChannelLifecycle.ts +170 -0
  2028. package/src/components/Channel/hooks/useCreateChannelContext.ts +2 -64
  2029. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +1 -9
  2030. package/src/components/Channel/hooks/useCreateMessagesContext.ts +2 -20
  2031. package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +19 -32
  2032. package/src/components/Channel/hooks/useCreateThreadContext.ts +9 -49
  2033. package/src/components/Channel/hooks/useSupersededChannelSwap.ts +25 -0
  2034. package/src/components/ChannelDetails/__tests__/ChannelDetails.test.tsx +3 -2
  2035. package/src/components/ChannelDetails/__tests__/ChannelDetailsActionsSection.test.tsx +15 -10
  2036. package/src/components/ChannelDetails/__tests__/ChannelDetailsEditButton.test.tsx +3 -2
  2037. package/src/components/ChannelDetails/__tests__/ChannelDetailsMemberSection.test.tsx +6 -7
  2038. package/src/components/ChannelDetails/__tests__/ChannelDetailsNavHeader.test.tsx +1 -1
  2039. package/src/components/ChannelDetails/__tests__/ChannelDetailsNavigationSection.test.tsx +9 -1
  2040. package/src/components/ChannelDetails/__tests__/ChannelDetailsProfile.test.tsx +1 -1
  2041. package/src/components/ChannelDetails/__tests__/ChannelEditDetailsForm.test.tsx +16 -7
  2042. package/src/components/ChannelDetails/__tests__/ChannelEditDetailsFormContent.test.tsx +13 -10
  2043. package/src/components/ChannelDetails/__tests__/ChannelEditImageSheet.test.tsx +11 -8
  2044. package/src/components/ChannelDetails/__tests__/ChannelEditName.test.tsx +9 -8
  2045. package/src/components/ChannelDetails/__tests__/members/AddMemberSearchResultItem.test.tsx +16 -6
  2046. package/src/components/ChannelDetails/__tests__/members/ChannelAddMembersButton.test.tsx +3 -2
  2047. package/src/components/ChannelDetails/__tests__/members/ChannelAddMembersForm.test.tsx +8 -2
  2048. package/src/components/ChannelDetails/__tests__/members/ChannelAddMembersFormContent.test.tsx +2 -2
  2049. package/src/components/ChannelDetails/__tests__/members/ChannelMemberActionsSheet.test.tsx +2 -2
  2050. package/src/components/ChannelDetails/__tests__/members/ChannelMemberItem.test.tsx +16 -6
  2051. package/src/components/ChannelDetails/__tests__/members/ChannelMemberList.test.tsx +2 -2
  2052. package/src/components/ChannelDetails/__tests__/members/useMemberRoles.test.tsx +1 -1
  2053. package/src/components/ChannelDetails/__tests__/useChannelDetailsMemberStatusText.test.tsx +22 -3
  2054. package/src/components/ChannelDetails/__tests__/useChannelDetailsMembersPreview.test.tsx +9 -3
  2055. package/src/components/ChannelDetails/__tests__/useEditChannelImage.test.tsx +1 -1
  2056. package/src/components/ChannelDetails/__tests__/useFileAttachmentListSections.test.tsx +11 -7
  2057. package/src/components/ChannelDetails/__tests__/useUserActivityStatus.test.tsx +3 -2
  2058. package/src/components/ChannelDetails/components/ChannelDetailsEditButton.tsx +2 -2
  2059. package/src/components/ChannelDetails/components/ChannelDetailsMemberSection.tsx +12 -4
  2060. package/src/components/ChannelDetails/components/ChannelDetailsNavHeader.tsx +6 -2
  2061. package/src/components/ChannelDetails/components/ChannelDetailsProfile.tsx +1 -1
  2062. package/src/components/ChannelDetails/components/ChannelEditDetailsFormContent.tsx +2 -2
  2063. package/src/components/ChannelDetails/components/ChannelEditDetailsFormHeader.tsx +5 -2
  2064. package/src/components/ChannelDetails/components/ChannelEditImageSheet.tsx +5 -5
  2065. package/src/components/ChannelDetails/components/ChannelEditName.tsx +2 -2
  2066. package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentList.test.tsx +8 -7
  2067. package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaItem.test.tsx +4 -2
  2068. package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaList.test.tsx +2 -2
  2069. package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageItem.test.tsx +1 -1
  2070. package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageList.test.tsx +2 -2
  2071. package/src/components/ChannelDetails/components/members/AddMemberSearchResultItem.tsx +9 -3
  2072. package/src/components/ChannelDetails/components/members/ChannelAddMembersButton.tsx +3 -3
  2073. package/src/components/ChannelDetails/components/members/ChannelAddMembersFormContent.tsx +6 -3
  2074. package/src/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.tsx +5 -2
  2075. package/src/components/ChannelDetails/components/members/ChannelMemberItem.tsx +2 -2
  2076. package/src/components/ChannelDetails/components/members/ChannelMemberList.tsx +8 -3
  2077. package/src/components/ChannelDetails/components/modal/ModalHeader.tsx +1 -1
  2078. package/src/components/ChannelDetails/components/navigation-section/FileAttachmentList.tsx +6 -3
  2079. package/src/components/ChannelDetails/components/navigation-section/MediaItem.tsx +3 -1
  2080. package/src/components/ChannelDetails/components/navigation-section/MediaList.tsx +6 -3
  2081. package/src/components/ChannelDetails/components/navigation-section/PinnedMessageList.tsx +13 -5
  2082. package/src/components/ChannelDetails/hooks/members/useMemberRoles.ts +12 -3
  2083. package/src/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.ts +4 -2
  2084. package/src/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.ts +9 -4
  2085. package/src/components/ChannelDetails/hooks/useEditChannelImage.ts +19 -8
  2086. package/src/components/ChannelDetails/hooks/useFileAttachmentListSections.ts +9 -5
  2087. package/src/components/ChannelDetails/hooks/useUserActivityStatus.ts +8 -6
  2088. package/src/components/ChannelList/ChannelList.tsx +35 -286
  2089. package/src/components/ChannelList/ChannelListHeaderErrorIndicator.tsx +1 -1
  2090. package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +1 -1
  2091. package/src/components/ChannelList/ChannelListView.tsx +62 -64
  2092. package/src/components/ChannelList/__tests__/ChannelList.test.tsx +383 -339
  2093. package/src/components/ChannelList/__tests__/ChannelListView.test.tsx +92 -55
  2094. package/src/components/ChannelList/hooks/__tests__/useChannelMembersState.test.tsx +66 -0
  2095. package/src/components/ChannelList/hooks/__tests__/useMutedChannels.test.tsx +37 -0
  2096. package/src/components/ChannelList/hooks/index.ts +0 -1
  2097. package/src/components/ChannelList/hooks/useChannelMembersState.ts +58 -17
  2098. package/src/components/ChannelList/hooks/useChannelOnlineMemberCount.ts +8 -10
  2099. package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +24 -49
  2100. package/src/components/ChannelList/hooks/useMutedChannels.ts +11 -14
  2101. package/src/components/ChannelList/hooks/useMutedUsers.ts +6 -11
  2102. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +78 -173
  2103. package/src/components/ChannelPreview/ChannelDetailsBottomSheet.tsx +18 -2
  2104. package/src/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.tsx +37 -17
  2105. package/src/components/ChannelPreview/ChannelPreview.tsx +9 -17
  2106. package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +10 -5
  2107. package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +1 -1
  2108. package/src/components/ChannelPreview/ChannelPreviewPinnedStatus.tsx +1 -1
  2109. package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +12 -7
  2110. package/src/components/ChannelPreview/ChannelPreviewTypingIndicator.tsx +30 -14
  2111. package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +4 -1
  2112. package/src/components/ChannelPreview/ChannelPreviewView.tsx +2 -3
  2113. package/src/components/ChannelPreview/__tests__/ChannelDetailsBottomSheet.test.tsx +37 -2
  2114. package/src/components/ChannelPreview/__tests__/ChannelLastMessagePreview.test.tsx +2 -1
  2115. package/src/components/ChannelPreview/__tests__/ChannelPreview.test.tsx +70 -90
  2116. package/src/components/ChannelPreview/__tests__/ChannelPreviewView.test.tsx +1 -1
  2117. package/src/components/ChannelPreview/hooks/__tests__/useChannelPreviewDisplayName.test.tsx +57 -0
  2118. package/src/components/ChannelPreview/hooks/__tests__/useChannelPreviewDraftMessage.test.tsx +32 -0
  2119. package/src/components/ChannelPreview/hooks/__tests__/useChannelPreviewMuted.test.tsx +25 -50
  2120. package/src/components/ChannelPreview/hooks/__tests__/useChannelTypingState.test.tsx +57 -0
  2121. package/src/components/ChannelPreview/hooks/__tests__/useIsChannelPinned.test.tsx +21 -12
  2122. package/src/components/ChannelPreview/hooks/useChannelPreviewData.ts +50 -169
  2123. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +7 -2
  2124. package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +2 -2
  2125. package/src/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.ts +16 -13
  2126. package/src/components/ChannelPreview/hooks/useChannelPreviewPollLabel.ts +5 -3
  2127. package/src/components/ChannelPreview/hooks/useChannelTypingState.ts +9 -38
  2128. package/src/components/ChannelPreview/hooks/useIsChannelMuted.ts +11 -37
  2129. package/src/components/ChannelPreview/hooks/useIsChannelPinned.ts +1 -1
  2130. package/src/components/Chat/Chat.tsx +53 -105
  2131. package/src/components/Chat/__tests__/Chat.test.tsx +269 -93
  2132. package/src/components/Chat/hooks/__tests__/connectionStateHooks.test.tsx +314 -0
  2133. package/src/components/Chat/hooks/__tests__/useAppSettingsGetter.test.tsx +104 -0
  2134. package/src/components/Chat/hooks/__tests__/useCreateChatClient.netinfo.test.ts +47 -0
  2135. package/src/components/Chat/hooks/__tests__/useCreateChatClient.userData.test.ts +51 -0
  2136. package/src/components/Chat/hooks/index.ts +3 -3
  2137. package/src/components/Chat/hooks/useAppSettingsGetter.ts +80 -0
  2138. package/src/components/Chat/hooks/useClientUserId.ts +31 -0
  2139. package/src/components/Chat/hooks/useConnectionLifecycle.ts +122 -0
  2140. package/src/components/Chat/hooks/useCreateChatClient.ts +36 -9
  2141. package/src/components/Chat/hooks/useCreateChatContext.ts +5 -33
  2142. package/src/components/Chat/hooks/useInitializeOfflineDb.ts +11 -5
  2143. package/src/components/Chat/hooks/useNetworkConnectionState.ts +39 -0
  2144. package/src/components/Chat/hooks/usePendingUploadsDefault.ts +43 -0
  2145. package/src/components/Chat/hooks/useWSConnectionState.ts +115 -0
  2146. package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +2 -2
  2147. package/src/components/ImageGallery/components/ImageGalleryA11yProbe.tsx +1 -1
  2148. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +3 -3
  2149. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +7 -5
  2150. package/src/components/ImageGallery/components/ImageGalleryVideoControl.tsx +1 -1
  2151. package/src/components/Indicators/EmptyStateIndicator.tsx +8 -4
  2152. package/src/components/Indicators/LoadingErrorIndicator.tsx +10 -4
  2153. package/src/components/Indicators/LoadingIndicator.tsx +11 -3
  2154. package/src/components/Message/Message.tsx +67 -222
  2155. package/src/components/Message/MessageItemView/Headers/MessagePinnedHeader.tsx +4 -2
  2156. package/src/components/Message/MessageItemView/Headers/MessageReminderHeader.tsx +4 -2
  2157. package/src/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.tsx +1 -1
  2158. package/src/components/Message/MessageItemView/Headers/SentToChannelHeader.tsx +34 -22
  2159. package/src/components/Message/MessageItemView/MessageBounce.tsx +11 -10
  2160. package/src/components/Message/MessageItemView/MessageContent.tsx +5 -10
  2161. package/src/components/Message/MessageItemView/MessageDeleted.tsx +3 -1
  2162. package/src/components/Message/MessageItemView/MessageFooter.tsx +30 -38
  2163. package/src/components/Message/MessageItemView/MessageHeader.tsx +24 -41
  2164. package/src/components/Message/MessageItemView/MessageItemView.tsx +20 -19
  2165. package/src/components/Message/MessageItemView/MessageReplies.tsx +11 -25
  2166. package/src/components/Message/MessageItemView/MessageStatus.tsx +26 -39
  2167. package/src/components/Message/MessageItemView/MessageTimestamp.tsx +3 -3
  2168. package/src/components/Message/MessageItemView/MessageWrapper.tsx +75 -39
  2169. package/src/components/Message/MessageItemView/ReactionList/ReactionListClustered.tsx +3 -3
  2170. package/src/components/Message/MessageItemView/ReactionList/ReactionListItem.tsx +1 -1
  2171. package/src/components/Message/MessageItemView/__tests__/Message.test.tsx +135 -14
  2172. package/src/components/Message/MessageItemView/__tests__/MessageAuthor.test.tsx +2 -2
  2173. package/src/components/Message/MessageItemView/__tests__/MessageContent.test.tsx +76 -91
  2174. package/src/components/Message/MessageItemView/__tests__/MessageFooter.test.tsx +71 -0
  2175. package/src/components/Message/MessageItemView/__tests__/MessageHeader.test.tsx +78 -0
  2176. package/src/components/Message/MessageItemView/__tests__/MessageItemView.test.tsx +14 -14
  2177. package/src/components/Message/MessageItemView/__tests__/MessageReplies.test.tsx +6 -23
  2178. package/src/components/Message/MessageItemView/__tests__/MessageStatus.test.tsx +115 -56
  2179. package/src/components/Message/MessageItemView/__tests__/MessageTextContainer.test.tsx +7 -4
  2180. package/src/components/Message/MessageItemView/__tests__/ReactionListBottom.test.tsx +5 -9
  2181. package/src/components/Message/MessageItemView/__tests__/ReactionListTop.test.tsx +5 -9
  2182. package/src/components/Message/hooks/__tests__/receiptUserHooks.test.tsx +103 -0
  2183. package/src/components/Message/hooks/__tests__/{useMessageActionHandlers.test.tsx → useCreateMessageActionHandlers.test.tsx} +44 -9
  2184. package/src/components/Message/hooks/__tests__/useMessageOperations.test.tsx +70 -0
  2185. package/src/components/Message/hooks/__tests__/useShouldUseOverlayStyles.test.tsx +0 -4
  2186. package/src/components/Message/hooks/__tests__/useUserMuteActive.test.tsx +49 -0
  2187. package/src/components/Message/hooks/useCreateMessageActionHandlers.ts +434 -0
  2188. package/src/components/Message/hooks/useCreateMessageContext.ts +5 -15
  2189. package/src/components/Message/hooks/useIsMessageDeliveredToOthers.ts +41 -0
  2190. package/src/components/Message/hooks/useIsMessageReadByOthers.ts +41 -0
  2191. package/src/components/Message/hooks/useMessageActionHandlers.ts +13 -393
  2192. package/src/components/Message/hooks/useMessageActions.tsx +64 -130
  2193. package/src/components/Message/hooks/useMessageData.ts +4 -6
  2194. package/src/components/Message/hooks/useMessageDeliveryData.ts +19 -37
  2195. package/src/components/Message/hooks/useMessageOperations.ts +153 -0
  2196. package/src/components/Message/hooks/useMessageReadData.ts +19 -38
  2197. package/src/components/Message/hooks/useProcessReactions.ts +3 -3
  2198. package/src/components/Message/hooks/useUserMuteActive.ts +30 -7
  2199. package/src/components/Message/utils/messageActions.ts +2 -2
  2200. package/src/components/MessageInput/MessageComposer.tsx +37 -20
  2201. package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +3 -1
  2202. package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +13 -16
  2203. package/src/components/MessageInput/__tests__/AttachmentUploadPreviewList.test.tsx +9 -0
  2204. package/src/components/MessageInput/__tests__/InputButtons.test.tsx +18 -0
  2205. package/src/components/MessageInput/__tests__/MessageComposer.test.tsx +39 -1
  2206. package/src/components/MessageInput/__tests__/SendMessageDisallowedIndicator.test.tsx +37 -6
  2207. package/src/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.tsx +1 -1
  2208. package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.tsx +5 -3
  2209. package/src/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.tsx +11 -6
  2210. package/src/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.tsx +6 -6
  2211. package/src/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.tsx +3 -3
  2212. package/src/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.tsx +8 -4
  2213. package/src/components/MessageInput/components/AudioRecorder/AudioRecorder.tsx +5 -5
  2214. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingButton.tsx +12 -4
  2215. package/src/components/MessageInput/components/InputButtons/AttachButton.tsx +3 -1
  2216. package/src/components/MessageInput/components/InputButtons/index.tsx +8 -0
  2217. package/src/components/MessageInput/components/OutputButtons/EditButton.tsx +1 -1
  2218. package/src/components/MessageInput/components/OutputButtons/SendButton.tsx +1 -1
  2219. package/src/components/MessageInput/components/OutputButtons/index.tsx +9 -6
  2220. package/src/components/MessageInput/hooks/useAudioRecorder.tsx +6 -4
  2221. package/src/components/MessageList/InlineDateSeparator.tsx +4 -4
  2222. package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +5 -6
  2223. package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +5 -6
  2224. package/src/components/MessageList/InlineUnreadIndicator.tsx +7 -1
  2225. package/src/components/MessageList/MessageFlashList.tsx +161 -565
  2226. package/src/components/MessageList/MessageList.tsx +155 -652
  2227. package/src/components/MessageList/MessageSystem.tsx +4 -4
  2228. package/src/components/MessageList/NetworkDownIndicator.tsx +11 -15
  2229. package/src/components/MessageList/ScrollToBottomButton.tsx +13 -6
  2230. package/src/components/MessageList/StickyHeader.tsx +4 -4
  2231. package/src/components/MessageList/TypingIndicatorContainer.tsx +18 -9
  2232. package/src/components/MessageList/UnreadMessagesNotification.tsx +50 -31
  2233. package/src/components/MessageList/__tests__/InlineUnreadIndicator.test.tsx +26 -0
  2234. package/src/components/MessageList/__tests__/MessageFlashList.test.tsx +130 -0
  2235. package/src/components/MessageList/__tests__/MessageList.test.tsx +702 -161
  2236. package/src/components/MessageList/__tests__/MessageSystem.test.tsx +2 -2
  2237. package/src/components/MessageList/__tests__/ScrollToBottomButton.test.tsx +63 -11
  2238. package/src/components/MessageList/__tests__/TypingIndicator.test.tsx +39 -24
  2239. package/src/components/MessageList/__tests__/buildMessageListWithNeighbours.test.ts +33 -0
  2240. package/src/components/MessageList/__tests__/dateSeparatorSystemMessages.test.tsx +23 -18
  2241. package/src/components/MessageList/__tests__/useMessageDateSeparator.test.ts +9 -8
  2242. package/src/components/MessageList/__tests__/useMessageList.test.tsx +19 -52
  2243. package/src/components/MessageList/hooks/__tests__/useMarkRead.test.tsx +108 -0
  2244. package/src/components/MessageList/hooks/__tests__/useMessageListLiveState.test.tsx +160 -0
  2245. package/src/components/MessageList/hooks/__tests__/useMessageListPagination.test.tsx +184 -0
  2246. package/src/components/MessageList/hooks/__tests__/useStickyHeaderDate.test.ts +31 -0
  2247. package/src/components/MessageList/hooks/useMarkRead.ts +82 -0
  2248. package/src/components/MessageList/hooks/useMessageDateSeparator.ts +12 -3
  2249. package/src/components/MessageList/hooks/useMessageList.ts +26 -25
  2250. package/src/components/MessageList/hooks/useMessageListFocus.ts +40 -0
  2251. package/src/components/MessageList/hooks/useMessageListLiveState.ts +101 -0
  2252. package/src/components/MessageList/hooks/useMessageListPagination.ts +71 -0
  2253. package/src/components/MessageList/hooks/useOwnUnreadCount.ts +22 -0
  2254. package/src/components/MessageList/hooks/useScrollToBottomAccessibilityAction.ts +2 -3
  2255. package/src/components/MessageList/hooks/useStickyHeaderDate.ts +41 -0
  2256. package/src/components/MessageList/hooks/useTypingString.ts +11 -5
  2257. package/src/components/MessageList/hooks/useTypingUsers.ts +26 -4
  2258. package/src/components/MessageList/hooks/useUnreadNotificationVisibility.ts +86 -0
  2259. package/src/components/MessageList/utils/buildMessageListWithNeighbours.ts +9 -2
  2260. package/src/components/MessageList/utils/filterTypingUsers.ts +12 -12
  2261. package/src/components/MessageList/utils/getGroupStyles.ts +3 -2
  2262. package/src/components/MessageMenu/MessageActionList.tsx +1 -1
  2263. package/src/components/MessageMenu/MessageActionListWithActions.tsx +69 -0
  2264. package/src/components/MessageMenu/MessageReactionPicker.tsx +1 -1
  2265. package/src/components/MessageMenu/MessageUserReactions.tsx +12 -10
  2266. package/src/components/MessageMenu/MessageUserReactionsItem.tsx +2 -2
  2267. package/src/components/MessageMenu/__tests__/MessageReactionPicker.test.tsx +2 -1
  2268. package/src/components/MessageMenu/__tests__/MessageUserReactions.test.tsx +33 -3
  2269. package/src/components/MessageMenu/__tests__/MessageUserReactionsAvatar.test.tsx +2 -1
  2270. package/src/components/MessageMenu/__tests__/MessageUserReactionsItem.test.tsx +6 -1
  2271. package/src/components/MessageMenu/hooks/__tests__/useFetchReactions.test.ts +107 -1
  2272. package/src/components/MessageMenu/hooks/useFetchReactions.ts +33 -25
  2273. package/src/components/Notifications/Notification.tsx +1 -1
  2274. package/src/components/Notifications/NotificationList.tsx +1 -1
  2275. package/src/components/Notifications/__tests__/notificationTranslations.test.ts +59 -0
  2276. package/src/components/Notifications/hooks/__tests__/useNotificationApi.test.tsx +1 -1
  2277. package/src/components/Notifications/hooks/__tests__/useNotificationTarget.test.tsx +1 -13
  2278. package/src/components/Notifications/hooks/useNotificationTarget.ts +1 -2
  2279. package/src/components/Notifications/notificationTranslations.ts +117 -47
  2280. package/src/components/Poll/CreatePollContent.tsx +15 -8
  2281. package/src/components/Poll/Poll.tsx +9 -5
  2282. package/src/components/Poll/__tests__/Poll.test.tsx +3 -1
  2283. package/src/components/Poll/components/Button.tsx +2 -2
  2284. package/src/components/Poll/components/CreatePollHeader.tsx +3 -3
  2285. package/src/components/Poll/components/CreatePollOptions.tsx +24 -5
  2286. package/src/components/Poll/components/MultipleAnswersField.tsx +4 -2
  2287. package/src/components/Poll/components/MultipleVotesSettings.tsx +6 -4
  2288. package/src/components/Poll/components/NameField.tsx +2 -2
  2289. package/src/components/Poll/components/PollAnswersList.tsx +17 -13
  2290. package/src/components/Poll/components/PollButtons.tsx +36 -13
  2291. package/src/components/Poll/components/PollInputDialog.tsx +2 -2
  2292. package/src/components/Poll/components/PollModalHeader.tsx +1 -1
  2293. package/src/components/Poll/components/PollOption.tsx +14 -4
  2294. package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +7 -3
  2295. package/src/components/Poll/components/PollResults/PollResultItem.tsx +23 -8
  2296. package/src/components/Poll/components/PollResults/PollResults.tsx +1 -1
  2297. package/src/components/Poll/components/PollResults/PollVote.tsx +8 -9
  2298. package/src/components/Poll/components/__tests__/PollOption.test.tsx +3 -1
  2299. package/src/components/Poll/contexts/PollUIStateContext.tsx +1 -1
  2300. package/src/components/Poll/hooks/__tests__/usePollPagination.test.tsx +71 -0
  2301. package/src/components/Poll/hooks/useEndVote.ts +2 -2
  2302. package/src/components/Poll/hooks/usePollAnswersPagination.ts +8 -8
  2303. package/src/components/Poll/hooks/usePollOptionVotesPagination.ts +20 -14
  2304. package/src/components/Poll/hooks/usePollState.ts +13 -15
  2305. package/src/components/Reply/Reply.tsx +25 -15
  2306. package/src/components/Reply/__tests__/Reply.test.tsx +5 -4
  2307. package/src/components/Thread/Thread.tsx +134 -153
  2308. package/src/components/Thread/__tests__/Thread.test.tsx +444 -53
  2309. package/src/components/Thread/__tests__/__snapshots__/Thread.test.tsx.snap +72 -52
  2310. package/src/components/Thread/components/ThreadFooterComponent.tsx +35 -70
  2311. package/src/components/ThreadList/ThreadList.tsx +15 -21
  2312. package/src/components/ThreadList/ThreadListItem.tsx +21 -14
  2313. package/src/components/ThreadList/ThreadListItemMessagePreview.tsx +1 -1
  2314. package/src/components/ThreadList/ThreadListUnreadBanner.tsx +36 -22
  2315. package/src/components/ThreadList/ThreadMessagePreviewDeliveryStatus.tsx +24 -8
  2316. package/src/components/ThreadList/__tests__/ThreadList.test.tsx +182 -0
  2317. package/src/components/UIComponents/BottomSheetModal.tsx +2 -4
  2318. package/src/components/UIComponents/SearchInput.tsx +2 -2
  2319. package/src/components/UIComponents/__tests__/SearchInput.test.tsx +1 -1
  2320. package/src/components/index.ts +6 -8
  2321. package/src/components/ui/Avatar/Avatar.tsx +1 -1
  2322. package/src/components/ui/Avatar/ChannelAvatar.tsx +13 -5
  2323. package/src/components/ui/Avatar/__tests__/ChannelAvatar.test.tsx +60 -24
  2324. package/src/components/ui/Button/__tests__/Button.test.tsx +1 -1
  2325. package/src/contexts/__tests__/index.test.tsx +16 -19
  2326. package/src/contexts/channelAddMembersContext/ChannelAddMembersContext.tsx +1 -1
  2327. package/src/contexts/channelContext/ChannelContext.tsx +1 -119
  2328. package/src/contexts/channelContext/__tests__/publicSurface.test.ts +75 -0
  2329. package/src/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.tsx +1 -1
  2330. package/src/contexts/channelMediaListContext/ChannelMediaListContext.tsx +1 -1
  2331. package/src/contexts/channelMemberListContext/ChannelMemberListContext.tsx +1 -1
  2332. package/src/contexts/channelsContext/ChannelsContext.tsx +5 -40
  2333. package/src/contexts/chatContext/ChatContext.tsx +9 -34
  2334. package/src/contexts/componentsContext/defaultComponents.ts +0 -2
  2335. package/src/contexts/index.ts +1 -3
  2336. package/src/contexts/liveLocationManagerContext/LiveLocationManagerContext.tsx +4 -1
  2337. package/src/contexts/liveLocationManagerContext/__tests__/LiveLocationManagerContext.test.tsx +66 -0
  2338. package/src/contexts/liveLocationManagerContext/hooks/__tests__/useHandleLiveLocationEvents.test.tsx +74 -0
  2339. package/src/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.ts +8 -8
  2340. package/src/contexts/messageComposerContext/MessageComposerContext.tsx +56 -14
  2341. package/src/contexts/messageComposerContext/__tests__/MessageComposerContext.test.tsx +77 -0
  2342. package/src/contexts/messageContext/MessageContext.tsx +13 -17
  2343. package/src/contexts/messageInputContext/MessageInputContext.tsx +57 -185
  2344. package/src/contexts/messageInputContext/__tests__/filePickers.test.tsx +1 -9
  2345. package/src/contexts/messageInputContext/__tests__/sendMessage.test.tsx +118 -259
  2346. package/src/contexts/messageInputContext/__tests__/useMessageComposerHasSendableData.test.tsx +44 -0
  2347. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +2 -10
  2348. package/src/contexts/messageInputContext/hooks/useMessageComposer.ts +5 -7
  2349. package/src/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.ts +5 -5
  2350. package/src/contexts/messageInputContext/hooks/usePendingUploadsEnabled.ts +20 -0
  2351. package/src/contexts/messagesContext/MessagesContext.tsx +10 -40
  2352. package/src/contexts/overlayContext/MessageOverlayHostLayer.tsx +1 -1
  2353. package/src/contexts/pollContext/createPollContentContext.tsx +1 -1
  2354. package/src/contexts/threadContext/ThreadContext.tsx +20 -44
  2355. package/src/contexts/threadsContext/ThreadsContext.tsx +2 -3
  2356. package/src/contexts/translationContext/TranslationContext.tsx +14 -9
  2357. package/src/contexts/translationContext/index.ts +0 -1
  2358. package/src/contexts/translationContext/types.ts +20 -11
  2359. package/src/hooks/__tests__/useChannelMuteActive.test.tsx +40 -17
  2360. package/src/hooks/__tests__/useIsChannelMember.test.tsx +4 -2
  2361. package/src/hooks/__tests__/useIsDirectChat.test.tsx +55 -0
  2362. package/src/hooks/__tests__/usePendingAttachmentUpload.test.tsx +1 -1
  2363. package/src/hooks/__tests__/usePrunableMessageList.test.tsx +175 -0
  2364. package/src/hooks/__tests__/useStreami18n.test.ts +71 -0
  2365. package/src/hooks/actions/__tests__/useChannelActionItems.test.tsx +35 -21
  2366. package/src/hooks/actions/__tests__/useChannelActions.test.tsx +32 -7
  2367. package/src/hooks/actions/__tests__/useChannelMemberActionItems.test.tsx +27 -20
  2368. package/src/hooks/actions/__tests__/useUserActions.test.tsx +15 -15
  2369. package/src/hooks/actions/useChannelActionItems.tsx +54 -29
  2370. package/src/hooks/actions/useChannelActions.ts +46 -36
  2371. package/src/hooks/actions/useChannelMemberActionItems.tsx +21 -11
  2372. package/src/hooks/actions/useUserActions.ts +15 -11
  2373. package/src/hooks/index.ts +3 -1
  2374. package/src/hooks/messagePreview/__tests__/useMessageDeliveryStatus.test.tsx +119 -0
  2375. package/src/hooks/messagePreview/__tests__/useMessagePreviewText.test.tsx +4 -6
  2376. package/src/hooks/messagePreview/useGroupedAttachments.ts +4 -1
  2377. package/src/hooks/messagePreview/useMessageDeliveryStatus.ts +49 -68
  2378. package/src/hooks/messagePreview/useMessagePreviewText.tsx +45 -20
  2379. package/src/hooks/useAudioPlayer.ts +9 -3
  2380. package/src/hooks/useChannel.ts +19 -0
  2381. package/src/hooks/useChannelImage.ts +9 -5
  2382. package/src/hooks/useChannelMemberCount.ts +10 -5
  2383. package/src/hooks/useChannelMembershipState.ts +10 -5
  2384. package/src/hooks/useChannelMuteActive.ts +2 -6
  2385. package/src/hooks/useChannelName.ts +9 -5
  2386. package/src/hooks/useChannelOwnCapabilities.ts +11 -8
  2387. package/src/hooks/useIsDirectChat.ts +4 -2
  2388. package/src/hooks/useIsTargetedMessage.ts +29 -0
  2389. package/src/hooks/useLoadingImage.tsx +4 -4
  2390. package/src/hooks/useMessagePaginator.ts +13 -0
  2391. package/src/hooks/usePrunableMessageList.ts +37 -31
  2392. package/src/hooks/useQueryReminders.ts +19 -17
  2393. package/src/hooks/useStateStore.ts +1 -1
  2394. package/src/hooks/useStreami18n.ts +25 -46
  2395. package/src/hooks/useSyncClientEvents.ts +7 -7
  2396. package/src/hooks/useTranslatedMessage.ts +23 -5
  2397. package/src/i18n/__tests__/callSites.test.ts +346 -0
  2398. package/src/i18n/__tests__/catalog.fixture.json +418 -0
  2399. package/src/i18n/__tests__/catalogRenders.test.ts +88 -0
  2400. package/src/i18n/__tests__/dateNormalization.test.ts +91 -0
  2401. package/src/i18n/__tests__/pluralCategories.test.ts +114 -0
  2402. package/src/i18n/__tests__/publicExports.test.ts +79 -0
  2403. package/src/i18n/index.ts +4 -0
  2404. package/src/i18n/keys.ts +525 -0
  2405. package/src/i18n/runtimeDefaults.ts +148 -0
  2406. package/src/i18n/types.ts +54 -0
  2407. package/src/i18n/utils.ts +69 -0
  2408. package/src/index.ts +2 -14
  2409. package/src/middlewares/__tests__/attachments.test.ts +69 -49
  2410. package/src/middlewares/attachments.ts +7 -110
  2411. package/src/mock-builders/DB/mock.ts +13 -4
  2412. package/src/mock-builders/api/channelMocks.tsx +36 -33
  2413. package/src/mock-builders/api/getOrCreateChannel.ts +2 -2
  2414. package/src/mock-builders/api/initiateClientWithChannels.ts +13 -2
  2415. package/src/mock-builders/api/queryMembers.ts +16 -14
  2416. package/src/mock-builders/api/useMockedApis.ts +63 -5
  2417. package/src/mock-builders/attachments.ts +5 -0
  2418. package/src/mock-builders/event/connectionChanged.ts +29 -9
  2419. package/src/mock-builders/event/connectionRecovered.ts +5 -0
  2420. package/src/mock-builders/event/messageDeleted.ts +0 -1
  2421. package/src/mock-builders/event/messageRead.ts +3 -1
  2422. package/src/mock-builders/event/messageUpdated.ts +0 -1
  2423. package/src/mock-builders/event/notificationChannelMutesUpdated.ts +1 -3
  2424. package/src/mock-builders/event/notificationMarkUnread.ts +3 -1
  2425. package/src/mock-builders/event/notificationMutesUpdated.ts +5 -3
  2426. package/src/mock-builders/event/typing.ts +0 -2
  2427. package/src/mock-builders/event/userPresence.ts +5 -3
  2428. package/src/mock-builders/event/userUpdated.ts +5 -3
  2429. package/src/mock-builders/event/utils.ts +31 -0
  2430. package/src/mock-builders/generator/attachment.ts +14 -4
  2431. package/src/mock-builders/generator/channel.ts +14 -10
  2432. package/src/mock-builders/generator/channelState.ts +56 -0
  2433. package/src/mock-builders/generator/message.ts +22 -15
  2434. package/src/mock-builders/generator/reaction.ts +2 -1
  2435. package/src/mock-builders/generator/time.ts +19 -0
  2436. package/src/mock-builders/generator/user.ts +4 -2
  2437. package/src/mock-builders/mock.ts +19 -9
  2438. package/src/state-store/__tests__/edit-channel-details-store.test.ts +8 -3
  2439. package/src/state-store/__tests__/image-gallery-state-store.test.ts +52 -2
  2440. package/src/state-store/attachment-picker-store.ts +1 -1
  2441. package/src/state-store/audio-player-pool.ts +1 -1
  2442. package/src/state-store/audio-player.ts +1 -1
  2443. package/src/state-store/audio-recorder-manager.ts +1 -1
  2444. package/src/state-store/edit-channel-details-store.ts +4 -3
  2445. package/src/state-store/image-gallery-state-store.ts +4 -3
  2446. package/src/state-store/in-app-notifications-store.ts +2 -1
  2447. package/src/state-store/message-input-height-store.ts +1 -1
  2448. package/src/state-store/message-overlay-store.ts +1 -1
  2449. package/src/state-store/selection-store.ts +1 -1
  2450. package/src/state-store/signal-store.ts +1 -1
  2451. package/src/state-store/video-player-pool.ts +1 -1
  2452. package/src/state-store/video-player.ts +1 -1
  2453. package/src/store/OfflineDB.ts +13 -15
  2454. package/src/store/SqliteClient.ts +3 -3
  2455. package/src/store/__tests__/channelExists.test.ts +44 -0
  2456. package/src/store/__tests__/insertReaction.test.ts +107 -0
  2457. package/src/store/__tests__/mapperRequiredTimestamps.test.ts +64 -0
  2458. package/src/store/__tests__/timestampStorage.test.ts +146 -0
  2459. package/src/store/apis/__tests__/channelQueryCids.test.ts +69 -9
  2460. package/src/store/apis/__tests__/updatePendingTask.test.ts +3 -1
  2461. package/src/store/apis/channelExists.ts +12 -4
  2462. package/src/store/apis/deleteMessagesForChannel.ts +7 -2
  2463. package/src/store/apis/deleteReaction.ts +2 -2
  2464. package/src/store/apis/getAppSettings.ts +6 -6
  2465. package/src/store/apis/getChannelActiveLocations.ts +3 -3
  2466. package/src/store/apis/getChannelMessages.ts +4 -4
  2467. package/src/store/apis/getChannels.ts +10 -9
  2468. package/src/store/apis/getChannelsForFilterSort.ts +27 -16
  2469. package/src/store/apis/getDraft.ts +1 -1
  2470. package/src/store/apis/getDraftsForChannels.ts +3 -3
  2471. package/src/store/apis/getLastSyncedAt.ts +4 -4
  2472. package/src/store/apis/getReactionsforFilterSort.ts +2 -2
  2473. package/src/store/apis/getReads.ts +2 -2
  2474. package/src/store/apis/index.ts +0 -1
  2475. package/src/store/apis/insertReaction.ts +12 -2
  2476. package/src/store/apis/queries/selectActiveLocationsForChannels.ts +5 -2
  2477. package/src/store/apis/queries/selectChannelQueryForFilterSort.ts +90 -0
  2478. package/src/store/apis/queries/selectDraftMessageFromDraftForChannels.ts +1 -1
  2479. package/src/store/apis/queries/selectMembersForChannels.ts +1 -1
  2480. package/src/store/apis/queries/selectReactionsForMessages.ts +6 -8
  2481. package/src/store/apis/softDeleteMessage.ts +2 -2
  2482. package/src/store/apis/updateReaction.ts +8 -1
  2483. package/src/store/apis/upsertAppSettings.ts +6 -6
  2484. package/src/store/apis/upsertChannels.ts +11 -7
  2485. package/src/store/apis/upsertCidsForQuery.ts +12 -2
  2486. package/src/store/apis/upsertDraft.ts +2 -2
  2487. package/src/store/apis/upsertLocation.ts +2 -2
  2488. package/src/store/apis/upsertPoll.ts +2 -2
  2489. package/src/store/apis/upsertReads.ts +2 -2
  2490. package/src/store/apis/upsertUserSyncStatus.ts +4 -4
  2491. package/src/store/apis/utils/__tests__/convertFilterSortToQuery.test.ts +1 -1
  2492. package/src/store/apis/utils/convertFilterSortToQuery.ts +2 -2
  2493. package/src/store/mappers/mapChannelDataToStorable.ts +7 -10
  2494. package/src/store/mappers/mapChannelToStorable.ts +7 -10
  2495. package/src/store/mappers/mapDraftMessageToStorable.ts +2 -2
  2496. package/src/store/mappers/mapDraftToStorable.ts +2 -2
  2497. package/src/store/mappers/mapMemberToStorable.ts +7 -7
  2498. package/src/store/mappers/mapMessageToStorable.ts +7 -7
  2499. package/src/store/mappers/mapPollToStorable.ts +6 -6
  2500. package/src/store/mappers/mapReactionToStorable.ts +3 -3
  2501. package/src/store/mappers/mapReadToStorable.ts +6 -5
  2502. package/src/store/mappers/mapReminderToStorable.ts +6 -6
  2503. package/src/store/mappers/mapSharedLocationToStorable.ts +6 -6
  2504. package/src/store/mappers/mapStorableToChannel.ts +12 -7
  2505. package/src/store/mappers/mapStorableToDraft.ts +5 -4
  2506. package/src/store/mappers/mapStorableToMember.ts +12 -9
  2507. package/src/store/mappers/mapStorableToMessage.ts +8 -7
  2508. package/src/store/mappers/mapStorableToPoll.ts +14 -8
  2509. package/src/store/mappers/mapStorableToReaction.ts +3 -2
  2510. package/src/store/mappers/mapStorableToRead.ts +6 -5
  2511. package/src/store/mappers/mapStorableToReminder.ts +7 -5
  2512. package/src/store/mappers/mapStorableToSharedLocation.ts +9 -5
  2513. package/src/store/mappers/mapStorableToTimestamp.ts +24 -0
  2514. package/src/store/mappers/mapStorableToUser.ts +6 -4
  2515. package/src/store/mappers/mapTimestampToStorable.ts +14 -0
  2516. package/src/store/mappers/mapUserToStorable.ts +5 -3
  2517. package/src/store/schema.ts +70 -64
  2518. package/src/store/sqlite-utils/createUpsertQuery.ts +35 -9
  2519. package/src/store/sqlite-utils/createUpsertQueryIfParentExists.ts +58 -0
  2520. package/src/store/types.ts +4 -4
  2521. package/src/types/react-native-compat.ts +2 -2
  2522. package/src/types/types.ts +13 -10
  2523. package/src/utils/__tests__/Streami18n.test.ts +248 -255
  2524. package/src/utils/__tests__/installNativeMultipartAdapter.test.ts +125 -22
  2525. package/src/utils/attachmentUrls.ts +19 -0
  2526. package/src/utils/getUrlOfImageAttachment.ts +9 -2
  2527. package/src/utils/i18n/Streami18n.ts +115 -725
  2528. package/src/utils/installNativeMultipartAdapter.ts +46 -39
  2529. package/src/utils/removeReservedFields.ts +2 -4
  2530. package/src/utils/utils.ts +32 -98
  2531. package/src/version.json +1 -1
  2532. package/lib/commonjs/components/Channel/hooks/useChannelDataState.js +0 -187
  2533. package/lib/commonjs/components/Channel/hooks/useChannelDataState.js.map +0 -1
  2534. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js +0 -36
  2535. package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +0 -1
  2536. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js +0 -16
  2537. package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +0 -1
  2538. package/lib/commonjs/components/Channel/hooks/useMessageListPagination.js +0 -292
  2539. package/lib/commonjs/components/Channel/hooks/useMessageListPagination.js.map +0 -1
  2540. package/lib/commonjs/components/Channel/hooks/useTargetedMessage.js +0 -50
  2541. package/lib/commonjs/components/Channel/hooks/useTargetedMessage.js.map +0 -1
  2542. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js +0 -43
  2543. package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +0 -1
  2544. package/lib/commonjs/components/ChannelList/hooks/utils/index.js +0 -115
  2545. package/lib/commonjs/components/ChannelList/hooks/utils/index.js.map +0 -1
  2546. package/lib/commonjs/components/Chat/hooks/useAppSettings.js +0 -69
  2547. package/lib/commonjs/components/Chat/hooks/useAppSettings.js.map +0 -1
  2548. package/lib/commonjs/components/Chat/hooks/useClientMutedUsers.js +0 -26
  2549. package/lib/commonjs/components/Chat/hooks/useClientMutedUsers.js.map +0 -1
  2550. package/lib/commonjs/components/Chat/hooks/useIsOnline.js +0 -100
  2551. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +0 -1
  2552. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js +0 -55
  2553. package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js.map +0 -1
  2554. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +0 -19
  2555. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +0 -1
  2556. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +0 -22
  2557. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +0 -1
  2558. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +0 -67
  2559. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +0 -1
  2560. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js +0 -47
  2561. package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +0 -1
  2562. package/lib/commonjs/contexts/debugContext/DebugContext.js +0 -42
  2563. package/lib/commonjs/contexts/debugContext/DebugContext.js.map +0 -1
  2564. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageComposer.js +0 -68
  2565. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageComposer.js.map +0 -1
  2566. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js +0 -14
  2567. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js.map +0 -1
  2568. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +0 -28
  2569. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +0 -1
  2570. package/lib/commonjs/contexts/translationContext/isDayOrMoment.js +0 -7
  2571. package/lib/commonjs/contexts/translationContext/isDayOrMoment.js.map +0 -1
  2572. package/lib/commonjs/contexts/typingContext/TypingContext.js +0 -28
  2573. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +0 -1
  2574. package/lib/commonjs/hooks/useSelectedChannelState.js +0 -30
  2575. package/lib/commonjs/hooks/useSelectedChannelState.js.map +0 -1
  2576. package/lib/commonjs/i18n/ar.json +0 -471
  2577. package/lib/commonjs/i18n/en.json +0 -471
  2578. package/lib/commonjs/i18n/es.json +0 -471
  2579. package/lib/commonjs/i18n/fr.json +0 -471
  2580. package/lib/commonjs/i18n/he.json +0 -471
  2581. package/lib/commonjs/i18n/hi.json +0 -471
  2582. package/lib/commonjs/i18n/it.json +0 -471
  2583. package/lib/commonjs/i18n/ja.json +0 -471
  2584. package/lib/commonjs/i18n/ko.json +0 -471
  2585. package/lib/commonjs/i18n/nl.json +0 -471
  2586. package/lib/commonjs/i18n/pt-br.json +0 -471
  2587. package/lib/commonjs/i18n/ru.json +0 -471
  2588. package/lib/commonjs/i18n/tr.json +0 -471
  2589. package/lib/commonjs/state-store/channel-unread-state.js +0 -25
  2590. package/lib/commonjs/state-store/channel-unread-state.js.map +0 -1
  2591. package/lib/commonjs/state-store/message-list-prev-next-state.js +0 -40
  2592. package/lib/commonjs/state-store/message-list-prev-next-state.js.map +0 -1
  2593. package/lib/commonjs/store/apis/deleteReactions.js +0 -30
  2594. package/lib/commonjs/store/apis/deleteReactions.js.map +0 -1
  2595. package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js +0 -35
  2596. package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js.map +0 -1
  2597. package/lib/commonjs/store/apis/upsertChannelDataFromChannel.js +0 -29
  2598. package/lib/commonjs/store/apis/upsertChannelDataFromChannel.js.map +0 -1
  2599. package/lib/commonjs/store/mappers/mapDateTimeToStorable.js +0 -12
  2600. package/lib/commonjs/store/mappers/mapDateTimeToStorable.js.map +0 -1
  2601. package/lib/commonjs/store/sqlite-utils/printRow.js +0 -18
  2602. package/lib/commonjs/store/sqlite-utils/printRow.js.map +0 -1
  2603. package/lib/commonjs/utils/addReactionToLocalState.js +0 -51
  2604. package/lib/commonjs/utils/addReactionToLocalState.js.map +0 -1
  2605. package/lib/commonjs/utils/date.js +0 -8
  2606. package/lib/commonjs/utils/date.js.map +0 -1
  2607. package/lib/commonjs/utils/i18n/calendarFormats.js +0 -111
  2608. package/lib/commonjs/utils/i18n/calendarFormats.js.map +0 -1
  2609. package/lib/commonjs/utils/i18n/getDateString.js +0 -75
  2610. package/lib/commonjs/utils/i18n/getDateString.js.map +0 -1
  2611. package/lib/commonjs/utils/i18n/predefinedFormatters.js +0 -83
  2612. package/lib/commonjs/utils/i18n/predefinedFormatters.js.map +0 -1
  2613. package/lib/commonjs/utils/i18n/types.js.map +0 -1
  2614. package/lib/commonjs/utils/patchMessageTextCommand.js +0 -20
  2615. package/lib/commonjs/utils/patchMessageTextCommand.js.map +0 -1
  2616. package/lib/commonjs/utils/removeReactionFromLocalState.js +0 -33
  2617. package/lib/commonjs/utils/removeReactionFromLocalState.js.map +0 -1
  2618. package/lib/module/components/Channel/hooks/useChannelDataState.js +0 -187
  2619. package/lib/module/components/Channel/hooks/useChannelDataState.js.map +0 -1
  2620. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js +0 -36
  2621. package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +0 -1
  2622. package/lib/module/components/Channel/hooks/useCreateTypingContext.js +0 -16
  2623. package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +0 -1
  2624. package/lib/module/components/Channel/hooks/useMessageListPagination.js +0 -292
  2625. package/lib/module/components/Channel/hooks/useMessageListPagination.js.map +0 -1
  2626. package/lib/module/components/Channel/hooks/useTargetedMessage.js +0 -50
  2627. package/lib/module/components/Channel/hooks/useTargetedMessage.js.map +0 -1
  2628. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js +0 -43
  2629. package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +0 -1
  2630. package/lib/module/components/ChannelList/hooks/utils/index.js +0 -115
  2631. package/lib/module/components/ChannelList/hooks/utils/index.js.map +0 -1
  2632. package/lib/module/components/Chat/hooks/useAppSettings.js +0 -69
  2633. package/lib/module/components/Chat/hooks/useAppSettings.js.map +0 -1
  2634. package/lib/module/components/Chat/hooks/useClientMutedUsers.js +0 -26
  2635. package/lib/module/components/Chat/hooks/useClientMutedUsers.js.map +0 -1
  2636. package/lib/module/components/Chat/hooks/useIsOnline.js +0 -100
  2637. package/lib/module/components/Chat/hooks/useIsOnline.js.map +0 -1
  2638. package/lib/module/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js +0 -55
  2639. package/lib/module/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js.map +0 -1
  2640. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +0 -19
  2641. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +0 -1
  2642. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +0 -22
  2643. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +0 -1
  2644. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +0 -67
  2645. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +0 -1
  2646. package/lib/module/contexts/channelsStateContext/useChannelState.js +0 -47
  2647. package/lib/module/contexts/channelsStateContext/useChannelState.js.map +0 -1
  2648. package/lib/module/contexts/debugContext/DebugContext.js +0 -42
  2649. package/lib/module/contexts/debugContext/DebugContext.js.map +0 -1
  2650. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageComposer.js +0 -68
  2651. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageComposer.js.map +0 -1
  2652. package/lib/module/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js +0 -14
  2653. package/lib/module/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js.map +0 -1
  2654. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +0 -28
  2655. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +0 -1
  2656. package/lib/module/contexts/translationContext/isDayOrMoment.js +0 -7
  2657. package/lib/module/contexts/translationContext/isDayOrMoment.js.map +0 -1
  2658. package/lib/module/contexts/typingContext/TypingContext.js +0 -28
  2659. package/lib/module/contexts/typingContext/TypingContext.js.map +0 -1
  2660. package/lib/module/hooks/useSelectedChannelState.js +0 -30
  2661. package/lib/module/hooks/useSelectedChannelState.js.map +0 -1
  2662. package/lib/module/i18n/ar.json +0 -471
  2663. package/lib/module/i18n/en.json +0 -471
  2664. package/lib/module/i18n/es.json +0 -471
  2665. package/lib/module/i18n/fr.json +0 -471
  2666. package/lib/module/i18n/he.json +0 -471
  2667. package/lib/module/i18n/hi.json +0 -471
  2668. package/lib/module/i18n/it.json +0 -471
  2669. package/lib/module/i18n/ja.json +0 -471
  2670. package/lib/module/i18n/ko.json +0 -471
  2671. package/lib/module/i18n/nl.json +0 -471
  2672. package/lib/module/i18n/pt-br.json +0 -471
  2673. package/lib/module/i18n/ru.json +0 -471
  2674. package/lib/module/i18n/tr.json +0 -471
  2675. package/lib/module/state-store/channel-unread-state.js +0 -25
  2676. package/lib/module/state-store/channel-unread-state.js.map +0 -1
  2677. package/lib/module/state-store/message-list-prev-next-state.js +0 -40
  2678. package/lib/module/state-store/message-list-prev-next-state.js.map +0 -1
  2679. package/lib/module/store/apis/deleteReactions.js +0 -30
  2680. package/lib/module/store/apis/deleteReactions.js.map +0 -1
  2681. package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js +0 -35
  2682. package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js.map +0 -1
  2683. package/lib/module/store/apis/upsertChannelDataFromChannel.js +0 -29
  2684. package/lib/module/store/apis/upsertChannelDataFromChannel.js.map +0 -1
  2685. package/lib/module/store/mappers/mapDateTimeToStorable.js +0 -12
  2686. package/lib/module/store/mappers/mapDateTimeToStorable.js.map +0 -1
  2687. package/lib/module/store/sqlite-utils/printRow.js +0 -18
  2688. package/lib/module/store/sqlite-utils/printRow.js.map +0 -1
  2689. package/lib/module/utils/addReactionToLocalState.js +0 -51
  2690. package/lib/module/utils/addReactionToLocalState.js.map +0 -1
  2691. package/lib/module/utils/date.js +0 -8
  2692. package/lib/module/utils/date.js.map +0 -1
  2693. package/lib/module/utils/i18n/calendarFormats.js +0 -111
  2694. package/lib/module/utils/i18n/calendarFormats.js.map +0 -1
  2695. package/lib/module/utils/i18n/getDateString.js +0 -75
  2696. package/lib/module/utils/i18n/getDateString.js.map +0 -1
  2697. package/lib/module/utils/i18n/predefinedFormatters.js +0 -83
  2698. package/lib/module/utils/i18n/predefinedFormatters.js.map +0 -1
  2699. package/lib/module/utils/i18n/types.js.map +0 -1
  2700. package/lib/module/utils/patchMessageTextCommand.js +0 -20
  2701. package/lib/module/utils/patchMessageTextCommand.js.map +0 -1
  2702. package/lib/module/utils/removeReactionFromLocalState.js +0 -33
  2703. package/lib/module/utils/removeReactionFromLocalState.js.map +0 -1
  2704. package/lib/typescript/components/Channel/hooks/useChannelDataState.d.ts +0 -74
  2705. package/lib/typescript/components/Channel/hooks/useChannelDataState.d.ts.map +0 -1
  2706. package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +0 -5
  2707. package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts.map +0 -1
  2708. package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +0 -3
  2709. package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts.map +0 -1
  2710. package/lib/typescript/components/Channel/hooks/useMessageListPagination.d.ts +0 -29
  2711. package/lib/typescript/components/Channel/hooks/useMessageListPagination.d.ts.map +0 -1
  2712. package/lib/typescript/components/Channel/hooks/useTargetedMessage.d.ts +0 -7
  2713. package/lib/typescript/components/Channel/hooks/useTargetedMessage.d.ts.map +0 -1
  2714. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +0 -9
  2715. package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts.map +0 -1
  2716. package/lib/typescript/components/ChannelList/hooks/utils/index.d.ts +0 -21
  2717. package/lib/typescript/components/ChannelList/hooks/utils/index.d.ts.map +0 -1
  2718. package/lib/typescript/components/Chat/hooks/useAppSettings.d.ts +0 -3
  2719. package/lib/typescript/components/Chat/hooks/useAppSettings.d.ts.map +0 -1
  2720. package/lib/typescript/components/Chat/hooks/useClientMutedUsers.d.ts +0 -3
  2721. package/lib/typescript/components/Chat/hooks/useClientMutedUsers.d.ts.map +0 -1
  2722. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +0 -12
  2723. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts.map +0 -1
  2724. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentThreadIndicator.d.ts +0 -7
  2725. package/lib/typescript/components/MessageList/InlineLoadingMoreRecentThreadIndicator.d.ts.map +0 -1
  2726. package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +0 -3
  2727. package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts.map +0 -1
  2728. package/lib/typescript/contexts/activeChannelsRefContext/ActiveChannelsRefContext.d.ts +0 -8
  2729. package/lib/typescript/contexts/activeChannelsRefContext/ActiveChannelsRefContext.d.ts.map +0 -1
  2730. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +0 -24
  2731. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts.map +0 -1
  2732. package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +0 -14
  2733. package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts.map +0 -1
  2734. package/lib/typescript/contexts/debugContext/DebugContext.d.ts +0 -26
  2735. package/lib/typescript/contexts/debugContext/DebugContext.d.ts.map +0 -1
  2736. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageComposer.d.ts +0 -4
  2737. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageComposer.d.ts.map +0 -1
  2738. package/lib/typescript/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.d.ts +0 -2
  2739. package/lib/typescript/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.d.ts.map +0 -1
  2740. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +0 -52
  2741. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts.map +0 -1
  2742. package/lib/typescript/contexts/translationContext/isDayOrMoment.d.ts +0 -5
  2743. package/lib/typescript/contexts/translationContext/isDayOrMoment.d.ts.map +0 -1
  2744. package/lib/typescript/contexts/typingContext/TypingContext.d.ts +0 -11
  2745. package/lib/typescript/contexts/typingContext/TypingContext.d.ts.map +0 -1
  2746. package/lib/typescript/hooks/useSelectedChannelState.d.ts +0 -12
  2747. package/lib/typescript/hooks/useSelectedChannelState.d.ts.map +0 -1
  2748. package/lib/typescript/i18n/ar.json +0 -471
  2749. package/lib/typescript/i18n/en.json +0 -471
  2750. package/lib/typescript/i18n/es.json +0 -471
  2751. package/lib/typescript/i18n/fr.json +0 -471
  2752. package/lib/typescript/i18n/he.json +0 -471
  2753. package/lib/typescript/i18n/hi.json +0 -471
  2754. package/lib/typescript/i18n/it.json +0 -471
  2755. package/lib/typescript/i18n/ja.json +0 -471
  2756. package/lib/typescript/i18n/ko.json +0 -471
  2757. package/lib/typescript/i18n/nl.json +0 -471
  2758. package/lib/typescript/i18n/pt-br.json +0 -471
  2759. package/lib/typescript/i18n/ru.json +0 -471
  2760. package/lib/typescript/i18n/tr.json +0 -471
  2761. package/lib/typescript/state-store/channel-unread-state.d.ts +0 -12
  2762. package/lib/typescript/state-store/channel-unread-state.d.ts.map +0 -1
  2763. package/lib/typescript/state-store/message-list-prev-next-state.d.ts +0 -16
  2764. package/lib/typescript/state-store/message-list-prev-next-state.d.ts.map +0 -1
  2765. package/lib/typescript/store/apis/deleteReactions.d.ts +0 -5
  2766. package/lib/typescript/store/apis/deleteReactions.d.ts.map +0 -1
  2767. package/lib/typescript/store/apis/queries/selectChannelIdsForFilterSort.d.ts +0 -16
  2768. package/lib/typescript/store/apis/queries/selectChannelIdsForFilterSort.d.ts.map +0 -1
  2769. package/lib/typescript/store/apis/upsertChannelDataFromChannel.d.ts +0 -6
  2770. package/lib/typescript/store/apis/upsertChannelDataFromChannel.d.ts.map +0 -1
  2771. package/lib/typescript/store/mappers/mapDateTimeToStorable.d.ts +0 -2
  2772. package/lib/typescript/store/mappers/mapDateTimeToStorable.d.ts.map +0 -1
  2773. package/lib/typescript/store/sqlite-utils/printRow.d.ts +0 -3
  2774. package/lib/typescript/store/sqlite-utils/printRow.d.ts.map +0 -1
  2775. package/lib/typescript/utils/addReactionToLocalState.d.ts +0 -9
  2776. package/lib/typescript/utils/addReactionToLocalState.d.ts.map +0 -1
  2777. package/lib/typescript/utils/date.d.ts +0 -3
  2778. package/lib/typescript/utils/date.d.ts.map +0 -1
  2779. package/lib/typescript/utils/i18n/calendarFormats.d.ts +0 -6
  2780. package/lib/typescript/utils/i18n/calendarFormats.d.ts.map +0 -1
  2781. package/lib/typescript/utils/i18n/getDateString.d.ts +0 -44
  2782. package/lib/typescript/utils/i18n/getDateString.d.ts.map +0 -1
  2783. package/lib/typescript/utils/i18n/predefinedFormatters.d.ts +0 -3
  2784. package/lib/typescript/utils/i18n/predefinedFormatters.d.ts.map +0 -1
  2785. package/lib/typescript/utils/i18n/types.d.ts +0 -69
  2786. package/lib/typescript/utils/i18n/types.d.ts.map +0 -1
  2787. package/lib/typescript/utils/patchMessageTextCommand.d.ts +0 -10
  2788. package/lib/typescript/utils/patchMessageTextCommand.d.ts.map +0 -1
  2789. package/lib/typescript/utils/removeReactionFromLocalState.d.ts +0 -8
  2790. package/lib/typescript/utils/removeReactionFromLocalState.d.ts.map +0 -1
  2791. package/src/components/Channel/__tests__/useMessageListPagination.test.tsx +0 -692
  2792. package/src/components/Channel/hooks/useChannelDataState.ts +0 -220
  2793. package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +0 -42
  2794. package/src/components/Channel/hooks/useCreateTypingContext.ts +0 -17
  2795. package/src/components/Channel/hooks/useMessageListPagination.tsx +0 -330
  2796. package/src/components/Channel/hooks/useTargetedMessage.ts +0 -44
  2797. package/src/components/ChannelList/hooks/listeners/__tests__/useChannelUpdated.test.tsx +0 -87
  2798. package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +0 -49
  2799. package/src/components/ChannelList/hooks/utils/index.ts +0 -125
  2800. package/src/components/Chat/hooks/__tests__/useAppSettings.test.tsx +0 -37
  2801. package/src/components/Chat/hooks/useAppSettings.ts +0 -65
  2802. package/src/components/Chat/hooks/useClientMutedUsers.ts +0 -19
  2803. package/src/components/Chat/hooks/useIsOnline.ts +0 -104
  2804. package/src/components/MessageList/InlineLoadingMoreRecentThreadIndicator.tsx +0 -61
  2805. package/src/components/MessageList/utils/getLastReceivedMessage.ts +0 -16
  2806. package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +0 -15
  2807. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +0 -107
  2808. package/src/contexts/channelsStateContext/useChannelState.ts +0 -66
  2809. package/src/contexts/debugContext/DebugContext.tsx +0 -68
  2810. package/src/contexts/messageInputContext/hooks/useCreateMessageComposer.ts +0 -97
  2811. package/src/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.ts +0 -13
  2812. package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +0 -83
  2813. package/src/contexts/translationContext/isDayOrMoment.ts +0 -8
  2814. package/src/contexts/typingContext/TypingContext.tsx +0 -36
  2815. package/src/hooks/useSelectedChannelState.ts +0 -53
  2816. package/src/i18n/ar.json +0 -471
  2817. package/src/i18n/en.json +0 -471
  2818. package/src/i18n/es.json +0 -471
  2819. package/src/i18n/fr.json +0 -471
  2820. package/src/i18n/he.json +0 -471
  2821. package/src/i18n/hi.json +0 -471
  2822. package/src/i18n/it.json +0 -471
  2823. package/src/i18n/ja.json +0 -471
  2824. package/src/i18n/ko.json +0 -471
  2825. package/src/i18n/nl.json +0 -471
  2826. package/src/i18n/pt-br.json +0 -471
  2827. package/src/i18n/ru.json +0 -471
  2828. package/src/i18n/tr.json +0 -471
  2829. package/src/state-store/channel-unread-state.ts +0 -28
  2830. package/src/state-store/message-list-prev-next-state.ts +0 -58
  2831. package/src/store/apis/deleteReactions.ts +0 -23
  2832. package/src/store/apis/queries/selectChannelIdsForFilterSort.ts +0 -42
  2833. package/src/store/apis/upsertChannelDataFromChannel.ts +0 -24
  2834. package/src/store/mappers/mapDateTimeToStorable.ts +0 -7
  2835. package/src/store/sqlite-utils/printRow.ts +0 -19
  2836. package/src/utils/__tests__/patchMessageTextCommand.test.ts +0 -14
  2837. package/src/utils/addReactionToLocalState.ts +0 -52
  2838. package/src/utils/date.ts +0 -4
  2839. package/src/utils/i18n/calendarFormats.ts +0 -111
  2840. package/src/utils/i18n/getDateString.ts +0 -133
  2841. package/src/utils/i18n/predefinedFormatters.ts +0 -98
  2842. package/src/utils/i18n/types.ts +0 -82
  2843. package/src/utils/patchMessageTextCommand.ts +0 -36
  2844. package/src/utils/removeReactionFromLocalState.ts +0 -49
  2845. /package/lib/commonjs/{utils/i18n → i18n}/types.js +0 -0
  2846. /package/lib/module/{utils/i18n → i18n}/types.js +0 -0
@@ -1,39 +1,43 @@
1
1
  import React, { type ComponentProps, useContext, useEffect } from 'react';
2
- import { View } from 'react-native';
2
+ import { AppState, AppStateStatus, View } from 'react-native';
3
3
 
4
- import { act, cleanup, render, renderHook, waitFor } from '@testing-library/react-native';
4
+ import { act, cleanup, render, waitFor } from '@testing-library/react-native';
5
5
  import type { Channel as ChannelType, StreamChat as StreamChatType } from 'stream-chat';
6
- import { StreamChat } from 'stream-chat';
6
+ import { asTimestampNS, StreamChat } from 'stream-chat';
7
7
 
8
8
  import type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';
9
9
  import { ChannelContext, ChannelProvider } from '../../../contexts/channelContext/ChannelContext';
10
- import { ChannelsStateProvider } from '../../../contexts/channelsStateContext/ChannelsStateContext';
11
10
  import type { MessagesContextValue } from '../../../contexts/messagesContext/MessagesContext';
12
11
  import {
13
12
  MessagesContext,
14
13
  MessagesProvider,
15
14
  } from '../../../contexts/messagesContext/MessagesContext';
16
15
 
16
+ import {
17
+ OwnCapabilitiesContext,
18
+ type OwnCapabilitiesContextValue,
19
+ } from '../../../contexts/ownCapabilitiesContext/OwnCapabilitiesContext';
17
20
  import type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';
18
21
  import { ThreadContext, ThreadProvider } from '../../../contexts/threadContext/ThreadContext';
19
22
 
20
23
  import { getOrCreateChannelApi } from '../../../mock-builders/api/getOrCreateChannel';
21
24
  import { useMockedApis } from '../../../mock-builders/api/useMockedApis';
25
+ import dispatchChannelDeletedEvent from '../../../mock-builders/event/channelDeleted';
26
+ import dispatchChannelUpdatedEvent from '../../../mock-builders/event/channelUpdated';
22
27
  import dispatchConnectionChanged from '../../../mock-builders/event/connectionChanged';
28
+ import dispatchMessageNewEvent from '../../../mock-builders/event/messageNew';
29
+ import dispatchNotificationRemovedFromChannel from '../../../mock-builders/event/notificationRemovedFromChannel';
23
30
  import { generateChannelResponse } from '../../../mock-builders/generator/channel';
24
31
  import { generateMember } from '../../../mock-builders/generator/member';
25
32
  import { generateMessage } from '../../../mock-builders/generator/message';
33
+ import { convertDateToTimestamp } from '../../../mock-builders/generator/time';
26
34
  import { generateUser } from '../../../mock-builders/generator/user';
27
35
  import { getTestClientWithUser } from '../../../mock-builders/mock';
28
36
  import { Attachment } from '../../Attachment/Attachment';
29
37
  import { Chat } from '../../Chat/Chat';
38
+ import { MessageList } from '../../MessageList/MessageList';
30
39
  import { Channel } from '../Channel';
31
- import {
32
- channelInitialState,
33
- useChannelDataState,
34
- useChannelMessageDataState,
35
- } from '../hooks/useChannelDataState';
36
- import * as MessageListPaginationHooks from '../hooks/useMessageListPagination';
40
+ import * as CreateChannelContext from '../hooks/useCreateChannelContext';
37
41
 
38
42
  // This component is used for performing effects in a component that consumes ChannelContext,
39
43
  // i.e. making use of the callbacks & values provided by the Channel component.
@@ -84,14 +88,12 @@ const renderComponent = (
84
88
  context: React.Context<unknown> = ChannelContext as React.Context<unknown>,
85
89
  ) =>
86
90
  render(
87
- <ChannelsStateProvider>
88
- <Chat client={chatClient}>
89
- <Channel {...(props as React.ComponentProps<typeof Channel>)}>
90
- {props.children}
91
- <CallbackEffectWithContext {...{ callback, context }} />
92
- </Channel>
93
- </Chat>
94
- </ChannelsStateProvider>,
91
+ <Chat client={chatClient}>
92
+ <Channel {...(props as React.ComponentProps<typeof Channel>)}>
93
+ {props.children}
94
+ <CallbackEffectWithContext {...{ callback, context }} />
95
+ </Channel>
96
+ </Chat>,
95
97
  );
96
98
 
97
99
  describe('Channel', () => {
@@ -108,8 +110,11 @@ describe('Channel', () => {
108
110
  useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
109
111
  channel = chatClient.channel('messaging', mockedChannel.channel.id);
110
112
  channel.cid = mockedChannel.channel.cid as string;
111
- const getConfigSpy = jest.fn();
112
- channel.getConfig = getConfigSpy;
113
+ // `channel.getConfig()` is gone; `serverConfig` is a getter over the client's store. Nothing here
114
+ // asserts on the value, so seeding an empty config for this cid is enough to stand in for the spy.
115
+ chatClient.channelServerConfigsStore.partialNext({
116
+ configs: { ...chatClient.channelServerConfigs, [channel.cid]: {} as never },
117
+ });
113
118
  });
114
119
 
115
120
  afterEach(() => {
@@ -142,15 +147,64 @@ describe('Channel', () => {
142
147
  await waitFor(() => expect(watchSpy).toHaveBeenCalledTimes(1));
143
148
  });
144
149
 
150
+ it('does not watch or load a draft channel, which has no id and is marked initialized', async () => {
151
+ const draft = chatClient.channel('messaging', {
152
+ members: [{ user_id: user.id }, { user_id: 'other' }],
153
+ } as never);
154
+ draft.initialized = true;
155
+ const watchSpy = jest.spyOn(draft, 'watch');
156
+ const reloadSpy = jest.spyOn(draft.messagePaginator, 'reload');
157
+
158
+ renderComponent({ channel: draft });
159
+ // let the mount effect run to its end
160
+ await act(async () => {
161
+ await new Promise((resolve) => setTimeout(resolve, 50));
162
+ });
163
+
164
+ expect(draft.isProvisional).toBe(true);
165
+ expect(watchSpy).not.toHaveBeenCalled();
166
+ expect(reloadSpy).not.toHaveBeenCalled();
167
+ });
168
+
145
169
  it('should set an error if channel watch fails and render a LoadingErrorIndicator', async () => {
146
170
  const watchError = new Error('channel watch fail');
147
- jest.spyOn(channel, 'watch').mockImplementationOnce(() => Promise.reject(watchError));
171
+ // Rejected persistently, at the API seam: an offline open fails the mount `watch()` AND the
172
+ // paginator seed that follows it, and it is the paginator's own failed query that records
173
+ // `lastQueryError` — the only error surface this component reads.
174
+ jest.spyOn(channel, 'getOrCreate').mockRejectedValue(watchError);
175
+ // No item window is seeded on purpose: a load that never succeeded leaves `items` undefined, and
176
+ // the LoadingErrorIndicator has to render for that as much as for an empty array.
148
177
 
149
178
  const { getByTestId } = renderComponent({ channel });
150
179
 
151
180
  await waitFor(() => expect(getByTestId('loading-error')).toBeTruthy());
152
181
  });
153
182
 
183
+ it('still seeds the paginator when the mount watch fails, so the failure is recorded', async () => {
184
+ // `watch()` does not go through the paginator, so its throw records nothing. The seed is
185
+ // therefore NOT skipped on a failed watch: the paginator issues its own query, and that query's
186
+ // failure is what puts `lastQueryError` on the only error surface this component reads. Skip the
187
+ // seed and an offline cold open renders an empty list instead of the retry screen.
188
+ const watchError = new Error('channel watch fail');
189
+ const getOrCreate = jest.spyOn(channel, 'getOrCreate').mockRejectedValue(watchError);
190
+
191
+ renderComponent({ channel });
192
+
193
+ await waitFor(() =>
194
+ expect(channel.messagePaginator.state.getLatestValue().lastQueryError).toBe(watchError),
195
+ );
196
+ // Two calls, not one: the watch, then the paginator's own query. The second is the one that records.
197
+ expect(getOrCreate.mock.calls.length).toBeGreaterThanOrEqual(2);
198
+
199
+ // Clearing is the paginator's own job, which is what the error screen's retry relies on.
200
+ getOrCreate.mockRestore();
201
+ await act(async () => {
202
+ await channel.messagePaginator.reload();
203
+ });
204
+
205
+ expect(channel.messagePaginator.state.getLatestValue().lastQueryError).toBeUndefined();
206
+ });
207
+
154
208
  it('should render children if a channel is set', async () => {
155
209
  const { getByTestId } = renderComponent({
156
210
  channel,
@@ -169,65 +223,12 @@ describe('Channel', () => {
169
223
  );
170
224
  });
171
225
 
172
- it('should add an `on` handler to the channel on mount', async () => {
173
- const channelOnSpy = jest.spyOn(channel, 'on');
174
- renderComponent({ channel });
175
-
176
- await waitFor(() => expect(channelOnSpy).toHaveBeenCalledWith(expect.any(Function)));
177
- });
178
-
179
- it('should be able to open threads', async () => {
180
- const threadMessage = messages[0];
181
- const hasThread = jest.fn();
182
- // this renders Channel, calls openThread from a child context consumer with a message,
183
- // and then calls hasThread with the thread id if it was set.
184
- const { rerender } = renderComponent(
185
- { channel },
186
- (ctx) => {
187
- const { openThread, thread } = ctx as {
188
- openThread: (m: unknown) => void;
189
- thread: { id: string } | null;
190
- };
191
- if (!thread) {
192
- openThread(threadMessage);
193
- } else {
194
- hasThread(thread.id);
195
- }
196
- },
197
- ThreadContext as React.Context<unknown>,
198
- );
199
-
200
- rerender(
201
- <ChannelsStateProvider>
202
- <Chat client={chatClient}>
203
- <Channel channel={channel}>
204
- <CallbackEffectWithContext
205
- callback={(ctx) => {
206
- const { openThread, thread } = ctx as {
207
- openThread: (m: unknown) => void;
208
- thread: { id: string } | null;
209
- };
210
- if (!thread) {
211
- openThread(threadMessage);
212
- } else {
213
- hasThread(thread.id);
214
- }
215
- }}
216
- context={ThreadContext as React.Context<unknown>}
217
- />
218
- </Channel>
219
- </Chat>
220
- </ChannelsStateProvider>,
221
- );
222
- await waitFor(() => expect(hasThread).toHaveBeenCalledWith(threadMessage.id));
223
- });
224
-
225
226
  const queryChannelWithNewMessages = (newMessages: ReturnType<typeof generateMessage>[]) =>
226
227
  // generate new channel mock from existing channel with new messages added
227
228
  getOrCreateChannelApi(
228
229
  generateChannelResponse({
229
230
  channel: {
230
- config: channel.getConfig(),
231
+ config: channel.serverConfig,
231
232
  id: channel.id,
232
233
  type: channel.type,
233
234
  },
@@ -268,8 +269,6 @@ describe('Channel', () => {
268
269
  const mockContext = {
269
270
  channel,
270
271
  client: chatClient,
271
- markRead: () => {},
272
- watcherCount: 5,
273
272
  };
274
273
 
275
274
  render(
@@ -288,8 +287,6 @@ describe('Channel', () => {
288
287
  const ctx = context as unknown as typeof mockContext;
289
288
  expect(ctx.channel).toBeInstanceOf(Object);
290
289
  expect(ctx.client).toBeInstanceOf(StreamChat);
291
- expect(ctx.markRead).toBeInstanceOf(Function);
292
- expect(ctx.watcherCount).toBe(5);
293
290
  });
294
291
  });
295
292
  });
@@ -352,10 +349,7 @@ describe('Channel', () => {
352
349
  let context: ThreadContextValue | undefined;
353
350
 
354
351
  const mockContext = {
355
- openThread: () => {},
356
- thread: {},
357
- threadHasMore: true,
358
- threadLoadingMore: false,
352
+ allowThreadMessagesInChannel: true,
359
353
  };
360
354
 
361
355
  render(
@@ -371,13 +365,322 @@ describe('Channel', () => {
371
365
 
372
366
  await waitFor(() => {
373
367
  expect(context).toBeInstanceOf(Object);
374
- expect(context!.openThread).toBeInstanceOf(Function);
375
- expect(context!.thread).toBeInstanceOf(Object);
376
- expect(context!.threadHasMore).toBe(true);
377
- expect(context!.threadLoadingMore).toBe(false);
368
+ expect(context!.allowThreadMessagesInChannel).toBe(true);
378
369
  });
379
370
  });
380
371
  });
372
+
373
+ // `activate()` returns the release for that one activation. A mount that never runs it leaves the
374
+ // channel active for the rest of the session, which nothing else would surface.
375
+ it('releases its activation when the channel prop changes and on unmount', async () => {
376
+ const otherChannel = chatClient.channel('messaging', 'other-channel');
377
+ const renderChannel = (target: ChannelType) => (
378
+ <Chat client={chatClient}>
379
+ <Channel channel={target} initializeOnMount={false} />
380
+ </Chat>
381
+ );
382
+
383
+ const { rerender, unmount } = render(renderChannel(channel));
384
+ await waitFor(() => expect(channel.active).toBe(true));
385
+
386
+ rerender(renderChannel(otherChannel));
387
+ await waitFor(() => expect(otherChannel.active).toBe(true));
388
+ expect(channel.active).toBe(false);
389
+
390
+ unmount();
391
+ expect(otherChannel.active).toBe(false);
392
+ });
393
+
394
+ // A channel created from members whose first query finds its real cid already stored (e.g. by
395
+ // `notification.added_to_channel`) gets no events from then on, so <Channel> moves to the stored one.
396
+ describe('when the channel is superseded by the stored instance', () => {
397
+ const setup = () => {
398
+ const otherUser = generateUser({ id: 'other' });
399
+ const draft = chatClient.channel('messaging', {
400
+ members: [{ user_id: user.id }, { user_id: otherUser.id }],
401
+ });
402
+ const stored = chatClient.channel('messaging', '!members-xyz');
403
+ // the mount's first-page load would query (and so supersede) the draft before the test does
404
+ jest.spyOn(draft.messagePaginator, 'reload').mockResolvedValue(undefined);
405
+ useMockedApis(chatClient, [
406
+ getOrCreateChannelApi(
407
+ generateChannelResponse({
408
+ id: '!members-xyz',
409
+ members: [generateMember({ user }), generateMember({ user: otherUser })],
410
+ type: channelType,
411
+ }),
412
+ ),
413
+ ]);
414
+ let contextChannel: ChannelType | undefined;
415
+ renderComponent({ channel: draft, initializeOnMount: false }, (ctx) => {
416
+ contextChannel = (ctx as ChannelContextValue).channel;
417
+ });
418
+ return { draft, getContextChannel: () => contextChannel, stored };
419
+ };
420
+
421
+ it('renders the stored instance, with what was typed', async () => {
422
+ const { draft, getContextChannel, stored } = setup();
423
+ await waitFor(() => expect(draft.active).toBe(true));
424
+ draft.messageComposer.textComposer.setText('hello');
425
+
426
+ await act(async () => {
427
+ await draft.watch();
428
+ });
429
+
430
+ await waitFor(() => expect(getContextChannel()).toBe(stored));
431
+ expect(draft.supersededBy).toBe(stored);
432
+ expect(stored.active).toBe(true);
433
+ expect(draft.active).toBe(false);
434
+ expect(stored.messageComposer.textComposer.text).toBe('hello');
435
+ });
436
+
437
+ it('waits while the stored instance is open elsewhere and the composer holds a draft', async () => {
438
+ const { draft, getContextChannel, stored } = setup();
439
+ const releaseElsewhere = stored.activate();
440
+ await waitFor(() => expect(draft.active).toBe(true));
441
+ draft.messageComposer.textComposer.setText('hello');
442
+
443
+ await act(async () => {
444
+ await draft.watch();
445
+ });
446
+
447
+ expect(draft.supersededBy).toBe(stored);
448
+ expect(getContextChannel()).toBe(draft);
449
+
450
+ act(() => draft.messageComposer.clear());
451
+ await waitFor(() => expect(getContextChannel()).toBe(stored));
452
+ releaseElsewhere();
453
+ });
454
+ });
455
+
456
+ it('does not re-render while the message list queries', async () => {
457
+ // `Channel` subscribes to the paginator for `hasMessages` (what to show when a query errors).
458
+ // That selector must not carry `isLoading` with it: nothing here reads it, but `useStateStore`
459
+ // compares the selected keys, so it re-rendered Channel on every pagination, jump and reload.
460
+ const base = new Date('2020-01-01T00:00:00.000Z').getTime();
461
+ const mockedChannel = generateChannelResponse({
462
+ channel: { cid: channelCid },
463
+ id: channelId,
464
+ members: [generateMember({ user })],
465
+ messages: Array.from({ length: 5 }, (_, i) =>
466
+ generateMessage({ timestamp: new Date(base + i * 1000) }),
467
+ ),
468
+ type: channelType,
469
+ });
470
+ useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
471
+ const channel = chatClient.channel(channelType, channelId);
472
+ await channel.watch();
473
+
474
+ // `useCreateChannelContext` runs once per Channel render, so spying on it (without replacing it)
475
+ // is an exact render counter for the component itself — its children cannot supply one, since
476
+ // they are elements built by this test and do not re-render when Channel does.
477
+ const renderSpy = jest.spyOn(CreateChannelContext, 'useCreateChannelContext');
478
+
479
+ render(
480
+ <Chat client={chatClient}>
481
+ <Channel channel={channel} />
482
+ </Chat>,
483
+ );
484
+
485
+ await waitFor(() => expect(renderSpy).toHaveBeenCalled());
486
+ await act(async () => {
487
+ await Promise.resolve();
488
+ });
489
+ const rendersBefore = renderSpy.mock.calls.length;
490
+
491
+ await act(async () => {
492
+ channel.messagePaginator.state.partialNext({ isLoading: true });
493
+ await Promise.resolve();
494
+ channel.messagePaginator.state.partialNext({ isLoading: false });
495
+ await Promise.resolve();
496
+ });
497
+
498
+ // Guard against a vacuous pass: the flags really did move.
499
+ expect(channel.messagePaginator.state.getLatestValue().isLoading).toBe(false);
500
+ expect(renderSpy.mock.calls.length).toBe(rendersBefore);
501
+ });
502
+
503
+ it('does not re-render ChannelContext consumers while messages arrive', async () => {
504
+ // Everything per-message was taken off this context (messages, loading, highlightedMessageId,
505
+ // the load/reload callbacks). What is left changes on a channel or thread swap, not on traffic,
506
+ // so a consumer must render exactly once no matter how much is said in the channel.
507
+ const mockedChannel = generateChannelResponse({
508
+ channel: { cid: channelCid },
509
+ id: channelId,
510
+ members: [generateMember({ user })],
511
+ messages: [],
512
+ type: channelType,
513
+ });
514
+ useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
515
+ const channel = chatClient.channel(channelType, channelId);
516
+ await channel.watch();
517
+
518
+ const seen: unknown[] = [];
519
+ render(
520
+ <Chat client={chatClient}>
521
+ <Channel channel={channel}>
522
+ <ContextConsumer
523
+ context={ChannelContext as React.Context<unknown>}
524
+ fn={(ctx) => seen.push(ctx)}
525
+ />
526
+ </Channel>
527
+ </Chat>,
528
+ );
529
+
530
+ await waitFor(() => expect(seen.length).toBeGreaterThan(0));
531
+ const rendersBefore = seen.length;
532
+ const itemsBefore = channel.messagePaginator.state.getLatestValue().items?.length ?? 0;
533
+
534
+ // Time-ordered: `generateMessage` otherwise randomizes `created_at` into the past, and a message
535
+ // landing behind the loaded interval's lower bound is dropped rather than inserted.
536
+ const base = Date.now();
537
+ await act(async () => {
538
+ await Promise.resolve();
539
+ for (let i = 0; i < 5; i++) {
540
+ dispatchMessageNewEvent(
541
+ chatClient,
542
+ generateMessage({
543
+ cid: channelCid,
544
+ text: `incoming-${i}`,
545
+ timestamp: new Date(base + i * 1000),
546
+ user: generateUser(),
547
+ }),
548
+ channel.data,
549
+ );
550
+ }
551
+ });
552
+
553
+ // Guard against a vacuous pass: if the events never reached the paginator there was no traffic
554
+ // to be stable against. (`generateMessage` randomizes `created_at` into the past by default, and
555
+ // a message landing behind the loaded interval's lower bound is dropped rather than inserted.)
556
+ expect(channel.messagePaginator.state.getLatestValue().items?.length ?? 0).toBe(
557
+ itemsBefore + 5,
558
+ );
559
+
560
+ expect(seen.length).toBe(rendersBefore);
561
+ expect(new Set(seen).size).toBe(1);
562
+ });
563
+
564
+ it.each([
565
+ ['deleted', () => dispatchChannelDeletedEvent(chatClient, { cid: channel.cid })],
566
+ [
567
+ 'left because the user was removed',
568
+ () => dispatchNotificationRemovedFromChannel(chatClient, { cid: channel.cid }),
569
+ ],
570
+ ])('keeps rendering its messages once the channel is %s', async (_label, dispose) => {
571
+ const { getByText } = renderComponent({ channel, children: <MessageList /> });
572
+ await waitFor(() => expect(getByText(messages[0].text as string)).toBeTruthy());
573
+
574
+ act(() => dispose());
575
+
576
+ expect(channel.pendingDisposal).toBe(true);
577
+ expect(getByText(messages[0].text as string)).toBeTruthy();
578
+ });
579
+
580
+ it('marks the channel context disabled when channel.updated freezes the channel', async () => {
581
+ const seen: ChannelContextValue[] = [];
582
+ render(
583
+ <Chat client={chatClient}>
584
+ <Channel channel={channel}>
585
+ <ContextConsumer
586
+ context={ChannelContext as React.Context<unknown>}
587
+ fn={(ctx) => seen.push(ctx as ChannelContextValue)}
588
+ />
589
+ </Channel>
590
+ </Chat>,
591
+ );
592
+ await waitFor(() => expect(channel.initialized).toBe(true));
593
+ expect(seen.at(-1)?.disabled).toBe(false);
594
+
595
+ act(() => dispatchChannelUpdatedEvent(chatClient, { ...channel.data, frozen: true }));
596
+
597
+ await waitFor(() => expect(seen.at(-1)?.disabled).toBe(true));
598
+ });
599
+
600
+ it('does not re-render when channel.updated changes nothing it shows', async () => {
601
+ const renderSpy = jest.spyOn(CreateChannelContext, 'useCreateChannelContext');
602
+ render(
603
+ <Chat client={chatClient}>
604
+ <Channel channel={channel} />
605
+ </Chat>,
606
+ );
607
+ await waitFor(() => expect(channel.initialized).toBe(true));
608
+ await act(async () => {
609
+ await Promise.resolve();
610
+ });
611
+ const rendersBefore = renderSpy.mock.calls.length;
612
+ const capabilitiesBefore = channel.state.getLatestValue().ownCapabilities;
613
+
614
+ act(() => dispatchChannelUpdatedEvent(chatClient, { ...channel.data }));
615
+
616
+ // Guard against a vacuous pass: the update was applied and republished the capabilities.
617
+ expect(channel.state.getLatestValue().ownCapabilities).not.toBe(capabilitiesBefore);
618
+ expect(channel.state.getLatestValue().ownCapabilities).toEqual(capabilitiesBefore);
619
+ expect(renderSpy.mock.calls.length).toBe(rendersBefore);
620
+ });
621
+
622
+ it('rebuilds own capabilities when a different capability is overridden', async () => {
623
+ let capabilities: OwnCapabilitiesContextValue | undefined;
624
+ const renderChannel = (overrideOwnCapabilities: Partial<OwnCapabilitiesContextValue>) => (
625
+ <Chat client={chatClient}>
626
+ <Channel channel={channel} overrideOwnCapabilities={overrideOwnCapabilities}>
627
+ <ContextConsumer
628
+ context={OwnCapabilitiesContext as React.Context<unknown>}
629
+ fn={(ctx) => {
630
+ capabilities = ctx as OwnCapabilitiesContextValue;
631
+ }}
632
+ />
633
+ </Channel>
634
+ </Chat>
635
+ );
636
+
637
+ const { rerender } = render(renderChannel({ sendMessage: false }));
638
+ await waitFor(() => expect(capabilities?.sendMessage).toBe(false));
639
+ expect(capabilities?.uploadFile).toBe(true);
640
+
641
+ rerender(renderChannel({ uploadFile: false }));
642
+
643
+ await waitFor(() => expect(capabilities?.uploadFile).toBe(false));
644
+ expect(capabilities?.sendMessage).toBe(true);
645
+ });
646
+
647
+ it.each([
648
+ [true, 1],
649
+ [false, 0],
650
+ ])('when isTyping is %s, sends %i typing.stop on background', async (isTyping, sent) => {
651
+ const mockedChannel = generateChannelResponse({
652
+ channel: { cid: channelCid, own_capabilities: ['send-typing-events'] },
653
+ id: channelId,
654
+ members: [generateMember({ user })],
655
+ messages,
656
+ type: channelType,
657
+ });
658
+ useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
659
+ await channel.watch();
660
+ const sendEventSpy = jest.spyOn(channel, 'sendEvent').mockResolvedValue({} as never);
661
+ const addEventListenerSpy = jest.spyOn(AppState, 'addEventListener');
662
+
663
+ render(
664
+ <Chat client={chatClient} closeConnectionOnBackground={false}>
665
+ <Channel channel={channel} />
666
+ </Chat>,
667
+ );
668
+ await waitFor(() => expect(addEventListenerSpy).toHaveBeenCalled());
669
+
670
+ channel.isTyping = isTyping;
671
+ act(() => {
672
+ addEventListenerSpy.mock.calls.forEach(([, handler]) =>
673
+ (handler as (state: AppStateStatus) => void)('background'),
674
+ );
675
+ });
676
+
677
+ expect(sendEventSpy).toHaveBeenCalledTimes(sent);
678
+ if (sent) {
679
+ expect(sendEventSpy).toHaveBeenCalledWith({
680
+ event: { parent_id: undefined, type: 'typing.stop' },
681
+ });
682
+ }
683
+ });
381
684
  });
382
685
 
383
686
  describe('Channel initial load useEffect', () => {
@@ -409,21 +712,20 @@ describe('Channel initial load useEffect', () => {
409
712
  const channel = chatClient.channel('messaging', mockedChannel.channel.id);
410
713
  await channel.watch();
411
714
  channel.offlineMode = true;
412
- channel.state = {
413
- ...channelInitialState,
414
- messagePagination: {
415
- hasPrev: true,
416
- },
417
- } as unknown as typeof channel.state;
715
+ // A DB-hydrated channel that hasn't been live-watched (initialized false) deterministically
716
+ // re-watches on mount; the paginator's isActiveIntervalAtHead heuristic is timing-dependent
717
+ // under mocked pagination, so drive the condition explicitly instead.
718
+ channel.initialized = false;
418
719
  const watchSpy = jest.fn();
419
720
  channel.watch = watchSpy;
420
721
 
421
- renderComponent({ channel });
722
+ // markReadOnMount off so the mount's async read request can't fire late and leak past teardown.
723
+ renderComponent({ channel, markReadOnMount: false });
422
724
 
423
725
  await waitFor(() => expect(watchSpy).toHaveBeenCalledTimes(1));
424
726
  });
425
727
 
426
- it("should call channel.watch if channel is initialized and it's not in offline mode", async () => {
728
+ it('should call channel.watch on mount for a non-offline channel that needs (re)initialization', async () => {
427
729
  const messages = Array.from({ length: 10 }, (_, i) => generateMessage({ id: String(i) }));
428
730
  const mockedChannel = generateChannelResponse({
429
731
  messages,
@@ -433,113 +735,104 @@ describe('Channel initial load useEffect', () => {
433
735
  const channel = chatClient.channel('messaging', mockedChannel.channel.id);
434
736
  await channel.watch();
435
737
 
436
- channel.state = {
437
- ...channelInitialState,
738
+ // Seed 10 members reactively on the real StateStore (channel.state is no longer a plain object).
739
+ channel.state.partialNext({
438
740
  members: Object.fromEntries(
439
741
  Array.from({ length: 10 }, (_, i) => [i, generateMember({ user_id: String(i) })]),
440
742
  ),
441
- messagePagination: {
442
- hasPrev: true,
443
- },
444
- messages: Array.from({ length: 10 }, (_, i) => generateMessage({ id: String(i) })),
445
- } as unknown as typeof channel.state;
743
+ });
446
744
  const watchSpy = jest.fn();
447
745
 
448
746
  channel.offlineMode = false;
449
- (channel as unknown as { initialied: boolean }).initialied = false;
747
+ // Force the mount re-watch deterministically (isActiveIntervalAtHead is timing-dependent under
748
+ // mocked pagination).
749
+ channel.initialized = false;
450
750
  channel.watch = watchSpy;
451
751
 
452
- renderComponent({ channel });
453
-
454
- const { result: channelMessageState } = renderHook(() => useChannelMessageDataState(channel));
455
- const { result: channelState } = renderHook(() => useChannelDataState(channel));
752
+ // markReadOnMount off so the mount's async read request can't fire late and leak past teardown.
753
+ renderComponent({ channel, markReadOnMount: false });
456
754
 
457
755
  await waitFor(() => expect(watchSpy).toHaveBeenCalled());
458
- await waitFor(() => expect(channelMessageState.current.state.messages!).toHaveLength(10));
459
- await waitFor(() => expect(Object.keys(channelState.current.state.members!)).toHaveLength(10));
756
+ // members now come reactively from channel.state (via the shim getter).
757
+ await waitFor(() => expect(Object.keys(channel.state.members)).toHaveLength(10));
460
758
  });
461
759
 
462
- function getElementsAround<T extends object>(array: T[], key: keyof T, id: unknown) {
463
- const index = array.findIndex((obj) => obj[key] === id);
760
+ describe('message page size', () => {
761
+ const mountChannel = async () => {
762
+ const mockedChannel = generateChannelResponse({ messages: [] });
763
+ useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
764
+ const channel = chatClient.channel('messaging', mockedChannel.channel.id);
765
+ // Force the mount watch, so waiting for it proves the effect got past the page-size write.
766
+ channel.initialized = false;
767
+ const watchSpy = jest.fn();
768
+ channel.watch = watchSpy;
769
+
770
+ renderComponent({ channel, markReadOnMount: false });
771
+ await waitFor(() => expect(watchSpy).toHaveBeenCalledTimes(1));
464
772
 
465
- if (index === -1) {
466
- return [];
467
- }
773
+ return channel;
774
+ };
468
775
 
469
- const start = Math.max(0, index - 12); // 12 before the index
470
- const end = Math.min(array.length, index + 13); // 12 after the index
471
- return array.slice(start, end);
472
- }
776
+ it('applies the SDK default when nothing was registered through client.config', async () => {
777
+ const channel = await mountChannel();
473
778
 
474
- it('should call the loadChannelAroundMessage when messageId is passed to a channel', async () => {
475
- const messages = Array.from({ length: 105 }, (_, i) => generateMessage({ id: String(i) }));
476
- const messageToSearch = messages[50];
477
- const mockedChannel = generateChannelResponse({
478
- messages,
779
+ expect(channel.messagePaginator.pageSize).toBe(25);
780
+ });
781
+
782
+ it('keeps a page size registered under channel.messagePaginator', async () => {
783
+ chatClient.config.set({ channel: { messagePaginator: { pageSize: 40 } } });
784
+
785
+ const channel = await mountChannel();
786
+
787
+ expect(channel.messagePaginator.pageSize).toBe(40);
788
+ });
789
+
790
+ it('keeps a page size registered under the general messagePaginator key', async () => {
791
+ chatClient.config.set({ messagePaginator: { pageSize: 15 } });
792
+
793
+ const channel = await mountChannel();
794
+
795
+ expect(channel.messagePaginator.pageSize).toBe(15);
479
796
  });
797
+ });
798
+
799
+ it('leaves targeting to the caller — <Channel> no longer jumps on its own', async () => {
800
+ // The `messageId` prop is gone. Jumping is the paginator's job, so nothing here should issue a
801
+ // jump: the integrator calls `paginator.jumpToMessage(...)` themselves, from a `useLayoutEffect`
802
+ // or before mount. See 'does not override a jump the integrator made before mount' for the other
803
+ // half of the contract — that <Channel> then keeps its hands off it.
804
+ const messages = Array.from({ length: 105 }, (_, i) => generateMessage({ id: String(i) }));
805
+ const mockedChannel = generateChannelResponse({ messages });
480
806
 
481
807
  useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
482
808
  const channel = chatClient.channel('messaging', mockedChannel.channel.id);
483
809
  await channel.watch();
484
810
 
485
- const loadMessageIntoState = jest.fn(() => {
486
- const newMessages = getElementsAround(messages, 'id', messageToSearch.id);
487
- channel.state.messages = newMessages;
488
- });
811
+ const jumpToMessageSpy = jest
812
+ .spyOn(channel.messagePaginator, 'jumpToMessage')
813
+ .mockResolvedValue(undefined as never);
814
+ const seedSpy = jest.spyOn(channel.messagePaginator, 'seedUnreadSnapshot');
489
815
 
490
- channel.state = {
491
- ...channelInitialState,
492
- loadMessageIntoState,
493
- messagePagination: {
494
- hasNext: true,
495
- hasPrev: true,
496
- },
497
- messages,
498
- } as unknown as typeof channel.state;
499
-
500
- renderComponent({ channel, messageId: messageToSearch.id });
816
+ renderComponent({ channel, markReadOnMount: false });
501
817
 
818
+ // Gate on the initial-load effect reaching its decision point, so the negative below is not
819
+ // just "it has not happened yet".
502
820
  await waitFor(() => {
503
- expect(loadMessageIntoState).toHaveBeenCalledWith(messageToSearch.id, undefined, 25);
821
+ expect(seedSpy).toHaveBeenCalled();
504
822
  });
505
-
506
- const { result: channelMessageState } = renderHook(() => useChannelMessageDataState(channel));
507
- await waitFor(() => expect(channelMessageState.current.state.messages!).toHaveLength(25));
508
- await waitFor(() =>
509
- expect(
510
- channelMessageState.current.state.messages!.find(
511
- (message) => message.id === messageToSearch.id,
512
- ),
513
- ).toBeTruthy(),
514
- );
823
+ expect(jumpToMessageSpy).not.toHaveBeenCalled();
515
824
  });
516
825
 
517
826
  describe('initialScrollToFirstUnreadMessage', () => {
518
827
  afterEach(() => {
519
- // Clear all mocks after each test
828
+ // Clear all mocks after each test. Deliberately not restoreAllMocks: that would also drop the
829
+ // shared axios `request` mock, letting a still in-flight mount re-watch fall through to the
830
+ // real HTTP adapter after the environment is torn down ("require a file after the Jest
831
+ // environment has been torn down").
520
832
  jest.clearAllMocks();
521
- // Restore all mocks to their original implementation
522
- jest.restoreAllMocks();
523
833
  cleanup();
524
834
  });
525
- const mockedHook = (
526
- values: Partial<ReturnType<typeof MessageListPaginationHooks.useMessageListPagination>>,
527
- ) =>
528
- jest.spyOn(MessageListPaginationHooks, 'useMessageListPagination').mockImplementation(
529
- () =>
530
- ({
531
- copyMessagesStateFromChannel: jest.fn(),
532
- loadChannelAroundMessage: jest.fn(),
533
- loadChannelAtFirstUnreadMessage: jest.fn(),
534
- loadInitialMessagesStateFromChannel: jest.fn(),
535
- loadLatestMessages: jest.fn(),
536
- loadMore: jest.fn(),
537
- loadMoreRecent: jest.fn(),
538
- state: { ...channelInitialState },
539
- ...values,
540
- }) as unknown as ReturnType<typeof MessageListPaginationHooks.useMessageListPagination>,
541
- );
542
- it("should not call loadChannelAtFirstUnreadMessage if channel's unread count is 0", async () => {
835
+ it("should not jump to the first unread message if channel's unread count is 0", async () => {
543
836
  const mockedChannel = generateChannelResponse({
544
837
  messages: Array.from({ length: 10 }, (_, i) => generateMessage({ text: `message-${i}` })),
545
838
  });
@@ -551,63 +844,85 @@ describe('Channel initial load useEffect', () => {
551
844
  const read_data: typeof channel.state.read = {};
552
845
 
553
846
  read_data[chatClient.user!.id] = {
554
- last_read: new Date(),
847
+ last_read: convertDateToTimestamp(),
555
848
  user,
556
849
  } as unknown as (typeof channel.state.read)[string];
557
850
 
558
- channel.state = {
559
- ...channelInitialState,
560
- read: read_data,
561
- } as unknown as typeof channel.state;
851
+ channel.state.partialNext({ read: read_data });
562
852
  jest.spyOn(channel, 'countUnread').mockImplementation(() => 0);
563
853
 
564
- const loadChannelAtFirstUnreadMessageFn = jest.fn();
854
+ const jumpToTheFirstUnreadMessageSpy = jest
855
+ .spyOn(channel.messagePaginator, 'jumpToTheFirstUnreadMessage')
856
+ .mockResolvedValue(undefined as never);
565
857
 
566
- mockedHook({ loadChannelAtFirstUnreadMessage: loadChannelAtFirstUnreadMessageFn });
567
-
568
- renderComponent({ channel, initialScrollToFirstUnreadMessage: true });
858
+ renderComponent({
859
+ channel,
860
+ initialScrollToFirstUnreadMessage: true,
861
+ // Skip the incidental mark-read-on-mount so its async read request can't fire a real
862
+ // HTTP call after this describe's afterEach restores the axios mock.
863
+ markReadOnMount: false,
864
+ });
569
865
 
570
866
  await waitFor(() => {
571
- expect(loadChannelAtFirstUnreadMessageFn).not.toHaveBeenCalled();
867
+ expect(jumpToTheFirstUnreadMessageSpy).not.toHaveBeenCalled();
572
868
  });
573
869
  });
574
870
 
575
- it("should call loadChannelAtFirstUnreadMessage if channel's unread count is greater than 0", async () => {
576
- const mockedChannel = generateChannelResponse({
577
- messages: Array.from({ length: 10 }, (_, i) => generateMessage({ text: `message-${i}` })),
578
- });
579
-
871
+ it('does not override a jump the integrator made before mount', async () => {
872
+ const messages = Array.from({ length: 10 }, (_, i) =>
873
+ generateMessage({ id: `m${i}`, text: `message-${i}` }),
874
+ );
875
+ const mockedChannel = generateChannelResponse({ messages });
580
876
  useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
581
877
  const channel = chatClient.channel('messaging', mockedChannel.channel.id);
582
878
  await channel.watch();
583
879
 
584
880
  const user = generateUser();
585
- const numberOfUnreadMessages = 15;
586
881
  const read_data: typeof channel.state.read = {};
587
-
588
882
  read_data[chatClient.user!.id] = {
589
- last_read: new Date(),
590
- unread_messages: numberOfUnreadMessages,
883
+ last_read: convertDateToTimestamp(),
884
+ unread_messages: 15,
591
885
  user,
592
886
  };
593
- channel.state = {
594
- ...channelInitialState,
595
- read: read_data,
596
- } as unknown as typeof channel.state;
597
-
598
- jest.spyOn(channel, 'countUnread').mockImplementation(() => numberOfUnreadMessages);
599
- const loadChannelAtFirstUnreadMessageFn = jest.fn();
600
-
601
- mockedHook({ loadChannelAtFirstUnreadMessage: loadChannelAtFirstUnreadMessageFn });
887
+ channel.state.partialNext({ read: read_data });
888
+ jest.spyOn(channel, 'countUnread').mockImplementation(() => 15);
889
+
890
+ const jumpToTheFirstUnreadMessageSpy = jest
891
+ .spyOn(channel.messagePaginator, 'jumpToTheFirstUnreadMessage')
892
+ .mockResolvedValue(undefined as never);
893
+ // `initChannel` always re-seeds the unread snapshot, and does so on the line BEFORE it decides
894
+ // whether to jump. Waiting on it is what makes the negative assertion below mean anything: a
895
+ // bare `waitFor(() => expect(spy).not.toHaveBeenCalled())` passes on the first tick, before the
896
+ // effect has run at all.
897
+ const seedSpy = jest.spyOn(channel.messagePaginator, 'seedUnreadSnapshot');
898
+
899
+ // THE INTEGRATOR'S OWN JUMP, before <Channel> mounts. No `messageId` prop is passed.
900
+ channel.messagePaginator.emitMessageFocusSignal({
901
+ messageId: 'm4',
902
+ reason: 'jump-to-message',
903
+ ttlMs: 3000,
904
+ });
602
905
 
603
- renderComponent({ channel, initialScrollToFirstUnreadMessage: true });
906
+ renderComponent({
907
+ channel,
908
+ initialScrollToFirstUnreadMessage: true,
909
+ markReadOnMount: false,
910
+ });
604
911
 
912
+ // Wait until the initial-load effect has actually reached its decision point.
605
913
  await waitFor(() => {
606
- expect(loadChannelAtFirstUnreadMessageFn).toHaveBeenCalled();
914
+ expect(seedSpy).toHaveBeenCalled();
607
915
  });
916
+
917
+ // Channel must NOT hijack the scroll to the first unread message...
918
+ expect(jumpToTheFirstUnreadMessageSpy).not.toHaveBeenCalled();
919
+ // ...and the integrator's target must still be the focused one.
920
+ expect(channel.messagePaginator.messageFocusSignal.getLatestValue().signal?.messageId).toBe(
921
+ 'm4',
922
+ );
608
923
  });
609
924
 
610
- it("should not call loadChannelAtFirstUnreadMessage if channel's unread count is greater than 0 lesser than scrollToFirstUnreadThreshold", async () => {
925
+ it("should jump to the first unread message if channel's unread count is greater than 0", async () => {
611
926
  const mockedChannel = generateChannelResponse({
612
927
  messages: Array.from({ length: 10 }, (_, i) => generateMessage({ text: `message-${i}` })),
613
928
  });
@@ -617,61 +932,109 @@ describe('Channel initial load useEffect', () => {
617
932
  await channel.watch();
618
933
 
619
934
  const user = generateUser();
620
- const numberOfUnreadMessages = 2;
935
+ const numberOfUnreadMessages = 15;
621
936
  const read_data: typeof channel.state.read = {};
622
937
 
623
938
  read_data[chatClient.user!.id] = {
624
- last_read: new Date(),
939
+ last_read: convertDateToTimestamp(),
625
940
  unread_messages: numberOfUnreadMessages,
626
941
  user,
627
942
  };
628
- channel.state = {
629
- ...channelInitialState,
630
- read: read_data,
631
- } as unknown as typeof channel.state;
943
+ channel.state.partialNext({ read: read_data });
632
944
 
633
945
  jest.spyOn(channel, 'countUnread').mockImplementation(() => numberOfUnreadMessages);
634
- const loadChannelAtFirstUnreadMessageFn = jest.fn();
946
+ const jumpToTheFirstUnreadMessageSpy = jest
947
+ .spyOn(channel.messagePaginator, 'jumpToTheFirstUnreadMessage')
948
+ .mockResolvedValue(undefined as never);
635
949
 
636
- mockedHook({ loadChannelAtFirstUnreadMessage: loadChannelAtFirstUnreadMessageFn });
637
-
638
- renderComponent({ channel, initialScrollToFirstUnreadMessage: true });
950
+ renderComponent({
951
+ channel,
952
+ initialScrollToFirstUnreadMessage: true,
953
+ // Skip the incidental mark-read-on-mount so its async read request can't fire a real
954
+ // HTTP call after this describe's afterEach restores the axios mock.
955
+ markReadOnMount: false,
956
+ });
639
957
 
640
958
  await waitFor(() => {
641
- expect(loadChannelAtFirstUnreadMessageFn).not.toHaveBeenCalled();
959
+ expect(jumpToTheFirstUnreadMessageSpy).toHaveBeenCalled();
642
960
  });
643
961
  });
644
962
  });
645
963
 
646
- it('should call resyncChannel when connection changed event is triggered', async () => {
964
+ it('reloads the channel on reconnect while preserving failed messages', async () => {
965
+ // The reload is issued by `client.connectionRecovery` now, not by this component — `<Channel>`
966
+ // only marks the channel active. Asserted end to end on purpose: what matters is that a reconnect
967
+ // still refreshes the open channel and still does not lose locally-unsent messages.
968
+ // Deterministic timestamps so the 10 loaded messages and the 10 offline-failed messages occupy
969
+ // adjacent, ordered positions in the paginator's active window.
970
+ const baseTime = 1600000000000;
647
971
  const mockedChannel = generateChannelResponse({
648
- messages: Array.from({ length: 10 }, (_, i) => generateMessage({ text: `message-${i}` })),
972
+ messages: Array.from({ length: 10 }, (_, i) =>
973
+ generateMessage({ text: `message-${i}`, timestamp: new Date(baseTime + i * 1000) }),
974
+ ),
649
975
  });
650
976
 
651
977
  useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
652
978
  const channel = chatClient.channel('messaging', mockedChannel.channel.id);
653
979
  await channel.watch();
654
980
 
981
+ // Call through to the real reload so the resync actually reconciles (and we can assert it ran).
982
+ const reloadSpy = jest.spyOn(channel, 'reload');
983
+
655
984
  renderComponent({ channel });
656
985
 
657
986
  await waitFor(() => {
658
987
  act(() => dispatchConnectionChanged(chatClient, false));
659
988
  });
660
989
 
661
- await waitFor(() => {
662
- channel.state.addMessagesSorted(
663
- Array.from({ length: 10 }, (_, i) =>
664
- generateMessage({ status: 'failed', text: `message-${i}` }),
665
- ),
666
- );
990
+ // Simulate 10 messages sent while offline that failed. They carry the channel cid (so they pass
991
+ // the paginator's cid match filter) and sit just after the loaded page.
992
+ act(() => {
993
+ Array.from({ length: 10 }, (_, i) =>
994
+ generateMessage({
995
+ cid: channel.cid,
996
+ status: 'failed',
997
+ text: `failed-message-${i}`,
998
+ timestamp: new Date(baseTime + 100000 + i * 1000),
999
+ }),
1000
+ ).forEach((m) => channel.messagePaginator.ingestItem(channel.state.formatMessage(m)));
667
1001
  });
668
1002
 
669
1003
  await waitFor(() => {
670
1004
  act(() => dispatchConnectionChanged(chatClient));
671
1005
  });
672
1006
 
1007
+ // The reload re-watches and reconciles, but preserves the failed (locally-unsent) messages —
1008
+ // the 10 originals + 10 failed remain.
673
1009
  await waitFor(() => {
674
- expect(channel.state.messages.length).toBe(20);
1010
+ expect(reloadSpy).toHaveBeenCalled();
1011
+ expect(channel.messagePaginator.headItems.length).toBe(20);
1012
+ });
1013
+ });
1014
+
1015
+ describe('read on open', () => {
1016
+ it('still marks a channel with unread messages read when it is opened', async () => {
1017
+ const otherUser = generateUser();
1018
+ const mockedChannel = generateChannelResponse({
1019
+ members: [generateMember({ user }), generateMember({ user: otherUser })],
1020
+ messages: [generateMessage({ user: otherUser }), generateMessage({ user: otherUser })],
1021
+ read: [{ last_read: asTimestampNS(1), unread_messages: 2, user }],
1022
+ });
1023
+ useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
1024
+ const testChannel = chatClient.channel('messaging', mockedChannel.channel.id);
1025
+ await testChannel.watch();
1026
+ const markRead = jest
1027
+ .spyOn(testChannel, 'markRead')
1028
+ .mockResolvedValue({} as Awaited<ReturnType<typeof testChannel.markRead>>);
1029
+
1030
+ render(
1031
+ <Chat client={chatClient}>
1032
+ <Channel channel={testChannel} />
1033
+ </Chat>,
1034
+ );
1035
+
1036
+ await waitFor(() => expect(markRead).toHaveBeenCalled());
1037
+ expect(markRead.mock.calls.every(([options]) => !options?.thread_id)).toBe(true);
675
1038
  });
676
1039
  });
677
1040
  });