stream-chat-react 14.12.0 → 15.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 (1428) hide show
  1. package/dist/cjs/ListItemLayout.60c3b287.js +2181 -0
  2. package/dist/cjs/ListItemLayout.60c3b287.js.map +1 -0
  3. package/dist/cjs/{ReactPlayerWrapper.7cc7b0d8.js → ReactPlayerWrapper.f04b1d06.js} +3 -3
  4. package/dist/cjs/{ReactPlayerWrapper.7cc7b0d8.js.map → ReactPlayerWrapper.f04b1d06.js.map} +1 -1
  5. package/dist/cjs/SlotLayout.de45be2d.js +1672 -0
  6. package/dist/cjs/SlotLayout.de45be2d.js.map +1 -0
  7. package/dist/cjs/Thread.373af587.js +7479 -0
  8. package/dist/cjs/Thread.373af587.js.map +1 -0
  9. package/dist/cjs/channel-detail.js +409 -389
  10. package/dist/cjs/channel-detail.js.map +1 -1
  11. package/dist/cjs/emojis.js +18 -16
  12. package/dist/cjs/emojis.js.map +1 -1
  13. package/dist/cjs/index.js +14467 -20208
  14. package/dist/cjs/index.js.map +1 -1
  15. package/dist/cjs/slot-geometry.js +145 -0
  16. package/dist/cjs/slot-geometry.js.map +1 -0
  17. package/dist/cjs/slot-layout.js +37 -0
  18. package/dist/cjs/useChannel.1004ed4c.js +18 -0
  19. package/dist/cjs/useChannel.1004ed4c.js.map +1 -0
  20. package/dist/cjs/useComponentContextIcons.d16834d9.js +1729 -0
  21. package/dist/cjs/useComponentContextIcons.d16834d9.js.map +1 -0
  22. package/dist/cjs/useIsCooldownActive.1f778bc1.js +110 -0
  23. package/dist/cjs/useIsCooldownActive.1f778bc1.js.map +1 -0
  24. package/dist/css/channel-detail.css.map +1 -1
  25. package/dist/css/index.css +208 -103
  26. package/dist/css/index.css.map +1 -1
  27. package/dist/es/a11y/accessibleLabel.mjs +6 -2
  28. package/dist/es/a11y/accessibleLabel.mjs.map +1 -1
  29. package/dist/es/components/AIStateIndicator/AIStateIndicator.mjs +6 -5
  30. package/dist/es/components/AIStateIndicator/AIStateIndicator.mjs.map +1 -1
  31. package/dist/es/components/AIStateIndicator/hooks/useAIState.mjs +9 -33
  32. package/dist/es/components/AIStateIndicator/hooks/useAIState.mjs.map +1 -1
  33. package/dist/es/components/Accessibility/NotificationAnnouncer.mjs +2 -3
  34. package/dist/es/components/Accessibility/NotificationAnnouncer.mjs.map +1 -1
  35. package/dist/es/components/Accessibility/hooks/useIncomingMessageAnnouncements.mjs +10 -5
  36. package/dist/es/components/Accessibility/hooks/useIncomingMessageAnnouncements.mjs.map +1 -1
  37. package/dist/es/components/Accessibility/hooks/useInteractionAnnouncements.mjs +38 -28
  38. package/dist/es/components/Accessibility/hooks/useInteractionAnnouncements.mjs.map +1 -1
  39. package/dist/es/components/Accessibility/useAriaLiveAnnouncer.mjs +5 -8
  40. package/dist/es/components/Accessibility/useAriaLiveAnnouncer.mjs.map +1 -1
  41. package/dist/es/components/Attachment/Attachment.mjs +21 -6
  42. package/dist/es/components/Attachment/Attachment.mjs.map +1 -1
  43. package/dist/es/components/Attachment/AttachmentActions.mjs +10 -9
  44. package/dist/es/components/Attachment/AttachmentActions.mjs.map +1 -1
  45. package/dist/es/components/Attachment/AttachmentContainer.mjs +21 -17
  46. package/dist/es/components/Attachment/AttachmentContainer.mjs.map +1 -1
  47. package/dist/es/components/Attachment/Audio.mjs +15 -10
  48. package/dist/es/components/Attachment/Audio.mjs.map +1 -1
  49. package/dist/es/components/Attachment/FileAttachment.mjs +4 -5
  50. package/dist/es/components/Attachment/FileAttachment.mjs.map +1 -1
  51. package/dist/es/components/Attachment/Geolocation.mjs +29 -17
  52. package/dist/es/components/Attachment/Geolocation.mjs.map +1 -1
  53. package/dist/es/components/Attachment/Giphy.mjs +4 -4
  54. package/dist/es/components/Attachment/Giphy.mjs.map +1 -1
  55. package/dist/es/components/Attachment/LinkPreview/Card.mjs +4 -4
  56. package/dist/es/components/Attachment/LinkPreview/Card.mjs.map +1 -1
  57. package/dist/es/components/Attachment/LinkPreview/UnableToRenderCard.mjs +2 -2
  58. package/dist/es/components/Attachment/LinkPreview/UnableToRenderCard.mjs.map +1 -1
  59. package/dist/es/components/Attachment/ModalGallery.mjs +20 -8
  60. package/dist/es/components/Attachment/ModalGallery.mjs.map +1 -1
  61. package/dist/es/components/Attachment/UnsupportedAttachment.mjs +3 -3
  62. package/dist/es/components/Attachment/UnsupportedAttachment.mjs.map +1 -1
  63. package/dist/es/components/Attachment/VideoAttachment.mjs +10 -10
  64. package/dist/es/components/Attachment/VideoAttachment.mjs.map +1 -1
  65. package/dist/es/components/Attachment/VisibilityDisclaimer.mjs +2 -2
  66. package/dist/es/components/Attachment/VisibilityDisclaimer.mjs.map +1 -1
  67. package/dist/es/components/Attachment/VoiceRecording.mjs +17 -12
  68. package/dist/es/components/Attachment/VoiceRecording.mjs.map +1 -1
  69. package/dist/es/components/Attachment/components/AttachmentUploadProgressIndicator.mjs +1 -1
  70. package/dist/es/components/Attachment/components/DownloadButton.mjs +3 -3
  71. package/dist/es/components/Attachment/components/DownloadButton.mjs.map +1 -1
  72. package/dist/es/components/Attachment/hooks/useAttachmentUploadState.mjs +4 -30
  73. package/dist/es/components/Attachment/hooks/useAttachmentUploadState.mjs.map +1 -1
  74. package/dist/es/components/Attachment/utils.mjs.map +1 -1
  75. package/dist/es/components/AudioPlayback/AudioPlaybackArbiter.mjs +57 -0
  76. package/dist/es/components/AudioPlayback/AudioPlaybackArbiter.mjs.map +1 -0
  77. package/dist/es/components/AudioPlayback/AudioPlayer.mjs +329 -314
  78. package/dist/es/components/AudioPlayback/AudioPlayer.mjs.map +1 -1
  79. package/dist/es/components/AudioPlayback/AudioPlayerPool.mjs +54 -90
  80. package/dist/es/components/AudioPlayback/AudioPlayerPool.mjs.map +1 -1
  81. package/dist/es/components/AudioPlayback/WithAudioPlayback.mjs +20 -6
  82. package/dist/es/components/AudioPlayback/WithAudioPlayback.mjs.map +1 -1
  83. package/dist/es/components/AudioPlayback/components/ProgressBar.mjs +2 -2
  84. package/dist/es/components/AudioPlayback/components/ProgressBar.mjs.map +1 -1
  85. package/dist/es/components/AudioPlayback/components/WaveProgressBar.mjs +2 -2
  86. package/dist/es/components/AudioPlayback/components/WaveProgressBar.mjs.map +1 -1
  87. package/dist/es/components/AudioPlayback/components/progressBarA11y.mjs +2 -2
  88. package/dist/es/components/AudioPlayback/components/progressBarA11y.mjs.map +1 -1
  89. package/dist/es/components/AudioPlayback/plugins/AudioPlayerNotificationsPlugin.mjs +4 -4
  90. package/dist/es/components/AudioPlayback/plugins/AudioPlayerNotificationsPlugin.mjs.map +1 -1
  91. package/dist/es/components/Avatar/Avatar.mjs.map +1 -1
  92. package/dist/es/components/Avatar/AvatarStack.mjs +1 -1
  93. package/dist/es/components/Avatar/AvatarStack.mjs.map +1 -1
  94. package/dist/es/components/Badge/Badge.mjs.map +1 -1
  95. package/dist/es/components/Badge/MediaBadge.mjs +2 -1
  96. package/dist/es/components/Badge/MediaBadge.mjs.map +1 -1
  97. package/dist/es/components/BaseImage/ImagePlaceholder.mjs +3 -3
  98. package/dist/es/components/BaseImage/ImagePlaceholder.mjs.map +1 -1
  99. package/dist/es/components/Button/PlayButton.mjs +3 -3
  100. package/dist/es/components/Button/PlayButton.mjs.map +1 -1
  101. package/dist/es/components/Button/WorkspaceNavigationButtons.mjs +94 -0
  102. package/dist/es/components/Button/WorkspaceNavigationButtons.mjs.map +1 -0
  103. package/dist/es/components/Channel/Channel.mjs +34 -720
  104. package/dist/es/components/Channel/Channel.mjs.map +1 -1
  105. package/dist/es/components/Channel/hooks/useChannelCapabilities.mjs +21 -0
  106. package/dist/es/components/Channel/hooks/useChannelCapabilities.mjs.map +1 -0
  107. package/dist/es/components/Channel/hooks/useChannelContainerClasses.mjs +1 -1
  108. package/dist/es/components/Channel/hooks/useChannelContainerClasses.mjs.map +1 -1
  109. package/dist/es/components/ChannelHeader/ChannelHeader.mjs +17 -16
  110. package/dist/es/components/ChannelHeader/ChannelHeader.mjs.map +1 -1
  111. package/dist/es/components/ChannelHeader/hooks/useChannelHasMembersOnline.mjs +16 -41
  112. package/dist/es/components/ChannelHeader/hooks/useChannelHasMembersOnline.mjs.map +1 -1
  113. package/dist/es/components/ChannelHeader/hooks/useChannelHeaderOnlineStatus.mjs +19 -21
  114. package/dist/es/components/ChannelHeader/hooks/useChannelHeaderOnlineStatus.mjs.map +1 -1
  115. package/dist/es/components/ChannelList/ChannelList.mjs +60 -131
  116. package/dist/es/components/ChannelList/ChannelList.mjs.map +1 -1
  117. package/dist/es/components/ChannelList/ChannelListHeader.mjs +4 -4
  118. package/dist/es/components/ChannelList/ChannelListHeader.mjs.map +1 -1
  119. package/dist/es/components/ChannelList/ChannelLists.mjs +31 -0
  120. package/dist/es/components/ChannelList/ChannelLists.mjs.map +1 -0
  121. package/dist/es/components/ChannelList/ChannelNavigation.mjs +36 -0
  122. package/dist/es/components/ChannelList/ChannelNavigation.mjs.map +1 -0
  123. package/dist/es/components/ChannelList/hooks/useChannelMembersState.mjs.map +1 -1
  124. package/dist/es/components/ChannelList/hooks/useChannelMembershipState.mjs.map +1 -1
  125. package/dist/es/components/ChannelList/hooks/useChannelPaginatorState.mjs +21 -0
  126. package/dist/es/components/ChannelList/hooks/useChannelPaginatorState.mjs.map +1 -0
  127. package/dist/es/components/ChannelList/hooks/useSelectedChannelState.mjs.map +1 -1
  128. package/dist/es/components/ChannelListItem/ChannelListItem.mjs +23 -74
  129. package/dist/es/components/ChannelListItem/ChannelListItem.mjs.map +1 -1
  130. package/dist/es/components/ChannelListItem/ChannelListItemActionButtons.defaults.mjs +34 -34
  131. package/dist/es/components/ChannelListItem/ChannelListItemActionButtons.defaults.mjs.map +1 -1
  132. package/dist/es/components/ChannelListItem/ChannelListItemActionButtons.mjs +2 -2
  133. package/dist/es/components/ChannelListItem/ChannelListItemActionButtons.mjs.map +1 -1
  134. package/dist/es/components/ChannelListItem/ChannelListItemTimestamp.mjs +7 -6
  135. package/dist/es/components/ChannelListItem/ChannelListItemTimestamp.mjs.map +1 -1
  136. package/dist/es/components/ChannelListItem/ChannelListItemUI.mjs +15 -13
  137. package/dist/es/components/ChannelListItem/ChannelListItemUI.mjs.map +1 -1
  138. package/dist/es/components/ChannelListItem/hooks/useChannelDisplayName.mjs +7 -7
  139. package/dist/es/components/ChannelListItem/hooks/useChannelDisplayName.mjs.map +1 -1
  140. package/dist/es/components/ChannelListItem/hooks/useIsChannelMuted.mjs +8 -26
  141. package/dist/es/components/ChannelListItem/hooks/useIsChannelMuted.mjs.map +1 -1
  142. package/dist/es/components/ChannelListItem/hooks/useIsUserMuted.mjs +1 -1
  143. package/dist/es/components/ChannelListItem/hooks/useIsUserMuted.mjs.map +1 -1
  144. package/dist/es/components/ChannelListItem/hooks/useMessageDeliveryStatus.mjs +18 -50
  145. package/dist/es/components/ChannelListItem/hooks/useMessageDeliveryStatus.mjs.map +1 -1
  146. package/dist/es/components/ChannelListItem/utils.a11y.mjs +35 -21
  147. package/dist/es/components/ChannelListItem/utils.a11y.mjs.map +1 -1
  148. package/dist/es/components/ChannelListItem/utils.mjs +31 -30
  149. package/dist/es/components/ChannelListItem/utils.mjs.map +1 -1
  150. package/dist/es/components/Chat/Chat.mjs +17 -16
  151. package/dist/es/components/Chat/Chat.mjs.map +1 -1
  152. package/dist/es/components/Chat/hooks/useChat.mjs +7 -49
  153. package/dist/es/components/Chat/hooks/useChat.mjs.map +1 -1
  154. package/dist/es/components/Chat/hooks/useCreateChatClient.mjs +1 -1
  155. package/dist/es/components/Chat/hooks/useCreateChatClient.mjs.map +1 -1
  156. package/dist/es/components/Chat/hooks/useCreateChatContext.mjs +3 -11
  157. package/dist/es/components/Chat/hooks/useCreateChatContext.mjs.map +1 -1
  158. package/dist/es/components/Chat/hooks/useNetworkConnectionState.mjs +46 -0
  159. package/dist/es/components/Chat/hooks/useNetworkConnectionState.mjs.map +1 -0
  160. package/dist/es/components/Chat/hooks/useReportLostConnectionSystemNotification.mjs +112 -24
  161. package/dist/es/components/Chat/hooks/useReportLostConnectionSystemNotification.mjs.map +1 -1
  162. package/dist/es/components/Chat/hooks/useSplitActionSet.mjs +1 -1
  163. package/dist/es/components/Chat/hooks/useSplitActionSet.mjs.map +1 -1
  164. package/dist/es/components/Chat/hooks/useWSConnectionState.mjs +31 -0
  165. package/dist/es/components/Chat/hooks/useWSConnectionState.mjs.map +1 -0
  166. package/dist/es/components/DateSeparator/DateSeparator.mjs +2 -2
  167. package/dist/es/components/DateSeparator/DateSeparator.mjs.map +1 -1
  168. package/dist/es/components/Dialog/components/Alert.mjs +1 -1
  169. package/dist/es/components/Dialog/components/Callout.mjs +2 -2
  170. package/dist/es/components/Dialog/components/Callout.mjs.map +1 -1
  171. package/dist/es/components/Dialog/components/ContextMenu.mjs +9 -8
  172. package/dist/es/components/Dialog/components/ContextMenu.mjs.map +1 -1
  173. package/dist/es/components/Dialog/components/Prompt.mjs +5 -5
  174. package/dist/es/components/Dialog/components/Prompt.mjs.map +1 -1
  175. package/dist/es/components/Dialog/components/Viewer.mjs +5 -5
  176. package/dist/es/components/Dialog/components/Viewer.mjs.map +1 -1
  177. package/dist/es/components/Dialog/hooks/usePopoverPosition.mjs +9 -1
  178. package/dist/es/components/Dialog/hooks/usePopoverPosition.mjs.map +1 -1
  179. package/dist/es/components/Dialog/service/DialogManager.mjs +22 -19
  180. package/dist/es/components/Dialog/service/DialogManager.mjs.map +1 -1
  181. package/dist/es/components/EmptyStateIndicator/EmptyStateIndicator.mjs +6 -5
  182. package/dist/es/components/EmptyStateIndicator/EmptyStateIndicator.mjs.map +1 -1
  183. package/dist/es/components/Form/Dropdown.mjs +6 -3
  184. package/dist/es/components/Form/Dropdown.mjs.map +1 -1
  185. package/dist/es/components/Form/NumericInput.mjs +6 -5
  186. package/dist/es/components/Form/NumericInput.mjs.map +1 -1
  187. package/dist/es/components/Form/SwitchField.mjs +2 -2
  188. package/dist/es/components/Form/SwitchField.mjs.map +1 -1
  189. package/dist/es/components/Form/TextInput.mjs +1 -1
  190. package/dist/es/components/Gallery/GalleryContext.mjs +2 -8
  191. package/dist/es/components/Gallery/GalleryContext.mjs.map +1 -1
  192. package/dist/es/components/Gallery/GalleryHeader.mjs +39 -12
  193. package/dist/es/components/Gallery/GalleryHeader.mjs.map +1 -1
  194. package/dist/es/components/Gallery/GalleryUI.mjs +4 -4
  195. package/dist/es/components/Gallery/GalleryUI.mjs.map +1 -1
  196. package/dist/es/components/InfiniteScrollPaginator/InfiniteScrollPaginator.mjs +16 -14
  197. package/dist/es/components/InfiniteScrollPaginator/InfiniteScrollPaginator.mjs.map +1 -1
  198. package/dist/es/components/InfiniteScrollPaginator/InfiniteScrollWithComponents.mjs +43 -0
  199. package/dist/es/components/InfiniteScrollPaginator/InfiniteScrollWithComponents.mjs.map +1 -0
  200. package/dist/es/components/InfiniteScrollPaginator/hooks/useCursorPaginator.mjs +1 -1
  201. package/dist/es/components/InfiniteScrollPaginator/hooks/useCursorPaginator.mjs.map +1 -1
  202. package/dist/es/components/LoadMore/LoadMoreButton.mjs +3 -3
  203. package/dist/es/components/LoadMore/LoadMoreButton.mjs.map +1 -1
  204. package/dist/es/components/Loading/AttachmentUploadedSizeIndicator.mjs +2 -11
  205. package/dist/es/components/Loading/AttachmentUploadedSizeIndicator.mjs.map +1 -1
  206. package/dist/es/components/Loading/LoadingErrorIndicator.mjs +2 -2
  207. package/dist/es/components/Loading/LoadingErrorIndicator.mjs.map +1 -1
  208. package/dist/es/components/Loading/LoadingIndicator.mjs.map +1 -1
  209. package/dist/es/components/Loading/UploadProgressIndicator.mjs.map +1 -1
  210. package/dist/es/components/Loading/progress-indicators.mjs +2 -2
  211. package/dist/es/components/Loading/progress-indicators.mjs.map +1 -1
  212. package/dist/es/components/Location/ShareLocationDialog.mjs +13 -13
  213. package/dist/es/components/Location/ShareLocationDialog.mjs.map +1 -1
  214. package/dist/es/components/Location/hooks/useLiveLocationSharingManager.mjs +1 -0
  215. package/dist/es/components/Location/hooks/useLiveLocationSharingManager.mjs.map +1 -1
  216. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecorder.mjs +4 -4
  217. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecorder.mjs.map +1 -1
  218. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecorderRecordingControls.mjs +7 -7
  219. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecorderRecordingControls.mjs.map +1 -1
  220. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecordingButtonWithNotification.mjs +4 -4
  221. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecordingButtonWithNotification.mjs.map +1 -1
  222. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecordingPlayback.mjs +2 -2
  223. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecordingPlayback.mjs.map +1 -1
  224. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.mjs +1 -1
  225. package/dist/es/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.mjs.map +1 -1
  226. package/dist/es/components/MediaRecorder/RecordingPermissionDeniedNotification.mjs +4 -4
  227. package/dist/es/components/MediaRecorder/RecordingPermissionDeniedNotification.mjs.map +1 -1
  228. package/dist/es/components/MediaRecorder/classes/AmplitudeRecorder.mjs +32 -26
  229. package/dist/es/components/MediaRecorder/classes/AmplitudeRecorder.mjs.map +1 -1
  230. package/dist/es/components/MediaRecorder/classes/BrowserPermission.mjs +5 -4
  231. package/dist/es/components/MediaRecorder/classes/BrowserPermission.mjs.map +1 -1
  232. package/dist/es/components/MediaRecorder/classes/MediaRecorderController.mjs +195 -181
  233. package/dist/es/components/MediaRecorder/classes/MediaRecorderController.mjs.map +1 -1
  234. package/dist/es/components/MediaRecorder/hooks/useMediaRecorder.mjs +7 -11
  235. package/dist/es/components/MediaRecorder/hooks/useMediaRecorder.mjs.map +1 -1
  236. package/dist/es/components/MediaRecorder/observable/BehaviorSubject.mjs +1 -0
  237. package/dist/es/components/MediaRecorder/observable/BehaviorSubject.mjs.map +1 -1
  238. package/dist/es/components/MediaRecorder/observable/Observable.mjs +2 -1
  239. package/dist/es/components/MediaRecorder/observable/Observable.mjs.map +1 -1
  240. package/dist/es/components/MediaRecorder/observable/Subject.mjs +3 -2
  241. package/dist/es/components/MediaRecorder/observable/Subject.mjs.map +1 -1
  242. package/dist/es/components/MediaRecorder/observable/Subscription.mjs +2 -1
  243. package/dist/es/components/MediaRecorder/observable/Subscription.mjs.map +1 -1
  244. package/dist/es/components/Message/Message.mjs +13 -54
  245. package/dist/es/components/Message/Message.mjs.map +1 -1
  246. package/dist/es/components/Message/MessageAlsoSentInChannelIndicator.mjs +10 -54
  247. package/dist/es/components/Message/MessageAlsoSentInChannelIndicator.mjs.map +1 -1
  248. package/dist/es/components/Message/MessageBlocked.mjs +2 -2
  249. package/dist/es/components/Message/MessageBlocked.mjs.map +1 -1
  250. package/dist/es/components/Message/MessageDeletedBubble.mjs +2 -2
  251. package/dist/es/components/Message/MessageDeletedBubble.mjs.map +1 -1
  252. package/dist/es/components/Message/MessageEditedIndicator.mjs +8 -7
  253. package/dist/es/components/Message/MessageEditedIndicator.mjs.map +1 -1
  254. package/dist/es/components/Message/MessageRepliesCountButton.mjs +43 -9
  255. package/dist/es/components/Message/MessageRepliesCountButton.mjs.map +1 -1
  256. package/dist/es/components/Message/MessageStatus.mjs +13 -11
  257. package/dist/es/components/Message/MessageStatus.mjs.map +1 -1
  258. package/dist/es/components/Message/MessageText.mjs +4 -4
  259. package/dist/es/components/Message/MessageText.mjs.map +1 -1
  260. package/dist/es/components/Message/MessageTimestamp.mjs +4 -3
  261. package/dist/es/components/Message/MessageTimestamp.mjs.map +1 -1
  262. package/dist/es/components/Message/MessageTranslationIndicator.mjs +7 -7
  263. package/dist/es/components/Message/MessageTranslationIndicator.mjs.map +1 -1
  264. package/dist/es/components/Message/MessageUI.mjs +22 -21
  265. package/dist/es/components/Message/MessageUI.mjs.map +1 -1
  266. package/dist/es/components/Message/PinIndicator.mjs +3 -3
  267. package/dist/es/components/Message/PinIndicator.mjs.map +1 -1
  268. package/dist/es/components/Message/QuotedMessage.mjs +4 -4
  269. package/dist/es/components/Message/QuotedMessage.mjs.map +1 -1
  270. package/dist/es/components/Message/ReminderNotification.mjs +13 -12
  271. package/dist/es/components/Message/ReminderNotification.mjs.map +1 -1
  272. package/dist/es/components/Message/StreamedMessageText.mjs +5 -4
  273. package/dist/es/components/Message/StreamedMessageText.mjs.map +1 -1
  274. package/dist/es/components/Message/Timestamp.mjs +5 -5
  275. package/dist/es/components/Message/Timestamp.mjs.map +1 -1
  276. package/dist/es/components/Message/hooks/useActionHandler.mjs +8 -7
  277. package/dist/es/components/Message/hooks/useActionHandler.mjs.map +1 -1
  278. package/dist/es/components/Message/hooks/useDeleteHandler.mjs +30 -11
  279. package/dist/es/components/Message/hooks/useDeleteHandler.mjs.map +1 -1
  280. package/dist/es/components/Message/hooks/useFlagHandler.mjs +3 -3
  281. package/dist/es/components/Message/hooks/useFlagHandler.mjs.map +1 -1
  282. package/dist/es/components/Message/hooks/useMarkUnreadHandler.mjs +8 -3
  283. package/dist/es/components/Message/hooks/useMarkUnreadHandler.mjs.map +1 -1
  284. package/dist/es/components/Message/hooks/useMentionsHandler.mjs +2 -4
  285. package/dist/es/components/Message/hooks/useMentionsHandler.mjs.map +1 -1
  286. package/dist/es/components/Message/hooks/useMessageAlsoSentInChannelNavigation.mjs +72 -0
  287. package/dist/es/components/Message/hooks/useMessageAlsoSentInChannelNavigation.mjs.map +1 -0
  288. package/dist/es/components/Message/hooks/useMessageReminder.mjs +1 -1
  289. package/dist/es/components/Message/hooks/useMuteHandler.mjs +26 -9
  290. package/dist/es/components/Message/hooks/useMuteHandler.mjs.map +1 -1
  291. package/dist/es/components/Message/hooks/useOpenThreadHandler.mjs +13 -5
  292. package/dist/es/components/Message/hooks/useOpenThreadHandler.mjs.map +1 -1
  293. package/dist/es/components/Message/hooks/usePinHandler.mjs +26 -21
  294. package/dist/es/components/Message/hooks/usePinHandler.mjs.map +1 -1
  295. package/dist/es/components/Message/hooks/useReactionHandler.mjs +25 -17
  296. package/dist/es/components/Message/hooks/useReactionHandler.mjs.map +1 -1
  297. package/dist/es/components/Message/hooks/useReactionsFetcher.mjs +6 -3
  298. package/dist/es/components/Message/hooks/useReactionsFetcher.mjs.map +1 -1
  299. package/dist/es/components/Message/hooks/useRetryHandler.mjs +9 -7
  300. package/dist/es/components/Message/hooks/useRetryHandler.mjs.map +1 -1
  301. package/dist/es/components/Message/hooks/useUserRole.mjs +16 -12
  302. package/dist/es/components/Message/hooks/useUserRole.mjs.map +1 -1
  303. package/dist/es/components/Message/renderText/renderText.mjs +1 -1
  304. package/dist/es/components/Message/utils.mjs +19 -56
  305. package/dist/es/components/Message/utils.mjs.map +1 -1
  306. package/dist/es/components/MessageActions/DeleteMessageAlert.mjs +5 -5
  307. package/dist/es/components/MessageActions/DeleteMessageAlert.mjs.map +1 -1
  308. package/dist/es/components/MessageActions/DownloadSubmenu.mjs +4 -4
  309. package/dist/es/components/MessageActions/DownloadSubmenu.mjs.map +1 -1
  310. package/dist/es/components/MessageActions/MessageActions.defaults.mjs +72 -73
  311. package/dist/es/components/MessageActions/MessageActions.defaults.mjs.map +1 -1
  312. package/dist/es/components/MessageActions/MessageActions.mjs +3 -3
  313. package/dist/es/components/MessageActions/MessageActions.mjs.map +1 -1
  314. package/dist/es/components/MessageActions/RemindMeSubmenu.mjs +7 -7
  315. package/dist/es/components/MessageActions/RemindMeSubmenu.mjs.map +1 -1
  316. package/dist/es/components/MessageActions/hooks/useBaseMessageActionSetFilter.mjs +7 -4
  317. package/dist/es/components/MessageActions/hooks/useBaseMessageActionSetFilter.mjs.map +1 -1
  318. package/dist/es/components/MessageBounce/MessageBounceModal.mjs +1 -1
  319. package/dist/es/components/MessageBounce/MessageBouncePrompt.mjs +8 -8
  320. package/dist/es/components/MessageBounce/MessageBouncePrompt.mjs.map +1 -1
  321. package/dist/es/components/MessageComposer/AttachmentPreviewList/AttachmentPreviewList.mjs +2 -2
  322. package/dist/es/components/MessageComposer/AttachmentPreviewList/AudioAttachmentPreview.mjs +14 -14
  323. package/dist/es/components/MessageComposer/AttachmentPreviewList/AudioAttachmentPreview.mjs.map +1 -1
  324. package/dist/es/components/MessageComposer/AttachmentPreviewList/FileAttachmentPreview.mjs +9 -9
  325. package/dist/es/components/MessageComposer/AttachmentPreviewList/FileAttachmentPreview.mjs.map +1 -1
  326. package/dist/es/components/MessageComposer/AttachmentPreviewList/GeolocationPreview.mjs +6 -6
  327. package/dist/es/components/MessageComposer/AttachmentPreviewList/GeolocationPreview.mjs.map +1 -1
  328. package/dist/es/components/MessageComposer/AttachmentPreviewList/MediaAttachmentPreview.mjs +3 -4
  329. package/dist/es/components/MessageComposer/AttachmentPreviewList/MediaAttachmentPreview.mjs.map +1 -1
  330. package/dist/es/components/MessageComposer/AttachmentPreviewList/UnsupportedAttachmentPreview.mjs +2 -2
  331. package/dist/es/components/MessageComposer/AttachmentPreviewList/UnsupportedAttachmentPreview.mjs.map +1 -1
  332. package/dist/es/components/MessageComposer/AttachmentPreviewList/VoiceRecordingPreviewSlot.mjs +2 -2
  333. package/dist/es/components/MessageComposer/AttachmentPreviewList/utils/AttachmentPreviewRoot.mjs +2 -2
  334. package/dist/es/components/MessageComposer/AttachmentPreviewList/utils/AttachmentPreviewRoot.mjs.map +1 -1
  335. package/dist/es/components/MessageComposer/AttachmentSelector/AttachmentSelector.mjs +33 -30
  336. package/dist/es/components/MessageComposer/AttachmentSelector/AttachmentSelector.mjs.map +1 -1
  337. package/dist/es/components/MessageComposer/AttachmentSelector/CommandsMenu.mjs +26 -31
  338. package/dist/es/components/MessageComposer/AttachmentSelector/CommandsMenu.mjs.map +1 -1
  339. package/dist/es/components/MessageComposer/CommandChip.mjs +3 -3
  340. package/dist/es/components/MessageComposer/CommandChip.mjs.map +1 -1
  341. package/dist/es/components/MessageComposer/EditedMessagePreview.mjs +1 -1
  342. package/dist/es/components/MessageComposer/EditedMessagePreview.mjs.map +1 -1
  343. package/dist/es/components/MessageComposer/LinkPreviewList.mjs +3 -3
  344. package/dist/es/components/MessageComposer/MessageComposer.mjs +12 -17
  345. package/dist/es/components/MessageComposer/MessageComposer.mjs.map +1 -1
  346. package/dist/es/components/MessageComposer/MessageComposerActions.mjs +17 -13
  347. package/dist/es/components/MessageComposer/MessageComposerActions.mjs.map +1 -1
  348. package/dist/es/components/MessageComposer/MessageComposerUI.mjs +8 -8
  349. package/dist/es/components/MessageComposer/MessageComposerUI.mjs.map +1 -1
  350. package/dist/es/components/MessageComposer/QuotedMessagePreview.mjs +40 -40
  351. package/dist/es/components/MessageComposer/QuotedMessagePreview.mjs.map +1 -1
  352. package/dist/es/components/MessageComposer/RemoveAttachmentPreviewButton.mjs +2 -2
  353. package/dist/es/components/MessageComposer/RemoveAttachmentPreviewButton.mjs.map +1 -1
  354. package/dist/es/components/MessageComposer/SendButton.mjs +2 -2
  355. package/dist/es/components/MessageComposer/SendButton.mjs.map +1 -1
  356. package/dist/es/components/MessageComposer/SendToChannelCheckbox.mjs +2 -2
  357. package/dist/es/components/MessageComposer/SendToChannelCheckbox.mjs.map +1 -1
  358. package/dist/es/components/MessageComposer/StopAIGenerationButton.mjs +1 -1
  359. package/dist/es/components/MessageComposer/StopAIGenerationButton.mjs.map +1 -1
  360. package/dist/es/components/MessageComposer/WithDragAndDropUpload.mjs +9 -13
  361. package/dist/es/components/MessageComposer/WithDragAndDropUpload.mjs.map +1 -1
  362. package/dist/es/components/MessageComposer/hooks/useAttachmentManagerState.mjs +15 -2
  363. package/dist/es/components/MessageComposer/hooks/useAttachmentManagerState.mjs.map +1 -1
  364. package/dist/es/components/MessageComposer/hooks/useCooldownRemaining.mjs +2 -3
  365. package/dist/es/components/MessageComposer/hooks/useCooldownRemaining.mjs.map +1 -1
  366. package/dist/es/components/MessageComposer/hooks/useCreateMessageComposerContext.mjs +1 -3
  367. package/dist/es/components/MessageComposer/hooks/useCreateMessageComposerContext.mjs.map +1 -1
  368. package/dist/es/components/MessageComposer/hooks/useIsCooldownActive.mjs +2 -3
  369. package/dist/es/components/MessageComposer/hooks/useIsCooldownActive.mjs.map +1 -1
  370. package/dist/es/components/MessageComposer/hooks/useMessageComposerBindings.mjs +0 -4
  371. package/dist/es/components/MessageComposer/hooks/useMessageComposerBindings.mjs.map +1 -1
  372. package/dist/es/components/MessageComposer/hooks/useMessageComposerCommands.mjs +4 -4
  373. package/dist/es/components/MessageComposer/hooks/useMessageComposerCommands.mjs.map +1 -1
  374. package/dist/es/components/MessageComposer/hooks/useMessageComposerController.mjs +8 -34
  375. package/dist/es/components/MessageComposer/hooks/useMessageComposerController.mjs.map +1 -1
  376. package/dist/es/components/MessageComposer/hooks/useMessageComposerHasSendableData.mjs.map +1 -1
  377. package/dist/es/components/MessageComposer/hooks/useMessageComposerSubmitFn.mjs +16 -0
  378. package/dist/es/components/MessageComposer/hooks/useMessageComposerSubmitFn.mjs.map +1 -0
  379. package/dist/es/components/MessageComposer/hooks/usePasteHandler.mjs +1 -1
  380. package/dist/es/components/MessageComposer/hooks/utils.mjs.map +1 -1
  381. package/dist/es/components/MessageComposer/icons.mjs +2 -2
  382. package/dist/es/components/MessageComposer/icons.mjs.map +1 -1
  383. package/dist/es/components/MessageComposer/preEditSnapshot.mjs +1 -7
  384. package/dist/es/components/MessageComposer/preEditSnapshot.mjs.map +1 -1
  385. package/dist/es/components/MessageList/FloatingDateSeparator.mjs +7 -7
  386. package/dist/es/components/MessageList/FloatingDateSeparator.mjs.map +1 -1
  387. package/dist/es/components/MessageList/MessageList.mjs +168 -213
  388. package/dist/es/components/MessageList/MessageList.mjs.map +1 -1
  389. package/dist/es/components/MessageList/NewMessageNotification.mjs +5 -1
  390. package/dist/es/components/MessageList/NewMessageNotification.mjs.map +1 -1
  391. package/dist/es/components/MessageList/ScrollToLatestMessageButton.mjs +27 -22
  392. package/dist/es/components/MessageList/ScrollToLatestMessageButton.mjs.map +1 -1
  393. package/dist/es/components/MessageList/UnreadMessagesNotification.mjs +25 -9
  394. package/dist/es/components/MessageList/UnreadMessagesNotification.mjs.map +1 -1
  395. package/dist/es/components/MessageList/UnreadMessagesSeparator.mjs +18 -7
  396. package/dist/es/components/MessageList/UnreadMessagesSeparator.mjs.map +1 -1
  397. package/dist/es/components/MessageList/VirtualizedMessageList.mjs +186 -167
  398. package/dist/es/components/MessageList/VirtualizedMessageList.mjs.map +1 -1
  399. package/dist/es/components/MessageList/VirtualizedMessageListComponents.mjs +12 -12
  400. package/dist/es/components/MessageList/VirtualizedMessageListComponents.mjs.map +1 -1
  401. package/dist/es/components/MessageList/hooks/MessageList/useEnrichedMessages.mjs +6 -7
  402. package/dist/es/components/MessageList/hooks/MessageList/useEnrichedMessages.mjs.map +1 -1
  403. package/dist/es/components/MessageList/hooks/MessageList/useFloatingDateSeparatorMessageList.mjs +6 -10
  404. package/dist/es/components/MessageList/hooks/MessageList/useFloatingDateSeparatorMessageList.mjs.map +1 -1
  405. package/dist/es/components/MessageList/hooks/MessageList/useMessageListElements.mjs +18 -10
  406. package/dist/es/components/MessageList/hooks/MessageList/useMessageListElements.mjs.map +1 -1
  407. package/dist/es/components/MessageList/hooks/MessageList/useMessageListScrollManager.mjs +6 -4
  408. package/dist/es/components/MessageList/hooks/MessageList/useMessageListScrollManager.mjs.map +1 -1
  409. package/dist/es/components/MessageList/hooks/MessageList/useScrollLocationLogic.mjs +27 -202
  410. package/dist/es/components/MessageList/hooks/MessageList/useScrollLocationLogic.mjs.map +1 -1
  411. package/dist/es/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.mjs +10 -5
  412. package/dist/es/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.mjs.map +1 -1
  413. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useFloatingDateSeparator.mjs +6 -5
  414. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useFloatingDateSeparator.mjs.map +1 -1
  415. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useGiphyPreview.mjs +4 -4
  416. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useGiphyPreview.mjs.map +1 -1
  417. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useNewMessageNotification.mjs +5 -1
  418. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useNewMessageNotification.mjs.map +1 -1
  419. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.mjs +14 -9
  420. package/dist/es/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.mjs.map +1 -1
  421. package/dist/es/components/MessageList/hooks/useCanPaginateReplies.mjs +47 -0
  422. package/dist/es/components/MessageList/hooks/useCanPaginateReplies.mjs.map +1 -0
  423. package/dist/es/components/MessageList/hooks/useLastDeliveredData.mjs +6 -38
  424. package/dist/es/components/MessageList/hooks/useLastDeliveredData.mjs.map +1 -1
  425. package/dist/es/components/MessageList/hooks/useLastReadData.mjs +6 -23
  426. package/dist/es/components/MessageList/hooks/useLastReadData.mjs.map +1 -1
  427. package/dist/es/components/MessageList/hooks/useMarkRead.mjs +78 -48
  428. package/dist/es/components/MessageList/hooks/useMarkRead.mjs.map +1 -1
  429. package/dist/es/components/MessageList/hooks/useReceiptsByMessageId.mjs +71 -0
  430. package/dist/es/components/MessageList/hooks/useReceiptsByMessageId.mjs.map +1 -0
  431. package/dist/es/components/MessageList/hooks/useThreadHead.mjs +26 -0
  432. package/dist/es/components/MessageList/hooks/useThreadHead.mjs.map +1 -0
  433. package/dist/es/components/MessageList/messageSourceKey.mjs +37 -0
  434. package/dist/es/components/MessageList/messageSourceKey.mjs.map +1 -0
  435. package/dist/es/components/MessageList/renderMessages.mjs +11 -11
  436. package/dist/es/components/MessageList/renderMessages.mjs.map +1 -1
  437. package/dist/es/components/MessageList/utils.mjs +40 -33
  438. package/dist/es/components/MessageList/utils.mjs.map +1 -1
  439. package/dist/es/components/Modal/GlobalModal.mjs +2 -2
  440. package/dist/es/components/Notifications/Notification.mjs +10 -9
  441. package/dist/es/components/Notifications/Notification.mjs.map +1 -1
  442. package/dist/es/components/Notifications/NotificationList.mjs +5 -19
  443. package/dist/es/components/Notifications/NotificationList.mjs.map +1 -1
  444. package/dist/es/components/Notifications/hooks/useNotificationApi.mjs +69 -62
  445. package/dist/es/components/Notifications/hooks/useNotificationApi.mjs.map +1 -1
  446. package/dist/es/components/Notifications/hooks/useNotificationTarget.mjs +8 -12
  447. package/dist/es/components/Notifications/hooks/useNotificationTarget.mjs.map +1 -1
  448. package/dist/es/components/Notifications/hooks/useNotifications.mjs +1 -1
  449. package/dist/es/components/Notifications/hooks/useSystemNotifications.mjs +1 -1
  450. package/dist/es/components/Notifications/notificationTarget.mjs +17 -2
  451. package/dist/es/components/Notifications/notificationTarget.mjs.map +1 -1
  452. package/dist/es/components/Poll/Poll.mjs +1 -1
  453. package/dist/es/components/Poll/PollActions/AddCommentPrompt.mjs +8 -8
  454. package/dist/es/components/Poll/PollActions/AddCommentPrompt.mjs.map +1 -1
  455. package/dist/es/components/Poll/PollActions/EndPollAlert.mjs +9 -9
  456. package/dist/es/components/Poll/PollActions/EndPollAlert.mjs.map +1 -1
  457. package/dist/es/components/Poll/PollActions/PollActions.mjs +20 -14
  458. package/dist/es/components/Poll/PollActions/PollActions.mjs.map +1 -1
  459. package/dist/es/components/Poll/PollActions/PollAnswerList.mjs +8 -8
  460. package/dist/es/components/Poll/PollActions/PollAnswerList.mjs.map +1 -1
  461. package/dist/es/components/Poll/PollActions/PollOptionsFullList.mjs +4 -4
  462. package/dist/es/components/Poll/PollActions/PollOptionsFullList.mjs.map +1 -1
  463. package/dist/es/components/Poll/PollActions/PollQuestion.mjs +1 -1
  464. package/dist/es/components/Poll/PollActions/PollQuestion.mjs.map +1 -1
  465. package/dist/es/components/Poll/PollActions/PollResults/PollOptionWithVotes.mjs +7 -5
  466. package/dist/es/components/Poll/PollActions/PollResults/PollOptionWithVotes.mjs.map +1 -1
  467. package/dist/es/components/Poll/PollActions/PollResults/PollOptionWithVotesHeader.mjs +8 -4
  468. package/dist/es/components/Poll/PollActions/PollResults/PollOptionWithVotesHeader.mjs.map +1 -1
  469. package/dist/es/components/Poll/PollActions/PollResults/PollOptionWithVotesList.mjs +1 -1
  470. package/dist/es/components/Poll/PollActions/PollResults/PollOptionWithVotesList.mjs.map +1 -1
  471. package/dist/es/components/Poll/PollActions/PollResults/PollResults.mjs +11 -7
  472. package/dist/es/components/Poll/PollActions/PollResults/PollResults.mjs.map +1 -1
  473. package/dist/es/components/Poll/PollActions/SuggestPollOptionPrompt.mjs +15 -12
  474. package/dist/es/components/Poll/PollActions/SuggestPollOptionPrompt.mjs.map +1 -1
  475. package/dist/es/components/Poll/PollContent.mjs +2 -2
  476. package/dist/es/components/Poll/PollCreationDialog/MultipleAnswersField.mjs +13 -11
  477. package/dist/es/components/Poll/PollCreationDialog/MultipleAnswersField.mjs.map +1 -1
  478. package/dist/es/components/Poll/PollCreationDialog/NameField.mjs +6 -5
  479. package/dist/es/components/Poll/PollCreationDialog/NameField.mjs.map +1 -1
  480. package/dist/es/components/Poll/PollCreationDialog/OptionFieldSet.mjs +14 -13
  481. package/dist/es/components/Poll/PollCreationDialog/OptionFieldSet.mjs.map +1 -1
  482. package/dist/es/components/Poll/PollCreationDialog/PollCreationDialog.mjs +11 -12
  483. package/dist/es/components/Poll/PollCreationDialog/PollCreationDialog.mjs.map +1 -1
  484. package/dist/es/components/Poll/PollCreationDialog/PollCreationDialogControls.mjs +11 -20
  485. package/dist/es/components/Poll/PollCreationDialog/PollCreationDialogControls.mjs.map +1 -1
  486. package/dist/es/components/Poll/PollCreationDialog/PollOptionReorderHandle.mjs +5 -5
  487. package/dist/es/components/Poll/PollCreationDialog/PollOptionReorderHandle.mjs.map +1 -1
  488. package/dist/es/components/Poll/PollHeader.mjs +10 -6
  489. package/dist/es/components/Poll/PollHeader.mjs.map +1 -1
  490. package/dist/es/components/Poll/PollOptionList.mjs +8 -4
  491. package/dist/es/components/Poll/PollOptionList.mjs.map +1 -1
  492. package/dist/es/components/Poll/PollOptionSelector.mjs +13 -7
  493. package/dist/es/components/Poll/PollOptionSelector.mjs.map +1 -1
  494. package/dist/es/components/Poll/PollVote.mjs +6 -5
  495. package/dist/es/components/Poll/PollVote.mjs.map +1 -1
  496. package/dist/es/components/Poll/hooks/useManagePollVotesRealtime.mjs.map +1 -1
  497. package/dist/es/components/Poll/hooks/usePollAnswerPagination.mjs +5 -5
  498. package/dist/es/components/Poll/hooks/usePollAnswerPagination.mjs.map +1 -1
  499. package/dist/es/components/Poll/hooks/usePollOptionVotesPagination.mjs +6 -5
  500. package/dist/es/components/Poll/hooks/usePollOptionVotesPagination.mjs.map +1 -1
  501. package/dist/es/components/ReactFileUtilities/UploadButton.mjs +5 -5
  502. package/dist/es/components/ReactFileUtilities/UploadButton.mjs.map +1 -1
  503. package/dist/es/components/Reactions/MessageReactions.mjs +7 -7
  504. package/dist/es/components/Reactions/MessageReactions.mjs.map +1 -1
  505. package/dist/es/components/Reactions/MessageReactionsDetail.mjs +19 -12
  506. package/dist/es/components/Reactions/MessageReactionsDetail.mjs.map +1 -1
  507. package/dist/es/components/Reactions/ReactionSelector.mjs +15 -21
  508. package/dist/es/components/Reactions/ReactionSelector.mjs.map +1 -1
  509. package/dist/es/components/Reactions/ReactionSelectorWithButton.mjs +4 -4
  510. package/dist/es/components/Reactions/ReactionSelectorWithButton.mjs.map +1 -1
  511. package/dist/es/components/Reactions/hooks/useFetchReactions.mjs +3 -3
  512. package/dist/es/components/Reactions/hooks/useFetchReactions.mjs.map +1 -1
  513. package/dist/es/components/Reactions/hooks/useProcessReactions.mjs +5 -4
  514. package/dist/es/components/Reactions/hooks/useProcessReactions.mjs.map +1 -1
  515. package/dist/es/components/Search/Search.mjs +1 -1
  516. package/dist/es/components/Search/SearchBar/SearchBar.mjs +8 -7
  517. package/dist/es/components/Search/SearchBar/SearchBar.mjs.map +1 -1
  518. package/dist/es/components/Search/SearchContext.mjs +2 -3
  519. package/dist/es/components/Search/SearchContext.mjs.map +1 -1
  520. package/dist/es/components/Search/SearchResults/SearchResultItem.mjs +56 -39
  521. package/dist/es/components/Search/SearchResults/SearchResultItem.mjs.map +1 -1
  522. package/dist/es/components/Search/SearchResults/SearchResults.mjs +4 -4
  523. package/dist/es/components/Search/SearchResults/SearchResults.mjs.map +1 -1
  524. package/dist/es/components/Search/SearchResults/SearchResultsHeader.mjs +6 -5
  525. package/dist/es/components/Search/SearchResults/SearchResultsHeader.mjs.map +1 -1
  526. package/dist/es/components/Search/SearchResults/SearchResultsPresearch.mjs +1 -1
  527. package/dist/es/components/Search/SearchResults/SearchResultsPresearch.mjs.map +1 -1
  528. package/dist/es/components/Search/SearchResults/SearchSourceResultList.mjs +1 -1
  529. package/dist/es/components/Search/SearchResults/SearchSourceResultListFooter.mjs +2 -2
  530. package/dist/es/components/Search/SearchResults/SearchSourceResultListFooter.mjs.map +1 -1
  531. package/dist/es/components/Search/SearchResults/SearchSourceResults.mjs +1 -1
  532. package/dist/es/components/Search/SearchResults/SearchSourceResultsEmpty.mjs +1 -1
  533. package/dist/es/components/Search/SearchResults/SearchSourceResultsEmpty.mjs.map +1 -1
  534. package/dist/es/components/Search/SearchResults/SearchSourceResultsLoadingIndicator.mjs +1 -1
  535. package/dist/es/components/Search/SearchResults/SearchSourceResultsLoadingIndicator.mjs.map +1 -1
  536. package/dist/es/components/Search/SearchSourceResultsContext.mjs +2 -3
  537. package/dist/es/components/Search/SearchSourceResultsContext.mjs.map +1 -1
  538. package/dist/es/components/SummarizedMessagePreview/SummarizedMessagePreview.mjs +1 -1
  539. package/dist/es/components/SummarizedMessagePreview/SummarizedMessagePreview.mjs.map +1 -1
  540. package/dist/es/components/SummarizedMessagePreview/hooks/useLatestMessagePreview.mjs +44 -19
  541. package/dist/es/components/SummarizedMessagePreview/hooks/useLatestMessagePreview.mjs.map +1 -1
  542. package/dist/es/components/TextareaComposer/SuggestionList/CommandItem.mjs +1 -1
  543. package/dist/es/components/TextareaComposer/SuggestionList/CommandItem.mjs.map +1 -1
  544. package/dist/es/components/TextareaComposer/SuggestionList/MentionItem/BroadcastMentionItem.mjs +2 -2
  545. package/dist/es/components/TextareaComposer/SuggestionList/MentionItem/BroadcastMentionItem.mjs.map +1 -1
  546. package/dist/es/components/TextareaComposer/SuggestionList/MentionItem/RoleItem.mjs +2 -2
  547. package/dist/es/components/TextareaComposer/SuggestionList/MentionItem/RoleItem.mjs.map +1 -1
  548. package/dist/es/components/TextareaComposer/SuggestionList/MentionItem/UserGroupItem.mjs.map +1 -1
  549. package/dist/es/components/TextareaComposer/SuggestionList/SuggestionList.mjs +11 -11
  550. package/dist/es/components/TextareaComposer/SuggestionList/SuggestionList.mjs.map +1 -1
  551. package/dist/es/components/TextareaComposer/SuggestionList/SuggestionListItem.mjs +1 -1
  552. package/dist/es/components/TextareaComposer/TextareaComposer.mjs +13 -11
  553. package/dist/es/components/TextareaComposer/TextareaComposer.mjs.map +1 -1
  554. package/dist/es/components/TextareaComposer/hooks/useTextareaPlaceholder.mjs +12 -11
  555. package/dist/es/components/TextareaComposer/hooks/useTextareaPlaceholder.mjs.map +1 -1
  556. package/dist/es/components/Thread/Thread.mjs +89 -92
  557. package/dist/es/components/Thread/Thread.mjs.map +1 -1
  558. package/dist/es/components/Thread/ThreadHead.mjs +5 -4
  559. package/dist/es/components/Thread/ThreadHead.mjs.map +1 -1
  560. package/dist/es/components/Thread/ThreadHeader.mjs +31 -41
  561. package/dist/es/components/Thread/ThreadHeader.mjs.map +1 -1
  562. package/dist/es/components/Thread/ThreadStart.mjs +11 -10
  563. package/dist/es/components/Thread/ThreadStart.mjs.map +1 -1
  564. package/dist/es/components/Threads/ThreadContext.mjs +1 -5
  565. package/dist/es/components/Threads/ThreadContext.mjs.map +1 -1
  566. package/dist/es/components/Threads/ThreadList/ThreadList.mjs +19 -27
  567. package/dist/es/components/Threads/ThreadList/ThreadList.mjs.map +1 -1
  568. package/dist/es/components/Threads/ThreadList/ThreadListEmptyPlaceholder.mjs +3 -3
  569. package/dist/es/components/Threads/ThreadList/ThreadListEmptyPlaceholder.mjs.map +1 -1
  570. package/dist/es/components/Threads/ThreadList/ThreadListHeader.mjs +4 -4
  571. package/dist/es/components/Threads/ThreadList/ThreadListHeader.mjs.map +1 -1
  572. package/dist/es/components/Threads/ThreadList/ThreadListItemUI.mjs +30 -30
  573. package/dist/es/components/Threads/ThreadList/ThreadListItemUI.mjs.map +1 -1
  574. package/dist/es/components/Threads/ThreadList/ThreadListLoadingIndicator.mjs +1 -1
  575. package/dist/es/components/Threads/ThreadList/ThreadListUnseenThreadsBanner.mjs +7 -3
  576. package/dist/es/components/Threads/ThreadList/ThreadListUnseenThreadsBanner.mjs.map +1 -1
  577. package/dist/es/components/Threads/ThreadList/useThreadHighlighting.mjs +47 -0
  578. package/dist/es/components/Threads/ThreadList/useThreadHighlighting.mjs.map +1 -0
  579. package/dist/es/components/Threads/ThreadList/utils.a11y.mjs +13 -8
  580. package/dist/es/components/Threads/ThreadList/utils.a11y.mjs.map +1 -1
  581. package/dist/es/components/Threads/hooks/useCloseThread.mjs +30 -0
  582. package/dist/es/components/Threads/hooks/useCloseThread.mjs.map +1 -0
  583. package/dist/es/components/TypingIndicator/TypingIndicator.mjs +23 -17
  584. package/dist/es/components/TypingIndicator/TypingIndicator.mjs.map +1 -1
  585. package/dist/es/components/TypingIndicator/TypingIndicatorHeader.mjs +15 -11
  586. package/dist/es/components/TypingIndicator/TypingIndicatorHeader.mjs.map +1 -1
  587. package/dist/es/components/TypingIndicator/hooks/useDebouncedTypingActive.mjs.map +1 -1
  588. package/dist/es/components/TypingIndicator/utils/getTypingStatusMessage.mjs +7 -3
  589. package/dist/es/components/TypingIndicator/utils/getTypingStatusMessage.mjs.map +1 -1
  590. package/dist/es/components/VideoPlayer/VideoThumbnail.mjs +2 -2
  591. package/dist/es/components/VideoPlayer/VideoThumbnail.mjs.map +1 -1
  592. package/dist/es/context/AttachmentContext.mjs +16 -0
  593. package/dist/es/context/AttachmentContext.mjs.map +1 -0
  594. package/dist/es/context/ChannelInstanceContext.mjs +17 -0
  595. package/dist/es/context/ChannelInstanceContext.mjs.map +1 -0
  596. package/dist/es/context/ChannelListContext.mjs +3 -6
  597. package/dist/es/context/ChannelListContext.mjs.map +1 -1
  598. package/dist/es/context/ChatContext.mjs +2 -8
  599. package/dist/es/context/ChatContext.mjs.map +1 -1
  600. package/dist/es/context/ComponentContext.mjs +1 -1
  601. package/dist/es/context/ComponentContext.mjs.map +1 -1
  602. package/dist/es/context/DialogManagerContext.mjs +2 -2
  603. package/dist/es/context/DialogManagerContext.mjs.map +1 -1
  604. package/dist/es/context/MessageBounceContext.mjs +12 -14
  605. package/dist/es/context/MessageBounceContext.mjs.map +1 -1
  606. package/dist/es/context/MessageComposerContext.mjs +8 -6
  607. package/dist/es/context/MessageComposerContext.mjs.map +1 -1
  608. package/dist/es/context/MessageComposerControllerContext.mjs +19 -0
  609. package/dist/es/context/MessageComposerControllerContext.mjs.map +1 -0
  610. package/dist/es/context/MessageContext.mjs +2 -5
  611. package/dist/es/context/MessageContext.mjs.map +1 -1
  612. package/dist/es/context/MessageListContext.mjs +2 -8
  613. package/dist/es/context/MessageListContext.mjs.map +1 -1
  614. package/dist/es/context/MessageTranslationViewContext.mjs +3 -6
  615. package/dist/es/context/MessageTranslationViewContext.mjs.map +1 -1
  616. package/dist/es/context/ModalContext.mjs +6 -8
  617. package/dist/es/context/ModalContext.mjs.map +1 -1
  618. package/dist/es/context/PollContext.mjs +2 -3
  619. package/dist/es/context/PollContext.mjs.map +1 -1
  620. package/dist/es/context/TranslationContext.mjs +8 -21
  621. package/dist/es/context/TranslationContext.mjs.map +1 -1
  622. package/dist/es/context/VirtualizedMessageListContext.mjs +2 -1
  623. package/dist/es/context/VirtualizedMessageListContext.mjs.map +1 -1
  624. package/dist/es/context/WithComponents.mjs +3 -3
  625. package/dist/es/context/WithComponents.mjs.map +1 -1
  626. package/dist/es/context/WorkspaceNavigationContext.mjs +45 -0
  627. package/dist/es/context/WorkspaceNavigationContext.mjs.map +1 -0
  628. package/dist/es/context/requireContext.mjs +17 -0
  629. package/dist/es/context/requireContext.mjs.map +1 -0
  630. package/dist/es/context/useChannel.mjs +14 -0
  631. package/dist/es/context/useChannel.mjs.map +1 -0
  632. package/dist/es/context/useComponentContextIcons.mjs +8 -13
  633. package/dist/es/context/useComponentContextIcons.mjs.map +1 -1
  634. package/dist/es/hooks/useIsDmChannel.mjs +30 -0
  635. package/dist/es/hooks/useIsDmChannel.mjs.map +1 -0
  636. package/dist/es/hooks/useMessagePaginator.mjs +14 -0
  637. package/dist/es/hooks/useMessagePaginator.mjs.map +1 -0
  638. package/dist/es/i18n/Streami18n.mjs +38 -521
  639. package/dist/es/i18n/Streami18n.mjs.map +1 -1
  640. package/dist/es/i18n/TranslationBuilder/index.mjs +3 -0
  641. package/dist/es/i18n/TranslationBuilder/notifications/NotificationTranslationTopic.mjs +22 -24
  642. package/dist/es/i18n/TranslationBuilder/notifications/NotificationTranslationTopic.mjs.map +1 -1
  643. package/dist/es/i18n/TranslationBuilder/notifications/translators.mjs +20 -31
  644. package/dist/es/i18n/TranslationBuilder/notifications/translators.mjs.map +1 -1
  645. package/dist/es/i18n/TranslationBuilder/notifications/translatorsByNotificationType.mjs +42 -15
  646. package/dist/es/i18n/TranslationBuilder/notifications/translatorsByNotificationType.mjs.map +1 -1
  647. package/dist/es/i18n/runtimeDefaults.mjs +41 -0
  648. package/dist/es/i18n/runtimeDefaults.mjs.map +1 -0
  649. package/dist/es/i18n/useStreami18n.mjs +41 -0
  650. package/dist/es/i18n/useStreami18n.mjs.map +1 -0
  651. package/dist/es/i18n/utils.mjs +7 -125
  652. package/dist/es/i18n/utils.mjs.map +1 -1
  653. package/dist/es/index.mjs +175 -180
  654. package/dist/es/plugins/ChannelDetail/AvatarWithChannelDetail.mjs +4 -4
  655. package/dist/es/plugins/ChannelDetail/AvatarWithChannelDetail.mjs.map +1 -1
  656. package/dist/es/plugins/ChannelDetail/ChannelDetail.mjs +1 -1
  657. package/dist/es/plugins/ChannelDetail/ChannelDetail.mjs.map +1 -1
  658. package/dist/es/plugins/ChannelDetail/ChannelDetailEmptyList.mjs.map +1 -1
  659. package/dist/es/plugins/ChannelDetail/ChannelDetailSearchInput.mjs +3 -3
  660. package/dist/es/plugins/ChannelDetail/ChannelDetailSearchInput.mjs.map +1 -1
  661. package/dist/es/plugins/ChannelDetail/SectionNavigator/SectionNavigatorHeader.mjs +4 -5
  662. package/dist/es/plugins/ChannelDetail/SectionNavigator/SectionNavigatorHeader.mjs.map +1 -1
  663. package/dist/es/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesEmptyList.mjs +4 -4
  664. package/dist/es/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesEmptyList.mjs.map +1 -1
  665. package/dist/es/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesView.mjs +9 -8
  666. package/dist/es/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesView.mjs.map +1 -1
  667. package/dist/es/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesView.utils.mjs +7 -6
  668. package/dist/es/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesView.utils.mjs.map +1 -1
  669. package/dist/es/plugins/ChannelDetail/Views/ChannelFilesView/useChannelFilesSearch.mjs +1 -1
  670. package/dist/es/plugins/ChannelDetail/Views/ChannelManagementView/ChannelManagementActions.defaults.mjs +44 -44
  671. package/dist/es/plugins/ChannelDetail/Views/ChannelManagementView/ChannelManagementActions.defaults.mjs.map +1 -1
  672. package/dist/es/plugins/ChannelDetail/Views/ChannelManagementView/ChannelManagementView.mjs +25 -25
  673. package/dist/es/plugins/ChannelDetail/Views/ChannelManagementView/ChannelManagementView.mjs.map +1 -1
  674. package/dist/es/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaEmptyList.mjs +4 -4
  675. package/dist/es/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaEmptyList.mjs.map +1 -1
  676. package/dist/es/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaView.mjs +13 -13
  677. package/dist/es/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaView.mjs.map +1 -1
  678. package/dist/es/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaView.utils.mjs +8 -3
  679. package/dist/es/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaView.utils.mjs.map +1 -1
  680. package/dist/es/plugins/ChannelDetail/Views/ChannelMediaView/useChannelMediaSearch.mjs +1 -1
  681. package/dist/es/plugins/ChannelDetail/Views/ChannelMemberDetailView/ChannelMemberActions.defaults.mjs +44 -41
  682. package/dist/es/plugins/ChannelDetail/Views/ChannelMemberDetailView/ChannelMemberActions.defaults.mjs.map +1 -1
  683. package/dist/es/plugins/ChannelDetail/Views/ChannelMemberDetailView/ChannelMemberDetail.mjs +6 -5
  684. package/dist/es/plugins/ChannelDetail/Views/ChannelMemberDetailView/ChannelMemberDetail.mjs.map +1 -1
  685. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersAddView.mjs +19 -11
  686. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersAddView.mjs.map +1 -1
  687. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersBrowseView.mjs +12 -11
  688. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersBrowseView.mjs.map +1 -1
  689. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersHeaderActions.defaults.mjs +8 -8
  690. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersHeaderActions.defaults.mjs.map +1 -1
  691. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersView.mjs +8 -4
  692. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersView.mjs.map +1 -1
  693. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersView.utils.mjs +1 -1
  694. package/dist/es/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersView.utils.mjs.map +1 -1
  695. package/dist/es/plugins/ChannelDetail/Views/PinnedMessagesView/PinnedMessagesEmptyList.mjs +3 -3
  696. package/dist/es/plugins/ChannelDetail/Views/PinnedMessagesView/PinnedMessagesEmptyList.mjs.map +1 -1
  697. package/dist/es/plugins/ChannelDetail/Views/PinnedMessagesView/PinnedMessagesView.mjs +24 -21
  698. package/dist/es/plugins/ChannelDetail/Views/PinnedMessagesView/PinnedMessagesView.mjs.map +1 -1
  699. package/dist/es/plugins/ChannelDetail/Views/PinnedMessagesView/usePinnedMessagesCount.mjs +9 -17
  700. package/dist/es/plugins/ChannelDetail/Views/PinnedMessagesView/usePinnedMessagesCount.mjs.map +1 -1
  701. package/dist/es/plugins/ChannelDetail/Views/PinnedMessagesView/usePinnedMessagesSearch.mjs +1 -1
  702. package/dist/es/plugins/Emojis/EmojiPicker.mjs +9 -8
  703. package/dist/es/plugins/Emojis/EmojiPicker.mjs.map +1 -1
  704. package/dist/es/plugins/Emojis/middleware/textComposerEmojiMiddleware.mjs +2 -1
  705. package/dist/es/plugins/Emojis/middleware/textComposerEmojiMiddleware.mjs.map +1 -1
  706. package/dist/es/plugins/SlotGeometry/SlotGeometry.mjs +141 -0
  707. package/dist/es/plugins/SlotGeometry/SlotGeometry.mjs.map +1 -0
  708. package/dist/es/plugins/SlotLayout/ChannelSlot.mjs +30 -0
  709. package/dist/es/plugins/SlotLayout/ChannelSlot.mjs.map +1 -0
  710. package/dist/es/{components/ChatView → plugins/SlotLayout}/ChatView.a11y.utility.mjs +1 -1
  711. package/dist/es/plugins/SlotLayout/ChatView.a11y.utility.mjs.map +1 -0
  712. package/dist/es/plugins/SlotLayout/ChatView.mjs +277 -0
  713. package/dist/es/plugins/SlotLayout/ChatView.mjs.map +1 -0
  714. package/dist/es/plugins/SlotLayout/ChatViewNavigationContext.mjs +239 -0
  715. package/dist/es/plugins/SlotLayout/ChatViewNavigationContext.mjs.map +1 -0
  716. package/dist/es/plugins/SlotLayout/ThreadListSlot.mjs +42 -0
  717. package/dist/es/plugins/SlotLayout/ThreadListSlot.mjs.map +1 -0
  718. package/dist/es/plugins/SlotLayout/ThreadSlot.mjs +34 -0
  719. package/dist/es/plugins/SlotLayout/ThreadSlot.mjs.map +1 -0
  720. package/dist/es/plugins/SlotLayout/hooks/useLayoutViewState.mjs +26 -0
  721. package/dist/es/plugins/SlotLayout/hooks/useLayoutViewState.mjs.map +1 -0
  722. package/dist/es/plugins/SlotLayout/hooks/useSlotEntity.mjs +167 -0
  723. package/dist/es/plugins/SlotLayout/hooks/useSlotEntity.mjs.map +1 -0
  724. package/dist/es/plugins/SlotLayout/layout/Slot.mjs +46 -0
  725. package/dist/es/plugins/SlotLayout/layout/Slot.mjs.map +1 -0
  726. package/dist/es/plugins/SlotLayout/layout/WorkspaceLayout.mjs +23 -0
  727. package/dist/es/plugins/SlotLayout/layout/WorkspaceLayout.mjs.map +1 -0
  728. package/dist/es/plugins/SlotLayout/layoutController/LayoutController.mjs +376 -0
  729. package/dist/es/plugins/SlotLayout/layoutController/LayoutController.mjs.map +1 -0
  730. package/dist/es/plugins/SlotLayout/layoutController/serialization.mjs +80 -0
  731. package/dist/es/plugins/SlotLayout/layoutController/serialization.mjs.map +1 -0
  732. package/dist/es/plugins/SlotLayout/slotBinding.mjs +15 -0
  733. package/dist/es/plugins/SlotLayout/slotBinding.mjs.map +1 -0
  734. package/dist/es/plugins/SlotLayout/slotRegistry.mjs +64 -0
  735. package/dist/es/plugins/SlotLayout/slotRegistry.mjs.map +1 -0
  736. package/dist/es/plugins/SlotLayout/workspaceNavigationAdapter.mjs +130 -0
  737. package/dist/es/plugins/SlotLayout/workspaceNavigationAdapter.mjs.map +1 -0
  738. package/dist/es/slot-geometry.mjs +2 -0
  739. package/dist/es/slot-layout.mjs +14 -0
  740. package/dist/es/store/hooks/useStateStore.mjs.map +1 -1
  741. package/dist/es/utils/getChannel.mjs +5 -2
  742. package/dist/es/utils/getChannel.mjs.map +1 -1
  743. package/dist/es/utils/useStableCallback.mjs +1 -1
  744. package/dist/es/utils/useStableCallback.mjs.map +1 -1
  745. package/dist/types/a11y/accessibleLabel.d.ts.map +1 -1
  746. package/dist/types/components/AIStateIndicator/AIStateIndicator.d.ts.map +1 -1
  747. package/dist/types/components/AIStateIndicator/hooks/useAIState.d.ts +3 -8
  748. package/dist/types/components/AIStateIndicator/hooks/useAIState.d.ts.map +1 -1
  749. package/dist/types/components/Accessibility/NotificationAnnouncer.d.ts +1 -2
  750. package/dist/types/components/Accessibility/NotificationAnnouncer.d.ts.map +1 -1
  751. package/dist/types/components/Accessibility/hooks/useIncomingMessageAnnouncements.d.ts.map +1 -1
  752. package/dist/types/components/Accessibility/hooks/useInteractionAnnouncements.d.ts.map +1 -1
  753. package/dist/types/components/Accessibility/useAriaLiveAnnouncer.d.ts +4 -0
  754. package/dist/types/components/Accessibility/useAriaLiveAnnouncer.d.ts.map +1 -1
  755. package/dist/types/components/Attachment/Attachment.d.ts +13 -2
  756. package/dist/types/components/Attachment/Attachment.d.ts.map +1 -1
  757. package/dist/types/components/Attachment/AttachmentActions.d.ts.map +1 -1
  758. package/dist/types/components/Attachment/AttachmentContainer.d.ts +2 -2
  759. package/dist/types/components/Attachment/AttachmentContainer.d.ts.map +1 -1
  760. package/dist/types/components/Attachment/Audio.d.ts.map +1 -1
  761. package/dist/types/components/Attachment/FileAttachment.d.ts.map +1 -1
  762. package/dist/types/components/Attachment/Geolocation.d.ts +3 -3
  763. package/dist/types/components/Attachment/Geolocation.d.ts.map +1 -1
  764. package/dist/types/components/Attachment/Giphy.d.ts.map +1 -1
  765. package/dist/types/components/Attachment/LinkPreview/Card.d.ts.map +1 -1
  766. package/dist/types/components/Attachment/LinkPreview/CardAudio.d.ts +1 -1
  767. package/dist/types/components/Attachment/LinkPreview/CardAudio.d.ts.map +1 -1
  768. package/dist/types/components/Attachment/ModalGallery.d.ts.map +1 -1
  769. package/dist/types/components/Attachment/UnsupportedAttachment.d.ts.map +1 -1
  770. package/dist/types/components/Attachment/VideoAttachment.d.ts.map +1 -1
  771. package/dist/types/components/Attachment/VisibilityDisclaimer.d.ts.map +1 -1
  772. package/dist/types/components/Attachment/VoiceRecording.d.ts.map +1 -1
  773. package/dist/types/components/Attachment/components/DownloadButton.d.ts.map +1 -1
  774. package/dist/types/components/Attachment/components/index.d.ts +1 -1
  775. package/dist/types/components/Attachment/components/index.d.ts.map +1 -1
  776. package/dist/types/components/Attachment/hooks/useAttachmentUploadState.d.ts +0 -28
  777. package/dist/types/components/Attachment/hooks/useAttachmentUploadState.d.ts.map +1 -1
  778. package/dist/types/components/Attachment/index.d.ts +1 -1
  779. package/dist/types/components/Attachment/index.d.ts.map +1 -1
  780. package/dist/types/components/Attachment/utils.d.ts +2 -2
  781. package/dist/types/components/Attachment/utils.d.ts.map +1 -1
  782. package/dist/types/components/AudioPlayback/AudioPlaybackArbiter.d.ts +37 -0
  783. package/dist/types/components/AudioPlayback/AudioPlaybackArbiter.d.ts.map +1 -0
  784. package/dist/types/components/AudioPlayback/AudioPlayer.d.ts +1 -1
  785. package/dist/types/components/AudioPlayback/AudioPlayer.d.ts.map +1 -1
  786. package/dist/types/components/AudioPlayback/AudioPlayerPool.d.ts +19 -31
  787. package/dist/types/components/AudioPlayback/AudioPlayerPool.d.ts.map +1 -1
  788. package/dist/types/components/AudioPlayback/WithAudioPlayback.d.ts +17 -2
  789. package/dist/types/components/AudioPlayback/WithAudioPlayback.d.ts.map +1 -1
  790. package/dist/types/components/AudioPlayback/components/ProgressBar.d.ts.map +1 -1
  791. package/dist/types/components/AudioPlayback/components/WaveProgressBar.d.ts.map +1 -1
  792. package/dist/types/components/AudioPlayback/components/progressBarA11y.d.ts +2 -2
  793. package/dist/types/components/AudioPlayback/components/progressBarA11y.d.ts.map +1 -1
  794. package/dist/types/components/AudioPlayback/index.d.ts.map +1 -1
  795. package/dist/types/components/AudioPlayback/plugins/AudioPlayerNotificationsPlugin.d.ts +2 -2
  796. package/dist/types/components/AudioPlayback/plugins/AudioPlayerNotificationsPlugin.d.ts.map +1 -1
  797. package/dist/types/components/Avatar/Avatar.d.ts +1 -5
  798. package/dist/types/components/Avatar/Avatar.d.ts.map +1 -1
  799. package/dist/types/components/Badge/Badge.d.ts.map +1 -1
  800. package/dist/types/components/Badge/MediaBadge.d.ts.map +1 -1
  801. package/dist/types/components/BaseImage/ImagePlaceholder.d.ts.map +1 -1
  802. package/dist/types/components/Button/PlayButton.d.ts.map +1 -1
  803. package/dist/types/components/Button/WorkspaceNavigationButtons.d.ts +11 -0
  804. package/dist/types/components/Button/WorkspaceNavigationButtons.d.ts.map +1 -0
  805. package/dist/types/components/Button/index.d.ts +1 -0
  806. package/dist/types/components/Button/index.d.ts.map +1 -1
  807. package/dist/types/components/Channel/Channel.d.ts +9 -57
  808. package/dist/types/components/Channel/Channel.d.ts.map +1 -1
  809. package/dist/types/components/Channel/hooks/useChannelCapabilities.d.ts +4 -0
  810. package/dist/types/components/Channel/hooks/useChannelCapabilities.d.ts.map +1 -0
  811. package/dist/types/components/Channel/index.d.ts +1 -2
  812. package/dist/types/components/Channel/index.d.ts.map +1 -1
  813. package/dist/types/components/ChannelHeader/ChannelHeader.d.ts +12 -0
  814. package/dist/types/components/ChannelHeader/ChannelHeader.d.ts.map +1 -1
  815. package/dist/types/components/ChannelHeader/hooks/useChannelHasMembersOnline.d.ts +8 -0
  816. package/dist/types/components/ChannelHeader/hooks/useChannelHasMembersOnline.d.ts.map +1 -1
  817. package/dist/types/components/ChannelHeader/hooks/useChannelHeaderOnlineStatus.d.ts +7 -8
  818. package/dist/types/components/ChannelHeader/hooks/useChannelHeaderOnlineStatus.d.ts.map +1 -1
  819. package/dist/types/components/ChannelList/ChannelList.d.ts +11 -78
  820. package/dist/types/components/ChannelList/ChannelList.d.ts.map +1 -1
  821. package/dist/types/components/ChannelList/ChannelListHeader.d.ts.map +1 -1
  822. package/dist/types/components/ChannelList/ChannelLists.d.ts +10 -0
  823. package/dist/types/components/ChannelList/ChannelLists.d.ts.map +1 -0
  824. package/dist/types/components/ChannelList/ChannelNavigation.d.ts +9 -0
  825. package/dist/types/components/ChannelList/ChannelNavigation.d.ts.map +1 -0
  826. package/dist/types/components/ChannelList/hooks/index.d.ts +1 -2
  827. package/dist/types/components/ChannelList/hooks/index.d.ts.map +1 -1
  828. package/dist/types/components/ChannelList/hooks/useChannelMembersState.d.ts.map +1 -1
  829. package/dist/types/components/ChannelList/hooks/useChannelMembershipState.d.ts.map +1 -1
  830. package/dist/types/components/ChannelList/hooks/useChannelPaginatorState.d.ts +18 -0
  831. package/dist/types/components/ChannelList/hooks/useChannelPaginatorState.d.ts.map +1 -0
  832. package/dist/types/components/ChannelList/hooks/useSelectedChannelState.d.ts +3 -3
  833. package/dist/types/components/ChannelList/hooks/useSelectedChannelState.d.ts.map +1 -1
  834. package/dist/types/components/ChannelList/index.d.ts +3 -2
  835. package/dist/types/components/ChannelList/index.d.ts.map +1 -1
  836. package/dist/types/components/ChannelListItem/ChannelListItem.d.ts +9 -18
  837. package/dist/types/components/ChannelListItem/ChannelListItem.d.ts.map +1 -1
  838. package/dist/types/components/ChannelListItem/ChannelListItemActionButtons.defaults.d.ts.map +1 -1
  839. package/dist/types/components/ChannelListItem/ChannelListItemTimestamp.d.ts +3 -3
  840. package/dist/types/components/ChannelListItem/ChannelListItemTimestamp.d.ts.map +1 -1
  841. package/dist/types/components/ChannelListItem/ChannelListItemUI.d.ts.map +1 -1
  842. package/dist/types/components/ChannelListItem/hooks/useChannelDisplayName.d.ts +1 -1
  843. package/dist/types/components/ChannelListItem/hooks/useChannelDisplayName.d.ts.map +1 -1
  844. package/dist/types/components/ChannelListItem/hooks/useIsChannelMuted.d.ts +8 -5
  845. package/dist/types/components/ChannelListItem/hooks/useIsChannelMuted.d.ts.map +1 -1
  846. package/dist/types/components/ChannelListItem/hooks/useMessageDeliveryStatus.d.ts.map +1 -1
  847. package/dist/types/components/ChannelListItem/utils.a11y.d.ts +14 -5
  848. package/dist/types/components/ChannelListItem/utils.a11y.d.ts.map +1 -1
  849. package/dist/types/components/ChannelListItem/utils.d.ts +1 -1
  850. package/dist/types/components/ChannelListItem/utils.d.ts.map +1 -1
  851. package/dist/types/components/Chat/Chat.d.ts +1 -4
  852. package/dist/types/components/Chat/Chat.d.ts.map +1 -1
  853. package/dist/types/components/Chat/hooks/useChat.d.ts +4 -16
  854. package/dist/types/components/Chat/hooks/useChat.d.ts.map +1 -1
  855. package/dist/types/components/Chat/hooks/useCreateChatClient.d.ts +2 -2
  856. package/dist/types/components/Chat/hooks/useCreateChatClient.d.ts.map +1 -1
  857. package/dist/types/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  858. package/dist/types/components/Chat/hooks/useNetworkConnectionState.d.ts +34 -0
  859. package/dist/types/components/Chat/hooks/useNetworkConnectionState.d.ts.map +1 -0
  860. package/dist/types/components/Chat/hooks/useReportLostConnectionSystemNotification.d.ts +26 -2
  861. package/dist/types/components/Chat/hooks/useReportLostConnectionSystemNotification.d.ts.map +1 -1
  862. package/dist/types/components/Chat/hooks/useWSConnectionState.d.ts +22 -0
  863. package/dist/types/components/Chat/hooks/useWSConnectionState.d.ts.map +1 -0
  864. package/dist/types/components/Chat/index.d.ts +2 -0
  865. package/dist/types/components/Chat/index.d.ts.map +1 -1
  866. package/dist/types/components/Dialog/components/ContextMenu.d.ts +0 -4
  867. package/dist/types/components/Dialog/components/ContextMenu.d.ts.map +1 -1
  868. package/dist/types/components/Dialog/hooks/usePopoverPosition.d.ts +2 -2
  869. package/dist/types/components/Dialog/hooks/usePopoverPosition.d.ts.map +1 -1
  870. package/dist/types/components/Dialog/service/DialogManager.d.ts +1 -1
  871. package/dist/types/components/Dialog/service/DialogManager.d.ts.map +1 -1
  872. package/dist/types/components/EmptyStateIndicator/EmptyStateIndicator.d.ts.map +1 -1
  873. package/dist/types/components/Form/Dropdown.d.ts +4 -1
  874. package/dist/types/components/Form/Dropdown.d.ts.map +1 -1
  875. package/dist/types/components/Form/NumericInput.d.ts.map +1 -1
  876. package/dist/types/components/Gallery/GalleryContext.d.ts +5 -0
  877. package/dist/types/components/Gallery/GalleryContext.d.ts.map +1 -1
  878. package/dist/types/components/Gallery/GalleryHeader.d.ts.map +1 -1
  879. package/dist/types/components/Gallery/GalleryUI.d.ts.map +1 -1
  880. package/dist/types/components/Icons/index.d.ts +1 -1
  881. package/dist/types/components/Icons/index.d.ts.map +1 -1
  882. package/dist/types/components/Icons/slots.d.ts +18 -7
  883. package/dist/types/components/Icons/slots.d.ts.map +1 -1
  884. package/dist/types/components/InfiniteScrollPaginator/InfiniteScrollPaginator.d.ts +8 -2
  885. package/dist/types/components/InfiniteScrollPaginator/InfiniteScrollPaginator.d.ts.map +1 -1
  886. package/dist/types/components/InfiniteScrollPaginator/InfiniteScrollWithComponents.d.ts +43 -0
  887. package/dist/types/components/InfiniteScrollPaginator/InfiniteScrollWithComponents.d.ts.map +1 -0
  888. package/dist/types/components/InfiniteScrollPaginator/hooks/useCursorPaginator.d.ts +1 -1
  889. package/dist/types/components/InfiniteScrollPaginator/hooks/useCursorPaginator.d.ts.map +1 -1
  890. package/dist/types/components/LoadMore/LoadMoreButton.d.ts.map +1 -1
  891. package/dist/types/components/Loading/AttachmentUploadedSizeIndicator.d.ts +3 -0
  892. package/dist/types/components/Loading/AttachmentUploadedSizeIndicator.d.ts.map +1 -1
  893. package/dist/types/components/Loading/LoadingErrorIndicator.d.ts.map +1 -1
  894. package/dist/types/components/Loading/LoadingIndicator.d.ts +2 -3
  895. package/dist/types/components/Loading/LoadingIndicator.d.ts.map +1 -1
  896. package/dist/types/components/Loading/UploadProgressIndicator.d.ts +2 -2
  897. package/dist/types/components/Loading/index.d.ts +1 -1
  898. package/dist/types/components/Loading/index.d.ts.map +1 -1
  899. package/dist/types/components/Loading/progress-indicators.d.ts.map +1 -1
  900. package/dist/types/components/Location/ShareLocationDialog.d.ts.map +1 -1
  901. package/dist/types/components/Location/hooks/useLiveLocationSharingManager.d.ts.map +1 -1
  902. package/dist/types/components/MediaRecorder/AudioRecorder/AudioRecorderRecordingControls.d.ts.map +1 -1
  903. package/dist/types/components/MediaRecorder/AudioRecorder/AudioRecordingButtonWithNotification.d.ts.map +1 -1
  904. package/dist/types/components/MediaRecorder/AudioRecorder/AudioRecordingPlayback.d.ts.map +1 -1
  905. package/dist/types/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.d.ts.map +1 -1
  906. package/dist/types/components/MediaRecorder/RecordingPermissionDeniedNotification.d.ts.map +1 -1
  907. package/dist/types/components/MediaRecorder/classes/MediaRecorderController.d.ts.map +1 -1
  908. package/dist/types/components/MediaRecorder/hooks/useMediaRecorder.d.ts +2 -2
  909. package/dist/types/components/MediaRecorder/hooks/useMediaRecorder.d.ts.map +1 -1
  910. package/dist/types/components/Message/Message.d.ts.map +1 -1
  911. package/dist/types/components/Message/MessageAlsoSentInChannelIndicator.d.ts +11 -1
  912. package/dist/types/components/Message/MessageAlsoSentInChannelIndicator.d.ts.map +1 -1
  913. package/dist/types/components/Message/MessageDeletedBubble.d.ts.map +1 -1
  914. package/dist/types/components/Message/MessageEditedIndicator.d.ts.map +1 -1
  915. package/dist/types/components/Message/MessageRepliesCountButton.d.ts.map +1 -1
  916. package/dist/types/components/Message/MessageStatus.d.ts.map +1 -1
  917. package/dist/types/components/Message/MessageText.d.ts.map +1 -1
  918. package/dist/types/components/Message/MessageTimestamp.d.ts.map +1 -1
  919. package/dist/types/components/Message/MessageTranslationIndicator.d.ts.map +1 -1
  920. package/dist/types/components/Message/MessageUI.d.ts.map +1 -1
  921. package/dist/types/components/Message/ReminderNotification.d.ts.map +1 -1
  922. package/dist/types/components/Message/StreamedMessageText.d.ts.map +1 -1
  923. package/dist/types/components/Message/Timestamp.d.ts.map +1 -1
  924. package/dist/types/components/Message/hooks/index.d.ts +1 -0
  925. package/dist/types/components/Message/hooks/index.d.ts.map +1 -1
  926. package/dist/types/components/Message/hooks/useActionHandler.d.ts +1 -1
  927. package/dist/types/components/Message/hooks/useActionHandler.d.ts.map +1 -1
  928. package/dist/types/components/Message/hooks/useDeleteHandler.d.ts +6 -2
  929. package/dist/types/components/Message/hooks/useDeleteHandler.d.ts.map +1 -1
  930. package/dist/types/components/Message/hooks/useMarkUnreadHandler.d.ts +6 -1
  931. package/dist/types/components/Message/hooks/useMarkUnreadHandler.d.ts.map +1 -1
  932. package/dist/types/components/Message/hooks/useMentionsHandler.d.ts.map +1 -1
  933. package/dist/types/components/Message/hooks/useMessageAlsoSentInChannelNavigation.d.ts +22 -0
  934. package/dist/types/components/Message/hooks/useMessageAlsoSentInChannelNavigation.d.ts.map +1 -0
  935. package/dist/types/components/Message/hooks/useMuteHandler.d.ts +7 -2
  936. package/dist/types/components/Message/hooks/useMuteHandler.d.ts.map +1 -1
  937. package/dist/types/components/Message/hooks/useOpenThreadHandler.d.ts +1 -0
  938. package/dist/types/components/Message/hooks/useOpenThreadHandler.d.ts.map +1 -1
  939. package/dist/types/components/Message/hooks/usePinHandler.d.ts +23 -2
  940. package/dist/types/components/Message/hooks/usePinHandler.d.ts.map +1 -1
  941. package/dist/types/components/Message/hooks/useReactionHandler.d.ts +1 -1
  942. package/dist/types/components/Message/hooks/useReactionHandler.d.ts.map +1 -1
  943. package/dist/types/components/Message/hooks/useReactionsFetcher.d.ts +2 -2
  944. package/dist/types/components/Message/hooks/useReactionsFetcher.d.ts.map +1 -1
  945. package/dist/types/components/Message/hooks/useRetryHandler.d.ts +3 -2
  946. package/dist/types/components/Message/hooks/useRetryHandler.d.ts.map +1 -1
  947. package/dist/types/components/Message/hooks/useUserRole.d.ts +1 -0
  948. package/dist/types/components/Message/hooks/useUserRole.d.ts.map +1 -1
  949. package/dist/types/components/Message/types.d.ts +11 -20
  950. package/dist/types/components/Message/types.d.ts.map +1 -1
  951. package/dist/types/components/Message/utils.d.ts +7 -38
  952. package/dist/types/components/Message/utils.d.ts.map +1 -1
  953. package/dist/types/components/MessageActions/DeleteMessageAlert.d.ts.map +1 -1
  954. package/dist/types/components/MessageActions/DownloadSubmenu.d.ts.map +1 -1
  955. package/dist/types/components/MessageActions/MessageActions.d.ts +6 -2
  956. package/dist/types/components/MessageActions/MessageActions.d.ts.map +1 -1
  957. package/dist/types/components/MessageActions/MessageActions.defaults.d.ts.map +1 -1
  958. package/dist/types/components/MessageActions/RemindMeSubmenu.d.ts.map +1 -1
  959. package/dist/types/components/MessageActions/hooks/useBaseMessageActionSetFilter.d.ts.map +1 -1
  960. package/dist/types/components/MessageBounce/MessageBouncePrompt.d.ts.map +1 -1
  961. package/dist/types/components/MessageComposer/AttachmentPreviewList/AudioAttachmentPreview.d.ts.map +1 -1
  962. package/dist/types/components/MessageComposer/AttachmentPreviewList/FileAttachmentPreview.d.ts.map +1 -1
  963. package/dist/types/components/MessageComposer/AttachmentPreviewList/GeolocationPreview.d.ts.map +1 -1
  964. package/dist/types/components/MessageComposer/AttachmentPreviewList/MediaAttachmentPreview.d.ts.map +1 -1
  965. package/dist/types/components/MessageComposer/AttachmentPreviewList/UnsupportedAttachmentPreview.d.ts.map +1 -1
  966. package/dist/types/components/MessageComposer/AttachmentPreviewList/index.d.ts +1 -1
  967. package/dist/types/components/MessageComposer/AttachmentPreviewList/index.d.ts.map +1 -1
  968. package/dist/types/components/MessageComposer/AttachmentPreviewList/utils/AttachmentPreviewRoot.d.ts.map +1 -1
  969. package/dist/types/components/MessageComposer/AttachmentSelector/AttachmentSelector.d.ts.map +1 -1
  970. package/dist/types/components/MessageComposer/AttachmentSelector/CommandsMenu.d.ts +5 -5
  971. package/dist/types/components/MessageComposer/AttachmentSelector/CommandsMenu.d.ts.map +1 -1
  972. package/dist/types/components/MessageComposer/CommandChip.d.ts.map +1 -1
  973. package/dist/types/components/MessageComposer/EditMessageForm.d.ts +1 -0
  974. package/dist/types/components/MessageComposer/EditMessageForm.d.ts.map +1 -0
  975. package/dist/types/components/MessageComposer/MessageComposer.d.ts +1 -17
  976. package/dist/types/components/MessageComposer/MessageComposer.d.ts.map +1 -1
  977. package/dist/types/components/MessageComposer/MessageComposerActions.d.ts.map +1 -1
  978. package/dist/types/components/MessageComposer/MessageComposerUI.d.ts.map +1 -1
  979. package/dist/types/components/MessageComposer/QuotedMessagePreview.d.ts +3 -3
  980. package/dist/types/components/MessageComposer/QuotedMessagePreview.d.ts.map +1 -1
  981. package/dist/types/components/MessageComposer/RemoveAttachmentPreviewButton.d.ts.map +1 -1
  982. package/dist/types/components/MessageComposer/SendButton.d.ts.map +1 -1
  983. package/dist/types/components/MessageComposer/SendToChannelCheckbox.d.ts.map +1 -1
  984. package/dist/types/components/MessageComposer/StopAIGenerationButton.d.ts.map +1 -1
  985. package/dist/types/components/MessageComposer/WithDragAndDropUpload.d.ts +2 -5
  986. package/dist/types/components/MessageComposer/WithDragAndDropUpload.d.ts.map +1 -1
  987. package/dist/types/components/MessageComposer/hooks/index.d.ts +1 -0
  988. package/dist/types/components/MessageComposer/hooks/index.d.ts.map +1 -1
  989. package/dist/types/components/MessageComposer/hooks/useAttachmentManagerState.d.ts +5 -1
  990. package/dist/types/components/MessageComposer/hooks/useAttachmentManagerState.d.ts.map +1 -1
  991. package/dist/types/components/MessageComposer/hooks/useAttachmentsForPreview.d.ts +1 -2
  992. package/dist/types/components/MessageComposer/hooks/useAttachmentsForPreview.d.ts.map +1 -1
  993. package/dist/types/components/MessageComposer/hooks/useCreateMessageComposerContext.d.ts.map +1 -1
  994. package/dist/types/components/MessageComposer/hooks/useMessageComposerBindings.d.ts +0 -1
  995. package/dist/types/components/MessageComposer/hooks/useMessageComposerBindings.d.ts.map +1 -1
  996. package/dist/types/components/MessageComposer/hooks/useMessageComposerCommands.d.ts +2 -2
  997. package/dist/types/components/MessageComposer/hooks/useMessageComposerCommands.d.ts.map +1 -1
  998. package/dist/types/components/MessageComposer/hooks/useMessageComposerController.d.ts +1 -1
  999. package/dist/types/components/MessageComposer/hooks/useMessageComposerController.d.ts.map +1 -1
  1000. package/dist/types/components/MessageComposer/hooks/useMessageComposerHasSendableData.d.ts.map +1 -1
  1001. package/dist/types/components/MessageComposer/hooks/useMessageComposerSubmitFn.d.ts +7 -0
  1002. package/dist/types/components/MessageComposer/hooks/useMessageComposerSubmitFn.d.ts.map +1 -0
  1003. package/dist/types/components/MessageComposer/index.d.ts +2 -1
  1004. package/dist/types/components/MessageComposer/index.d.ts.map +1 -1
  1005. package/dist/types/components/MessageList/FloatingDateSeparator.d.ts +1 -1
  1006. package/dist/types/components/MessageList/FloatingDateSeparator.d.ts.map +1 -1
  1007. package/dist/types/components/MessageList/MessageList.d.ts +24 -25
  1008. package/dist/types/components/MessageList/MessageList.d.ts.map +1 -1
  1009. package/dist/types/components/MessageList/NewMessageNotification.d.ts.map +1 -1
  1010. package/dist/types/components/MessageList/ScrollToLatestMessageButton.d.ts +0 -1
  1011. package/dist/types/components/MessageList/ScrollToLatestMessageButton.d.ts.map +1 -1
  1012. package/dist/types/components/MessageList/UnreadMessagesNotification.d.ts +1 -4
  1013. package/dist/types/components/MessageList/UnreadMessagesNotification.d.ts.map +1 -1
  1014. package/dist/types/components/MessageList/UnreadMessagesSeparator.d.ts.map +1 -1
  1015. package/dist/types/components/MessageList/VirtualizedMessageList.d.ts +23 -42
  1016. package/dist/types/components/MessageList/VirtualizedMessageList.d.ts.map +1 -1
  1017. package/dist/types/components/MessageList/VirtualizedMessageListComponents.d.ts.map +1 -1
  1018. package/dist/types/components/MessageList/hooks/MessageList/useEnrichedMessages.d.ts +3 -3
  1019. package/dist/types/components/MessageList/hooks/MessageList/useEnrichedMessages.d.ts.map +1 -1
  1020. package/dist/types/components/MessageList/hooks/MessageList/useFloatingDateSeparatorMessageList.d.ts +2 -2
  1021. package/dist/types/components/MessageList/hooks/MessageList/useFloatingDateSeparatorMessageList.d.ts.map +1 -1
  1022. package/dist/types/components/MessageList/hooks/MessageList/useMessageListElements.d.ts +1 -3
  1023. package/dist/types/components/MessageList/hooks/MessageList/useMessageListElements.d.ts.map +1 -1
  1024. package/dist/types/components/MessageList/hooks/MessageList/useMessageListScrollManager.d.ts +1 -0
  1025. package/dist/types/components/MessageList/hooks/MessageList/useMessageListScrollManager.d.ts.map +1 -1
  1026. package/dist/types/components/MessageList/hooks/MessageList/useScrollLocationLogic.d.ts +6 -25
  1027. package/dist/types/components/MessageList/hooks/MessageList/useScrollLocationLogic.d.ts.map +1 -1
  1028. package/dist/types/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.d.ts +1 -1
  1029. package/dist/types/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.d.ts.map +1 -1
  1030. package/dist/types/components/MessageList/hooks/VirtualizedMessageList/useFloatingDateSeparator.d.ts +2 -2
  1031. package/dist/types/components/MessageList/hooks/VirtualizedMessageList/useFloatingDateSeparator.d.ts.map +1 -1
  1032. package/dist/types/components/MessageList/hooks/VirtualizedMessageList/useNewMessageNotification.d.ts +1 -1
  1033. package/dist/types/components/MessageList/hooks/VirtualizedMessageList/useNewMessageNotification.d.ts.map +1 -1
  1034. package/dist/types/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.d.ts +1 -5
  1035. package/dist/types/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.d.ts.map +1 -1
  1036. package/dist/types/components/MessageList/hooks/useCanPaginateReplies.d.ts +32 -0
  1037. package/dist/types/components/MessageList/hooks/useCanPaginateReplies.d.ts.map +1 -0
  1038. package/dist/types/components/MessageList/hooks/useLastDeliveredData.d.ts +1 -0
  1039. package/dist/types/components/MessageList/hooks/useLastDeliveredData.d.ts.map +1 -1
  1040. package/dist/types/components/MessageList/hooks/useLastReadData.d.ts +1 -0
  1041. package/dist/types/components/MessageList/hooks/useLastReadData.d.ts.map +1 -1
  1042. package/dist/types/components/MessageList/hooks/useMarkRead.d.ts +5 -9
  1043. package/dist/types/components/MessageList/hooks/useMarkRead.d.ts.map +1 -1
  1044. package/dist/types/components/MessageList/hooks/useReceiptsByMessageId.d.ts +12 -0
  1045. package/dist/types/components/MessageList/hooks/useReceiptsByMessageId.d.ts.map +1 -0
  1046. package/dist/types/components/MessageList/hooks/useThreadHead.d.ts +9 -0
  1047. package/dist/types/components/MessageList/hooks/useThreadHead.d.ts.map +1 -0
  1048. package/dist/types/components/MessageList/messageSourceKey.d.ts +14 -0
  1049. package/dist/types/components/MessageList/messageSourceKey.d.ts.map +1 -0
  1050. package/dist/types/components/MessageList/renderMessages.d.ts +11 -9
  1051. package/dist/types/components/MessageList/renderMessages.d.ts.map +1 -1
  1052. package/dist/types/components/MessageList/utils.d.ts +22 -13
  1053. package/dist/types/components/MessageList/utils.d.ts.map +1 -1
  1054. package/dist/types/components/Modal/CloseButtonOnModalOverlay.d.ts.map +1 -1
  1055. package/dist/types/components/Notifications/Notification.d.ts.map +1 -1
  1056. package/dist/types/components/Notifications/NotificationList.d.ts.map +1 -1
  1057. package/dist/types/components/Notifications/hooks/useNotificationApi.d.ts +3 -0
  1058. package/dist/types/components/Notifications/hooks/useNotificationApi.d.ts.map +1 -1
  1059. package/dist/types/components/Notifications/hooks/useNotificationTarget.d.ts.map +1 -1
  1060. package/dist/types/components/Notifications/notificationTarget.d.ts.map +1 -1
  1061. package/dist/types/components/Poll/PollActions/AddCommentPrompt.d.ts.map +1 -1
  1062. package/dist/types/components/Poll/PollActions/EndPollAlert.d.ts.map +1 -1
  1063. package/dist/types/components/Poll/PollActions/PollActions.d.ts.map +1 -1
  1064. package/dist/types/components/Poll/PollActions/PollAnswerList.d.ts.map +1 -1
  1065. package/dist/types/components/Poll/PollActions/PollOptionsFullList.d.ts.map +1 -1
  1066. package/dist/types/components/Poll/PollActions/PollQuestion.d.ts.map +1 -1
  1067. package/dist/types/components/Poll/PollActions/PollResults/PollOptionWithVotes.d.ts +2 -2
  1068. package/dist/types/components/Poll/PollActions/PollResults/PollOptionWithVotes.d.ts.map +1 -1
  1069. package/dist/types/components/Poll/PollActions/PollResults/PollOptionWithVotesHeader.d.ts +2 -2
  1070. package/dist/types/components/Poll/PollActions/PollResults/PollOptionWithVotesHeader.d.ts.map +1 -1
  1071. package/dist/types/components/Poll/PollActions/PollResults/PollOptionWithVotesList.d.ts +2 -2
  1072. package/dist/types/components/Poll/PollActions/PollResults/PollOptionWithVotesList.d.ts.map +1 -1
  1073. package/dist/types/components/Poll/PollActions/PollResults/PollResults.d.ts.map +1 -1
  1074. package/dist/types/components/Poll/PollActions/SuggestPollOptionPrompt.d.ts.map +1 -1
  1075. package/dist/types/components/Poll/PollCreationDialog/MultipleAnswersField.d.ts.map +1 -1
  1076. package/dist/types/components/Poll/PollCreationDialog/NameField.d.ts.map +1 -1
  1077. package/dist/types/components/Poll/PollCreationDialog/OptionFieldSet.d.ts.map +1 -1
  1078. package/dist/types/components/Poll/PollCreationDialog/PollCreationDialog.d.ts.map +1 -1
  1079. package/dist/types/components/Poll/PollCreationDialog/PollCreationDialogControls.d.ts.map +1 -1
  1080. package/dist/types/components/Poll/PollCreationDialog/PollOptionReorderHandle.d.ts.map +1 -1
  1081. package/dist/types/components/Poll/PollHeader.d.ts.map +1 -1
  1082. package/dist/types/components/Poll/PollOptionList.d.ts.map +1 -1
  1083. package/dist/types/components/Poll/PollOptionSelector.d.ts +2 -2
  1084. package/dist/types/components/Poll/PollOptionSelector.d.ts.map +1 -1
  1085. package/dist/types/components/Poll/PollVote.d.ts +1 -1
  1086. package/dist/types/components/Poll/PollVote.d.ts.map +1 -1
  1087. package/dist/types/components/Poll/hooks/useManagePollVotesRealtime.d.ts +2 -2
  1088. package/dist/types/components/Poll/hooks/useManagePollVotesRealtime.d.ts.map +1 -1
  1089. package/dist/types/components/Poll/hooks/usePollAnswerPagination.d.ts +2 -2
  1090. package/dist/types/components/Poll/hooks/usePollAnswerPagination.d.ts.map +1 -1
  1091. package/dist/types/components/Poll/hooks/usePollOptionVotesPagination.d.ts +2 -2
  1092. package/dist/types/components/Poll/hooks/usePollOptionVotesPagination.d.ts.map +1 -1
  1093. package/dist/types/components/Reactions/MessageReactions.d.ts.map +1 -1
  1094. package/dist/types/components/Reactions/MessageReactionsDetail.d.ts +2 -2
  1095. package/dist/types/components/Reactions/MessageReactionsDetail.d.ts.map +1 -1
  1096. package/dist/types/components/Reactions/ReactionSelector.d.ts.map +1 -1
  1097. package/dist/types/components/Reactions/ReactionSelectorWithButton.d.ts +0 -5
  1098. package/dist/types/components/Reactions/ReactionSelectorWithButton.d.ts.map +1 -1
  1099. package/dist/types/components/Reactions/hooks/useFetchReactions.d.ts +2 -2
  1100. package/dist/types/components/Reactions/hooks/useFetchReactions.d.ts.map +1 -1
  1101. package/dist/types/components/Reactions/hooks/useProcessReactions.d.ts +1 -3
  1102. package/dist/types/components/Reactions/hooks/useProcessReactions.d.ts.map +1 -1
  1103. package/dist/types/components/Search/SearchBar/SearchBar.d.ts.map +1 -1
  1104. package/dist/types/components/Search/SearchContext.d.ts.map +1 -1
  1105. package/dist/types/components/Search/SearchResults/SearchResultItem.d.ts +20 -6
  1106. package/dist/types/components/Search/SearchResults/SearchResultItem.d.ts.map +1 -1
  1107. package/dist/types/components/Search/SearchResults/SearchResultsHeader.d.ts.map +1 -1
  1108. package/dist/types/components/Search/SearchResults/SearchSourceResultsEmpty.d.ts.map +1 -1
  1109. package/dist/types/components/Search/SearchResults/SearchSourceResultsLoadingIndicator.d.ts.map +1 -1
  1110. package/dist/types/components/Search/SearchSourceResultsContext.d.ts.map +1 -1
  1111. package/dist/types/components/Search/hooks/index.d.ts +0 -1
  1112. package/dist/types/components/Search/hooks/index.d.ts.map +1 -1
  1113. package/dist/types/components/SummarizedMessagePreview/SummarizedMessagePreview.d.ts +6 -0
  1114. package/dist/types/components/SummarizedMessagePreview/SummarizedMessagePreview.d.ts.map +1 -1
  1115. package/dist/types/components/SummarizedMessagePreview/hooks/useLatestMessagePreview.d.ts.map +1 -1
  1116. package/dist/types/components/TextareaComposer/SuggestionList/CommandItem.d.ts +2 -2
  1117. package/dist/types/components/TextareaComposer/SuggestionList/CommandItem.d.ts.map +1 -1
  1118. package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/BroadcastMentionItem.d.ts.map +1 -1
  1119. package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/RoleItem.d.ts.map +1 -1
  1120. package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/UserGroupItem.d.ts.map +1 -1
  1121. package/dist/types/components/TextareaComposer/SuggestionList/SuggestionList.d.ts.map +1 -1
  1122. package/dist/types/components/TextareaComposer/TextareaComposer.d.ts.map +1 -1
  1123. package/dist/types/components/TextareaComposer/hooks/useTextareaPlaceholder.d.ts.map +1 -1
  1124. package/dist/types/components/Thread/Thread.d.ts +31 -27
  1125. package/dist/types/components/Thread/Thread.d.ts.map +1 -1
  1126. package/dist/types/components/Thread/ThreadHead.d.ts.map +1 -1
  1127. package/dist/types/components/Thread/ThreadHeader.d.ts +13 -6
  1128. package/dist/types/components/Thread/ThreadHeader.d.ts.map +1 -1
  1129. package/dist/types/components/Thread/ThreadStart.d.ts.map +1 -1
  1130. package/dist/types/components/Thread/index.d.ts +0 -1
  1131. package/dist/types/components/Thread/index.d.ts.map +1 -1
  1132. package/dist/types/components/Threads/ThreadContext.d.ts.map +1 -1
  1133. package/dist/types/components/Threads/ThreadList/ThreadList.d.ts.map +1 -1
  1134. package/dist/types/components/Threads/ThreadList/ThreadListEmptyPlaceholder.d.ts.map +1 -1
  1135. package/dist/types/components/Threads/ThreadList/ThreadListHeader.d.ts.map +1 -1
  1136. package/dist/types/components/Threads/ThreadList/ThreadListItemUI.d.ts.map +1 -1
  1137. package/dist/types/components/Threads/ThreadList/ThreadListUnseenThreadsBanner.d.ts.map +1 -1
  1138. package/dist/types/components/Threads/ThreadList/useThreadHighlighting.d.ts +15 -0
  1139. package/dist/types/components/Threads/ThreadList/useThreadHighlighting.d.ts.map +1 -0
  1140. package/dist/types/components/Threads/ThreadList/utils.a11y.d.ts.map +1 -1
  1141. package/dist/types/components/Threads/hooks/useCloseThread.d.ts +9 -0
  1142. package/dist/types/components/Threads/hooks/useCloseThread.d.ts.map +1 -0
  1143. package/dist/types/components/Threads/index.d.ts +1 -0
  1144. package/dist/types/components/Threads/index.d.ts.map +1 -1
  1145. package/dist/types/components/TypingIndicator/TypingIndicator.d.ts +4 -5
  1146. package/dist/types/components/TypingIndicator/TypingIndicator.d.ts.map +1 -1
  1147. package/dist/types/components/TypingIndicator/TypingIndicatorHeader.d.ts +1 -1
  1148. package/dist/types/components/TypingIndicator/TypingIndicatorHeader.d.ts.map +1 -1
  1149. package/dist/types/components/TypingIndicator/hooks/useDebouncedTypingActive.d.ts +2 -2
  1150. package/dist/types/components/TypingIndicator/hooks/useDebouncedTypingActive.d.ts.map +1 -1
  1151. package/dist/types/components/TypingIndicator/utils/getTypingStatusMessage.d.ts +2 -3
  1152. package/dist/types/components/TypingIndicator/utils/getTypingStatusMessage.d.ts.map +1 -1
  1153. package/dist/types/components/VideoPlayer/VideoThumbnail.d.ts.map +1 -1
  1154. package/dist/types/components/index.d.ts +0 -2
  1155. package/dist/types/components/index.d.ts.map +1 -1
  1156. package/dist/types/context/AttachmentContext.d.ts +19 -0
  1157. package/dist/types/context/AttachmentContext.d.ts.map +1 -0
  1158. package/dist/types/context/ChannelInstanceContext.d.ts +16 -0
  1159. package/dist/types/context/ChannelInstanceContext.d.ts.map +1 -0
  1160. package/dist/types/context/ChannelListContext.d.ts +9 -18
  1161. package/dist/types/context/ChannelListContext.d.ts.map +1 -1
  1162. package/dist/types/context/ChatContext.d.ts +10 -23
  1163. package/dist/types/context/ChatContext.d.ts.map +1 -1
  1164. package/dist/types/context/ComponentContext.d.ts +30 -23
  1165. package/dist/types/context/ComponentContext.d.ts.map +1 -1
  1166. package/dist/types/context/DialogManagerContext.d.ts.map +1 -1
  1167. package/dist/types/context/MessageBounceContext.d.ts +1 -1
  1168. package/dist/types/context/MessageBounceContext.d.ts.map +1 -1
  1169. package/dist/types/context/MessageComposerContext.d.ts +7 -2
  1170. package/dist/types/context/MessageComposerContext.d.ts.map +1 -1
  1171. package/dist/types/context/MessageComposerControllerContext.d.ts +13 -0
  1172. package/dist/types/context/MessageComposerControllerContext.d.ts.map +1 -0
  1173. package/dist/types/context/MessageContext.d.ts +8 -21
  1174. package/dist/types/context/MessageContext.d.ts.map +1 -1
  1175. package/dist/types/context/MessageListContext.d.ts +2 -2
  1176. package/dist/types/context/MessageListContext.d.ts.map +1 -1
  1177. package/dist/types/context/MessageTranslationViewContext.d.ts.map +1 -1
  1178. package/dist/types/context/ModalContext.d.ts +4 -0
  1179. package/dist/types/context/ModalContext.d.ts.map +1 -1
  1180. package/dist/types/context/PollContext.d.ts.map +1 -1
  1181. package/dist/types/context/TranslationContext.d.ts +21 -11
  1182. package/dist/types/context/TranslationContext.d.ts.map +1 -1
  1183. package/dist/types/context/VirtualizedMessageListContext.d.ts.map +1 -1
  1184. package/dist/types/context/WithComponents.d.ts.map +1 -1
  1185. package/dist/types/context/WorkspaceNavigationContext.d.ts +128 -0
  1186. package/dist/types/context/WorkspaceNavigationContext.d.ts.map +1 -0
  1187. package/dist/types/context/index.d.ts +6 -4
  1188. package/dist/types/context/index.d.ts.map +1 -1
  1189. package/dist/types/context/requireContext.d.ts +10 -0
  1190. package/dist/types/context/requireContext.d.ts.map +1 -0
  1191. package/dist/types/context/useChannel.d.ts +3 -0
  1192. package/dist/types/context/useChannel.d.ts.map +1 -0
  1193. package/dist/types/context/useComponentContextIcons.d.ts +4 -6
  1194. package/dist/types/context/useComponentContextIcons.d.ts.map +1 -1
  1195. package/dist/types/hooks/index.d.ts +3 -0
  1196. package/dist/types/hooks/index.d.ts.map +1 -0
  1197. package/dist/types/hooks/useIsDmChannel.d.ts +13 -0
  1198. package/dist/types/hooks/useIsDmChannel.d.ts.map +1 -0
  1199. package/dist/types/hooks/useMessagePaginator.d.ts +6 -0
  1200. package/dist/types/hooks/useMessagePaginator.d.ts.map +1 -0
  1201. package/dist/types/i18n/Streami18n.d.ts +48 -848
  1202. package/dist/types/i18n/Streami18n.d.ts.map +1 -1
  1203. package/dist/types/i18n/TranslationBuilder/index.d.ts +6 -1
  1204. package/dist/types/i18n/TranslationBuilder/index.d.ts.map +1 -1
  1205. package/dist/types/i18n/TranslationBuilder/notifications/NotificationTranslationTopic.d.ts.map +1 -1
  1206. package/dist/types/i18n/TranslationBuilder/notifications/translators.d.ts.map +1 -1
  1207. package/dist/types/i18n/TranslationBuilder/notifications/translatorsByNotificationType.d.ts +3 -1
  1208. package/dist/types/i18n/TranslationBuilder/notifications/translatorsByNotificationType.d.ts.map +1 -1
  1209. package/dist/types/i18n/index.d.ts +2 -2
  1210. package/dist/types/i18n/index.d.ts.map +1 -1
  1211. package/dist/types/i18n/keys.d.ts +583 -0
  1212. package/dist/types/i18n/keys.d.ts.map +1 -0
  1213. package/dist/types/i18n/runtimeDefaults.d.ts +37 -0
  1214. package/dist/types/i18n/runtimeDefaults.d.ts.map +1 -0
  1215. package/dist/types/i18n/types.d.ts +34 -104
  1216. package/dist/types/i18n/types.d.ts.map +1 -1
  1217. package/dist/types/i18n/useStreami18n.d.ts +19 -0
  1218. package/dist/types/i18n/useStreami18n.d.ts.map +1 -0
  1219. package/dist/types/i18n/utils.d.ts +18 -14
  1220. package/dist/types/i18n/utils.d.ts.map +1 -1
  1221. package/dist/types/plugins/ChannelDetail/AvatarWithChannelDetail.d.ts.map +1 -1
  1222. package/dist/types/plugins/ChannelDetail/ChannelDetail.d.ts.map +1 -1
  1223. package/dist/types/plugins/ChannelDetail/ChannelDetailEmptyList.d.ts.map +1 -1
  1224. package/dist/types/plugins/ChannelDetail/ChannelDetailSearchInput.d.ts.map +1 -1
  1225. package/dist/types/plugins/ChannelDetail/SectionNavigator/SectionNavigatorHeader.d.ts.map +1 -1
  1226. package/dist/types/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesEmptyList.d.ts.map +1 -1
  1227. package/dist/types/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesView.d.ts.map +1 -1
  1228. package/dist/types/plugins/ChannelDetail/Views/ChannelFilesView/ChannelFilesView.utils.d.ts.map +1 -1
  1229. package/dist/types/plugins/ChannelDetail/Views/ChannelManagementView/ChannelManagementActions.defaults.d.ts.map +1 -1
  1230. package/dist/types/plugins/ChannelDetail/Views/ChannelManagementView/ChannelManagementView.d.ts.map +1 -1
  1231. package/dist/types/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaEmptyList.d.ts.map +1 -1
  1232. package/dist/types/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaView.d.ts.map +1 -1
  1233. package/dist/types/plugins/ChannelDetail/Views/ChannelMediaView/ChannelMediaView.utils.d.ts.map +1 -1
  1234. package/dist/types/plugins/ChannelDetail/Views/ChannelMemberDetailView/ChannelMemberActions.defaults.d.ts.map +1 -1
  1235. package/dist/types/plugins/ChannelDetail/Views/ChannelMemberDetailView/ChannelMemberDetail.d.ts.map +1 -1
  1236. package/dist/types/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersAddView.d.ts.map +1 -1
  1237. package/dist/types/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersBrowseView.d.ts.map +1 -1
  1238. package/dist/types/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersHeaderActions.defaults.d.ts.map +1 -1
  1239. package/dist/types/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersView.d.ts.map +1 -1
  1240. package/dist/types/plugins/ChannelDetail/Views/ChannelMembersView/ChannelMembersView.utils.d.ts.map +1 -1
  1241. package/dist/types/plugins/ChannelDetail/Views/PinnedMessagesView/PinnedMessagesEmptyList.d.ts.map +1 -1
  1242. package/dist/types/plugins/ChannelDetail/Views/PinnedMessagesView/PinnedMessagesView.d.ts.map +1 -1
  1243. package/dist/types/plugins/ChannelDetail/Views/PinnedMessagesView/usePinnedMessagesCount.d.ts +5 -1
  1244. package/dist/types/plugins/ChannelDetail/Views/PinnedMessagesView/usePinnedMessagesCount.d.ts.map +1 -1
  1245. package/dist/types/plugins/Emojis/EmojiPicker.d.ts +0 -4
  1246. package/dist/types/plugins/Emojis/EmojiPicker.d.ts.map +1 -1
  1247. package/dist/types/plugins/SlotGeometry/SlotGeometry.d.ts +72 -0
  1248. package/dist/types/plugins/SlotGeometry/SlotGeometry.d.ts.map +1 -0
  1249. package/dist/types/plugins/SlotGeometry/index.d.ts +3 -0
  1250. package/dist/types/plugins/SlotGeometry/index.d.ts.map +1 -0
  1251. package/dist/types/plugins/SlotLayout/ChannelSlot.d.ts +24 -0
  1252. package/dist/types/plugins/SlotLayout/ChannelSlot.d.ts.map +1 -0
  1253. package/dist/types/plugins/SlotLayout/ChatView.a11y.utility.d.ts.map +1 -0
  1254. package/dist/types/plugins/SlotLayout/ChatView.d.ts +113 -0
  1255. package/dist/types/plugins/SlotLayout/ChatView.d.ts.map +1 -0
  1256. package/dist/types/plugins/SlotLayout/ChatViewNavigationContext.d.ts +111 -0
  1257. package/dist/types/plugins/SlotLayout/ChatViewNavigationContext.d.ts.map +1 -0
  1258. package/dist/types/plugins/SlotLayout/ThreadListSlot.d.ts +8 -0
  1259. package/dist/types/plugins/SlotLayout/ThreadListSlot.d.ts.map +1 -0
  1260. package/dist/types/plugins/SlotLayout/ThreadSlot.d.ts +10 -0
  1261. package/dist/types/plugins/SlotLayout/ThreadSlot.d.ts.map +1 -0
  1262. package/dist/types/plugins/SlotLayout/hooks/index.d.ts +3 -0
  1263. package/dist/types/plugins/SlotLayout/hooks/index.d.ts.map +1 -0
  1264. package/dist/types/plugins/SlotLayout/hooks/useLayoutViewState.d.ts +5 -0
  1265. package/dist/types/plugins/SlotLayout/hooks/useLayoutViewState.d.ts.map +1 -0
  1266. package/dist/types/plugins/SlotLayout/hooks/useSlotEntity.d.ts +162 -0
  1267. package/dist/types/plugins/SlotLayout/hooks/useSlotEntity.d.ts.map +1 -0
  1268. package/dist/types/plugins/SlotLayout/index.d.ts +12 -0
  1269. package/dist/types/plugins/SlotLayout/index.d.ts.map +1 -0
  1270. package/dist/types/plugins/SlotLayout/layout/Slot.d.ts +8 -0
  1271. package/dist/types/plugins/SlotLayout/layout/Slot.d.ts.map +1 -0
  1272. package/dist/types/plugins/SlotLayout/layout/WorkspaceLayout.d.ts +11 -0
  1273. package/dist/types/plugins/SlotLayout/layout/WorkspaceLayout.d.ts.map +1 -0
  1274. package/dist/types/plugins/SlotLayout/layoutController/LayoutController.d.ts +25 -0
  1275. package/dist/types/plugins/SlotLayout/layoutController/LayoutController.d.ts.map +1 -0
  1276. package/dist/types/plugins/SlotLayout/layoutController/layoutControllerTypes.d.ts +121 -0
  1277. package/dist/types/plugins/SlotLayout/layoutController/layoutControllerTypes.d.ts.map +1 -0
  1278. package/dist/types/plugins/SlotLayout/layoutController/serialization.d.ts +6 -0
  1279. package/dist/types/plugins/SlotLayout/layoutController/serialization.d.ts.map +1 -0
  1280. package/dist/types/plugins/SlotLayout/slotBinding.d.ts +85 -0
  1281. package/dist/types/plugins/SlotLayout/slotBinding.d.ts.map +1 -0
  1282. package/dist/types/plugins/SlotLayout/slotRegistry.d.ts +60 -0
  1283. package/dist/types/plugins/SlotLayout/slotRegistry.d.ts.map +1 -0
  1284. package/dist/types/plugins/SlotLayout/workspaceNavigationAdapter.d.ts +26 -0
  1285. package/dist/types/plugins/SlotLayout/workspaceNavigationAdapter.d.ts.map +1 -0
  1286. package/dist/types/store/hooks/useStateStore.d.ts +1 -1
  1287. package/dist/types/store/hooks/useStateStore.d.ts.map +1 -1
  1288. package/dist/types/types/index.d.ts +0 -1
  1289. package/dist/types/types/index.d.ts.map +1 -1
  1290. package/dist/types/types/types.d.ts +0 -10
  1291. package/dist/types/types/types.d.ts.map +1 -1
  1292. package/dist/types/utils/getChannel.d.ts +2 -2
  1293. package/dist/types/utils/getChannel.d.ts.map +1 -1
  1294. package/dist/types/utils/useStableCallback.d.ts +1 -1
  1295. package/package.json +34 -16
  1296. package/dist/cjs/NotificationList.4ce251ea.js +0 -9552
  1297. package/dist/cjs/NotificationList.4ce251ea.js.map +0 -1
  1298. package/dist/cjs/useChannelHeaderOnlineStatus.64c443f5.js +0 -961
  1299. package/dist/cjs/useChannelHeaderOnlineStatus.64c443f5.js.map +0 -1
  1300. package/dist/cjs/useInertWhenHidden.1a2a6a2b.js +0 -6573
  1301. package/dist/cjs/useInertWhenHidden.1a2a6a2b.js.map +0 -1
  1302. package/dist/es/components/Channel/channelState.mjs +0 -195
  1303. package/dist/es/components/Channel/channelState.mjs.map +0 -1
  1304. package/dist/es/components/Channel/hooks/useCreateChannelStateContext.mjs +0 -86
  1305. package/dist/es/components/Channel/hooks/useCreateChannelStateContext.mjs.map +0 -1
  1306. package/dist/es/components/Channel/hooks/useCreateTypingContext.mjs +0 -10
  1307. package/dist/es/components/Channel/hooks/useCreateTypingContext.mjs.map +0 -1
  1308. package/dist/es/components/Channel/hooks/useEditMessageHandler.mjs +0 -13
  1309. package/dist/es/components/Channel/hooks/useEditMessageHandler.mjs.map +0 -1
  1310. package/dist/es/components/Channel/hooks/useIsMounted.mjs +0 -16
  1311. package/dist/es/components/Channel/hooks/useIsMounted.mjs.map +0 -1
  1312. package/dist/es/components/Channel/hooks/useMentionsHandlers.mjs +0 -18
  1313. package/dist/es/components/Channel/hooks/useMentionsHandlers.mjs.map +0 -1
  1314. package/dist/es/components/Channel/utils.mjs +0 -156
  1315. package/dist/es/components/Channel/utils.mjs.map +0 -1
  1316. package/dist/es/components/ChannelList/ChannelListUI.mjs +0 -35
  1317. package/dist/es/components/ChannelList/ChannelListUI.mjs.map +0 -1
  1318. package/dist/es/components/ChannelList/hooks/useChannelListShape.mjs +0 -310
  1319. package/dist/es/components/ChannelList/hooks/useChannelListShape.mjs.map +0 -1
  1320. package/dist/es/components/ChannelList/hooks/useConnectionRecoveredListener.mjs +0 -19
  1321. package/dist/es/components/ChannelList/hooks/useConnectionRecoveredListener.mjs.map +0 -1
  1322. package/dist/es/components/ChannelList/hooks/usePaginatedChannels.mjs +0 -110
  1323. package/dist/es/components/ChannelList/hooks/usePaginatedChannels.mjs.map +0 -1
  1324. package/dist/es/components/ChannelList/utils.mjs +0 -86
  1325. package/dist/es/components/ChannelList/utils.mjs.map +0 -1
  1326. package/dist/es/components/Chat/hooks/useChannelsQueryState.mjs +0 -16
  1327. package/dist/es/components/Chat/hooks/useChannelsQueryState.mjs.map +0 -1
  1328. package/dist/es/components/ChatView/ChatView.a11y.utility.mjs.map +0 -1
  1329. package/dist/es/components/ChatView/ChatView.mjs +0 -224
  1330. package/dist/es/components/ChatView/ChatView.mjs.map +0 -1
  1331. package/dist/es/components/MessageComposer/hooks/useSubmitHandler.mjs +0 -98
  1332. package/dist/es/components/MessageComposer/hooks/useSubmitHandler.mjs.map +0 -1
  1333. package/dist/es/components/MessageList/hooks/useReducedMotionPreference.mjs +0 -23
  1334. package/dist/es/components/MessageList/hooks/useReducedMotionPreference.mjs.map +0 -1
  1335. package/dist/es/components/Search/hooks/useSearchFocusedMessage.mjs +0 -13
  1336. package/dist/es/components/Search/hooks/useSearchFocusedMessage.mjs.map +0 -1
  1337. package/dist/es/components/Thread/LegacyThreadContext.mjs +0 -8
  1338. package/dist/es/components/Thread/LegacyThreadContext.mjs.map +0 -1
  1339. package/dist/es/components/UtilityComponents/NullComponent.mjs +0 -6
  1340. package/dist/es/components/UtilityComponents/NullComponent.mjs.map +0 -1
  1341. package/dist/es/components/Window/Window.mjs +0 -21
  1342. package/dist/es/components/Window/Window.mjs.map +0 -1
  1343. package/dist/es/context/ChannelActionContext.mjs +0 -20
  1344. package/dist/es/context/ChannelActionContext.mjs.map +0 -1
  1345. package/dist/es/context/ChannelStateContext.mjs +0 -24
  1346. package/dist/es/context/ChannelStateContext.mjs.map +0 -1
  1347. package/dist/es/context/TypingContext.mjs +0 -20
  1348. package/dist/es/context/TypingContext.mjs.map +0 -1
  1349. package/dist/es/i18n/TranslationBuilder/TranslationBuilder.mjs +0 -86
  1350. package/dist/es/i18n/TranslationBuilder/TranslationBuilder.mjs.map +0 -1
  1351. package/dist/es/i18n/de.mjs +0 -782
  1352. package/dist/es/i18n/de.mjs.map +0 -1
  1353. package/dist/es/i18n/en.mjs +0 -779
  1354. package/dist/es/i18n/en.mjs.map +0 -1
  1355. package/dist/es/i18n/es.mjs +0 -821
  1356. package/dist/es/i18n/es.mjs.map +0 -1
  1357. package/dist/es/i18n/fr.mjs +0 -822
  1358. package/dist/es/i18n/fr.mjs.map +0 -1
  1359. package/dist/es/i18n/hi.mjs +0 -786
  1360. package/dist/es/i18n/hi.mjs.map +0 -1
  1361. package/dist/es/i18n/it.mjs +0 -821
  1362. package/dist/es/i18n/it.mjs.map +0 -1
  1363. package/dist/es/i18n/ja.mjs +0 -760
  1364. package/dist/es/i18n/ja.mjs.map +0 -1
  1365. package/dist/es/i18n/ko.mjs +0 -760
  1366. package/dist/es/i18n/ko.mjs.map +0 -1
  1367. package/dist/es/i18n/nl.mjs +0 -786
  1368. package/dist/es/i18n/nl.mjs.map +0 -1
  1369. package/dist/es/i18n/pt.mjs +0 -819
  1370. package/dist/es/i18n/pt.mjs.map +0 -1
  1371. package/dist/es/i18n/ru.mjs +0 -868
  1372. package/dist/es/i18n/ru.mjs.map +0 -1
  1373. package/dist/es/i18n/tr.mjs +0 -781
  1374. package/dist/es/i18n/tr.mjs.map +0 -1
  1375. package/dist/es/utils/getChannelConfig.mjs +0 -11
  1376. package/dist/es/utils/getChannelConfig.mjs.map +0 -1
  1377. package/dist/types/components/Channel/channelState.d.ts +0 -90
  1378. package/dist/types/components/Channel/channelState.d.ts.map +0 -1
  1379. package/dist/types/components/Channel/hooks/useCreateChannelStateContext.d.ts +0 -6
  1380. package/dist/types/components/Channel/hooks/useCreateChannelStateContext.d.ts.map +0 -1
  1381. package/dist/types/components/Channel/hooks/useCreateTypingContext.d.ts +0 -3
  1382. package/dist/types/components/Channel/hooks/useCreateTypingContext.d.ts.map +0 -1
  1383. package/dist/types/components/Channel/hooks/useEditMessageHandler.d.ts +0 -5
  1384. package/dist/types/components/Channel/hooks/useEditMessageHandler.d.ts.map +0 -1
  1385. package/dist/types/components/Channel/hooks/useMentionsHandlers.d.ts +0 -10
  1386. package/dist/types/components/Channel/hooks/useMentionsHandlers.d.ts.map +0 -1
  1387. package/dist/types/components/Channel/utils.d.ts +0 -55
  1388. package/dist/types/components/Channel/utils.d.ts.map +0 -1
  1389. package/dist/types/components/ChannelList/ChannelListUI.d.ts +0 -18
  1390. package/dist/types/components/ChannelList/ChannelListUI.d.ts.map +0 -1
  1391. package/dist/types/components/ChannelList/hooks/useChannelListShape.d.ts +0 -61
  1392. package/dist/types/components/ChannelList/hooks/useChannelListShape.d.ts.map +0 -1
  1393. package/dist/types/components/ChannelList/hooks/useConnectionRecoveredListener.d.ts +0 -2
  1394. package/dist/types/components/ChannelList/hooks/useConnectionRecoveredListener.d.ts.map +0 -1
  1395. package/dist/types/components/ChannelList/hooks/usePaginatedChannels.d.ts +0 -29
  1396. package/dist/types/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +0 -1
  1397. package/dist/types/components/ChannelList/utils.d.ts +0 -46
  1398. package/dist/types/components/ChannelList/utils.d.ts.map +0 -1
  1399. package/dist/types/components/Chat/hooks/useChannelsQueryState.d.ts +0 -12
  1400. package/dist/types/components/Chat/hooks/useChannelsQueryState.d.ts.map +0 -1
  1401. package/dist/types/components/ChatView/ChatView.a11y.utility.d.ts.map +0 -1
  1402. package/dist/types/components/ChatView/ChatView.d.ts +0 -59
  1403. package/dist/types/components/ChatView/ChatView.d.ts.map +0 -1
  1404. package/dist/types/components/ChatView/index.d.ts +0 -2
  1405. package/dist/types/components/ChatView/index.d.ts.map +0 -1
  1406. package/dist/types/components/MessageComposer/hooks/useSubmitHandler.d.ts +0 -5
  1407. package/dist/types/components/MessageComposer/hooks/useSubmitHandler.d.ts.map +0 -1
  1408. package/dist/types/components/Search/hooks/useSearchFocusedMessage.d.ts +0 -2
  1409. package/dist/types/components/Search/hooks/useSearchFocusedMessage.d.ts.map +0 -1
  1410. package/dist/types/components/Thread/LegacyThreadContext.d.ts +0 -9
  1411. package/dist/types/components/Thread/LegacyThreadContext.d.ts.map +0 -1
  1412. package/dist/types/components/Window/Window.d.ts +0 -13
  1413. package/dist/types/components/Window/Window.d.ts.map +0 -1
  1414. package/dist/types/components/Window/index.d.ts +0 -2
  1415. package/dist/types/components/Window/index.d.ts.map +0 -1
  1416. package/dist/types/context/ChannelActionContext.d.ts +0 -46
  1417. package/dist/types/context/ChannelActionContext.d.ts.map +0 -1
  1418. package/dist/types/context/ChannelStateContext.d.ts +0 -51
  1419. package/dist/types/context/ChannelStateContext.d.ts.map +0 -1
  1420. package/dist/types/context/TypingContext.d.ts +0 -12
  1421. package/dist/types/context/TypingContext.d.ts.map +0 -1
  1422. package/dist/types/i18n/TranslationBuilder/TranslationBuilder.d.ts +0 -36
  1423. package/dist/types/i18n/TranslationBuilder/TranslationBuilder.d.ts.map +0 -1
  1424. package/dist/types/i18n/translations.d.ts +0 -14
  1425. package/dist/types/i18n/translations.d.ts.map +0 -1
  1426. package/dist/types/utils/getChannelConfig.d.ts +0 -8
  1427. package/dist/types/utils/getChannelConfig.d.ts.map +0 -1
  1428. /package/dist/types/{components/ChatView → plugins/SlotLayout}/ChatView.a11y.utility.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentContext.mjs","names":[],"sources":["../../../src/context/ComponentContext.tsx"],"sourcesContent":["import type { ComponentProps, PropsWithChildren } from 'react';\nimport React, { useContext } from 'react';\nimport type { UserResponse } from 'stream-chat';\n\nimport {\n type AttachmentPreviewListProps,\n type AttachmentProps,\n type AvatarStackProps,\n type BaseImageProps,\n type CalloutDialogProps,\n type ChannelAvatarProps,\n type ChannelListItemUIProps,\n type ChannelListUIProps,\n type ContextMenuContentProps,\n type ContextMenuProps,\n type DateSeparatorProps,\n type EmojiSearchIndex,\n type EmptyStateIndicatorProps,\n type EventComponentProps,\n type FileDragAndDropContentProps,\n type GalleryProps,\n type GiphyPreviewMessageProps,\n type ImagePlaceholderProps,\n type LoadingErrorIndicatorProps,\n type LoadingIndicatorProps,\n type MessageBouncePromptProps,\n type MessageComposerProps,\n type MessageDeletedProps,\n type MessageEditedIndicatorProps,\n type MessageProps,\n type MessageReactionsDetailProps,\n type MessageReactionsProps,\n type MessageRepliesCountButtonProps,\n type MessageStatusProps,\n type MessageTimestampProps,\n type MessageUIComponentProps,\n type ModalGalleryProps,\n type ModalProps,\n type NewMessageNotificationProps,\n type NotificationListProps,\n type NotificationProps,\n type PinIndicatorProps,\n type PollCreationDialogProps,\n type PollOptionSelectorProps,\n type QuotedMessagePreviewProps,\n type ReactionOptions,\n type ReactionSelector,\n type ReactionSelectorProps,\n type RecordingPermissionDeniedNotificationProps,\n type ReminderNotificationProps,\n type ScrollToLatestMessageButtonProps,\n type SearchResultsPresearchProps,\n type SearchSourceResultListProps,\n type SendButtonProps,\n type ShareLocationDialogProps,\n type StartRecordingAudioButtonProps,\n type StreamedMessageTextProps,\n type TextareaComposerProps,\n type ThreadHeaderProps,\n type ThreadListItemProps,\n type ThreadListItemUIProps,\n type TimestampProps,\n type TranslationIndicatorProps,\n type TypingIndicatorProps,\n type UnreadMessagesNotificationProps,\n type UnreadMessagesSeparatorProps,\n type VoiceRecordingPreviewSlotProps,\n} from '../components';\n\nimport type {\n SuggestionItemProps,\n SuggestionListProps,\n} from '../components/TextareaComposer';\n\nimport type { IconSlots } from '../components/Icons';\nimport type { PropsWithChildrenOnly } from '../types/types';\nimport type { StopAIGenerationButtonProps } from '../components/MessageComposer/StopAIGenerationButton';\nimport type { VideoPlayerProps } from '../components/VideoPlayer';\nimport type { EditedMessagePreviewProps } from '../components/MessageComposer/EditedMessagePreview';\nimport type { FileIconProps } from '../components/FileIcon/FileIcon';\nimport type { AttachmentUploadProgressIndicatorProps } from '../components/Attachment/components/AttachmentUploadProgressIndicator';\nimport type { FileSizeIndicatorProps } from '../components/Attachment/components/FileSizeIndicator';\nimport type { CommandChipProps } from '../components/MessageComposer/CommandChip';\nimport type { ProgressIndicatorProps } from '../components/Loading/progress-indicators';\nimport type { UploadedSizeIndicatorProps } from '../components/Loading/UploadedSizeIndicator';\nimport type { NotificationAnnouncerProps } from '../components/Accessibility';\n\nexport type ComponentContextValue = {\n /** Custom UI component to display additional message composer action buttons left to the textarea, defaults to and accepts same props as: [AdditionalMessageComposerActions](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/MessageComposerActions.tsx) */\n AdditionalMessageComposerActions?: React.ComponentType;\n /** Custom UI component to display a message attachment, defaults to and accepts same props as: [Attachment](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Attachment/Attachment.tsx) */\n Attachment?: React.ComponentType<AttachmentProps>;\n /** Custom UI component for the file type icon shown on file attachments (e.g. PDF, doc). Accepts same props as [FileIcon](https://github.com/GetStream/stream-chat-react/blob/master/src/components/FileIcon/FileIcon.tsx) (e.g. mimeType, size, sizeConfig). Use this to override dimensions or provide a custom icon. */\n AttachmentFileIcon?: React.ComponentType<FileIconProps>;\n /** Custom UI component rendering the progress of an attachment whose upload is still in flight, defaults to and accepts same props as: [AttachmentUploadProgressIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Attachment/components/AttachmentUploadProgressIndicator.tsx) */\n AttachmentUploadProgressIndicator?: React.ComponentType<AttachmentUploadProgressIndicatorProps>;\n /** Custom UI component to display an attachment previews in MessageComposer, defaults to and accepts same props as: [Attachment](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AttachmentPreviewList.tsx) */\n AttachmentPreviewList?: React.ComponentType<AttachmentPreviewListProps>;\n /** Custom UI component to control adding attachments to MessageComposer, defaults to and accepts same props as: [AttachmentSelector](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AttachmentSelector.tsx) */\n AttachmentSelector?: React.ComponentType;\n /** Custom UI component for the dedicated voice recording preview slot above composer attachments (REACT-794), defaults to and accepts same props as: [VoiceRecordingPreviewSlot](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AttachmentPreviewList/VoiceRecordingPreviewSlot.tsx) */\n VoiceRecordingPreviewSlot?: React.ComponentType<VoiceRecordingPreviewSlotProps>;\n /** Custom UI component for contents of attachment selector initiation button */\n AttachmentSelectorInitiationButtonContents?: React.ComponentType;\n /** Custom UI component to display AudioRecorder in MessageComposer, defaults to and accepts same props as: [AudioRecorder](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AudioRecorder.tsx) */\n AudioRecorder?: React.ComponentType;\n /** Optional UI component to override the default suggestion Item component, defaults to and accepts same props as: [Item](https://github.com/GetStream/stream-chat-react/blob/master/src/components/AutoCompleteTextarea/Item.js) */\n AutocompleteSuggestionItem?: React.ComponentType<SuggestionItemProps>;\n /** Optional UI component to override the default List component that displays suggestions, defaults to and accepts same props as: [List](https://github.com/GetStream/stream-chat-react/blob/master/src/components/AutoCompleteTextarea/List.js) */\n AutocompleteSuggestionList?: React.ComponentType<SuggestionListProps>;\n extractDisplayInfo?: (_: {\n user?: Partial<UserResponse>;\n }) => NonNullable<AvatarStackProps['displayInfo']>[number];\n /** Overrides for icons rendered across the SDK. Individual keys are deep-merged with parent overrides via `WithComponents`, so a consumer can rebrand a single icon without wiping out the others. Preferred over component-level icon props (which are `@deprecated`). */\n icons?: IconSlots;\n /** UI component to display a user's avatar, defaults to and accepts same props as: [Avatar](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Avatar/Avatar.tsx) */\n Avatar?: React.ComponentType<ChannelAvatarProps>;\n /** UI component to display a list of avatars stacked in a row, defaults to and accepts same props as: [AvatarStack](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Avatar/AvatarStack.tsx) */\n AvatarStack?: React.ComponentType<AvatarStackProps>;\n /** Custom UI component to display <img/> elements resp. a fallback in case of load error, defaults to and accepts same props as: [BaseImage](https://github.com/GetStream/stream-chat-react/blob/master/src/components/BaseImage/BaseImage.tsx) */\n BaseImage?: React.ComponentType<BaseImageProps>;\n /** Custom UI component to display the contents of callout dialog, accepts same props as: [DefaultCalloutDialog](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Dialog/base/Callout.tsx) */\n CalloutDialog?: React.ComponentType<CalloutDialogProps>;\n /** Custom UI component shown instead of the image when it fails to load, defaults to and accepts same props as: [ImagePlaceholder](https://github.com/GetStream/stream-chat-react/blob/master/src/components/BaseImage/ImagePlaceholder.tsx) */\n ImagePlaceholder?: React.ComponentType<ImagePlaceholderProps>;\n /** Custom UI component to display the header of the `ChannelList`, defaults to and accepts same props as: [ChannelListHeader](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelList/ChannelListHeader.tsx) */\n ChannelListHeader?: React.ComponentType;\n /** Custom UI component to display the container for the queried channels, defaults to and accepts same props as: [ChannelListUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelList/ChannelListUI.tsx) */\n ChannelListUI?: React.ComponentType<ChannelListUIProps>;\n /** Custom UI component to display set of action buttons within `ChannelListItemUI` component, accepts same props as: [ChannelListItemActionButtons](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelList/ChannelListItemActionButtons.tsx) */\n ChannelListItemActionButtons?: React.ComponentType;\n /** Custom UI component to display the channel preview in the list, defaults to and accepts same props as: [ChannelListItemUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelPreview/ChannelListItemUI.tsx) */\n ChannelListItemUI?: React.ComponentType<ChannelListItemUIProps>;\n /** Custom UI component to display command chip, defaults to and accepts same props as: [CommandChip](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/CommandChip.tsx) */\n CommandChip?: React.ComponentType<CommandChipProps>;\n /** Custom component for rendering context menus, defaults to and accepts same props as: [ContextMenu](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Dialog/components/ContextMenu.tsx). The default is behavior-aware (not purely presentational) and solves: stable anchoring/placement updates against the reference element, submenu stack navigation (open/return), coordinated dismissal (Escape, overlay click, controlled close), focus management for anchored menus, and transition state reset between openings so animations stay consistent. */\n ContextMenu?: React.ComponentType<ContextMenuProps>;\n /** Custom UI component for rendering context menu content (used by ContextMenu), defaults to and accepts same props as: [ContextMenuContent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Dialog/components/ContextMenu.tsx). */\n ContextMenuContent?: React.ComponentType<ContextMenuContentProps>;\n /** Custom UI component to display the slow mode cooldown timer, defaults to and accepts same props as: [CooldownTimer](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/CooldownTimer.tsx) */\n CooldownTimer?: React.ComponentType;\n /** Custom UI component for date separators, defaults to and accepts same props as: [DateSeparator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/DateSeparator.tsx) */\n DateSeparator?: React.ComponentType<DateSeparatorProps>;\n /** Custom UI component to display the contents on file drag-and-drop overlay, defaults to and accepts same props as: [FileDragAndDropContent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/WithDragAndDropUpload.tsx) */\n FileDragAndDropContent?: React.ComponentType<FileDragAndDropContentProps>;\n /** Custom UI component to display a formatted file byte size (message attachments, upload previews), defaults to and accepts same props as: [FileSizeIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Attachment/components/FileSizeIndicator.tsx) */\n FileSizeIndicator?: React.ComponentType<FileSizeIndicatorProps>;\n /** Custom UI component to override default preview of edited message, defaults to and accepts same props as: [EditedMessagePreview](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/EditedMessagePreview.tsx) */\n EditedMessagePreview?: React.ComponentType<EditedMessagePreviewProps>;\n /** Custom UI component for rendering button with emoji picker in MessageComposer */\n EmojiPicker?: React.ComponentType;\n /** Mechanism to be used with autocomplete and text replace features of the `MessageComposer` component, see [emoji-mart `SearchIndex`](https://github.com/missive/emoji-mart#%EF%B8%8F%EF%B8%8F-headless-search) */\n emojiSearchIndex?: EmojiSearchIndex;\n /** Custom UI component to be displayed when the `MessageList` is empty, defaults to and accepts same props as: [EmptyStateIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/EmptyStateIndicator/EmptyStateIndicator.tsx) */\n EmptyStateIndicator?: React.ComponentType<EmptyStateIndicatorProps>;\n /** Custom component that provides gallery state (current index, navigation) via GalleryContext and renders GalleryUI. Override this to control the gallery's data/navigation logic. Defaults to and accepts same props as: [Gallery](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Gallery/Gallery.tsx) */\n Gallery?: React.ComponentType<GalleryProps>;\n /** Custom UI component to render the gallery's visual interface (slides, navigation buttons, header). Override this to change the gallery's appearance without altering navigation logic. Defaults to and accepts same props as: [GalleryUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Gallery/GalleryUI.tsx) */\n GalleryUI?: React.ComponentType;\n /** Custom UI component to render a Giphy preview in the `VirtualizedMessageList` */\n GiphyPreviewMessage?: React.ComponentType<GiphyPreviewMessageProps>;\n /** Custom UI component to render at the top of the `MessageList` */\n HeaderComponent?: React.ComponentType;\n /** Custom UI component handling how the message composer is rendered, defaults to and accepts the same props as [MessageComposerUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/MessageComposerUI.tsx) */\n MessageComposerUI?: React.ComponentType<MessageComposerProps>;\n /** Custom component to render link previews in message composer **/\n LinkPreviewList?: React.ComponentType;\n /** Custom UI component to be shown if the channel query fails, defaults to and accepts same props as: [LoadingErrorIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/LoadingErrorIndicator.tsx) */\n LoadingErrorIndicator?: React.ComponentType<LoadingErrorIndicatorProps>;\n /** Custom UI component to render while the `MessageList` is loading new messages, defaults to and accepts same props as: [LoadingIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/LoadingIndicator.tsx) */\n LoadingIndicator?: React.ComponentType<LoadingIndicatorProps>;\n /** Custom UI component for determinate progress (0–100), defaults to and accepts same props as: [ProgressIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/progress-indicators.tsx) */\n ProgressIndicator?: React.ComponentType<ProgressIndicatorProps>;\n /** Custom UI component to display a message in the standard `MessageList`, defaults to and accepts the same props as: [MessageUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageUI.tsx) */\n MessageUI?: React.ComponentType<MessageUIComponentProps>;\n /** Custom UI component to display a message in the standard `MessageList`, defaults to and accepts the same props as: [MessageUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageUI.tsx)\n * @deprecated use `MessageUI` instead\n */\n Message?: React.ComponentType<MessageUIComponentProps>;\n /** Custom UI component for message actions popup, accepts no props, all the defaults are set within [MessageActions (unstable)](https://github.com/GetStream/stream-chat-react/blob/master/src/experimental/MessageActions/MessageActions.tsx) */\n MessageActions?: React.ComponentType;\n /** Custom UI component to display the contents of a bounced message modal. Usually it allows to retry, edit, or delete the message. Defaults to and accepts the same props as: [MessageBouncePrompt](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageBounce/MessageBouncePrompt.tsx) */\n MessageBouncePrompt?: React.ComponentType<MessageBouncePromptProps>;\n /** Custom UI component for a moderation-blocked message, defaults to and accepts same props as: [MessageBlocked](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageBlocked.tsx) */\n MessageBlocked?: React.ComponentType;\n /** Custom UI component for a deleted message. Has no default component */\n MessageDeleted?: React.ComponentType<MessageDeletedProps>;\n /** Custom UI component for a message bubble of a deleted message, defaults to and accepts same props as: [MessageDeletedBubble](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageDeletedBubble.tsx) */\n MessageDeletedBubble?: React.ComponentType;\n MessageListMainPanel?: React.ComponentType<PropsWithChildrenOnly>;\n /** Custom UI component to render a single notification item in NotificationList, defaults to and accepts same props as: [Notification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Notifications/Notification.tsx) */\n Notification?: React.ForwardRefExoticComponent<\n NotificationProps & React.RefAttributes<HTMLDivElement>\n >;\n /** Custom UI component to render screen-reader notification announcements, defaults to and accepts same props as: [NotificationAnnouncer](https://github.com/GetStream/stream-chat-react/blob/master/src/a11y/NotificationAnnouncer.tsx) */\n NotificationAnnouncer?: React.ComponentType<NotificationAnnouncerProps>;\n /** Custom UI component to display notifications rendered by `NotificationList`, defaults to and accepts same props as: [NotificationList](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Notifications/NotificationList.tsx) */\n NotificationList?: React.ComponentType<NotificationListProps>;\n /** Custom UI component to display a notification when scrolled up the list and new messages arrive, defaults to and accepts same props as [NewMessageNotification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/NewMessageNotification.tsx) */\n NewMessageNotification?: React.ComponentType<NewMessageNotificationProps>;\n /** Custom UI component to display the scroll-to-latest-message button in a `MessageList`, defaults to and accepts same props as: [ScrollToLatestMessageButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/ScrollToLatestMessageButton.tsx) */\n ScrollToLatestMessageButton?: React.ComponentType<ScrollToLatestMessageButtonProps>;\n /** Custom UI component to display message replies, defaults to and accepts same props as: [MessageRepliesCountButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageRepliesCountButton.tsx) */\n MessageRepliesCountButton?: React.ComponentType<MessageRepliesCountButtonProps>;\n /** Custom UI component to display message delivery status, defaults to and accepts same props as: [MessageStatus](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageStatus.tsx) */\n MessageStatus?: React.ComponentType<MessageStatusProps>;\n /** Custom UI component to display system messages, defaults to and accepts same props as: [EventComponent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/EventComponent/EventComponent.tsx) */\n MessageSystem?: React.ComponentType<EventComponentProps>;\n /** Custom UI component to display a timestamp on a message, defaults to and accepts same props as: [MessageTimestamp](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageTimestamp.tsx) */\n MessageTimestamp?: React.ComponentType<MessageTimestampProps>;\n /** Custom UI component for viewing content in a modal, defaults to and accepts the same props as [Modal](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Modal/Modal.tsx) */\n Modal?: React.ComponentType<ModalProps>;\n /** Custom UI component for viewing message's image attachments with option to expand into the Gallery on Modal, defaults to and accepts the same props as [ModalGallery](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Gallery/ModalGallery.tsx) */\n ModalGallery?: React.ComponentType<ModalGalleryProps>;\n /** Custom UI component to show \"Also sent in channel\" in thread message lists when message.show_in_channel is true, defaults to and accepts same props as: [MessageAlsoSentInChannelIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageAlsoSentInChannelIndicator.tsx) */\n MessageAlsoSentInChannelIndicator?: React.ComponentType;\n /** Custom UI component to override default pinned message indicator, defaults to and accepts same props as: [PinIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/PinIndicator.tsx) */\n PinIndicator?: React.ComponentType<PinIndicatorProps>;\n /** Custom UI component to override default poll actions rendering in a message, defaults to and accepts same props as: [PollActions](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollActions/PollActions.tsx) */\n PollActions?: React.ComponentType;\n /** Custom UI component to override default poll rendering in a message, defaults to and accepts same props as: [PollContent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollContent.tsx) */\n PollContent?: React.ComponentType;\n /** Custom UI component to override default poll creation dialog contents, defaults to and accepts same props as: [PollCreationDialog](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollCreationDialog/PollCreationDialog.tsx) */\n PollCreationDialog?: React.ComponentType<PollCreationDialogProps>;\n /** Custom UI component to override default poll header in a message, defaults to and accepts same props as: [PollHeader](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollHeader.tsx) */\n PollHeader?: React.ComponentType;\n /** Custom UI component to override default poll option selector, defaults to and accepts same props as: [PollOptionSelector](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollOptionSelector.tsx) */\n PollOptionSelector?: React.ComponentType<PollOptionSelectorProps>;\n /** Custom UI component to override quoted message UI on a sent message, defaults to and accepts same props as: [QuotedMessage](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/QuotedMessage.tsx) */\n QuotedMessage?: React.ComponentType;\n /** Custom UI component to override the message input's quoted message preview, defaults to and accepts same props as: [QuotedMessagePreview](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/QuotedMessagePreview.tsx) */\n QuotedMessagePreview?: React.ComponentType<QuotedMessagePreviewProps>;\n /** Custom reaction options to be applied to ReactionSelector, ReactionList and SimpleReactionList components */\n reactionOptions?: ReactionOptions;\n /** Custom UI component to display the reaction selector, defaults to and accepts same props as: [ReactionSelector](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Reactions/ReactionSelector.tsx) */\n ReactionSelector?: React.ForwardRefExoticComponent<ReactionSelectorProps>;\n ReactionSelectorExtendedList?: React.ComponentType<\n ComponentProps<(typeof ReactionSelector)['ExtendedList']>\n >;\n /** Custom UI component to display the list of reactions on a message, defaults to and accepts same props as: [MessageReactions](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Reactions/MessageReactions.tsx) */\n MessageReactions?: React.ComponentType<MessageReactionsProps>;\n /** Custom UI component to display the reactions modal, defaults to and accepts same props as: [MessageReactionsDetail](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Reactions/MessageReactionsDetail.tsx) */\n MessageReactionsDetail?: React.ComponentType<MessageReactionsDetailProps>;\n RecordingPermissionDeniedNotification?: React.ComponentType<RecordingPermissionDeniedNotificationProps>;\n /** Custom UI component to display the message reminder information in the Message UI, defaults to and accepts same props as: [ReminderNotification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/ReminderNotification.tsx) */\n ReminderNotification?: React.ComponentType<ReminderNotificationProps>;\n /** Custom UI component to display the message translation indicator when message has i18n, defaults to and accepts same props as: [MessageTranslationIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/TranslationIndicator.tsx) */\n MessageTranslationIndicator?: React.ComponentType<TranslationIndicatorProps>;\n /** Custom UI component to display the edited indicator and tooltip when a message has been edited, defaults to and accepts same props as: [MessageEditedIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageEditedIndicator.tsx) */\n MessageEditedIndicator?: React.ComponentType<MessageEditedIndicatorProps>;\n /** Custom component to display the search UI, defaults to and accepts same props as: [Search](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/Search.tsx) */\n Search?: React.ComponentType;\n /** Custom component to display the UI where the searched string is entered, defaults to and accepts same props as: [SearchBar](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchBar/SearchBar.tsx) */\n SearchBar?: React.ComponentType;\n /** Custom component for the search UI dedicated to display the results area, defaults to and accepts same props as: [SearchResults](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchResults.tsx) */\n SearchResults?: React.ComponentType;\n /** Custom UI component to display header of search results pane, defaults to and accepts same props as: [SearchResultsHeader](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchResultsHeader.tsx) */\n SearchResultsHeader?: React.ComponentType;\n /** Custom component to display search results pane before emitting the first search query for a given source, defaults to and accepts same props as: [SearchResultsPresearch](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultsPresearch.tsx) */\n SearchResultsPresearch?: React.ComponentType<SearchResultsPresearchProps>;\n /** Custom component to display the search source items results, defaults to and accepts same props as: [SearchSourceResultList](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultList.tsx) */\n SearchSourceResultList?: React.ComponentType<SearchSourceResultListProps>;\n /** Custom component to indicate the end of the last page for a searched source, defaults to and accepts same props as: [SearchSourceResultListFooter](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultListFooter.tsx) */\n SearchSourceResultListFooter?: React.ComponentType;\n /** Custom UI component to display search results items for a given search source pane, defaults to and accepts same props as: [SearchSourceResults](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SourceSearchResults.tsx) */\n SearchSourceResults?: React.ComponentType;\n /** Custom component to display the search source results UI with 0 items found, defaults to and accepts same props as: [SearchSourceResultsEmpty](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultsEmpty.tsx) */\n SearchSourceResultsEmpty?: React.ComponentType;\n /** Custom component to display the header content for a given search source results, no default component is provided. */\n SearchSourceResultsHeader?: React.ComponentType;\n /** Custom component to display the search source results UI during the search query execution, defaults to and accepts same props as: [SearchSourceResultsLoadingIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultsLoadingIndicator.tsx) */\n SearchSourceResultsLoadingIndicator?: React.ComponentType;\n /** Custom UI component for send button, defaults to and accepts same props as: [SendButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/icons.tsx) */\n SendButton?: React.ComponentType<SendButtonProps>;\n /** Custom UI component checkbox that indicates message to be sent to main channel, defaults to and accepts same props as: [SendToChannelCheckbox](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/SendToChannelCheckbox.tsx) */\n SendToChannelCheckbox?: React.ComponentType;\n /** Custom UI component to render the location sharing dialog, defaults to and accepts same props as: [ShareLocationDialog](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Location/ShareLocationDialog.tsx) */\n ShareLocationDialog?: React.ComponentType<ShareLocationDialogProps>;\n /** Custom UI component button for initiating audio recording, defaults to and accepts same props as: [StartRecordingAudioButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.tsx) */\n StartRecordingAudioButton?: React.ComponentType<StartRecordingAudioButtonProps>;\n StopAIGenerationButton?: React.ComponentType<StopAIGenerationButtonProps> | null;\n StreamedMessageText?: React.ComponentType<StreamedMessageTextProps>;\n /** Custom UI component to handle message text input, defaults to and accepts same props as [TextareaComposer](https://github.com/GetStream/stream-chat-react/blob/master/src/components/TextareaComposer/TextareaComposer.tsx) */\n TextareaComposer?: React.ComponentType<TextareaComposerProps>;\n /** Custom UI component that displays thread's parent or other message at the top of the `MessageList`, defaults to and accepts same props as [MessageUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageUI.tsx) */\n ThreadHead?: React.ComponentType<MessageProps>;\n /** Custom UI component to display the header of a `Thread`, defaults to and accepts same props as: [DefaultThreadHeader](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Thread/Thread.tsx) */\n ThreadHeader?: React.ComponentType<ThreadHeaderProps>;\n ThreadListEmptyPlaceholder?: React.ComponentType;\n ThreadListItem?: React.ComponentType<ThreadListItemProps>;\n ThreadListItemUI?: React.ComponentType<ThreadListItemUIProps>;\n ThreadListLoadingIndicator?: React.ComponentType;\n ThreadListUnseenThreadsBanner?: React.ComponentType;\n /** Custom UI component to display the start of a threaded `MessageList`, defaults to and accepts same props as: [DefaultThreadStart](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Thread/Thread.tsx) */\n ThreadStart?: React.ComponentType;\n /** Custom UI component to display a date used in timestamps. It's used internally by the default `MessageTimestamp`, and to display a timestamp for edited messages. */\n Timestamp?: React.ComponentType<TimestampProps>;\n /** Custom UI component for the typing indicator, defaults to and accepts same props as: [TypingIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/TypingIndicator/TypingIndicator.tsx) */\n TypingIndicator?: React.ComponentType<TypingIndicatorProps>;\n /** Custom UI component that indicates a user is viewing unread messages. It disappears once the user scrolls to UnreadMessagesSeparator. Defaults to and accepts same props as: [UnreadMessagesNotification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/UnreadMessagesNotification.tsx) */\n UnreadMessagesNotification?: React.ComponentType<UnreadMessagesNotificationProps>;\n /** Custom UI component rendered at the end of sidebar headers (ChannelListHeader, ThreadListHeader). No default — if omitted, the slot is empty. */\n HeaderEndContent?: React.ComponentType;\n /** Custom UI component rendered at the start of content headers (ChannelHeader, ThreadHeader). No default — if omitted, the slot is empty. */\n HeaderStartContent?: React.ComponentType;\n /** Custom UI component that separates read messages from unread, defaults to and accepts same props as: [UnreadMessagesSeparator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/UnreadMessagesSeparator.tsx) */\n UnreadMessagesSeparator?: React.ComponentType<UnreadMessagesSeparatorProps>;\n /** Custom UI component for uploaded vs total byte size during attachment upload (MessageComposer previews), defaults to and accepts same props as: [UploadedSizeIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/UploadedSizeIndicator.tsx) */\n UploadedSizeIndicator?: React.ComponentType<UploadedSizeIndicatorProps>;\n /** Component used to play video. If not provided, ReactPlayer is used as a default video player. */\n VideoPlayer?: React.ComponentType<VideoPlayerProps>;\n /** Custom UI component to display a message in the `VirtualizedMessageList`, does not have a default implementation */\n VirtualMessage?: React.ComponentType<MessageUIComponentProps>;\n /** Custom UI component to wrap MessageList children. Default is the `ul` tag */\n MessageListWrapper?: React.ComponentType<PropsWithChildren>;\n /** Custom UI component to wrap each element of MessageList. Default is the `li` tag */\n MessageListItem?: React.ComponentType<PropsWithChildren>;\n};\n\nexport const ComponentContext = React.createContext<ComponentContextValue>({});\n\nexport const ComponentProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: Partial<ComponentContextValue>;\n}>) => (\n <ComponentContext.Provider value={value as unknown as ComponentContextValue}>\n {children}\n </ComponentContext.Provider>\n);\n\nexport const useComponentContext = (\n /**\n * @deprecated\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _componentName?: string,\n) => useContext(ComponentContext) as unknown as ComponentContextValue;\n"],"mappings":";;;AA+TA,IAAa,mBAAmB,MAAM,cAAqC,CAAC,CAAC;AAE7E,IAAa,qBAAqB,EAChC,UACA,YAIA,oBAAC,iBAAiB,UAAlB;CAAkC;CAC/B;AACwB,CAAA;AAG7B,IAAa,uBAKX,mBACG,WAAW,gBAAgB"}
1
+ {"version":3,"file":"ComponentContext.mjs","names":[],"sources":["../../../src/context/ComponentContext.tsx"],"sourcesContent":["import type { ComponentProps, ComponentType, PropsWithChildren } from 'react';\nimport React, { useContext } from 'react';\nimport type { UserResponse } from 'stream-chat';\n\nimport {\n type AttachmentPreviewListProps,\n type AttachmentProps,\n type AvatarStackProps,\n type BaseImageProps,\n type CalloutDialogProps,\n type ChannelAvatarProps,\n type ChannelListItemUIProps,\n type ContextMenuContentProps,\n type ContextMenuProps,\n type DateSeparatorProps,\n type EmojiSearchIndex,\n type EmptyStateIndicatorProps,\n type EventComponentProps,\n type FileDragAndDropContentProps,\n type GalleryProps,\n type GiphyPreviewMessageProps,\n type ImagePlaceholderProps,\n type LoadingErrorIndicatorProps,\n type LoadingIndicatorProps,\n type MessageBouncePromptProps,\n type MessageComposerProps,\n type MessageDeletedProps,\n type MessageEditedIndicatorProps,\n type MessageProps,\n type MessageReactionsDetailProps,\n type MessageReactionsProps,\n type MessageRepliesCountButtonProps,\n type MessageStatusProps,\n type MessageTimestampProps,\n type MessageUIComponentProps,\n type ModalGalleryProps,\n type ModalProps,\n type NewMessageNotificationProps,\n type NotificationListProps,\n type NotificationProps,\n type PinIndicatorProps,\n type PollCreationDialogProps,\n type PollOptionSelectorProps,\n type QuotedMessagePreviewProps,\n type ReactionOptions,\n type ReactionSelector,\n type ReactionSelectorProps,\n type RecordingPermissionDeniedNotificationProps,\n type ReminderNotificationProps,\n type ScrollToLatestMessageButtonProps,\n type SearchResultsPresearchProps,\n type SearchSourceResultListProps,\n type SendButtonProps,\n type ShareLocationDialogProps,\n type StartRecordingAudioButtonProps,\n type StreamedMessageTextProps,\n type TextareaComposerProps,\n type ThreadListItemProps,\n type ThreadListItemUIProps,\n type TimestampProps,\n type TranslationIndicatorProps,\n type UnreadMessagesNotificationProps,\n type UnreadMessagesSeparatorProps,\n type VoiceRecordingPreviewSlotProps,\n} from '../components';\n\nimport type {\n SuggestionItemProps,\n SuggestionListProps,\n} from '../components/TextareaComposer';\n\nimport type { PropsWithChildrenOnly } from '../types/types';\nimport type { StopAIGenerationButtonProps } from '../components/MessageComposer/StopAIGenerationButton';\nimport type { VideoPlayerProps } from '../components/VideoPlayer';\nimport type { EditedMessagePreviewProps } from '../components/MessageComposer/EditedMessagePreview';\nimport type { FileIconProps } from '../components/FileIcon/FileIcon';\nimport type { FileSizeIndicatorProps } from '../components/Attachment/components/FileSizeIndicator';\nimport type { CommandChipProps } from '../components/MessageComposer/CommandChip';\nimport type { ProgressIndicatorProps } from '../components/Loading/progress-indicators';\nimport type { UploadedSizeIndicatorProps } from '../components/Loading/UploadedSizeIndicator';\nimport type { NotificationAnnouncerProps } from '../components/Accessibility';\nimport type { SummarizedMessagePreviewProps } from '../components/SummarizedMessagePreview';\nimport type { TypingIndicatorProps } from '../components/TypingIndicator';\nimport type { AttachmentUploadProgressIndicatorProps } from '../components/Attachment/components/AttachmentUploadProgressIndicator';\nimport type { IconSlots } from '../components/Icons/slots';\n\nexport type ComponentContextValue = {\n /** Custom UI component rendering the progress of an attachment whose upload is still in flight, defaults to and accepts same props as: [AttachmentUploadProgressIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Attachment/components/AttachmentUploadProgressIndicator.tsx) */\n AttachmentUploadProgressIndicator?: React.ComponentType<AttachmentUploadProgressIndicatorProps>;\n /** Custom UI component rendered when a paginated list (e.g. the channel list) is empty. */\n EmptyListIndicator?: React.ComponentType;\n /** Custom UI component rendered at the top/bottom edge of a paginated list. */\n EndReachedIndicator?: React.ComponentType<{\n hasEnded: boolean;\n reached: 'top' | 'bottom';\n }>;\n /** Custom UI component rendered while a paginated list loads its first page. */\n FirstPageLoadingIndicator?: React.ComponentType;\n /** Custom UI component rendered per item of a paginated list. */\n ListItem?: ComponentType<{ item: unknown }>;\n /** Custom UI component rendered while a paginated list loads its next page. */\n LoadingNextPageIndicator?: React.ComponentType<{ isLoading?: boolean }>;\n /** Custom UI component to display additional message composer action buttons left to the textarea, defaults to and accepts same props as: [AdditionalMessageComposerActions](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/MessageComposerActions.tsx) */\n AdditionalMessageComposerActions?: React.ComponentType;\n /** Custom UI component to display a message attachment, defaults to and accepts same props as: [Attachment](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Attachment/Attachment.tsx) */\n Attachment?: React.ComponentType<AttachmentProps>;\n /** Custom UI component for the file type icon shown on file attachments (e.g. PDF, doc). Accepts same props as [FileIcon](https://github.com/GetStream/stream-chat-react/blob/master/src/components/FileIcon/FileIcon.tsx) (e.g. mimeType, size, sizeConfig). Use this to override dimensions or provide a custom icon. */\n AttachmentFileIcon?: React.ComponentType<FileIconProps>;\n /** Custom UI component to display an attachment previews in MessageComposer, defaults to and accepts same props as: [Attachment](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AttachmentPreviewList.tsx) */\n AttachmentPreviewList?: React.ComponentType<AttachmentPreviewListProps>;\n /** Custom UI component to control adding attachments to MessageComposer, defaults to and accepts same props as: [AttachmentSelector](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AttachmentSelector.tsx) */\n AttachmentSelector?: React.ComponentType;\n /** Custom UI component for the dedicated voice recording preview slot above composer attachments (REACT-794), defaults to and accepts same props as: [VoiceRecordingPreviewSlot](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AttachmentPreviewList/VoiceRecordingPreviewSlot.tsx) */\n VoiceRecordingPreviewSlot?: React.ComponentType<VoiceRecordingPreviewSlotProps>;\n /** Custom UI component for contents of attachment selector initiation button */\n AttachmentSelectorInitiationButtonContents?: React.ComponentType;\n /** Custom UI component to display AudioRecorder in MessageComposer, defaults to and accepts same props as: [AudioRecorder](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/AudioRecorder.tsx) */\n AudioRecorder?: React.ComponentType;\n /** Optional UI component to override the default suggestion Item component, defaults to and accepts same props as: [Item](https://github.com/GetStream/stream-chat-react/blob/master/src/components/AutoCompleteTextarea/Item.js) */\n AutocompleteSuggestionItem?: React.ComponentType<SuggestionItemProps>;\n /** Optional UI component to override the default List component that displays suggestions, defaults to and accepts same props as: [List](https://github.com/GetStream/stream-chat-react/blob/master/src/components/AutoCompleteTextarea/List.js) */\n AutocompleteSuggestionList?: React.ComponentType<SuggestionListProps>;\n extractDisplayInfo?: (_: {\n user?: Partial<UserResponse>;\n }) => NonNullable<AvatarStackProps['displayInfo']>[number];\n /** UI component to display a user's avatar, defaults to and accepts same props as: [Avatar](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Avatar/Avatar.tsx) */\n Avatar?: React.ComponentType<ChannelAvatarProps>;\n /** UI component to display a list of avatars stacked in a row, defaults to and accepts same props as: [AvatarStack](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Avatar/AvatarStack.tsx) */\n AvatarStack?: React.ComponentType<AvatarStackProps>;\n /** Custom UI component to display <img/> elements resp. a fallback in case of load error, defaults to and accepts same props as: [BaseImage](https://github.com/GetStream/stream-chat-react/blob/master/src/components/BaseImage/BaseImage.tsx) */\n BaseImage?: React.ComponentType<BaseImageProps>;\n /** Custom UI component to display the contents of callout dialog, accepts same props as: [DefaultCalloutDialog](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Dialog/base/Callout.tsx) */\n CalloutDialog?: React.ComponentType<CalloutDialogProps>;\n /** Custom UI component shown instead of the image when it fails to load, defaults to and accepts same props as: [ImagePlaceholder](https://github.com/GetStream/stream-chat-react/blob/master/src/components/BaseImage/ImagePlaceholder.tsx) */\n ImagePlaceholder?: React.ComponentType<ImagePlaceholderProps>;\n /** Custom UI component to display the header of the `ChannelList`, defaults to and accepts same props as: [ChannelListHeader](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelList/ChannelListHeader.tsx) */\n ChannelListHeader?: React.ComponentType;\n /** Custom UI component to display set of action buttons within `ChannelListItemUI` component, accepts same props as: [ChannelListItemActionButtons](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelList/ChannelListItemActionButtons.tsx) */\n ChannelListItemActionButtons?: React.ComponentType;\n /** Custom UI component to display the channel preview in the list, defaults to and accepts same props as: [ChannelListItemUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelPreview/ChannelListItemUI.tsx) */\n ChannelListItemUI?: React.ComponentType<ChannelListItemUIProps>;\n /** Custom UI component to render a channel-list item's previewed message, defaults to and accepts same props as: [SummarizedMessagePreview](https://github.com/GetStream/stream-chat-react/blob/master/src/components/SummarizedMessagePreview/SummarizedMessagePreview.tsx) */\n SummarizedMessagePreview?: React.ComponentType<SummarizedMessagePreviewProps>;\n /** Custom UI component to display command chip, defaults to and accepts same props as: [CommandChip](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/CommandChip.tsx) */\n CommandChip?: React.ComponentType<CommandChipProps>;\n /** Custom component for rendering context menus, defaults to and accepts same props as: [ContextMenu](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Dialog/components/ContextMenu.tsx). The default is behavior-aware (not purely presentational) and solves: stable anchoring/placement updates against the reference element, submenu stack navigation (open/return), coordinated dismissal (Escape, overlay click, controlled close), focus management for anchored menus, and transition state reset between openings so animations stay consistent. */\n ContextMenu?: React.ComponentType<ContextMenuProps>;\n /** Custom UI component for rendering context menu content (used by ContextMenu), defaults to and accepts same props as: [ContextMenuContent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Dialog/components/ContextMenu.tsx). */\n ContextMenuContent?: React.ComponentType<ContextMenuContentProps>;\n /** Custom UI component to display the slow mode cooldown timer, defaults to and accepts same props as: [CooldownTimer](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/CooldownTimer.tsx) */\n CooldownTimer?: React.ComponentType;\n /** Custom UI component for date separators, defaults to and accepts same props as: [DateSeparator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/DateSeparator.tsx) */\n DateSeparator?: React.ComponentType<DateSeparatorProps>;\n /** Custom UI component to display the contents on file drag-and-drop overlay, defaults to and accepts same props as: [FileDragAndDropContent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/WithDragAndDropUpload.tsx) */\n FileDragAndDropContent?: React.ComponentType<FileDragAndDropContentProps>;\n /** Custom UI component to display a formatted file byte size (message attachments, upload previews), defaults to and accepts same props as: [FileSizeIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Attachment/components/FileSizeIndicator.tsx) */\n FileSizeIndicator?: React.ComponentType<FileSizeIndicatorProps>;\n /** Custom UI component to override default preview of edited message, defaults to and accepts same props as: [EditedMessagePreview](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/EditedMessagePreview.tsx) */\n EditedMessagePreview?: React.ComponentType<EditedMessagePreviewProps>;\n /** Custom UI component for rendering button with emoji picker in MessageComposer */\n EmojiPicker?: React.ComponentType;\n /** Mechanism to be used with autocomplete and text replace features of the `MessageComposer` component, see [emoji-mart `SearchIndex`](https://github.com/missive/emoji-mart#%EF%B8%8F%EF%B8%8F-headless-search) */\n emojiSearchIndex?: EmojiSearchIndex;\n /** Custom UI component to be displayed when the `MessageList` is empty, defaults to and accepts same props as: [EmptyStateIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/EmptyStateIndicator/EmptyStateIndicator.tsx) */\n EmptyStateIndicator?: React.ComponentType<EmptyStateIndicatorProps>;\n /** Custom component that provides gallery state (current index, navigation) via GalleryContext and renders GalleryUI. Override this to control the gallery's data/navigation logic. Defaults to and accepts same props as: [Gallery](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Gallery/Gallery.tsx) */\n Gallery?: React.ComponentType<GalleryProps>;\n /** Custom UI component to render the gallery's visual interface (slides, navigation buttons, header). Override this to change the gallery's appearance without altering navigation logic. Defaults to and accepts same props as: [GalleryUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Gallery/GalleryUI.tsx) */\n GalleryUI?: React.ComponentType;\n /** Custom UI component to render a Giphy preview in the `VirtualizedMessageList` */\n GiphyPreviewMessage?: React.ComponentType<GiphyPreviewMessageProps>;\n /** Custom UI component to render at the top of the `MessageList` */\n HeaderComponent?: React.ComponentType;\n /** Overrides for the SDK's own icons, keyed by icon name. Merged per slot with the defaults, so overriding one icon leaves the rest intact. Read through [useComponentContextIcons](https://github.com/GetStream/stream-chat-react/blob/master/src/context/useComponentContextIcons.ts) */\n icons?: IconSlots;\n /** Custom UI component handling how the message composer is rendered, defaults to and accepts the same props as [MessageComposerUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/MessageComposerUI.tsx) */\n MessageComposerUI?: React.ComponentType<MessageComposerProps>;\n /** Custom component to render link previews in message composer **/\n LinkPreviewList?: React.ComponentType;\n /** Custom UI component to be shown if the channel query fails, defaults to and accepts same props as: [LoadingErrorIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/LoadingErrorIndicator.tsx) */\n LoadingErrorIndicator?: React.ComponentType<LoadingErrorIndicatorProps>;\n /** Custom UI component to render while the `MessageList` is loading new messages, defaults to and accepts same props as: [LoadingIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/LoadingIndicator.tsx) */\n LoadingIndicator?: React.ComponentType<LoadingIndicatorProps>;\n /** Custom UI component for determinate progress (0–100), defaults to and accepts same props as: [ProgressIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/progress-indicators.tsx) */\n ProgressIndicator?: React.ComponentType<ProgressIndicatorProps>;\n /** Custom UI component to display a message in the standard `MessageList`, defaults to and accepts the same props as: [MessageUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageUI.tsx) */\n MessageUI?: React.ComponentType<MessageUIComponentProps>;\n /** Custom UI component for message actions popup, accepts no props, all the defaults are set within [MessageActions (unstable)](https://github.com/GetStream/stream-chat-react/blob/master/src/experimental/MessageActions/MessageActions.tsx) */\n MessageActions?: React.ComponentType;\n /** Custom UI component to display the contents of a bounced message modal. Usually it allows to retry, edit, or delete the message. Defaults to and accepts the same props as: [MessageBouncePrompt](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageBounce/MessageBouncePrompt.tsx) */\n MessageBouncePrompt?: React.ComponentType<MessageBouncePromptProps>;\n /** Custom UI component for a moderation-blocked message, defaults to and accepts same props as: [MessageBlocked](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageBlocked.tsx) */\n MessageBlocked?: React.ComponentType;\n /** Custom UI component for a deleted message. Has no default component */\n MessageDeleted?: React.ComponentType<MessageDeletedProps>;\n /** Custom UI component for a message bubble of a deleted message, defaults to and accepts same props as: [MessageDeletedBubble](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageDeletedBubble.tsx) */\n MessageDeletedBubble?: React.ComponentType;\n MessageListMainPanel?: React.ComponentType<PropsWithChildrenOnly>;\n /** Custom UI component to render a single notification item in NotificationList, defaults to and accepts same props as: [Notification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Notifications/Notification.tsx) */\n Notification?: React.ForwardRefExoticComponent<\n NotificationProps & React.RefAttributes<HTMLDivElement>\n >;\n /** Custom UI component to render screen-reader notification announcements, defaults to and accepts same props as: [NotificationAnnouncer](https://github.com/GetStream/stream-chat-react/blob/master/src/a11y/NotificationAnnouncer.tsx) */\n NotificationAnnouncer?: React.ComponentType<NotificationAnnouncerProps>;\n /** Custom UI component to display notifications rendered by `NotificationList`, defaults to and accepts same props as: [NotificationList](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Notifications/NotificationList.tsx) */\n NotificationList?: React.ComponentType<NotificationListProps>;\n /** Custom UI component to display a notification when scrolled up the list and new messages arrive, defaults to and accepts same props as [NewMessageNotification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/NewMessageNotification.tsx) */\n NewMessageNotification?: React.ComponentType<NewMessageNotificationProps>;\n /** Custom UI component to display the scroll-to-latest-message button in a `MessageList`, defaults to and accepts same props as: [ScrollToLatestMessageButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/ScrollToLatestMessageButton.tsx) */\n ScrollToLatestMessageButton?: React.ComponentType<ScrollToLatestMessageButtonProps>;\n /** Custom UI component to display message replies, defaults to and accepts same props as: [MessageRepliesCountButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageRepliesCountButton.tsx) */\n MessageRepliesCountButton?: React.ComponentType<MessageRepliesCountButtonProps>;\n /** Custom UI component to display message delivery status, defaults to and accepts same props as: [MessageStatus](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageStatus.tsx) */\n MessageStatus?: React.ComponentType<MessageStatusProps>;\n /** Custom UI component to display system messages, defaults to and accepts same props as: [EventComponent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/EventComponent/EventComponent.tsx) */\n MessageSystem?: React.ComponentType<EventComponentProps>;\n /** Custom UI component to display a timestamp on a message, defaults to and accepts same props as: [MessageTimestamp](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageTimestamp.tsx) */\n MessageTimestamp?: React.ComponentType<MessageTimestampProps>;\n /** Custom UI component for viewing content in a modal, defaults to and accepts the same props as [Modal](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Modal/Modal.tsx) */\n Modal?: React.ComponentType<ModalProps>;\n /** Custom UI component for viewing message's image attachments with option to expand into the Gallery on Modal, defaults to and accepts the same props as [ModalGallery](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Gallery/ModalGallery.tsx) */\n ModalGallery?: React.ComponentType<ModalGalleryProps>;\n /** Custom UI component to show \"Also sent in channel\" in thread message lists when message.show_in_channel is true, defaults to and accepts same props as: [MessageAlsoSentInChannelIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageAlsoSentInChannelIndicator.tsx) */\n MessageAlsoSentInChannelIndicator?: React.ComponentType;\n /** Custom UI component to override default pinned message indicator, defaults to and accepts same props as: [PinIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/PinIndicator.tsx) */\n PinIndicator?: React.ComponentType<PinIndicatorProps>;\n /** Custom UI component to override default poll actions rendering in a message, defaults to and accepts same props as: [PollActions](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollActions/PollActions.tsx) */\n PollActions?: React.ComponentType;\n /** Custom UI component to override default poll rendering in a message, defaults to and accepts same props as: [PollContent](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollContent.tsx) */\n PollContent?: React.ComponentType;\n /** Custom UI component to override default poll creation dialog contents, defaults to and accepts same props as: [PollCreationDialog](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollCreationDialog/PollCreationDialog.tsx) */\n PollCreationDialog?: React.ComponentType<PollCreationDialogProps>;\n /** Custom UI component to override default poll header in a message, defaults to and accepts same props as: [PollHeader](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollHeader.tsx) */\n PollHeader?: React.ComponentType;\n /** Custom UI component to override default poll option selector, defaults to and accepts same props as: [PollOptionSelector](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Poll/PollOptionSelector.tsx) */\n PollOptionSelector?: React.ComponentType<PollOptionSelectorProps>;\n /** Custom UI component to override quoted message UI on a sent message, defaults to and accepts same props as: [QuotedMessage](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/QuotedMessage.tsx) */\n QuotedMessage?: React.ComponentType;\n /** Custom UI component to override the message input's quoted message preview, defaults to and accepts same props as: [QuotedMessagePreview](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/QuotedMessagePreview.tsx) */\n QuotedMessagePreview?: React.ComponentType<QuotedMessagePreviewProps>;\n /** Custom reaction options to be applied to ReactionSelector, ReactionList and SimpleReactionList components */\n reactionOptions?: ReactionOptions;\n /** Custom UI component to display the reaction selector, defaults to and accepts same props as: [ReactionSelector](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Reactions/ReactionSelector.tsx) */\n ReactionSelector?: React.ForwardRefExoticComponent<ReactionSelectorProps>;\n ReactionSelectorExtendedList?: React.ComponentType<\n ComponentProps<(typeof ReactionSelector)['ExtendedList']>\n >;\n /** Custom UI component to display the list of reactions on a message, defaults to and accepts same props as: [MessageReactions](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Reactions/MessageReactions.tsx) */\n MessageReactions?: React.ComponentType<MessageReactionsProps>;\n /** Custom UI component to display the reactions modal, defaults to and accepts same props as: [MessageReactionsDetail](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Reactions/MessageReactionsDetail.tsx) */\n MessageReactionsDetail?: React.ComponentType<MessageReactionsDetailProps>;\n RecordingPermissionDeniedNotification?: React.ComponentType<RecordingPermissionDeniedNotificationProps>;\n /** Custom UI component to display the message reminder information in the Message UI, defaults to and accepts same props as: [ReminderNotification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/ReminderNotification.tsx) */\n ReminderNotification?: React.ComponentType<ReminderNotificationProps>;\n /** Custom UI component to display the message translation indicator when message has i18n, defaults to and accepts same props as: [MessageTranslationIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/TranslationIndicator.tsx) */\n MessageTranslationIndicator?: React.ComponentType<TranslationIndicatorProps>;\n /** Custom UI component to display the edited indicator and tooltip when a message has been edited, defaults to and accepts same props as: [MessageEditedIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageEditedIndicator.tsx) */\n MessageEditedIndicator?: React.ComponentType<MessageEditedIndicatorProps>;\n /** Custom component to display the search UI, defaults to and accepts same props as: [Search](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/Search.tsx) */\n Search?: React.ComponentType;\n /** Custom component to display the UI where the searched string is entered, defaults to and accepts same props as: [SearchBar](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchBar/SearchBar.tsx) */\n SearchBar?: React.ComponentType;\n /** Custom component for the search UI dedicated to display the results area, defaults to and accepts same props as: [SearchResults](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchResults.tsx) */\n SearchResults?: React.ComponentType;\n /** Custom UI component to display header of search results pane, defaults to and accepts same props as: [SearchResultsHeader](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchResultsHeader.tsx) */\n SearchResultsHeader?: React.ComponentType;\n /** Custom component to display search results pane before emitting the first search query for a given source, defaults to and accepts same props as: [SearchResultsPresearch](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultsPresearch.tsx) */\n SearchResultsPresearch?: React.ComponentType<SearchResultsPresearchProps>;\n /** Custom component to display the search source items results, defaults to and accepts same props as: [SearchSourceResultList](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultList.tsx) */\n SearchSourceResultList?: React.ComponentType<SearchSourceResultListProps>;\n /** Custom component to indicate the end of the last page for a searched source, defaults to and accepts same props as: [SearchSourceResultListFooter](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultListFooter.tsx) */\n SearchSourceResultListFooter?: React.ComponentType;\n /** Custom UI component to display search results items for a given search source pane, defaults to and accepts same props as: [SearchSourceResults](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SourceSearchResults.tsx) */\n SearchSourceResults?: React.ComponentType;\n /** Custom component to display the search source results UI with 0 items found, defaults to and accepts same props as: [SearchSourceResultsEmpty](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultsEmpty.tsx) */\n SearchSourceResultsEmpty?: React.ComponentType;\n /** Custom component to display the header content for a given search source results, no default component is provided. */\n SearchSourceResultsHeader?: React.ComponentType;\n /** Custom component to display the search source results UI during the search query execution, defaults to and accepts same props as: [SearchSourceResultsLoadingIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Search/SearchResults/SearchSourceResultsLoadingIndicator.tsx) */\n SearchSourceResultsLoadingIndicator?: React.ComponentType;\n /** Custom UI component for send button, defaults to and accepts same props as: [SendButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/icons.tsx) */\n SendButton?: React.ComponentType<SendButtonProps>;\n /** Custom UI component checkbox that indicates message to be sent to main channel, defaults to and accepts same props as: [SendToChannelCheckbox](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageComposer/SendToChannelCheckbox.tsx) */\n SendToChannelCheckbox?: React.ComponentType;\n /** Custom UI component to render the location sharing dialog, defaults to and accepts same props as: [ShareLocationDialog](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Location/ShareLocationDialog.tsx) */\n ShareLocationDialog?: React.ComponentType<ShareLocationDialogProps>;\n /** Custom UI component button for initiating audio recording, defaults to and accepts same props as: [StartRecordingAudioButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.tsx) */\n StartRecordingAudioButton?: React.ComponentType<StartRecordingAudioButtonProps>;\n StopAIGenerationButton?: React.ComponentType<StopAIGenerationButtonProps> | null;\n StreamedMessageText?: React.ComponentType<StreamedMessageTextProps>;\n /** Custom UI component to handle message text input, defaults to and accepts same props as [TextareaComposer](https://github.com/GetStream/stream-chat-react/blob/master/src/components/TextareaComposer/TextareaComposer.tsx) */\n TextareaComposer?: React.ComponentType<TextareaComposerProps>;\n /** Custom UI component that displays thread's parent or other message at the top of the `MessageList`, defaults to and accepts same props as [MessageUI](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageUI.tsx) */\n ThreadHead?: React.ComponentType<MessageProps>;\n ThreadListEmptyPlaceholder?: React.ComponentType;\n ThreadListItem?: React.ComponentType<ThreadListItemProps>;\n ThreadListItemUI?: React.ComponentType<ThreadListItemUIProps>;\n ThreadListLoadingIndicator?: React.ComponentType;\n ThreadListUnseenThreadsBanner?: React.ComponentType;\n /** Custom UI component to display the start of a threaded `MessageList`, defaults to and accepts same props as: [DefaultThreadStart](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Thread/Thread.tsx) */\n ThreadStart?: React.ComponentType;\n /** Custom UI component to display a date used in timestamps. It's used internally by the default `MessageTimestamp`, and to display a timestamp for edited messages. */\n Timestamp?: React.ComponentType<TimestampProps>;\n /** Custom UI component for the typing indicator, defaults to and accepts same props as: [TypingIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/TypingIndicator/TypingIndicator.tsx) */\n TypingIndicator?: React.ComponentType<TypingIndicatorProps>;\n /** Custom UI component that indicates a user is viewing unread messages. It disappears once the user scrolls to UnreadMessagesSeparator. Defaults to and accepts same props as: [UnreadMessagesNotification](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/UnreadMessagesNotification.tsx) */\n UnreadMessagesNotification?: React.ComponentType<UnreadMessagesNotificationProps>;\n /** Custom UI component rendered at the end of sidebar headers (ChannelListHeader, ThreadListHeader). No default — if omitted, the slot is empty. */\n HeaderEndContent?: React.ComponentType;\n /** Custom UI component that separates read messages from unread, defaults to and accepts same props as: [UnreadMessagesSeparator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageList/UnreadMessagesSeparator.tsx) */\n UnreadMessagesSeparator?: React.ComponentType<UnreadMessagesSeparatorProps>;\n /** Custom UI component for uploaded vs total byte size during attachment upload (MessageComposer previews), defaults to and accepts same props as: [UploadedSizeIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/UploadedSizeIndicator.tsx) */\n UploadedSizeIndicator?: React.ComponentType<UploadedSizeIndicatorProps>;\n /** Component used to play video. If not provided, ReactPlayer is used as a default video player. */\n VideoPlayer?: React.ComponentType<VideoPlayerProps>;\n /** Custom UI component to display a message in the `VirtualizedMessageList`, does not have a default implementation */\n VirtualMessage?: React.ComponentType<MessageUIComponentProps>;\n /** Custom UI component to wrap MessageList children. Default is the `ul` tag */\n MessageListWrapper?: React.ComponentType<PropsWithChildren>;\n /** Custom UI component to wrap each element of MessageList. Default is the `li` tag */\n MessageListItem?: React.ComponentType<PropsWithChildren>;\n};\n\nexport const ComponentContext = React.createContext<ComponentContextValue>({});\n\nexport const ComponentProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: Partial<ComponentContextValue>;\n}>) => <ComponentContext.Provider value={value}>{children}</ComponentContext.Provider>;\n\nexport const useComponentContext = () => useContext(ComponentContext);\n"],"mappings":";;;AAmUA,IAAa,mBAAmB,MAAM,cAAqC,CAAC,CAAC;AAE7E,IAAa,qBAAqB,EAChC,UACA,YAGK,oBAAC,iBAAiB,UAAlB;CAAkC;CAAQ;AAAoC,CAAA;AAErF,IAAa,4BAA4B,WAAW,gBAAgB"}
@@ -2,7 +2,7 @@ import { DialogManager } from "../components/Dialog/service/DialogManager.mjs";
2
2
  import { DialogPortalDestination } from "../components/Dialog/service/DialogPortal.mjs";
3
3
  import React, { useContext, useEffect, useMemo, useState } from "react";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
5
- import { StateStore } from "stream-chat";
5
+ import { StateStore } from "@stream-io/state-store";
6
6
  //#region src/context/DialogManagerContext.tsx
7
7
  var dialogManagersRegistry = new StateStore({});
8
8
  var getDialogManager = (id) => dialogManagersRegistry.getLatestValue()[id];
@@ -103,7 +103,7 @@ var useDialogManager = ({ dialogId, dialogManagerId } = {}) => {
103
103
  dialogManagerId,
104
104
  nearestDialogManagerContext?.dialogManager
105
105
  ]);
106
- if (!dialogManagerContext?.dialogManager) console.warn(`Dialog manager (manager id: ${dialogManagerId}, dialog id: ${dialogId}) is not available`);
106
+ if (!dialogManagerContext?.dialogManager) throw new Error(`useDialogManager could not resolve a dialog manager (manager id: ${dialogManagerId}, dialog id: ${dialogId}). Make sure the caller is rendered within <DialogManagerProvider>.`);
107
107
  return dialogManagerContext;
108
108
  };
109
109
  var modalDialogManagerId = "modal-dialog-manager";
@@ -1 +1 @@
1
- {"version":3,"file":"DialogManagerContext.mjs","names":[],"sources":["../../../src/context/DialogManagerContext.tsx"],"sourcesContent":["import React, {\n type PropsWithChildren,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport { StateStore } from 'stream-chat';\n\nimport { DialogManager } from '../components/Dialog/service/DialogManager';\nimport {\n DialogPortalDestination,\n type DialogPortalDestinationProps,\n} from '../components/Dialog/service/DialogPortal';\nimport type { PropsWithChildrenOnly } from '../types/types';\n\ntype DialogManagerId = string;\n\ntype DialogManagersState = Record<DialogManagerId, DialogManager | undefined>;\nconst dialogManagersRegistry: StateStore<DialogManagersState> = new StateStore({});\n\nconst getDialogManager = (id: string): DialogManager | undefined =>\n dialogManagersRegistry.getLatestValue()[id];\n\nconst getOrCreateDialogManager = ({\n closeOnClickOutside,\n id,\n}: {\n closeOnClickOutside?: boolean;\n id: string;\n}) => {\n let manager = getDialogManager(id);\n if (!manager) {\n manager = new DialogManager({ closeOnClickOutside, id });\n dialogManagersRegistry.partialNext({ [id]: manager });\n } else if (typeof closeOnClickOutside === 'boolean') {\n manager.closeOnClickOutside = closeOnClickOutside;\n }\n return manager;\n};\n\nconst removeDialogManager = (id: string) => {\n if (!getDialogManager(id)) return;\n dialogManagersRegistry.partialNext({ [id]: undefined });\n};\n\ntype DialogManagerProviderContextValue = {\n dialogManager: DialogManager;\n};\n\nconst DialogManagerProviderContext = React.createContext<\n DialogManagerProviderContextValue | undefined\n>(undefined);\n\ntype DialogManagerProviderProps = PropsWithChildren<{\n /**\n * Manager-level outside click policy.\n * When `true`, clicking overlay or outside overlay-covered area closes all dialogs\n * in this manager. When `false`, outside clicks do not dismiss dialogs.\n */\n closeOnClickOutside?: boolean;\n portalDestinationProps?: DialogPortalDestinationProps;\n id?: string;\n}>;\n\n/**\n * Creates/provides a dialog manager and its portal destination.\n */\nexport const DialogManagerProvider = ({\n children,\n closeOnClickOutside,\n id,\n portalDestinationProps,\n}: DialogManagerProviderProps) => {\n const [dialogManager, setDialogManager] = useState<DialogManager | null>(() => {\n if (id) return getDialogManager(id) ?? null;\n return new DialogManager({ closeOnClickOutside }); // will not be included in the registry\n });\n\n useEffect(() => {\n if (!id) return;\n setDialogManager(getOrCreateDialogManager({ closeOnClickOutside, id }));\n return () => {\n removeDialogManager(id);\n setDialogManager(null);\n };\n }, [closeOnClickOutside, id]);\n\n // temporarily do not render until a new dialog manager is created\n if (!dialogManager) return null;\n\n return (\n <DialogManagerProviderContext.Provider value={{ dialogManager }}>\n {children}\n <DialogPortalDestination {...portalDestinationProps} />\n </DialogManagerProviderContext.Provider>\n );\n};\n\nexport type UseDialogManagerParams = {\n dialogId?: string;\n dialogManagerId?: string;\n};\n\nconst getManagerFromStore = ({\n dialogId,\n dialogManagerId,\n newState,\n previousState,\n}: UseDialogManagerParams & {\n newState: DialogManagersState;\n previousState: DialogManagersState | undefined;\n}) => {\n let managerInNewState: DialogManager | undefined;\n let managerInPrevState: DialogManager | undefined;\n if (dialogManagerId) {\n if (!dialogId) {\n managerInNewState = newState[dialogManagerId];\n managerInPrevState = previousState?.[dialogManagerId];\n } else {\n if (newState[dialogManagerId]?.get(dialogId)) {\n managerInNewState = newState[dialogManagerId];\n }\n if (previousState?.[dialogManagerId]?.get(dialogId)) {\n managerInPrevState = previousState[dialogManagerId];\n }\n }\n } else if (dialogId) {\n managerInNewState = Object.values(newState).find(\n (dialogMng) => dialogId && dialogMng?.get(dialogId),\n );\n managerInPrevState =\n previousState &&\n Object.values(previousState).find(\n (dialogMng) => dialogId && dialogMng?.get(dialogId),\n );\n }\n\n return { managerInNewState, managerInPrevState };\n};\n\n/**\n * Retrieves the nearest dialog manager or searches for the dialog manager by dialog manager id or dialog id.\n * Dialog id will take precedence over dialog manager id if both are provided and dialog manager is found by dialog id.\n */\nexport const useDialogManager = ({\n dialogId,\n dialogManagerId,\n}: UseDialogManagerParams = {}) => {\n const nearestDialogManagerContext = useContext(DialogManagerProviderContext);\n\n const [dialogManagerContext, setDialogManagerContext] = useState<\n DialogManagerProviderContextValue | undefined\n >(() => {\n const { managerInNewState } = getManagerFromStore({\n dialogId,\n dialogManagerId,\n newState: dialogManagersRegistry.getLatestValue(),\n previousState: undefined,\n });\n return managerInNewState\n ? { dialogManager: managerInNewState }\n : nearestDialogManagerContext;\n });\n\n useEffect(() => {\n if (!dialogId && !dialogManagerId) return;\n const unsubscribe = dialogManagersRegistry.subscribeWithSelector(\n (state) => state,\n (newState, previousState) => {\n const { managerInNewState, managerInPrevState } = getManagerFromStore({\n dialogId,\n dialogManagerId,\n newState,\n previousState,\n });\n\n if (!managerInPrevState || managerInNewState?.id !== managerInPrevState.id) {\n setDialogManagerContext((prevState) => {\n if (prevState?.dialogManager.id === managerInNewState?.id) return prevState;\n // fixme: need to handle the possibility that the dialogManager is undefined\n return {\n dialogManager:\n managerInNewState || nearestDialogManagerContext?.dialogManager,\n } as DialogManagerProviderContextValue;\n });\n }\n },\n );\n return () => {\n unsubscribe();\n };\n }, [dialogId, dialogManagerId, nearestDialogManagerContext?.dialogManager]);\n\n if (!dialogManagerContext?.dialogManager) {\n console.warn(\n `Dialog manager (manager id: ${dialogManagerId}, dialog id: ${dialogId}) is not available`,\n );\n }\n\n return dialogManagerContext as DialogManagerProviderContextValue;\n};\n\nexport const modalDialogManagerId = 'modal-dialog-manager' as const;\n\nexport const ModalDialogManagerProvider = ({ children }: PropsWithChildrenOnly) => (\n <DialogManagerProvider id={modalDialogManagerId}>{children}</DialogManagerProvider>\n);\n\nexport const useModalDialogManager = () =>\n useMemo(() => getDialogManager(modalDialogManagerId), []);\n\nexport const useNearestDialogManagerContext = () =>\n useContext(DialogManagerProviderContext);\n"],"mappings":";;;;;;AAmBA,IAAM,yBAA0D,IAAI,WAAW,CAAC,CAAC;AAEjF,IAAM,oBAAoB,OACxB,uBAAuB,eAAe,CAAC,CAAC;AAE1C,IAAM,4BAA4B,EAChC,qBACA,SAII;CACJ,IAAI,UAAU,iBAAiB,EAAE;CACjC,IAAI,CAAC,SAAS;EACZ,UAAU,IAAI,cAAc;GAAE;GAAqB;EAAG,CAAC;EACvD,uBAAuB,YAAY,GAAG,KAAK,QAAQ,CAAC;CACtD,OAAO,IAAI,OAAO,wBAAwB,WACxC,QAAQ,sBAAsB;CAEhC,OAAO;AACT;AAEA,IAAM,uBAAuB,OAAe;CAC1C,IAAI,CAAC,iBAAiB,EAAE,GAAG;CAC3B,uBAAuB,YAAY,GAAG,KAAK,KAAA,EAAU,CAAC;AACxD;AAMA,IAAM,+BAA+B,MAAM,cAEzC,KAAA,CAAS;;;;AAgBX,IAAa,yBAAyB,EACpC,UACA,qBACA,IACA,6BACgC;CAChC,MAAM,CAAC,eAAe,oBAAoB,eAAqC;EAC7E,IAAI,IAAI,OAAO,iBAAiB,EAAE,KAAK;EACvC,OAAO,IAAI,cAAc,EAAE,oBAAoB,CAAC;CAClD,CAAC;CAED,gBAAgB;EACd,IAAI,CAAC,IAAI;EACT,iBAAiB,yBAAyB;GAAE;GAAqB;EAAG,CAAC,CAAC;EACtE,aAAa;GACX,oBAAoB,EAAE;GACtB,iBAAiB,IAAI;EACvB;CACF,GAAG,CAAC,qBAAqB,EAAE,CAAC;CAG5B,IAAI,CAAC,eAAe,OAAO;CAE3B,OACE,qBAAC,6BAA6B,UAA9B;EAAuC,OAAO,EAAE,cAAc;YAA9D,CACG,UACD,oBAAC,yBAAD,EAAyB,GAAI,uBAAyB,CAAA,CACjB;;AAE3C;AAOA,IAAM,uBAAuB,EAC3B,UACA,iBACA,UACA,oBAII;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI,iBACF,IAAI,CAAC,UAAU;EACb,oBAAoB,SAAS;EAC7B,qBAAqB,gBAAgB;CACvC,OAAO;EACL,IAAI,SAAS,gBAAgB,EAAE,IAAI,QAAQ,GACzC,oBAAoB,SAAS;EAE/B,IAAI,gBAAgB,gBAAgB,EAAE,IAAI,QAAQ,GAChD,qBAAqB,cAAc;CAEvC;MACK,IAAI,UAAU;EACnB,oBAAoB,OAAO,OAAO,QAAQ,CAAC,CAAC,MACzC,cAAc,YAAY,WAAW,IAAI,QAAQ,CACpD;EACA,qBACE,iBACA,OAAO,OAAO,aAAa,CAAC,CAAC,MAC1B,cAAc,YAAY,WAAW,IAAI,QAAQ,CACpD;CACJ;CAEA,OAAO;EAAE;EAAmB;CAAmB;AACjD;;;;;AAMA,IAAa,oBAAoB,EAC/B,UACA,oBAC0B,CAAC,MAAM;CACjC,MAAM,8BAA8B,WAAW,4BAA4B;CAE3E,MAAM,CAAC,sBAAsB,2BAA2B,eAEhD;EACN,MAAM,EAAE,sBAAsB,oBAAoB;GAChD;GACA;GACA,UAAU,uBAAuB,eAAe;GAChD,eAAe,KAAA;EACjB,CAAC;EACD,OAAO,oBACH,EAAE,eAAe,kBAAkB,IACnC;CACN,CAAC;CAED,gBAAgB;EACd,IAAI,CAAC,YAAY,CAAC,iBAAiB;EACnC,MAAM,cAAc,uBAAuB,uBACxC,UAAU,QACV,UAAU,kBAAkB;GAC3B,MAAM,EAAE,mBAAmB,uBAAuB,oBAAoB;IACpE;IACA;IACA;IACA;GACF,CAAC;GAED,IAAI,CAAC,sBAAsB,mBAAmB,OAAO,mBAAmB,IACtE,yBAAyB,cAAc;IACrC,IAAI,WAAW,cAAc,OAAO,mBAAmB,IAAI,OAAO;IAElE,OAAO,EACL,eACE,qBAAqB,6BAA6B,cACtD;GACF,CAAC;EAEL,CACF;EACA,aAAa;GACX,YAAY;EACd;CACF,GAAG;EAAC;EAAU;EAAiB,6BAA6B;CAAa,CAAC;CAE1E,IAAI,CAAC,sBAAsB,eACzB,QAAQ,KACN,+BAA+B,gBAAgB,eAAe,SAAS,mBACzE;CAGF,OAAO;AACT;AAEA,IAAa,uBAAuB;AAEpC,IAAa,8BAA8B,EAAE,eAC3C,oBAAC,uBAAD;CAAuB,IAAI;CAAuB;AAAgC,CAAA;AAGpF,IAAa,8BACX,cAAc,iBAAiB,oBAAoB,GAAG,CAAC,CAAC;AAE1D,IAAa,uCACX,WAAW,4BAA4B"}
1
+ {"version":3,"file":"DialogManagerContext.mjs","names":[],"sources":["../../../src/context/DialogManagerContext.tsx"],"sourcesContent":["import React, {\n type PropsWithChildren,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport { StateStore } from '@stream-io/state-store';\n\nimport { DialogManager } from '../components/Dialog/service/DialogManager';\nimport {\n DialogPortalDestination,\n type DialogPortalDestinationProps,\n} from '../components/Dialog/service/DialogPortal';\nimport type { PropsWithChildrenOnly } from '../types/types';\n\ntype DialogManagerId = string;\n\ntype DialogManagersState = Record<DialogManagerId, DialogManager | undefined>;\nconst dialogManagersRegistry: StateStore<DialogManagersState> = new StateStore({});\n\nconst getDialogManager = (id: string): DialogManager | undefined =>\n dialogManagersRegistry.getLatestValue()[id];\n\nconst getOrCreateDialogManager = ({\n closeOnClickOutside,\n id,\n}: {\n closeOnClickOutside?: boolean;\n id: string;\n}) => {\n let manager = getDialogManager(id);\n if (!manager) {\n manager = new DialogManager({ closeOnClickOutside, id });\n dialogManagersRegistry.partialNext({ [id]: manager });\n } else if (typeof closeOnClickOutside === 'boolean') {\n manager.closeOnClickOutside = closeOnClickOutside;\n }\n return manager;\n};\n\nconst removeDialogManager = (id: string) => {\n if (!getDialogManager(id)) return;\n dialogManagersRegistry.partialNext({ [id]: undefined });\n};\n\ntype DialogManagerProviderContextValue = {\n dialogManager: DialogManager;\n};\n\nconst DialogManagerProviderContext = React.createContext<\n DialogManagerProviderContextValue | undefined\n>(undefined);\n\ntype DialogManagerProviderProps = PropsWithChildren<{\n /**\n * Manager-level outside click policy.\n * When `true`, clicking overlay or outside overlay-covered area closes all dialogs\n * in this manager. When `false`, outside clicks do not dismiss dialogs.\n */\n closeOnClickOutside?: boolean;\n portalDestinationProps?: DialogPortalDestinationProps;\n id?: string;\n}>;\n\n/**\n * Creates/provides a dialog manager and its portal destination.\n */\nexport const DialogManagerProvider = ({\n children,\n closeOnClickOutside,\n id,\n portalDestinationProps,\n}: DialogManagerProviderProps) => {\n const [dialogManager, setDialogManager] = useState<DialogManager | null>(() => {\n if (id) return getDialogManager(id) ?? null;\n return new DialogManager({ closeOnClickOutside }); // will not be included in the registry\n });\n\n useEffect(() => {\n if (!id) return;\n setDialogManager(getOrCreateDialogManager({ closeOnClickOutside, id }));\n return () => {\n removeDialogManager(id);\n setDialogManager(null);\n };\n }, [closeOnClickOutside, id]);\n\n // temporarily do not render until a new dialog manager is created\n if (!dialogManager) return null;\n\n return (\n <DialogManagerProviderContext.Provider value={{ dialogManager }}>\n {children}\n <DialogPortalDestination {...portalDestinationProps} />\n </DialogManagerProviderContext.Provider>\n );\n};\n\nexport type UseDialogManagerParams = {\n dialogId?: string;\n dialogManagerId?: string;\n};\n\nconst getManagerFromStore = ({\n dialogId,\n dialogManagerId,\n newState,\n previousState,\n}: UseDialogManagerParams & {\n newState: DialogManagersState;\n previousState: DialogManagersState | undefined;\n}) => {\n let managerInNewState: DialogManager | undefined;\n let managerInPrevState: DialogManager | undefined;\n if (dialogManagerId) {\n if (!dialogId) {\n managerInNewState = newState[dialogManagerId];\n managerInPrevState = previousState?.[dialogManagerId];\n } else {\n if (newState[dialogManagerId]?.get(dialogId)) {\n managerInNewState = newState[dialogManagerId];\n }\n if (previousState?.[dialogManagerId]?.get(dialogId)) {\n managerInPrevState = previousState[dialogManagerId];\n }\n }\n } else if (dialogId) {\n managerInNewState = Object.values(newState).find(\n (dialogMng) => dialogId && dialogMng?.get(dialogId),\n );\n managerInPrevState =\n previousState &&\n Object.values(previousState).find(\n (dialogMng) => dialogId && dialogMng?.get(dialogId),\n );\n }\n\n return { managerInNewState, managerInPrevState };\n};\n\n/**\n * Retrieves the nearest dialog manager or searches for the dialog manager by dialog manager id or dialog id.\n * Dialog id will take precedence over dialog manager id if both are provided and dialog manager is found by dialog id.\n */\nexport const useDialogManager = ({\n dialogId,\n dialogManagerId,\n}: UseDialogManagerParams = {}) => {\n const nearestDialogManagerContext = useContext(DialogManagerProviderContext);\n\n const [dialogManagerContext, setDialogManagerContext] = useState<\n DialogManagerProviderContextValue | undefined\n >(() => {\n const { managerInNewState } = getManagerFromStore({\n dialogId,\n dialogManagerId,\n newState: dialogManagersRegistry.getLatestValue(),\n previousState: undefined,\n });\n return managerInNewState\n ? { dialogManager: managerInNewState }\n : nearestDialogManagerContext;\n });\n\n useEffect(() => {\n if (!dialogId && !dialogManagerId) return;\n const unsubscribe = dialogManagersRegistry.subscribeWithSelector(\n (state) => state,\n (newState, previousState) => {\n const { managerInNewState, managerInPrevState } = getManagerFromStore({\n dialogId,\n dialogManagerId,\n newState,\n previousState,\n });\n\n if (!managerInPrevState || managerInNewState?.id !== managerInPrevState.id) {\n setDialogManagerContext((prevState) => {\n if (prevState?.dialogManager.id === managerInNewState?.id) return prevState;\n // an unresolved manager is caught by the guard below\n return {\n dialogManager:\n managerInNewState || nearestDialogManagerContext?.dialogManager,\n } as DialogManagerProviderContextValue;\n });\n }\n },\n );\n return () => {\n unsubscribe();\n };\n }, [dialogId, dialogManagerId, nearestDialogManagerContext?.dialogManager]);\n\n if (!dialogManagerContext?.dialogManager) {\n throw new Error(\n `useDialogManager could not resolve a dialog manager (manager id: ${dialogManagerId}, dialog id: ${dialogId}). Make sure the caller is rendered within <DialogManagerProvider>.`,\n );\n }\n\n return dialogManagerContext;\n};\n\nexport const modalDialogManagerId = 'modal-dialog-manager' as const;\n\nexport const ModalDialogManagerProvider = ({ children }: PropsWithChildrenOnly) => (\n <DialogManagerProvider id={modalDialogManagerId}>{children}</DialogManagerProvider>\n);\n\nexport const useModalDialogManager = () =>\n useMemo(() => getDialogManager(modalDialogManagerId), []);\n\nexport const useNearestDialogManagerContext = () =>\n useContext(DialogManagerProviderContext);\n"],"mappings":";;;;;;AAmBA,IAAM,yBAA0D,IAAI,WAAW,CAAC,CAAC;AAEjF,IAAM,oBAAoB,OACxB,uBAAuB,eAAe,CAAC,CAAC;AAE1C,IAAM,4BAA4B,EAChC,qBACA,SAII;CACJ,IAAI,UAAU,iBAAiB,EAAE;CACjC,IAAI,CAAC,SAAS;EACZ,UAAU,IAAI,cAAc;GAAE;GAAqB;EAAG,CAAC;EACvD,uBAAuB,YAAY,GAAG,KAAK,QAAQ,CAAC;CACtD,OAAO,IAAI,OAAO,wBAAwB,WACxC,QAAQ,sBAAsB;CAEhC,OAAO;AACT;AAEA,IAAM,uBAAuB,OAAe;CAC1C,IAAI,CAAC,iBAAiB,EAAE,GAAG;CAC3B,uBAAuB,YAAY,GAAG,KAAK,KAAA,EAAU,CAAC;AACxD;AAMA,IAAM,+BAA+B,MAAM,cAEzC,KAAA,CAAS;;;;AAgBX,IAAa,yBAAyB,EACpC,UACA,qBACA,IACA,6BACgC;CAChC,MAAM,CAAC,eAAe,oBAAoB,eAAqC;EAC7E,IAAI,IAAI,OAAO,iBAAiB,EAAE,KAAK;EACvC,OAAO,IAAI,cAAc,EAAE,oBAAoB,CAAC;CAClD,CAAC;CAED,gBAAgB;EACd,IAAI,CAAC,IAAI;EACT,iBAAiB,yBAAyB;GAAE;GAAqB;EAAG,CAAC,CAAC;EACtE,aAAa;GACX,oBAAoB,EAAE;GACtB,iBAAiB,IAAI;EACvB;CACF,GAAG,CAAC,qBAAqB,EAAE,CAAC;CAG5B,IAAI,CAAC,eAAe,OAAO;CAE3B,OACE,qBAAC,6BAA6B,UAA9B;EAAuC,OAAO,EAAE,cAAc;YAA9D,CACG,UACD,oBAAC,yBAAD,EAAyB,GAAI,uBAAyB,CAAA,CACjB;;AAE3C;AAOA,IAAM,uBAAuB,EAC3B,UACA,iBACA,UACA,oBAII;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI,iBACF,IAAI,CAAC,UAAU;EACb,oBAAoB,SAAS;EAC7B,qBAAqB,gBAAgB;CACvC,OAAO;EACL,IAAI,SAAS,gBAAgB,EAAE,IAAI,QAAQ,GACzC,oBAAoB,SAAS;EAE/B,IAAI,gBAAgB,gBAAgB,EAAE,IAAI,QAAQ,GAChD,qBAAqB,cAAc;CAEvC;MACK,IAAI,UAAU;EACnB,oBAAoB,OAAO,OAAO,QAAQ,CAAC,CAAC,MACzC,cAAc,YAAY,WAAW,IAAI,QAAQ,CACpD;EACA,qBACE,iBACA,OAAO,OAAO,aAAa,CAAC,CAAC,MAC1B,cAAc,YAAY,WAAW,IAAI,QAAQ,CACpD;CACJ;CAEA,OAAO;EAAE;EAAmB;CAAmB;AACjD;;;;;AAMA,IAAa,oBAAoB,EAC/B,UACA,oBAC0B,CAAC,MAAM;CACjC,MAAM,8BAA8B,WAAW,4BAA4B;CAE3E,MAAM,CAAC,sBAAsB,2BAA2B,eAEhD;EACN,MAAM,EAAE,sBAAsB,oBAAoB;GAChD;GACA;GACA,UAAU,uBAAuB,eAAe;GAChD,eAAe,KAAA;EACjB,CAAC;EACD,OAAO,oBACH,EAAE,eAAe,kBAAkB,IACnC;CACN,CAAC;CAED,gBAAgB;EACd,IAAI,CAAC,YAAY,CAAC,iBAAiB;EACnC,MAAM,cAAc,uBAAuB,uBACxC,UAAU,QACV,UAAU,kBAAkB;GAC3B,MAAM,EAAE,mBAAmB,uBAAuB,oBAAoB;IACpE;IACA;IACA;IACA;GACF,CAAC;GAED,IAAI,CAAC,sBAAsB,mBAAmB,OAAO,mBAAmB,IACtE,yBAAyB,cAAc;IACrC,IAAI,WAAW,cAAc,OAAO,mBAAmB,IAAI,OAAO;IAElE,OAAO,EACL,eACE,qBAAqB,6BAA6B,cACtD;GACF,CAAC;EAEL,CACF;EACA,aAAa;GACX,YAAY;EACd;CACF,GAAG;EAAC;EAAU;EAAiB,6BAA6B;CAAa,CAAC;CAE1E,IAAI,CAAC,sBAAsB,eACzB,MAAM,IAAI,MACR,oEAAoE,gBAAgB,eAAe,SAAS,oEAC9G;CAGF,OAAO;AACT;AAEA,IAAa,uBAAuB;AAEpC,IAAa,8BAA8B,EAAE,eAC3C,oBAAC,uBAAD;CAAuB,IAAI;CAAuB;AAAgC,CAAA;AAGpF,IAAa,8BACX,cAAc,iBAAiB,oBAAoB,GAAG,CAAC,CAAC;AAE1D,IAAa,uCACX,WAAW,4BAA4B"}
@@ -1,35 +1,33 @@
1
- import { useChannelActionContext } from "./ChannelActionContext.mjs";
1
+ import { requireContext } from "./requireContext.mjs";
2
2
  import { useMessageContext } from "./MessageContext.mjs";
3
- import { savePreEditSnapshot } from "../components/MessageComposer/preEditSnapshot.mjs";
4
3
  import { isMessageBounced } from "../components/Message/utils.mjs";
4
+ import { useRetryHandler } from "../components/Message/hooks/useRetryHandler.mjs";
5
5
  import { useMessageComposerController } from "../components/MessageComposer/hooks/useMessageComposerController.mjs";
6
+ import { savePreEditSnapshot } from "../components/MessageComposer/preEditSnapshot.mjs";
7
+ import { useChannel } from "./useChannel.mjs";
6
8
  import { createContext, useCallback, useContext, useMemo } from "react";
7
9
  import { jsx } from "react/jsx-runtime";
8
10
  //#region src/context/MessageBounceContext.tsx
9
11
  var MessageBounceContext = createContext(void 0);
10
- function useMessageBounceContext(componentName) {
11
- const contextValue = useContext(MessageBounceContext);
12
- if (!contextValue) {
13
- console.warn(`The useMessageBounceContext hook was called outside of the MessageBounceContext provider. The errored call is located in the ${componentName} component.`);
14
- return {};
15
- }
16
- return contextValue;
12
+ function useMessageBounceContext() {
13
+ return requireContext(useContext(MessageBounceContext), "useMessageBounceContext", "MessageBounceProvider");
17
14
  }
18
15
  function MessageBounceProvider({ children }) {
19
16
  const messageComposer = useMessageComposerController();
20
- const { handleRetry: doHandleRetry, message } = useMessageContext("MessageBounceProvider");
17
+ const { message } = useMessageContext();
18
+ const doHandleRetry = useRetryHandler();
21
19
  if (!isMessageBounced(message)) console.warn(`The MessageBounceProvider was rendered for a message that is not bounced. Have you missed the "isMessageBounced" check?`);
22
- const { removeMessage } = useChannelActionContext("MessageBounceProvider");
20
+ const channel = useChannel();
23
21
  const handleDelete = useCallback(() => {
24
- removeMessage(message);
25
- }, [message, removeMessage]);
22
+ channel.messagePaginator.removeItem({ id: message.id });
23
+ }, [channel, message]);
26
24
  const handleEdit = useCallback((e) => {
27
25
  e.preventDefault();
28
26
  savePreEditSnapshot(messageComposer);
29
27
  messageComposer.initState({ composition: message });
30
28
  }, [message, messageComposer]);
31
29
  const handleRetry = useCallback(() => {
32
- doHandleRetry(message);
30
+ doHandleRetry({ localMessage: message });
33
31
  }, [doHandleRetry, message]);
34
32
  const value = useMemo(() => ({
35
33
  handleDelete,
@@ -1 +1 @@
1
- {"version":3,"file":"MessageBounceContext.mjs","names":[],"sources":["../../../src/context/MessageBounceContext.tsx"],"sourcesContent":["import type { ReactEventHandler } from 'react';\nimport React, { createContext, useCallback, useContext, useMemo } from 'react';\nimport { useMessageContext } from './MessageContext';\nimport { useChannelActionContext } from './ChannelActionContext';\nimport { isMessageBounced, useMessageComposerController } from '../components';\nimport { savePreEditSnapshot } from '../components/MessageComposer/preEditSnapshot';\nimport type { LocalMessage } from 'stream-chat';\nimport type { PropsWithChildrenOnly } from '../types/types';\n\nexport interface MessageBounceContextValue {\n handleDelete: ReactEventHandler;\n handleEdit: ReactEventHandler;\n handleRetry: ReactEventHandler;\n message: LocalMessage;\n}\n\nconst MessageBounceContext = createContext<MessageBounceContextValue | undefined>(\n undefined,\n);\n\nexport function useMessageBounceContext(componentName?: string) {\n const contextValue = useContext(MessageBounceContext);\n\n if (!contextValue) {\n console.warn(\n `The useMessageBounceContext hook was called outside of the MessageBounceContext provider. The errored call is located in the ${componentName} component.`,\n );\n\n return {} as MessageBounceContextValue;\n }\n\n return contextValue;\n}\n\nexport function MessageBounceProvider({ children }: PropsWithChildrenOnly) {\n const messageComposer = useMessageComposerController();\n const { handleRetry: doHandleRetry, message } = useMessageContext(\n 'MessageBounceProvider',\n );\n\n if (!isMessageBounced(message)) {\n console.warn(\n `The MessageBounceProvider was rendered for a message that is not bounced. Have you missed the \"isMessageBounced\" check?`,\n );\n }\n\n const { removeMessage } = useChannelActionContext('MessageBounceProvider');\n\n const handleDelete: ReactEventHandler = useCallback(() => {\n removeMessage(message);\n }, [message, removeMessage]);\n\n const handleEdit: ReactEventHandler = useCallback(\n (e) => {\n e.preventDefault();\n savePreEditSnapshot(messageComposer);\n messageComposer.initState({ composition: message });\n },\n [message, messageComposer],\n );\n\n const handleRetry = useCallback(() => {\n doHandleRetry(message);\n }, [doHandleRetry, message]);\n\n const value = useMemo(\n () => ({\n handleDelete,\n handleEdit,\n handleRetry,\n message,\n }),\n [handleDelete, handleEdit, handleRetry, message],\n );\n\n return (\n <MessageBounceContext.Provider value={value}>\n {children}\n </MessageBounceContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;AAgBA,IAAM,uBAAuB,cAC3B,KAAA,CACF;AAEA,SAAgB,wBAAwB,eAAwB;CAC9D,MAAM,eAAe,WAAW,oBAAoB;CAEpD,IAAI,CAAC,cAAc;EACjB,QAAQ,KACN,gIAAgI,cAAc,YAChJ;EAEA,OAAO,CAAC;CACV;CAEA,OAAO;AACT;AAEA,SAAgB,sBAAsB,EAAE,YAAmC;CACzE,MAAM,kBAAkB,6BAA6B;CACrD,MAAM,EAAE,aAAa,eAAe,YAAY,kBAC9C,uBACF;CAEA,IAAI,CAAC,iBAAiB,OAAO,GAC3B,QAAQ,KACN,yHACF;CAGF,MAAM,EAAE,kBAAkB,wBAAwB,uBAAuB;CAEzE,MAAM,eAAkC,kBAAkB;EACxD,cAAc,OAAO;CACvB,GAAG,CAAC,SAAS,aAAa,CAAC;CAE3B,MAAM,aAAgC,aACnC,MAAM;EACL,EAAE,eAAe;EACjB,oBAAoB,eAAe;EACnC,gBAAgB,UAAU,EAAE,aAAa,QAAQ,CAAC;CACpD,GACA,CAAC,SAAS,eAAe,CAC3B;CAEA,MAAM,cAAc,kBAAkB;EACpC,cAAc,OAAO;CACvB,GAAG,CAAC,eAAe,OAAO,CAAC;CAE3B,MAAM,QAAQ,eACL;EACL;EACA;EACA;EACA;CACF,IACA;EAAC;EAAc;EAAY;EAAa;CAAO,CACjD;CAEA,OACE,oBAAC,qBAAqB,UAAtB;EAAsC;EACnC;CAC4B,CAAA;AAEnC"}
1
+ {"version":3,"file":"MessageBounceContext.mjs","names":[],"sources":["../../../src/context/MessageBounceContext.tsx"],"sourcesContent":["import type { ReactEventHandler } from 'react';\nimport React, { createContext, useCallback, useContext, useMemo } from 'react';\nimport { useMessageContext } from './MessageContext';\nimport { requireContext } from './requireContext';\nimport { useChannel } from './useChannel';\nimport {\n isMessageBounced,\n useMessageComposerController,\n useRetryHandler,\n} from '../components';\nimport { savePreEditSnapshot } from '../components/MessageComposer/preEditSnapshot';\nimport type { LocalMessage } from 'stream-chat';\nimport type { PropsWithChildrenOnly } from '../types/types';\n\nexport interface MessageBounceContextValue {\n handleDelete: ReactEventHandler;\n handleEdit: ReactEventHandler;\n handleRetry: ReactEventHandler;\n message: LocalMessage;\n}\n\nconst MessageBounceContext = createContext<MessageBounceContextValue | undefined>(\n undefined,\n);\n\nexport function useMessageBounceContext() {\n return requireContext(\n useContext(MessageBounceContext),\n 'useMessageBounceContext',\n 'MessageBounceProvider',\n );\n}\n\nexport function MessageBounceProvider({ children }: PropsWithChildrenOnly) {\n const messageComposer = useMessageComposerController();\n const { message } = useMessageContext();\n const doHandleRetry = useRetryHandler();\n\n if (!isMessageBounced(message)) {\n console.warn(\n `The MessageBounceProvider was rendered for a message that is not bounced. Have you missed the \"isMessageBounced\" check?`,\n );\n }\n\n const channel = useChannel();\n\n const handleDelete: ReactEventHandler = useCallback(() => {\n channel.messagePaginator.removeItem({ id: message.id });\n }, [channel, message]);\n\n const handleEdit: ReactEventHandler = useCallback(\n (e) => {\n e.preventDefault();\n savePreEditSnapshot(messageComposer);\n messageComposer.initState({ composition: message });\n },\n [message, messageComposer],\n );\n\n const handleRetry: ReactEventHandler = useCallback(() => {\n void doHandleRetry({ localMessage: message });\n }, [doHandleRetry, message]);\n\n const value = useMemo(\n () => ({\n handleDelete,\n handleEdit,\n handleRetry,\n message,\n }),\n [handleDelete, handleEdit, handleRetry, message],\n );\n\n return (\n <MessageBounceContext.Provider value={value}>\n {children}\n </MessageBounceContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;AAqBA,IAAM,uBAAuB,cAC3B,KAAA,CACF;AAEA,SAAgB,0BAA0B;CACxC,OAAO,eACL,WAAW,oBAAoB,GAC/B,2BACA,uBACF;AACF;AAEA,SAAgB,sBAAsB,EAAE,YAAmC;CACzE,MAAM,kBAAkB,6BAA6B;CACrD,MAAM,EAAE,YAAY,kBAAkB;CACtC,MAAM,gBAAgB,gBAAgB;CAEtC,IAAI,CAAC,iBAAiB,OAAO,GAC3B,QAAQ,KACN,yHACF;CAGF,MAAM,UAAU,WAAW;CAE3B,MAAM,eAAkC,kBAAkB;EACxD,QAAQ,iBAAiB,WAAW,EAAE,IAAI,QAAQ,GAAG,CAAC;CACxD,GAAG,CAAC,SAAS,OAAO,CAAC;CAErB,MAAM,aAAgC,aACnC,MAAM;EACL,EAAE,eAAe;EACjB,oBAAoB,eAAe;EACnC,gBAAgB,UAAU,EAAE,aAAa,QAAQ,CAAC;CACpD,GACA,CAAC,SAAS,eAAe,CAC3B;CAEA,MAAM,cAAiC,kBAAkB;EACvD,cAAmB,EAAE,cAAc,QAAQ,CAAC;CAC9C,GAAG,CAAC,eAAe,OAAO,CAAC;CAE3B,MAAM,QAAQ,eACL;EACL;EACA;EACA;EACA;CACF,IACA;EAAC;EAAc;EAAY;EAAa;CAAO,CACjD;CAEA,OACE,oBAAC,qBAAqB,UAAtB;EAAsC;EACnC;CAC4B,CAAA;AAEnC"}
@@ -1,3 +1,4 @@
1
+ import { requireContext } from "./requireContext.mjs";
1
2
  import { createContext, useContext } from "react";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  //#region src/context/MessageComposerContext.tsx
@@ -6,12 +7,13 @@ var MessageComposerContextProvider = ({ children, value }) => /* @__PURE__ */ js
6
7
  value,
7
8
  children
8
9
  });
9
- var useMessageComposerContext = (componentName) => {
10
- const contextValue = useContext(MessageComposerContext);
11
- if (!contextValue) return {};
12
- return contextValue;
13
- };
10
+ var useMessageComposerContext = () => requireContext(useContext(MessageComposerContext), "useMessageComposerContext", "MessageComposerContextProvider");
11
+ /**
12
+ * Whether the caller sits beneath a `MessageComposerContextProvider`, for components that render
13
+ * both inside and outside a composer. See `WithDragAndDropUpload`.
14
+ */
15
+ var useIsWithinMessageComposerContext = () => useContext(MessageComposerContext) !== void 0;
14
16
  //#endregion
15
- export { MessageComposerContext, MessageComposerContextProvider, useMessageComposerContext };
17
+ export { MessageComposerContext, MessageComposerContextProvider, useIsWithinMessageComposerContext, useMessageComposerContext };
16
18
 
17
19
  //# sourceMappingURL=MessageComposerContext.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MessageComposerContext.mjs","names":[],"sources":["../../../src/context/MessageComposerContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react';\nimport type { PropsWithChildren } from 'react';\n\nimport type { MessageComposerProps } from '../components/MessageComposer';\nimport type { UseMessageComposerBindingsParams } from '../components/MessageComposer/hooks/useMessageComposerBindings';\n\nexport type MessageComposerContextValue = UseMessageComposerBindingsParams &\n Omit<MessageComposerProps, 'Input'>;\n\nexport const MessageComposerContext = createContext<\n UseMessageComposerBindingsParams | undefined\n>(undefined);\n\nexport const MessageComposerContextProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: MessageComposerContextValue;\n}>) => (\n <MessageComposerContext.Provider\n value={value as unknown as MessageComposerContextValue}\n >\n {children}\n </MessageComposerContext.Provider>\n);\n\nexport const useMessageComposerContext = (\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n componentName?: string,\n) => {\n const contextValue = useContext(MessageComposerContext);\n\n if (!contextValue) {\n return {} as MessageComposerContextValue;\n }\n\n return contextValue as unknown as MessageComposerContextValue;\n};\n"],"mappings":";;;AASA,IAAa,yBAAyB,cAEpC,KAAA,CAAS;AAEX,IAAa,kCAAkC,EAC7C,UACA,YAIA,oBAAC,uBAAuB,UAAxB;CACS;CAEN;AAC8B,CAAA;AAGnC,IAAa,6BAEX,kBACG;CACH,MAAM,eAAe,WAAW,sBAAsB;CAEtD,IAAI,CAAC,cACH,OAAO,CAAC;CAGV,OAAO;AACT"}
1
+ {"version":3,"file":"MessageComposerContext.mjs","names":[],"sources":["../../../src/context/MessageComposerContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react';\nimport type { PropsWithChildren } from 'react';\n\nimport type { MessageComposerProps } from '../components/MessageComposer';\nimport type { UseMessageComposerBindingsParams } from '../components/MessageComposer/hooks/useMessageComposerBindings';\nimport { requireContext } from './requireContext';\n\nexport type MessageComposerContextValue = UseMessageComposerBindingsParams &\n Omit<MessageComposerProps, 'Input'>;\n\nexport const MessageComposerContext = createContext<\n MessageComposerContextValue | undefined\n>(undefined);\n\nexport const MessageComposerContextProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: MessageComposerContextValue;\n}>) => (\n <MessageComposerContext.Provider value={value}>\n {children}\n </MessageComposerContext.Provider>\n);\n\nexport const useMessageComposerContext = () =>\n requireContext(\n useContext(MessageComposerContext),\n 'useMessageComposerContext',\n 'MessageComposerContextProvider',\n );\n\n/**\n * Whether the caller sits beneath a `MessageComposerContextProvider`, for components that render\n * both inside and outside a composer. See `WithDragAndDropUpload`.\n */\nexport const useIsWithinMessageComposerContext = () =>\n useContext(MessageComposerContext) !== undefined;\n"],"mappings":";;;;AAUA,IAAa,yBAAyB,cAEpC,KAAA,CAAS;AAEX,IAAa,kCAAkC,EAC7C,UACA,YAIA,oBAAC,uBAAuB,UAAxB;CAAwC;CACrC;AAC8B,CAAA;AAGnC,IAAa,kCACX,eACE,WAAW,sBAAsB,GACjC,6BACA,gCACF;;;;;AAMF,IAAa,0CACX,WAAW,sBAAsB,MAAM,KAAA"}
@@ -0,0 +1,19 @@
1
+ import React, { useContext } from "react";
2
+ import { jsx } from "react/jsx-runtime";
3
+ //#region src/context/MessageComposerControllerContext.tsx
4
+ var MessageComposerControllerContext = React.createContext(void 0);
5
+ /**
6
+ * Supplies the composer a `MessageComposer` below it edits, in place of the thread's or channel's own.
7
+ * For a composition the integrator owns - editing a message inline, for instance - where the default
8
+ * composer is the wrong one to write into.
9
+ */
10
+ var MessageComposerControllerProvider = ({ children, messageComposerController }) => /* @__PURE__ */ jsx(MessageComposerControllerContext.Provider, {
11
+ value: messageComposerController,
12
+ children
13
+ });
14
+ /** The composer supplied by {@link MessageComposerControllerProvider}, if any. */
15
+ var useMessageComposerControllerContext = () => useContext(MessageComposerControllerContext);
16
+ //#endregion
17
+ export { MessageComposerControllerProvider, useMessageComposerControllerContext };
18
+
19
+ //# sourceMappingURL=MessageComposerControllerContext.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageComposerControllerContext.mjs","names":[],"sources":["../../../src/context/MessageComposerControllerContext.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport React, { useContext } from 'react';\nimport type { MessageComposer as MessageComposerController } from 'stream-chat';\n\nconst MessageComposerControllerContext = React.createContext<\n MessageComposerController | undefined\n>(undefined);\n\n/**\n * Supplies the composer a `MessageComposer` below it edits, in place of the thread's or channel's own.\n * For a composition the integrator owns - editing a message inline, for instance - where the default\n * composer is the wrong one to write into.\n */\nexport const MessageComposerControllerProvider = ({\n children,\n messageComposerController,\n}: PropsWithChildren<{\n messageComposerController?: MessageComposerController;\n}>) => (\n <MessageComposerControllerContext.Provider value={messageComposerController}>\n {children}\n </MessageComposerControllerContext.Provider>\n);\n\n/** The composer supplied by {@link MessageComposerControllerProvider}, if any. */\nexport const useMessageComposerControllerContext = () =>\n useContext(MessageComposerControllerContext);\n"],"mappings":";;;AAIA,IAAM,mCAAmC,MAAM,cAE7C,KAAA,CAAS;;;;;;AAOX,IAAa,qCAAqC,EAChD,UACA,gCAIA,oBAAC,iCAAiC,UAAlC;CAA2C,OAAO;CAC/C;AACwC,CAAA;;AAI7C,IAAa,4CACX,WAAW,gCAAgC"}
@@ -1,3 +1,4 @@
1
+ import { requireContext } from "./requireContext.mjs";
1
2
  import React, { useContext } from "react";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  //#region src/context/MessageContext.tsx
@@ -6,11 +7,7 @@ var MessageProvider = ({ children, value }) => /* @__PURE__ */ jsx(MessageContex
6
7
  value,
7
8
  children
8
9
  });
9
- var useMessageContext = (_componentName) => {
10
- const contextValue = useContext(MessageContext);
11
- if (!contextValue) return {};
12
- return contextValue;
13
- };
10
+ var useMessageContext = () => requireContext(useContext(MessageContext), "useMessageContext", "MessageProvider");
14
11
  //#endregion
15
12
  export { MessageContext, MessageProvider, useMessageContext };
16
13
 
@@ -1 +1 @@
1
- {"version":3,"file":"MessageContext.mjs","names":[],"sources":["../../../src/context/MessageContext.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport React, { useContext } from 'react';\n\nimport type {\n DeleteMessageOptions,\n LocalMessage,\n Mute,\n ReactionResponse,\n ReactionSort,\n UserResponse,\n} from 'stream-chat';\n\nimport type { ChannelActionContextValue } from './ChannelActionContext';\n\nimport type { ActionHandlerReturnType } from '../components/Message/hooks/useActionHandler';\nimport type { ReactEventHandler } from '../components/Message/types';\nimport type { MessageActionsArray } from '../components/Message/utils';\nimport type { GroupStyle } from '../components/MessageList/utils';\nimport type { ReactionsComparator, ReactionType } from '../components/Reactions/types';\n\nimport type { RenderTextFunction } from '../components/Message/renderText';\n\nexport type MessageContextValue = {\n /** If actions such as edit, delete, flag, mute are enabled on Message */\n actionsEnabled: boolean;\n /**\n * Returns all allowed actions on message by current user e.g., ['edit', 'delete', 'flag', 'mute', 'pin', 'quote', 'react', 'reply'].\n * Please check [Message](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message.tsx) component for default implementation.\n */\n getMessageActions: () => MessageActionsArray<string>;\n /** Function to send an action in a Channel */\n handleAction: ActionHandlerReturnType;\n /** Function to delete a message in a Channel */\n handleDelete: (options?: DeleteMessageOptions) => Promise<void> | void;\n /** Function to fetch the message reactions */\n handleFetchReactions: (\n reactionType?: ReactionType,\n sort?: ReactionSort,\n ) => Promise<Array<ReactionResponse>>;\n /** Function to flag a message in a Channel */\n handleFlag: ReactEventHandler;\n /** Function to mark message and the messages that follow it as unread in a Channel */\n handleMarkUnread: ReactEventHandler;\n /** Function to mute a user in a Channel */\n handleMute: ReactEventHandler;\n /** Function to open a Thread on a Message */\n handleOpenThread: ReactEventHandler;\n /** Function to pin a Message in a Channel */\n handlePin: ReactEventHandler;\n /** Function to post a reaction on a Message */\n handleReaction: (\n reactionType: string,\n event: React.BaseSyntheticEvent,\n ) => Promise<void>;\n /** Function to retry sending a Message */\n handleRetry: ChannelActionContextValue['retrySendMessage'];\n /** Function that returns whether the Message belongs to the current user */\n isMyMessage: () => boolean;\n /** The message object */\n message: LocalMessage;\n /** Indicates whether a message has not been read yet or has been marked unread */\n messageIsUnread: boolean;\n /** Handler function for a click event on an @mention in Message */\n onMentionsClickMessage: ReactEventHandler;\n /** Handler function for a hover event on an @mention in Message */\n onMentionsHoverMessage: ReactEventHandler;\n /** Handler function for a click event on the user that posted the Message */\n onUserClick: ReactEventHandler;\n /** Handler function for a hover event on the user that posted the Message */\n onUserHover: ReactEventHandler;\n /** Call this function to keep message list scrolled to the bottom when the scroll height increases, e.g. an element appears below the last message (only used in the `VirtualizedMessageList`) */\n autoscrollToBottom?: () => void;\n /** Message component configuration prop. If true, picking a reaction from the `ReactionSelector` component will close the selector */\n closeReactionSelectorOnClick?: boolean;\n /** An array of user IDs that have confirmed the message delivery to their device */\n deliveredTo?: UserResponse[];\n /** If true, the message is the last one in a group sent by a specific user (only used in the `VirtualizedMessageList`) */\n endOfGroup?: boolean;\n /** If true, the message is the first one in a group sent by a specific user (only used in the `VirtualizedMessageList`) */\n firstOfGroup?: boolean;\n /** Override the default formatting of the date. This is a function that has access to the original date object, returns a string */\n formatDate?: (date: Date) => string;\n /** If true, group messages sent by each user (only used in the `VirtualizedMessageList`) */\n groupedByUser?: boolean;\n /** A list of styles to apply to this message, ie. top, bottom, single */\n groupStyles?: GroupStyle[];\n /** Whether to highlight and focus the message on load */\n highlighted?: boolean;\n /** Whether the threaded message is the first in the thread list */\n initialMessage?: boolean;\n /**\n * A factory function that determines whether a message is AI generated or not.\n */\n isMessageAIGenerated?: (message: LocalMessage) => boolean;\n /** Latest own message in currently displayed message set. */\n lastOwnMessage?: LocalMessage;\n /** Latest message id on current channel */\n lastReceivedId?: string | null;\n /** DOMRect object for parent MessageList component */\n messageListRect?: DOMRect;\n /** Array of muted users coming from [ChannelStateContext](https://getstream.io/chat/docs/sdk/react/contexts/channel_state_context/#mutes) */\n mutes?: Mute[];\n /** Sort options to provide to a reactions query */\n reactionDetailsSort?: ReactionSort;\n /** A list of users that have read this Message */\n readBy?: UserResponse[];\n /** When set, shows the sender avatar in a grid layout. Values: true | 'incoming' | 'outgoing'. */\n showAvatar?: boolean | 'incoming' | 'outgoing';\n /** Custom function to render message text content, defaults to the renderText function: [utils](https://github.com/GetStream/stream-chat-react/blob/master/src/utils.tsx) */\n renderText?: RenderTextFunction;\n /** Keep track of read receipts for each message sent by the user. When disabled, only the last own message delivery / read status is rendered. */\n returnAllReadData?: boolean;\n /** Comparator function to sort reactions, defaults to chronological order */\n sortReactions?: ReactionsComparator;\n /** Whether or not the Message is in a Thread */\n threadList?: boolean;\n /** render HTML instead of markdown. Posting HTML is only allowed server-side */\n unsafeHTML?: boolean;\n /**\n * User-specific view for translated messages: which text to show.\n * - `'original'`: show `message.text` (source language).\n * - `'translated'`: show the translation for the **current user language** (from\n * `useTranslationContext().userLanguage`), i.e. `message.i18n[userLanguage + '_text']`\n * or fallback to `message.text` when missing. Resolved via `getTranslatedMessageText`.\n */\n translationView?: 'original' | 'translated';\n /** Set whether this message shows original or translated text (user-specific, does not change message data). */\n setTranslationView?: (view: 'original' | 'translated') => void;\n};\n\nexport const MessageContext = React.createContext<MessageContextValue | undefined>(\n undefined,\n);\n\nexport const MessageProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: MessageContextValue;\n}>) => (\n <MessageContext.Provider value={value as unknown as MessageContextValue}>\n {children}\n </MessageContext.Provider>\n);\n\nexport const useMessageContext = (\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _componentName?: string,\n) => {\n const contextValue = useContext(MessageContext);\n\n if (!contextValue) {\n return {} as MessageContextValue;\n }\n\n return contextValue as unknown as MessageContextValue;\n};\n"],"mappings":";;;AAkIA,IAAa,iBAAiB,MAAM,cAClC,KAAA,CACF;AAEA,IAAa,mBAAmB,EAC9B,UACA,YAIA,oBAAC,eAAe,UAAhB;CAAgC;CAC7B;AACsB,CAAA;AAG3B,IAAa,qBAEX,mBACG;CACH,MAAM,eAAe,WAAW,cAAc;CAE9C,IAAI,CAAC,cACH,OAAO,CAAC;CAGV,OAAO;AACT"}
1
+ {"version":3,"file":"MessageContext.mjs","names":[],"sources":["../../../src/context/MessageContext.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport React, { useContext } from 'react';\n\nimport type {\n DeleteMessageOptions,\n LocalMessage,\n ReactionResponse,\n SortParamRequest,\n UserResponse,\n} from 'stream-chat';\n\nimport type { ActionHandlerReturnType } from '../components/Message/hooks/useActionHandler';\nimport type { ReactEventHandler } from '../components/Message/types';\nimport type { GroupStyle } from '../components/MessageList/utils';\nimport type { ReactionsComparator, ReactionType } from '../components/Reactions/types';\n\nimport type { RenderTextFunction } from '../components/Message/renderText';\nimport { requireContext } from './requireContext';\n\nexport type MessageContextValue = {\n /** Function to send an action in a Channel */\n handleAction: ActionHandlerReturnType;\n /** Function to delete a message in a Channel */\n handleDelete: (options?: DeleteMessageOptions) => Promise<void> | void;\n /** Function to fetch the message reactions */\n handleFetchReactions: (\n reactionType?: ReactionType,\n sort?: SortParamRequest[],\n ) => Promise<Array<ReactionResponse>>;\n /** Function to flag a message in a Channel */\n handleFlag: ReactEventHandler;\n /** Function to mark message and the messages that follow it as unread in a Channel */\n handleMarkUnread: ReactEventHandler;\n /** Function to mute a user in a Channel */\n handleMute: ReactEventHandler;\n /** Function to open a thread for the message (routed through ChatView navigation) */\n handleOpenThread: ReactEventHandler;\n /** Function to pin a Message in a Channel */\n handlePin: ReactEventHandler;\n /** Function to post a reaction on a Message */\n handleReaction: (\n reactionType: string,\n event: React.BaseSyntheticEvent,\n ) => Promise<void>;\n /** Function to resend a failed message */\n handleRetry: (message: LocalMessage) => Promise<void> | void;\n /** Function that returns whether the Message belongs to the current user */\n isMyMessage: () => boolean;\n /** The message object */\n message: LocalMessage;\n /** Handler function for a click event on an @mention in Message */\n onMentionsClickMessage: ReactEventHandler;\n /** Handler function for a hover event on an @mention in Message */\n onMentionsHoverMessage: ReactEventHandler;\n /** Handler function for a click event on the user that posted the Message */\n onUserClick: ReactEventHandler;\n /** Handler function for a hover event on the user that posted the Message */\n onUserHover: ReactEventHandler;\n /** Call this function to keep message list scrolled to the bottom when the scroll height increases, e.g. an element appears below the last message (only used in the `VirtualizedMessageList`) */\n autoscrollToBottom?: () => void;\n /** Message component configuration prop. If true, picking a reaction from the `ReactionSelector` component will close the selector */\n closeReactionSelectorOnClick?: boolean;\n /** An array of user IDs that have confirmed the message delivery to their device */\n deliveredTo?: UserResponse[];\n /** If true, the message is the last one in a group sent by a specific user (only used in the `VirtualizedMessageList`) */\n endOfGroup?: boolean;\n /** If true, the message is the first one in a group sent by a specific user (only used in the `VirtualizedMessageList`) */\n firstOfGroup?: boolean;\n /** Override the default formatting of the date. This is a function that has access to the original date object, returns a string */\n formatDate?: (date: Date) => string;\n /** If true, group messages sent by each user (only used in the `VirtualizedMessageList`) */\n groupedByUser?: boolean;\n /** A list of styles to apply to this message, ie. top, bottom, single */\n groupStyles?: GroupStyle[];\n /** Whether to highlight and focus the message on load */\n highlighted?: boolean;\n /** Whether the threaded message is the first in the thread list */\n initialMessage?: boolean;\n /**\n * A factory function that determines whether a message is AI generated or not.\n */\n isMessageAIGenerated?: (message: LocalMessage) => boolean;\n /** Latest own message in currently displayed message set. */\n lastOwnMessage?: LocalMessage;\n /** Latest message id on current channel */\n lastReceivedId?: string | null;\n /** DOMRect object for parent MessageList component */\n messageListRect?: DOMRect;\n /** Sort options to provide to a reactions query */\n reactionDetailsSort?: SortParamRequest[];\n /** A list of users that have read this Message */\n readBy?: UserResponse[];\n /** When set, shows the sender avatar in a grid layout. Values: true | 'incoming' | 'outgoing'. */\n showAvatar?: boolean | 'incoming' | 'outgoing';\n /** Custom function to render message text content, defaults to the renderText function: [utils](https://github.com/GetStream/stream-chat-react/blob/master/src/utils.tsx) */\n renderText?: RenderTextFunction;\n /** Keep track of read receipts for each message sent by the user. When disabled, only the last own message delivery / read status is rendered. */\n returnAllReadData?: boolean;\n /** Comparator function to sort reactions, defaults to chronological order */\n sortReactions?: ReactionsComparator;\n /** If true, the Message is rendered inside a thread's reply list */\n threadList?: boolean;\n /** render HTML instead of markdown. Posting HTML is only allowed server-side */\n unsafeHTML?: boolean;\n /**\n * User-specific view for translated messages: which text to show.\n * - `'original'`: show `message.text` (source language).\n * - `'translated'`: show the translation for the **current user language** (from\n * `useTranslationContext().userLanguage`), i.e. `message.i18n[userLanguage + '_text']`\n * or fallback to `message.text` when missing. Resolved via `getTranslatedMessageText`.\n */\n translationView?: 'original' | 'translated';\n /** Set whether this message shows original or translated text (user-specific, does not change message data). */\n setTranslationView?: (view: 'original' | 'translated') => void;\n};\n\nexport const MessageContext = React.createContext<MessageContextValue | undefined>(\n undefined,\n);\n\nexport const MessageProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: MessageContextValue;\n}>) => (\n <MessageContext.Provider value={value as unknown as MessageContextValue}>\n {children}\n </MessageContext.Provider>\n);\n\nexport const useMessageContext = () =>\n requireContext(useContext(MessageContext), 'useMessageContext', 'MessageProvider');\n"],"mappings":";;;;AAoHA,IAAa,iBAAiB,MAAM,cAClC,KAAA,CACF;AAEA,IAAa,mBAAmB,EAC9B,UACA,YAIA,oBAAC,eAAe,UAAhB;CAAgC;CAC7B;AACsB,CAAA;AAG3B,IAAa,0BACX,eAAe,WAAW,cAAc,GAAG,qBAAqB,iBAAiB"}
@@ -1,3 +1,4 @@
1
+ import { requireContext } from "./requireContext.mjs";
1
2
  import { createContext, useContext } from "react";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  //#region src/context/MessageListContext.tsx
@@ -9,14 +10,7 @@ var MessageListContextProvider = ({ children, value }) => /* @__PURE__ */ jsx(Me
9
10
  value,
10
11
  children
11
12
  });
12
- var useMessageListContext = (componentName) => {
13
- const contextValue = useContext(MessageListContext);
14
- if (!contextValue) {
15
- console.warn(`The useMessageListContext hook was called outside of the MessageListContext provider. Make sure this hook is called within the MessageList component. The errored call is located in the ${componentName} component.`);
16
- return {};
17
- }
18
- return contextValue;
19
- };
13
+ var useMessageListContext = () => requireContext(useContext(MessageListContext), "useMessageListContext", "MessageListContextProvider");
20
14
  //#endregion
21
15
  export { MessageListContext, MessageListContextProvider, useMessageListContext };
22
16
 
@@ -1 +1 @@
1
- {"version":3,"file":"MessageListContext.mjs","names":[],"sources":["../../../src/context/MessageListContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react';\nimport type { PropsWithChildren } from 'react';\nimport type { RenderedMessage } from '../components';\n\nexport type MessageListContextValue = {\n /** Enriched message list, including date separators and intro message (if enabled) */\n processedMessages: RenderedMessage[];\n /** The scroll container within which the messages and typing indicator are rendered */\n listElement: HTMLDivElement | null;\n /** Function that scrolls the `listElement` to the bottom. */\n scrollToBottom: () => void;\n};\n\nexport const MessageListContext = createContext<MessageListContextValue | undefined>(\n undefined,\n);\n\n/**\n * Context provider for components rendered within the `MessageList`\n */\nexport const MessageListContextProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: MessageListContextValue;\n}>) => (\n <MessageListContext.Provider value={value as MessageListContextValue}>\n {children}\n </MessageListContext.Provider>\n);\n\nexport const useMessageListContext = (componentName?: string) => {\n const contextValue = useContext(MessageListContext);\n\n if (!contextValue) {\n console.warn(\n `The useMessageListContext hook was called outside of the MessageListContext provider. Make sure this hook is called within the MessageList component. The errored call is located in the ${componentName} component.`,\n );\n\n return {} as MessageListContextValue;\n }\n\n return contextValue as MessageListContextValue;\n};\n"],"mappings":";;;AAaA,IAAa,qBAAqB,cAChC,KAAA,CACF;;;;AAKA,IAAa,8BAA8B,EACzC,UACA,YAIA,oBAAC,mBAAmB,UAApB;CAAoC;CACjC;AAC0B,CAAA;AAG/B,IAAa,yBAAyB,kBAA2B;CAC/D,MAAM,eAAe,WAAW,kBAAkB;CAElD,IAAI,CAAC,cAAc;EACjB,QAAQ,KACN,4LAA4L,cAAc,YAC5M;EAEA,OAAO,CAAC;CACV;CAEA,OAAO;AACT"}
1
+ {"version":3,"file":"MessageListContext.mjs","names":[],"sources":["../../../src/context/MessageListContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react';\nimport type { PropsWithChildren } from 'react';\nimport type { RenderedMessage } from '../components';\nimport { requireContext } from './requireContext';\n\nexport type MessageListContextValue = {\n /** Enriched message list, including date separators and intro message (if enabled) */\n processedMessages: RenderedMessage[];\n /** The scroll container within which the messages and typing indicator are rendered */\n listElement: HTMLElement | null;\n /** Function that scrolls the `listElement` to the bottom. */\n scrollToBottom: () => void;\n};\n\nexport const MessageListContext = createContext<MessageListContextValue | undefined>(\n undefined,\n);\n\n/**\n * Context provider for components rendered within the `MessageList`\n */\nexport const MessageListContextProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: MessageListContextValue;\n}>) => (\n <MessageListContext.Provider value={value as MessageListContextValue}>\n {children}\n </MessageListContext.Provider>\n);\n\nexport const useMessageListContext = () =>\n requireContext(\n useContext(MessageListContext),\n 'useMessageListContext',\n 'MessageListContextProvider',\n );\n"],"mappings":";;;;AAcA,IAAa,qBAAqB,cAChC,KAAA,CACF;;;;AAKA,IAAa,8BAA8B,EACzC,UACA,YAIA,oBAAC,mBAAmB,UAApB;CAAoC;CACjC;AAC0B,CAAA;AAG/B,IAAa,8BACX,eACE,WAAW,kBAAkB,GAC7B,yBACA,4BACF"}
@@ -44,11 +44,10 @@ import { jsx } from "react/jsx-runtime";
44
44
  * undefined if not present. Used to resolve which of the multiple translations to show.
45
45
  */
46
46
  var getTranslatedMessageText = ({ language, message }) => message?.i18n?.[`${language}_text`];
47
- var defaultContextValue = {
47
+ var MessageTranslationViewContext = createContext({
48
48
  getTranslationView: (_messageId, hasI18n) => hasI18n ? "translated" : "original",
49
49
  setTranslationView: () => {}
50
- };
51
- var MessageTranslationViewContext = createContext(defaultContextValue);
50
+ });
52
51
  var MessageTranslationViewProvider = ({ children }) => {
53
52
  const [viewByMessageId, setViewByMessageId] = useState({});
54
53
  const setTranslationView = useCallback((messageId, view) => {
@@ -67,9 +66,7 @@ var MessageTranslationViewProvider = ({ children }) => {
67
66
  children
68
67
  });
69
68
  };
70
- var useMessageTranslationViewContext = () => {
71
- return useContext(MessageTranslationViewContext) ?? defaultContextValue;
72
- };
69
+ var useMessageTranslationViewContext = () => useContext(MessageTranslationViewContext);
73
70
  //#endregion
74
71
  export { MessageTranslationViewContext, MessageTranslationViewProvider, getTranslatedMessageText, useMessageTranslationViewContext };
75
72
 
@@ -1 +1 @@
1
- {"version":3,"file":"MessageTranslationViewContext.mjs","names":[],"sources":["../../../src/context/MessageTranslationViewContext.tsx"],"sourcesContent":["/**\n * Message translation view context: user-specific state for whether each message\n * shows original text or a translation.\n *\n * ## Spec\n *\n * - **State**: Per message list (channel vs thread), we store a map\n * `messageId → 'original' | 'translated'`. Default for messages with `message.i18n`\n * is `'translated'`; otherwise `'original'`.\n *\n * - **Provider placement**: The provider is tied to the **message list**, not the channel.\n * It is rendered inside `MessageList` and `VirtualizedMessageList`. That way the\n * main channel list and the thread list each have their own translation view state\n * (e.g. Thread.tsx gets correct behavior without sharing channel state).\n *\n * - **Multiple translations**: `message.i18n` can contain multiple languages, e.g.:\n * `{ en_text: \"Good morning\", fr_text: \"Bonjour\", it_text: \"Buongiorno\", language: \"en\" }`.\n * Which translation is shown is determined by the app’s **user language**\n * (`useTranslationContext().userLanguage`). We use `message.i18n[userLanguage + '_text']`;\n * if missing, we fall back to `message.text`. Only one translation is shown at a time.\n *\n * - **Source language**: When present, `message.i18n.language` is the original/source\n * language of `message.text`. It can be used for the indicator label, e.g.\n * \"Translated from English · View original\".\n *\n * - **Invariants**: The original message content, layout, grouping, and order stay\n * unchanged. Removing or toggling translation only changes the annotation and which\n * text is displayed. \"View original\" / \"View translation\" switch the displayed\n * text and update the annotation (e.g. \"Original · View translation\" when showing\n * original).\n *\n * - **Translation indicator visibility**: The translation indicator (e.g. \"Translated ·\n * View original\") is **not** shown when the currently viewed text already corresponds\n * to `userLanguage` — for example when viewing original and the original text is the\n * user-language version (i.e. `getTranslatedMessageText({ language: userLanguage, message })`\n * equals `message.text`). In that case there is no meaningful original/translated choice,\n * so the indicator is hidden.\n */\n\nimport React, { createContext, useCallback, useContext, useState } from 'react';\nimport type { LocalMessage, TranslationLanguages } from 'stream-chat';\n\n/**\n * Returns the translated message text for a given language from `message.i18n`, or\n * undefined if not present. Used to resolve which of the multiple translations to show.\n */\nexport const getTranslatedMessageText = ({\n language,\n message,\n}: {\n language: string;\n message?: LocalMessage;\n}): string | undefined =>\n message?.i18n?.[`${language}_text` as `${TranslationLanguages}_text`];\n\n/**\n * Which message text to show.\n * - `'original'`: `message.text` (source language).\n * - `'translated'`: translation for the **current user language** (TranslationContext’s\n * `userLanguage`), i.e. `getTranslatedMessageText({ language: userLanguage, message })`\n * or fallback to `message.text`.\n */\nexport type TranslationView = 'original' | 'translated';\n\nexport type MessageTranslationViewContextValue = {\n getTranslationView: (messageId: string, hasI18n: boolean) => TranslationView;\n setTranslationView: (messageId: string, view: TranslationView) => void;\n};\n\nconst defaultContextValue: MessageTranslationViewContextValue = {\n getTranslationView: (_messageId, hasI18n) => (hasI18n ? 'translated' : 'original'),\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n setTranslationView: () => {},\n};\n\nexport const MessageTranslationViewContext =\n createContext<MessageTranslationViewContextValue>(defaultContextValue);\n\nexport const MessageTranslationViewProvider = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const [viewByMessageId, setViewByMessageId] = useState<Record<string, TranslationView>>(\n {},\n );\n\n const setTranslationView = useCallback((messageId: string, view: TranslationView) => {\n setViewByMessageId((prev) => ({ ...prev, [messageId]: view }));\n }, []);\n\n const getTranslationView = useCallback(\n (messageId: string, hasI18n: boolean): TranslationView =>\n viewByMessageId[messageId] ?? (hasI18n ? 'translated' : 'original'),\n [viewByMessageId],\n );\n\n const stableValue = React.useMemo(\n () => ({ getTranslationView, setTranslationView }),\n [getTranslationView, setTranslationView],\n );\n\n return (\n <MessageTranslationViewContext.Provider value={stableValue}>\n {children}\n </MessageTranslationViewContext.Provider>\n );\n};\n\nexport const useMessageTranslationViewContext =\n (): MessageTranslationViewContextValue => {\n const context = useContext(MessageTranslationViewContext);\n return context ?? defaultContextValue;\n };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CA,IAAa,4BAA4B,EACvC,UACA,cAKA,SAAS,OAAO,GAAG,SAAS;AAgB9B,IAAM,sBAA0D;CAC9D,qBAAqB,YAAY,YAAa,UAAU,eAAe;CAEvE,0BAA0B,CAAC;AAC7B;AAEA,IAAa,gCACX,cAAkD,mBAAmB;AAEvE,IAAa,kCAAkC,EAC7C,eAGI;CACJ,MAAM,CAAC,iBAAiB,sBAAsB,SAC5C,CAAC,CACH;CAEA,MAAM,qBAAqB,aAAa,WAAmB,SAA0B;EACnF,oBAAoB,UAAU;GAAE,GAAG;IAAO,YAAY;EAAK,EAAE;CAC/D,GAAG,CAAC,CAAC;CAEL,MAAM,qBAAqB,aACxB,WAAmB,YAClB,gBAAgB,eAAe,UAAU,eAAe,aAC1D,CAAC,eAAe,CAClB;CAEA,MAAM,cAAc,MAAM,eACjB;EAAE;EAAoB;CAAmB,IAChD,CAAC,oBAAoB,kBAAkB,CACzC;CAEA,OACE,oBAAC,8BAA8B,UAA/B;EAAwC,OAAO;EAC5C;CACqC,CAAA;AAE5C;AAEA,IAAa,yCAC+B;CAExC,OADgB,WAAW,6BACpB,KAAW;AACpB"}
1
+ {"version":3,"file":"MessageTranslationViewContext.mjs","names":[],"sources":["../../../src/context/MessageTranslationViewContext.tsx"],"sourcesContent":["/**\n * Message translation view context: user-specific state for whether each message\n * shows original text or a translation.\n *\n * ## Spec\n *\n * - **State**: Per message list (channel vs thread), we store a map\n * `messageId → 'original' | 'translated'`. Default for messages with `message.i18n`\n * is `'translated'`; otherwise `'original'`.\n *\n * - **Provider placement**: The provider is tied to the **message list**, not the channel.\n * It is rendered inside `MessageList` and `VirtualizedMessageList`. That way the\n * main channel list and the thread list each have their own translation view state\n * (e.g. Thread.tsx gets correct behavior without sharing channel state).\n *\n * - **Multiple translations**: `message.i18n` can contain multiple languages, e.g.:\n * `{ en_text: \"Good morning\", fr_text: \"Bonjour\", it_text: \"Buongiorno\", language: \"en\" }`.\n * Which translation is shown is determined by the app’s **user language**\n * (`useTranslationContext().userLanguage`). We use `message.i18n[userLanguage + '_text']`;\n * if missing, we fall back to `message.text`. Only one translation is shown at a time.\n *\n * - **Source language**: When present, `message.i18n.language` is the original/source\n * language of `message.text`. It can be used for the indicator label, e.g.\n * \"Translated from English · View original\".\n *\n * - **Invariants**: The original message content, layout, grouping, and order stay\n * unchanged. Removing or toggling translation only changes the annotation and which\n * text is displayed. \"View original\" / \"View translation\" switch the displayed\n * text and update the annotation (e.g. \"Original · View translation\" when showing\n * original).\n *\n * - **Translation indicator visibility**: The translation indicator (e.g. \"Translated ·\n * View original\") is **not** shown when the currently viewed text already corresponds\n * to `userLanguage` — for example when viewing original and the original text is the\n * user-language version (i.e. `getTranslatedMessageText({ language: userLanguage, message })`\n * equals `message.text`). In that case there is no meaningful original/translated choice,\n * so the indicator is hidden.\n */\n\nimport React, { createContext, useCallback, useContext, useState } from 'react';\nimport type { LocalMessage, TranslationLanguage } from 'stream-chat';\n\n/**\n * Returns the translated message text for a given language from `message.i18n`, or\n * undefined if not present. Used to resolve which of the multiple translations to show.\n */\nexport const getTranslatedMessageText = ({\n language,\n message,\n}: {\n language: string;\n message?: LocalMessage;\n}): string | undefined =>\n message?.i18n?.[`${language}_text` as `${TranslationLanguage}_text`];\n\n/**\n * Which message text to show.\n * - `'original'`: `message.text` (source language).\n * - `'translated'`: translation for the **current user language** (TranslationContext’s\n * `userLanguage`), i.e. `getTranslatedMessageText({ language: userLanguage, message })`\n * or fallback to `message.text`.\n */\nexport type TranslationView = 'original' | 'translated';\n\nexport type MessageTranslationViewContextValue = {\n getTranslationView: (messageId: string, hasI18n: boolean) => TranslationView;\n setTranslationView: (messageId: string, view: TranslationView) => void;\n};\n\nconst defaultContextValue: MessageTranslationViewContextValue = {\n getTranslationView: (_messageId, hasI18n) => (hasI18n ? 'translated' : 'original'),\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n setTranslationView: () => {},\n};\n\nexport const MessageTranslationViewContext =\n createContext<MessageTranslationViewContextValue>(defaultContextValue);\n\nexport const MessageTranslationViewProvider = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const [viewByMessageId, setViewByMessageId] = useState<Record<string, TranslationView>>(\n {},\n );\n\n const setTranslationView = useCallback((messageId: string, view: TranslationView) => {\n setViewByMessageId((prev) => ({ ...prev, [messageId]: view }));\n }, []);\n\n const getTranslationView = useCallback(\n (messageId: string, hasI18n: boolean): TranslationView =>\n viewByMessageId[messageId] ?? (hasI18n ? 'translated' : 'original'),\n [viewByMessageId],\n );\n\n const stableValue = React.useMemo(\n () => ({ getTranslationView, setTranslationView }),\n [getTranslationView, setTranslationView],\n );\n\n return (\n <MessageTranslationViewContext.Provider value={stableValue}>\n {children}\n </MessageTranslationViewContext.Provider>\n );\n};\n\n// created with a default value, so there is no missing-provider case\nexport const useMessageTranslationViewContext = () =>\n useContext(MessageTranslationViewContext);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CA,IAAa,4BAA4B,EACvC,UACA,cAKA,SAAS,OAAO,GAAG,SAAS;AAsB9B,IAAa,gCACX,cAAkD;CANlD,qBAAqB,YAAY,YAAa,UAAU,eAAe;CAEvE,0BAA0B,CAAC;AAIuB,CAAmB;AAEvE,IAAa,kCAAkC,EAC7C,eAGI;CACJ,MAAM,CAAC,iBAAiB,sBAAsB,SAC5C,CAAC,CACH;CAEA,MAAM,qBAAqB,aAAa,WAAmB,SAA0B;EACnF,oBAAoB,UAAU;GAAE,GAAG;IAAO,YAAY;EAAK,EAAE;CAC/D,GAAG,CAAC,CAAC;CAEL,MAAM,qBAAqB,aACxB,WAAmB,YAClB,gBAAgB,eAAe,UAAU,eAAe,aAC1D,CAAC,eAAe,CAClB;CAEA,MAAM,cAAc,MAAM,eACjB;EAAE;EAAoB;CAAmB,IAChD,CAAC,oBAAoB,kBAAkB,CACzC;CAEA,OACE,oBAAC,8BAA8B,UAA/B;EAAwC,OAAO;EAC5C;CACqC,CAAA;AAE5C;AAGA,IAAa,yCACX,WAAW,6BAA6B"}
@@ -6,14 +6,12 @@ var ModalContextProvider = ({ children, value }) => /* @__PURE__ */ jsx(ModalCon
6
6
  value,
7
7
  children
8
8
  });
9
- var useModalContext = () => {
10
- const contextValue = useContext(ModalContext);
11
- if (!contextValue) {
12
- console.warn(`The useModalContext hook was called outside of the ModalContext provider. Make sure this hook is called within a child of the GlobalModal.`);
13
- return { close: () => null };
14
- }
15
- return contextValue;
16
- };
9
+ var NO_MODAL_FALLBACK = { close: () => void 0 };
10
+ /**
11
+ * Works outside a modal: `Alert`, `Prompt` and `Viewer` are usable standalone, reading only
12
+ * `dialogId` for aria wiring, and get a no-op `close`.
13
+ */
14
+ var useModalContext = () => useContext(ModalContext) ?? NO_MODAL_FALLBACK;
17
15
  //#endregion
18
16
  export { ModalContext, ModalContextProvider, useModalContext };
19
17
 
@@ -1 +1 @@
1
- {"version":3,"file":"ModalContext.mjs","names":[],"sources":["../../../src/context/ModalContext.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport React, { useContext } from 'react';\n\nexport type ModalContextValue = {\n close: () => void;\n dialogId?: string;\n};\n\nexport const ModalContext = React.createContext<ModalContextValue | undefined>(undefined);\n\nexport const ModalContextProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: ModalContextValue;\n}>) => <ModalContext.Provider value={value}>{children}</ModalContext.Provider>;\n\nexport const useModalContext = () => {\n const contextValue = useContext(ModalContext);\n\n if (!contextValue) {\n console.warn(\n `The useModalContext hook was called outside of the ModalContext provider. Make sure this hook is called within a child of the GlobalModal.`,\n );\n\n return { close: () => null };\n }\n\n return contextValue;\n};\n"],"mappings":";;;AAQA,IAAa,eAAe,MAAM,cAA6C,KAAA,CAAS;AAExF,IAAa,wBAAwB,EACnC,UACA,YAGK,oBAAC,aAAa,UAAd;CAA8B;CAAQ;AAAgC,CAAA;AAE7E,IAAa,wBAAwB;CACnC,MAAM,eAAe,WAAW,YAAY;CAE5C,IAAI,CAAC,cAAc;EACjB,QAAQ,KACN,4IACF;EAEA,OAAO,EAAE,aAAa,KAAK;CAC7B;CAEA,OAAO;AACT"}
1
+ {"version":3,"file":"ModalContext.mjs","names":[],"sources":["../../../src/context/ModalContext.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport React, { useContext } from 'react';\n\nexport type ModalContextValue = {\n close: () => void;\n dialogId?: string;\n};\n\nexport const ModalContext = React.createContext<ModalContextValue | undefined>(undefined);\n\nexport const ModalContextProvider = ({\n children,\n value,\n}: PropsWithChildren<{\n value: ModalContextValue;\n}>) => <ModalContext.Provider value={value}>{children}</ModalContext.Provider>;\n\n// module-level to keep a stable identity across renders\nconst NO_MODAL_FALLBACK: ModalContextValue = { close: () => undefined };\n\n/**\n * Works outside a modal: `Alert`, `Prompt` and `Viewer` are usable standalone, reading only\n * `dialogId` for aria wiring, and get a no-op `close`.\n */\nexport const useModalContext = () => useContext(ModalContext) ?? NO_MODAL_FALLBACK;\n"],"mappings":";;;AAQA,IAAa,eAAe,MAAM,cAA6C,KAAA,CAAS;AAExF,IAAa,wBAAwB,EACnC,UACA,YAGK,oBAAC,aAAa,UAAd;CAA8B;CAAQ;AAAgC,CAAA;AAG7E,IAAM,oBAAuC,EAAE,aAAa,KAAA,EAAU;;;;;AAMtE,IAAa,wBAAwB,WAAW,YAAY,KAAK"}