stream-chat-react 11.8.0 → 11.10.0

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 (366) hide show
  1. package/dist/{Window-7c2f264c.js → Window-7d524c3b.js} +3367 -165
  2. package/dist/browser.full-bundle.js +3692 -400
  3. package/dist/browser.full-bundle.js.map +1 -1
  4. package/dist/browser.full-bundle.min.js +4 -4
  5. package/dist/browser.full-bundle.min.js.map +1 -1
  6. package/dist/components/Attachment/Attachment.d.ts +1 -1
  7. package/dist/components/Attachment/Attachment.d.ts.map +1 -1
  8. package/dist/components/Attachment/AttachmentActions.d.ts +2 -1
  9. package/dist/components/Attachment/AttachmentActions.d.ts.map +1 -1
  10. package/dist/components/Attachment/AttachmentContainer.d.ts +9 -9
  11. package/dist/components/Attachment/AttachmentContainer.d.ts.map +1 -1
  12. package/dist/components/Attachment/Audio.d.ts +3 -3
  13. package/dist/components/Attachment/Audio.d.ts.map +1 -1
  14. package/dist/components/Attachment/Card.d.ts +3 -2
  15. package/dist/components/Attachment/Card.d.ts.map +1 -1
  16. package/dist/components/Attachment/DownloadButton.d.ts +2 -1
  17. package/dist/components/Attachment/DownloadButton.d.ts.map +1 -1
  18. package/dist/components/Attachment/FileAttachment.d.ts +2 -1
  19. package/dist/components/Attachment/FileAttachment.d.ts.map +1 -1
  20. package/dist/components/Attachment/FileSizeIndicator.d.ts +2 -1
  21. package/dist/components/Attachment/FileSizeIndicator.d.ts.map +1 -1
  22. package/dist/components/Attachment/UnsupportedAttachment.d.ts +2 -1
  23. package/dist/components/Attachment/UnsupportedAttachment.d.ts.map +1 -1
  24. package/dist/components/Attachment/icons.d.ts +4 -3
  25. package/dist/components/Attachment/icons.d.ts.map +1 -1
  26. package/dist/components/Attachment/utils.d.ts +8 -8
  27. package/dist/components/Attachment/utils.d.ts.map +1 -1
  28. package/dist/components/AutoCompleteTextarea/Header.d.ts +2 -1
  29. package/dist/components/AutoCompleteTextarea/Header.d.ts.map +1 -1
  30. package/dist/components/AutoCompleteTextarea/List.d.ts +2 -1
  31. package/dist/components/AutoCompleteTextarea/List.d.ts.map +1 -1
  32. package/dist/components/AutoCompleteTextarea/Textarea.d.ts +2 -2
  33. package/dist/components/AutoCompleteTextarea/Textarea.d.ts.map +1 -1
  34. package/dist/components/Avatar/Avatar.d.ts +1 -1
  35. package/dist/components/Avatar/Avatar.d.ts.map +1 -1
  36. package/dist/components/Channel/Channel.d.ts +2 -2
  37. package/dist/components/Channel/Channel.d.ts.map +1 -1
  38. package/dist/components/Channel/Channel.js +77 -62
  39. package/dist/components/Channel/LoadingChannel.d.ts +2 -1
  40. package/dist/components/Channel/LoadingChannel.d.ts.map +1 -1
  41. package/dist/components/ChannelHeader/ChannelHeader.d.ts +1 -1
  42. package/dist/components/ChannelHeader/ChannelHeader.d.ts.map +1 -1
  43. package/dist/components/ChannelHeader/ChannelHeader.js +1 -1
  44. package/dist/components/ChannelHeader/icons.d.ts +2 -1
  45. package/dist/components/ChannelHeader/icons.d.ts.map +1 -1
  46. package/dist/components/ChannelList/ChannelList.d.ts +1 -1
  47. package/dist/components/ChannelList/ChannelList.d.ts.map +1 -1
  48. package/dist/components/ChannelList/ChannelListMessenger.d.ts +1 -1
  49. package/dist/components/ChannelList/ChannelListMessenger.d.ts.map +1 -1
  50. package/dist/components/ChannelList/ChannelListMessenger.js +3 -1
  51. package/dist/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
  52. package/dist/components/ChannelList/hooks/usePaginatedChannels.js +12 -13
  53. package/dist/components/ChannelPreview/ChannelPreview.d.ts +1 -1
  54. package/dist/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
  55. package/dist/components/ChannelPreview/ChannelPreview.js +11 -8
  56. package/dist/components/ChannelPreview/ChannelPreviewMessenger.d.ts +2 -1
  57. package/dist/components/ChannelPreview/ChannelPreviewMessenger.d.ts.map +1 -1
  58. package/dist/components/ChannelPreview/utils.d.ts +2 -1
  59. package/dist/components/ChannelPreview/utils.d.ts.map +1 -1
  60. package/dist/components/ChannelSearch/ChannelSearch.d.ts +1 -1
  61. package/dist/components/ChannelSearch/ChannelSearch.d.ts.map +1 -1
  62. package/dist/components/ChannelSearch/SearchBar.d.ts +1 -1
  63. package/dist/components/ChannelSearch/SearchBar.d.ts.map +1 -1
  64. package/dist/components/ChannelSearch/SearchInput.d.ts +1 -1
  65. package/dist/components/ChannelSearch/SearchInput.d.ts.map +1 -1
  66. package/dist/components/ChannelSearch/SearchResults.d.ts +1 -1
  67. package/dist/components/ChannelSearch/SearchResults.d.ts.map +1 -1
  68. package/dist/components/ChannelSearch/SearchResults.js +2 -1
  69. package/dist/components/ChannelSearch/icons.d.ts +5 -4
  70. package/dist/components/ChannelSearch/icons.d.ts.map +1 -1
  71. package/dist/components/Chat/Chat.d.ts +1 -1
  72. package/dist/components/Chat/Chat.d.ts.map +1 -1
  73. package/dist/components/ChatAutoComplete/ChatAutoComplete.d.ts +1 -1
  74. package/dist/components/ChatAutoComplete/ChatAutoComplete.d.ts.map +1 -1
  75. package/dist/components/ChatDown/ChatDown.d.ts +1 -1
  76. package/dist/components/ChatDown/ChatDown.d.ts.map +1 -1
  77. package/dist/components/ChatDown/icons.d.ts +2 -1
  78. package/dist/components/ChatDown/icons.d.ts.map +1 -1
  79. package/dist/components/CommandItem/CommandItem.d.ts +2 -2
  80. package/dist/components/CommandItem/CommandItem.d.ts.map +1 -1
  81. package/dist/components/DateSeparator/DateSeparator.d.ts +2 -1
  82. package/dist/components/DateSeparator/DateSeparator.d.ts.map +1 -1
  83. package/dist/components/Emojis/EmojiPicker.d.ts +1 -1
  84. package/dist/components/Emojis/EmojiPicker.d.ts.map +1 -1
  85. package/dist/components/Emojis/EmojiPicker.js +1 -1
  86. package/dist/components/Emojis/index.cjs.js +4 -4
  87. package/dist/components/EmoticonItem/EmoticonItem.d.ts +2 -1
  88. package/dist/components/EmoticonItem/EmoticonItem.d.ts.map +1 -1
  89. package/dist/components/EmptyStateIndicator/EmptyStateIndicator.d.ts +2 -1
  90. package/dist/components/EmptyStateIndicator/EmptyStateIndicator.d.ts.map +1 -1
  91. package/dist/components/EmptyStateIndicator/icons.d.ts +2 -1
  92. package/dist/components/EmptyStateIndicator/icons.d.ts.map +1 -1
  93. package/dist/components/EventComponent/EventComponent.d.ts +1 -1
  94. package/dist/components/EventComponent/EventComponent.d.ts.map +1 -1
  95. package/dist/components/Gallery/BaseImage.d.ts +2 -2
  96. package/dist/components/Gallery/BaseImage.d.ts.map +1 -1
  97. package/dist/components/Gallery/Gallery.d.ts +2 -2
  98. package/dist/components/Gallery/Gallery.d.ts.map +1 -1
  99. package/dist/components/Gallery/Image.d.ts +2 -2
  100. package/dist/components/Gallery/Image.d.ts.map +1 -1
  101. package/dist/components/Gallery/ModalGallery.d.ts +2 -1
  102. package/dist/components/Gallery/ModalGallery.d.ts.map +1 -1
  103. package/dist/components/InfiniteScrollPaginator/InfiniteScroll.d.ts.map +1 -1
  104. package/dist/components/InfiniteScrollPaginator/InfiniteScroll.js +7 -12
  105. package/dist/components/LoadMore/LoadMoreButton.d.ts +1 -1
  106. package/dist/components/LoadMore/LoadMoreButton.d.ts.map +1 -1
  107. package/dist/components/LoadMore/LoadMoreButton.js +1 -1
  108. package/dist/components/LoadMore/LoadMorePaginator.d.ts +2 -2
  109. package/dist/components/LoadMore/LoadMorePaginator.d.ts.map +1 -1
  110. package/dist/components/Loading/LoadingChannels.d.ts +1 -1
  111. package/dist/components/Loading/LoadingChannels.d.ts.map +1 -1
  112. package/dist/components/Loading/LoadingErrorIndicator.d.ts +2 -1
  113. package/dist/components/Loading/LoadingErrorIndicator.d.ts.map +1 -1
  114. package/dist/components/Loading/LoadingIndicator.d.ts +2 -1
  115. package/dist/components/Loading/LoadingIndicator.d.ts.map +1 -1
  116. package/dist/components/MML/MML.d.ts +2 -1
  117. package/dist/components/MML/MML.d.ts.map +1 -1
  118. package/dist/components/Message/FixedHeightMessage.d.ts +2 -1
  119. package/dist/components/Message/FixedHeightMessage.d.ts.map +1 -1
  120. package/dist/components/Message/Message.d.ts +2 -1
  121. package/dist/components/Message/Message.d.ts.map +1 -1
  122. package/dist/components/Message/Message.js +2 -2
  123. package/dist/components/Message/MessageDeleted.d.ts +2 -1
  124. package/dist/components/Message/MessageDeleted.d.ts.map +1 -1
  125. package/dist/components/Message/MessageErrorText.d.ts +2 -2
  126. package/dist/components/Message/MessageErrorText.d.ts.map +1 -1
  127. package/dist/components/Message/MessageOptions.d.ts +1 -1
  128. package/dist/components/Message/MessageOptions.d.ts.map +1 -1
  129. package/dist/components/Message/MessageOptions.js +5 -3
  130. package/dist/components/Message/MessageRepliesCountButton.d.ts +2 -2
  131. package/dist/components/Message/MessageRepliesCountButton.d.ts.map +1 -1
  132. package/dist/components/Message/MessageSimple.d.ts +2 -1
  133. package/dist/components/Message/MessageSimple.d.ts.map +1 -1
  134. package/dist/components/Message/MessageStatus.d.ts +1 -1
  135. package/dist/components/Message/MessageStatus.d.ts.map +1 -1
  136. package/dist/components/Message/MessageText.d.ts +2 -1
  137. package/dist/components/Message/MessageText.d.ts.map +1 -1
  138. package/dist/components/Message/MessageTimestamp.d.ts +2 -1
  139. package/dist/components/Message/MessageTimestamp.d.ts.map +1 -1
  140. package/dist/components/Message/QuotedMessage.d.ts +2 -1
  141. package/dist/components/Message/QuotedMessage.d.ts.map +1 -1
  142. package/dist/components/Message/icons.d.ts +11 -10
  143. package/dist/components/Message/icons.d.ts.map +1 -1
  144. package/dist/components/Message/renderText/componentRenderers/Anchor.d.ts +2 -2
  145. package/dist/components/Message/renderText/componentRenderers/Anchor.d.ts.map +1 -1
  146. package/dist/components/Message/renderText/componentRenderers/Emoji.d.ts +2 -1
  147. package/dist/components/Message/renderText/componentRenderers/Emoji.d.ts.map +1 -1
  148. package/dist/components/Message/renderText/componentRenderers/Mention.d.ts +2 -2
  149. package/dist/components/Message/renderText/componentRenderers/Mention.d.ts.map +1 -1
  150. package/dist/components/Message/renderText/renderText.d.ts +2 -2
  151. package/dist/components/Message/renderText/renderText.d.ts.map +1 -1
  152. package/dist/components/Message/types.d.ts +5 -0
  153. package/dist/components/Message/types.d.ts.map +1 -1
  154. package/dist/components/MessageActions/CustomMessageActionsList.d.ts +2 -1
  155. package/dist/components/MessageActions/CustomMessageActionsList.d.ts.map +1 -1
  156. package/dist/components/MessageActions/MessageActions.d.ts +1 -1
  157. package/dist/components/MessageActions/MessageActions.d.ts.map +1 -1
  158. package/dist/components/MessageActions/MessageActions.js +3 -1
  159. package/dist/components/MessageActions/MessageActionsBox.d.ts +1 -1
  160. package/dist/components/MessageActions/MessageActionsBox.d.ts.map +1 -1
  161. package/dist/components/MessageActions/MessageActionsBox.js +1 -1
  162. package/dist/components/MessageBounce/MessageBounceModal.d.ts +2 -2
  163. package/dist/components/MessageBounce/MessageBounceModal.d.ts.map +1 -1
  164. package/dist/components/MessageBounce/MessageBouncePrompt.d.ts +2 -1
  165. package/dist/components/MessageBounce/MessageBouncePrompt.d.ts.map +1 -1
  166. package/dist/components/MessageInput/AttachmentPreviewList.d.ts +3 -2
  167. package/dist/components/MessageInput/AttachmentPreviewList.d.ts.map +1 -1
  168. package/dist/components/MessageInput/CooldownTimer.d.ts +1 -1
  169. package/dist/components/MessageInput/CooldownTimer.d.ts.map +1 -1
  170. package/dist/components/MessageInput/DefaultTriggerProvider.d.ts +1 -1
  171. package/dist/components/MessageInput/DefaultTriggerProvider.d.ts.map +1 -1
  172. package/dist/components/MessageInput/DropzoneProvider.d.ts +1 -1
  173. package/dist/components/MessageInput/DropzoneProvider.d.ts.map +1 -1
  174. package/dist/components/MessageInput/EditMessageForm.d.ts +2 -1
  175. package/dist/components/MessageInput/EditMessageForm.d.ts.map +1 -1
  176. package/dist/components/MessageInput/LinkPreviewList.d.ts +2 -1
  177. package/dist/components/MessageInput/LinkPreviewList.d.ts.map +1 -1
  178. package/dist/components/MessageInput/MessageInput.d.ts +1 -1
  179. package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
  180. package/dist/components/MessageInput/MessageInputFlat.d.ts +2 -1
  181. package/dist/components/MessageInput/MessageInputFlat.d.ts.map +1 -1
  182. package/dist/components/MessageInput/MessageInputFlat.js +1 -1
  183. package/dist/components/MessageInput/MessageInputSmall.d.ts +2 -1
  184. package/dist/components/MessageInput/MessageInputSmall.d.ts.map +1 -1
  185. package/dist/components/MessageInput/QuotedMessagePreview.d.ts +3 -2
  186. package/dist/components/MessageInput/QuotedMessagePreview.d.ts.map +1 -1
  187. package/dist/components/MessageInput/QuotedMessagePreview.js +1 -1
  188. package/dist/components/MessageInput/UploadsPreview.d.ts +2 -1
  189. package/dist/components/MessageInput/UploadsPreview.d.ts.map +1 -1
  190. package/dist/components/MessageInput/icons.d.ts +14 -14
  191. package/dist/components/MessageInput/icons.d.ts.map +1 -1
  192. package/dist/components/MessageInput/icons.js +2 -1
  193. package/dist/components/MessageList/ConnectionStatus.d.ts +1 -1
  194. package/dist/components/MessageList/ConnectionStatus.d.ts.map +1 -1
  195. package/dist/components/MessageList/CustomNotification.d.ts +2 -2
  196. package/dist/components/MessageList/CustomNotification.d.ts.map +1 -1
  197. package/dist/components/MessageList/GiphyPreviewMessage.d.ts +2 -1
  198. package/dist/components/MessageList/GiphyPreviewMessage.d.ts.map +1 -1
  199. package/dist/components/MessageList/MessageList.d.ts +8 -4
  200. package/dist/components/MessageList/MessageList.d.ts.map +1 -1
  201. package/dist/components/MessageList/MessageList.js +4 -2
  202. package/dist/components/MessageList/MessageListMainPanel.d.ts +2 -1
  203. package/dist/components/MessageList/MessageListMainPanel.d.ts.map +1 -1
  204. package/dist/components/MessageList/MessageListNotifications.d.ts +1 -1
  205. package/dist/components/MessageList/MessageListNotifications.d.ts.map +1 -1
  206. package/dist/components/MessageList/MessageNotification.d.ts +1 -1
  207. package/dist/components/MessageList/MessageNotification.d.ts.map +1 -1
  208. package/dist/components/MessageList/ScrollToBottomButton.d.ts +2 -1
  209. package/dist/components/MessageList/ScrollToBottomButton.d.ts.map +1 -1
  210. package/dist/components/MessageList/ScrollToBottomButton.js +44 -3
  211. package/dist/components/MessageList/UnreadMessagesNotification.d.ts +12 -1
  212. package/dist/components/MessageList/UnreadMessagesNotification.d.ts.map +1 -1
  213. package/dist/components/MessageList/UnreadMessagesNotification.js +4 -2
  214. package/dist/components/MessageList/UnreadMessagesSeparator.d.ts +9 -1
  215. package/dist/components/MessageList/UnreadMessagesSeparator.d.ts.map +1 -1
  216. package/dist/components/MessageList/UnreadMessagesSeparator.js +2 -2
  217. package/dist/components/MessageList/VirtualizedMessageList.d.ts +9 -5
  218. package/dist/components/MessageList/VirtualizedMessageList.d.ts.map +1 -1
  219. package/dist/components/MessageList/VirtualizedMessageList.js +9 -4
  220. package/dist/components/MessageList/VirtualizedMessageListComponents.d.ts +6 -6
  221. package/dist/components/MessageList/VirtualizedMessageListComponents.d.ts.map +1 -1
  222. package/dist/components/MessageList/VirtualizedMessageListComponents.js +2 -2
  223. package/dist/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.d.ts +2 -1
  224. package/dist/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.d.ts.map +1 -1
  225. package/dist/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.js +27 -13
  226. package/dist/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.d.ts +3 -1
  227. package/dist/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.d.ts.map +1 -1
  228. package/dist/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.js +13 -7
  229. package/dist/components/MessageList/hooks/useMarkRead.d.ts +3 -2
  230. package/dist/components/MessageList/hooks/useMarkRead.d.ts.map +1 -1
  231. package/dist/components/MessageList/hooks/useMarkRead.js +65 -11
  232. package/dist/components/MessageList/icons.d.ts +4 -3
  233. package/dist/components/MessageList/icons.d.ts.map +1 -1
  234. package/dist/components/MessageList/renderMessages.d.ts +2 -2
  235. package/dist/components/MessageList/renderMessages.d.ts.map +1 -1
  236. package/dist/components/Modal/Modal.d.ts +1 -1
  237. package/dist/components/Modal/Modal.d.ts.map +1 -1
  238. package/dist/components/Modal/Modal.js +9 -7
  239. package/dist/components/Modal/icons.d.ts +2 -1
  240. package/dist/components/Modal/icons.d.ts.map +1 -1
  241. package/dist/components/ReactFileUtilities/FileIcon/FileIcon.d.ts +1 -1
  242. package/dist/components/ReactFileUtilities/FileIcon/FileIcon.d.ts.map +1 -1
  243. package/dist/components/ReactFileUtilities/FileIcon/FileIconSet/v1.d.ts +12 -12
  244. package/dist/components/ReactFileUtilities/FileIcon/FileIconSet/v1.d.ts.map +1 -1
  245. package/dist/components/ReactFileUtilities/FileIcon/FileIconSet/v2.d.ts +18 -18
  246. package/dist/components/ReactFileUtilities/FileIcon/FileIconSet/v2.d.ts.map +1 -1
  247. package/dist/components/ReactFileUtilities/FilePreviewer.d.ts +2 -1
  248. package/dist/components/ReactFileUtilities/FilePreviewer.d.ts.map +1 -1
  249. package/dist/components/ReactFileUtilities/FileUploadButton.d.ts +2 -2
  250. package/dist/components/ReactFileUtilities/FileUploadButton.d.ts.map +1 -1
  251. package/dist/components/ReactFileUtilities/FileUploadButton.js +3 -1
  252. package/dist/components/ReactFileUtilities/IconButton.d.ts +2 -2
  253. package/dist/components/ReactFileUtilities/IconButton.d.ts.map +1 -1
  254. package/dist/components/ReactFileUtilities/IconButton.js +3 -1
  255. package/dist/components/ReactFileUtilities/ImageDropzone.d.ts +2 -2
  256. package/dist/components/ReactFileUtilities/ImageDropzone.d.ts.map +1 -1
  257. package/dist/components/ReactFileUtilities/ImagePreviewer.d.ts +2 -2
  258. package/dist/components/ReactFileUtilities/ImagePreviewer.d.ts.map +1 -1
  259. package/dist/components/ReactFileUtilities/ImagePreviewer.js +3 -1
  260. package/dist/components/ReactFileUtilities/ImageUploadButton.d.ts +2 -2
  261. package/dist/components/ReactFileUtilities/ImageUploadButton.d.ts.map +1 -1
  262. package/dist/components/ReactFileUtilities/ImageUploadButton.js +3 -1
  263. package/dist/components/ReactFileUtilities/LoadingIndicator.d.ts +2 -1
  264. package/dist/components/ReactFileUtilities/LoadingIndicator.d.ts.map +1 -1
  265. package/dist/components/ReactFileUtilities/Thumbnail.d.ts +2 -2
  266. package/dist/components/ReactFileUtilities/Thumbnail.d.ts.map +1 -1
  267. package/dist/components/ReactFileUtilities/ThumbnailPlaceholder.d.ts +2 -1
  268. package/dist/components/ReactFileUtilities/ThumbnailPlaceholder.d.ts.map +1 -1
  269. package/dist/components/ReactFileUtilities/UploadButton.d.ts +2 -2
  270. package/dist/components/ReactFileUtilities/UploadButton.d.ts.map +1 -1
  271. package/dist/components/ReactFileUtilities/icons/AttachmentIcon.d.ts +2 -1
  272. package/dist/components/ReactFileUtilities/icons/AttachmentIcon.d.ts.map +1 -1
  273. package/dist/components/ReactFileUtilities/icons/CloseIcon.d.ts +2 -1
  274. package/dist/components/ReactFileUtilities/icons/CloseIcon.d.ts.map +1 -1
  275. package/dist/components/ReactFileUtilities/icons/FilePlaceholderIcon.d.ts +2 -2
  276. package/dist/components/ReactFileUtilities/icons/FilePlaceholderIcon.d.ts.map +1 -1
  277. package/dist/components/ReactFileUtilities/icons/PictureIcon.d.ts +2 -1
  278. package/dist/components/ReactFileUtilities/icons/PictureIcon.d.ts.map +1 -1
  279. package/dist/components/ReactFileUtilities/icons/RetryIcon.d.ts +2 -1
  280. package/dist/components/ReactFileUtilities/icons/RetryIcon.d.ts.map +1 -1
  281. package/dist/components/Reactions/ReactionsList.d.ts +7 -1
  282. package/dist/components/Reactions/ReactionsList.d.ts.map +1 -1
  283. package/dist/components/Reactions/ReactionsList.js +5 -3
  284. package/dist/components/Reactions/ReactionsListModal.d.ts +4 -3
  285. package/dist/components/Reactions/ReactionsListModal.d.ts.map +1 -1
  286. package/dist/components/Reactions/ReactionsListModal.js +18 -8
  287. package/dist/components/Reactions/SimpleReactionsList.d.ts +2 -1
  288. package/dist/components/Reactions/SimpleReactionsList.d.ts.map +1 -1
  289. package/dist/components/Reactions/SpriteImage.d.ts +2 -1
  290. package/dist/components/Reactions/SpriteImage.d.ts.map +1 -1
  291. package/dist/components/Reactions/SpriteImage.js +3 -17
  292. package/dist/components/Reactions/StreamEmoji.d.ts +1 -1
  293. package/dist/components/Reactions/StreamEmoji.d.ts.map +1 -1
  294. package/dist/components/Reactions/StreamEmoji.js +3 -1
  295. package/dist/components/Reactions/hooks/useFetchReactions.js +2 -2
  296. package/dist/components/Reactions/hooks/useProcessReactions.d.ts +5 -2
  297. package/dist/components/Reactions/hooks/useProcessReactions.d.ts.map +1 -1
  298. package/dist/components/Reactions/hooks/useProcessReactions.js +10 -3
  299. package/dist/components/Reactions/types.d.ts +4 -1
  300. package/dist/components/Reactions/types.d.ts.map +1 -1
  301. package/dist/components/SafeAnchor/SafeAnchor.d.ts +2 -2
  302. package/dist/components/SafeAnchor/SafeAnchor.d.ts.map +1 -1
  303. package/dist/components/SafeAnchor/SafeAnchor.js +3 -1
  304. package/dist/components/Thread/Thread.d.ts +1 -1
  305. package/dist/components/Thread/Thread.d.ts.map +1 -1
  306. package/dist/components/Thread/ThreadHead.d.ts +2 -1
  307. package/dist/components/Thread/ThreadHead.d.ts.map +1 -1
  308. package/dist/components/Thread/ThreadHeader.d.ts +1 -1
  309. package/dist/components/Thread/ThreadHeader.d.ts.map +1 -1
  310. package/dist/components/Thread/ThreadHeader.js +1 -1
  311. package/dist/components/Thread/ThreadStart.d.ts +2 -1
  312. package/dist/components/Thread/ThreadStart.d.ts.map +1 -1
  313. package/dist/components/Thread/icons.d.ts +2 -1
  314. package/dist/components/Thread/icons.d.ts.map +1 -1
  315. package/dist/components/Tooltip/Tooltip.d.ts +2 -2
  316. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  317. package/dist/components/TypingIndicator/TypingIndicator.d.ts +1 -1
  318. package/dist/components/TypingIndicator/TypingIndicator.d.ts.map +1 -1
  319. package/dist/components/UserItem/UserItem.d.ts +1 -1
  320. package/dist/components/UserItem/UserItem.d.ts.map +1 -1
  321. package/dist/components/Window/Window.d.ts +1 -1
  322. package/dist/components/Window/Window.d.ts.map +1 -1
  323. package/dist/context/ChannelActionContext.d.ts +4 -3
  324. package/dist/context/ChannelActionContext.d.ts.map +1 -1
  325. package/dist/context/ChannelListContext.d.ts +1 -1
  326. package/dist/context/ChannelListContext.d.ts.map +1 -1
  327. package/dist/context/ChannelStateContext.d.ts +2 -2
  328. package/dist/context/ChannelStateContext.d.ts.map +1 -1
  329. package/dist/context/ChatContext.d.ts +2 -2
  330. package/dist/context/ChatContext.d.ts.map +1 -1
  331. package/dist/context/ComponentContext.d.ts +2 -2
  332. package/dist/context/ComponentContext.d.ts.map +1 -1
  333. package/dist/context/MessageBounceContext.d.ts +2 -2
  334. package/dist/context/MessageBounceContext.d.ts.map +1 -1
  335. package/dist/context/MessageContext.d.ts +7 -2
  336. package/dist/context/MessageContext.d.ts.map +1 -1
  337. package/dist/context/MessageInputContext.d.ts +1 -1
  338. package/dist/context/MessageInputContext.d.ts.map +1 -1
  339. package/dist/context/MessageListContext.d.ts +1 -1
  340. package/dist/context/MessageListContext.d.ts.map +1 -1
  341. package/dist/context/TranslationContext.d.ts +2 -2
  342. package/dist/context/TranslationContext.d.ts.map +1 -1
  343. package/dist/context/TypingContext.d.ts +2 -2
  344. package/dist/context/TypingContext.d.ts.map +1 -1
  345. package/dist/css/v2/index.css +1 -1
  346. package/dist/css/v2/index.layout.css +1 -1
  347. package/dist/i18n/Streami18n.d.ts +19 -0
  348. package/dist/i18n/Streami18n.d.ts.map +1 -1
  349. package/dist/i18n/de.json +19 -0
  350. package/dist/i18n/en.json +19 -0
  351. package/dist/i18n/es.json +19 -0
  352. package/dist/i18n/fr.json +19 -0
  353. package/dist/i18n/hi.json +19 -0
  354. package/dist/i18n/it.json +19 -0
  355. package/dist/i18n/ja.json +19 -0
  356. package/dist/i18n/ko.json +19 -0
  357. package/dist/i18n/nl.json +19 -0
  358. package/dist/i18n/pt.json +19 -0
  359. package/dist/i18n/ru.json +19 -0
  360. package/dist/i18n/tr.json +19 -0
  361. package/dist/index.cjs.js +129 -54
  362. package/dist/scss/v2/MessageReactions/MessageReactions-layout.scss +15 -1
  363. package/dist/version.d.ts +1 -1
  364. package/dist/version.d.ts.map +1 -1
  365. package/dist/version.js +1 -1
  366. package/package.json +9 -6
package/dist/i18n/ko.json CHANGED
@@ -73,6 +73,25 @@
73
73
  "Wait until all attachments have uploaded": "모든 첨부 파일이 업로드될 때까지 기다립니다.",
74
74
  "You have no channels currently": "현재 채널이 없습니다.",
75
75
  "You've reached the maximum number of files": "최대 파일 수에 도달했습니다.",
76
+ "aria/Attachment": "첨부 파일",
77
+ "aria/Cancel Reply": "답장 취소",
78
+ "aria/Cancel upload": "업로드 취소",
79
+ "aria/Channel list": "채널 목록",
80
+ "aria/Channel search results": "채널 검색 결과",
81
+ "aria/Close thread": "스레드 닫기",
82
+ "aria/Emoji picker": "이모지 선택기",
83
+ "aria/File input": "파일 입력",
84
+ "aria/File upload": "파일 업로드",
85
+ "aria/Image input": "이미지 입력",
86
+ "aria/Load More Channels": "더 많은 채널 불러오기",
87
+ "aria/Menu": "메뉴",
88
+ "aria/Message Options": "메시지 옵션",
89
+ "aria/Open Message Actions Menu": "메시지 액션 메뉴 열기",
90
+ "aria/Open Reaction Selector": "반응 선택기 열기",
91
+ "aria/Open Thread": "스레드 열기",
92
+ "aria/Reaction list": "반응 목록",
93
+ "aria/Retry upload": "업로드 다시 시도",
94
+ "aria/Send": "보내기",
76
95
  "ban-command-args": "[@사용자이름] [텍스트]",
77
96
  "ban-command-description": "사용자를 차단",
78
97
  "giphy-command-args": "[텍스트]",
package/dist/i18n/nl.json CHANGED
@@ -73,6 +73,25 @@
73
73
  "Wait until all attachments have uploaded": "Wacht tot alle bijlagen zijn geüpload",
74
74
  "You have no channels currently": "Er zijn geen chats beschikbaar",
75
75
  "You've reached the maximum number of files": "Je hebt het maximale aantal bestanden bereikt",
76
+ "aria/Attachment": "Bijlage",
77
+ "aria/Cancel Reply": "Antwoord annuleren",
78
+ "aria/Cancel upload": "Upload annuleren",
79
+ "aria/Channel list": "Kanaallijst",
80
+ "aria/Channel search results": "Zoekresultaten voor kanalen",
81
+ "aria/Close thread": "Draad sluiten",
82
+ "aria/Emoji picker": "Emoji kiezer",
83
+ "aria/File input": "Bestandsinvoer",
84
+ "aria/File upload": "Bestand uploaden",
85
+ "aria/Image input": "Afbeelding invoeren",
86
+ "aria/Load More Channels": "Meer kanalen laden",
87
+ "aria/Menu": "Menu",
88
+ "aria/Message Options": "Berichtopties",
89
+ "aria/Open Message Actions Menu": "Menu voor berichtacties openen",
90
+ "aria/Open Reaction Selector": "Reactiekiezer openen",
91
+ "aria/Open Thread": "Draad openen",
92
+ "aria/Reaction list": "Reactielijst",
93
+ "aria/Retry upload": "Upload opnieuw proberen",
94
+ "aria/Send": "Verzenden",
76
95
  "ban-command-args": "[@gebruikersnaam] [tekst]",
77
96
  "ban-command-description": "Een gebruiker verbannen",
78
97
  "giphy-command-args": "[tekst]",
package/dist/i18n/pt.json CHANGED
@@ -73,6 +73,25 @@
73
73
  "Wait until all attachments have uploaded": "Espere até que todos os anexos tenham sido carregados",
74
74
  "You have no channels currently": "Você não tem canais atualmente",
75
75
  "You've reached the maximum number of files": "Você atingiu o número máximo de arquivos",
76
+ "aria/Attachment": "Bijlage",
77
+ "aria/Cancel Reply": "Antwoord annuleren",
78
+ "aria/Cancel upload": "Upload annuleren",
79
+ "aria/Channel list": "Kanaallijst",
80
+ "aria/Channel search results": "Zoekresultaten voor kanalen",
81
+ "aria/Close thread": "Draad sluiten",
82
+ "aria/Emoji picker": "Emoji kiezer",
83
+ "aria/File input": "Bestandsinvoer",
84
+ "aria/File upload": "Bestand uploaden",
85
+ "aria/Image input": "Afbeelding invoeren",
86
+ "aria/Load More Channels": "Meer kanalen laden",
87
+ "aria/Menu": "Menu",
88
+ "aria/Message Options": "Berichtopties",
89
+ "aria/Open Message Actions Menu": "Menu voor berichtacties openen",
90
+ "aria/Open Reaction Selector": "Reactiekiezer openen",
91
+ "aria/Open Thread": "Draad openen",
92
+ "aria/Reaction list": "Reactielijst",
93
+ "aria/Retry upload": "Upload opnieuw proberen",
94
+ "aria/Send": "Verzenden",
76
95
  "ban-command-args": "[@nomedeusuário] [texto]",
77
96
  "ban-command-description": "Banir um usuário",
78
97
  "giphy-command-args": "[texto]",
package/dist/i18n/ru.json CHANGED
@@ -73,6 +73,25 @@
73
73
  "Wait until all attachments have uploaded": "Подождите, пока все вложения загрузятся",
74
74
  "You have no channels currently": "У вас нет каналов в данный момент",
75
75
  "You've reached the maximum number of files": "Вы достигли максимального количества файлов",
76
+ "aria/Attachment": "Вложение",
77
+ "aria/Cancel Reply": "Отменить ответ",
78
+ "aria/Cancel upload": "Отменить загрузку",
79
+ "aria/Channel list": "Список каналов",
80
+ "aria/Channel search results": "Результаты поиска по каналам",
81
+ "aria/Close thread": "Закрыть тему",
82
+ "aria/Emoji picker": "Выбор эмодзи",
83
+ "aria/File input": "Ввод файла",
84
+ "aria/File upload": "Загрузка файла",
85
+ "aria/Image input": "Ввод изображения",
86
+ "aria/Load More Channels": "Загрузить больше каналов",
87
+ "aria/Menu": "Меню",
88
+ "aria/Message Options": "Параметры сообщения",
89
+ "aria/Open Message Actions Menu": "Открыть меню действий с сообщениями",
90
+ "aria/Open Reaction Selector": "Открыть селектор реакций",
91
+ "aria/Open Thread": "Открыть тему",
92
+ "aria/Reaction list": "Список реакций",
93
+ "aria/Retry upload": "Повторить загрузку",
94
+ "aria/Send": "Отправить",
76
95
  "ban-command-args": "[@имяпользователя] [текст]",
77
96
  "ban-command-description": "Заблокировать пользователя",
78
97
  "giphy-command-args": "[текст]",
package/dist/i18n/tr.json CHANGED
@@ -73,6 +73,25 @@
73
73
  "Wait until all attachments have uploaded": "Tüm ekler yüklenene kadar bekleyin",
74
74
  "You have no channels currently": "Henüz kanalınız yok",
75
75
  "You've reached the maximum number of files": "Maksimum dosya sayısına ulaştınız",
76
+ "aria/Attachment": "Bijlage",
77
+ "aria/Cancel Reply": "Antwoord annuleren",
78
+ "aria/Cancel upload": "Upload annuleren",
79
+ "aria/Channel list": "Kanaallijst",
80
+ "aria/Channel search results": "Zoekresultaten voor kanalen",
81
+ "aria/Close thread": "Draad sluiten",
82
+ "aria/Emoji picker": "Emoji kiezer",
83
+ "aria/File input": "Bestandsinvoer",
84
+ "aria/File upload": "Bestand uploaden",
85
+ "aria/Image input": "Afbeelding invoeren",
86
+ "aria/Load More Channels": "Meer kanalen laden",
87
+ "aria/Menu": "Menu",
88
+ "aria/Message Options": "Berichtopties",
89
+ "aria/Open Message Actions Menu": "Menu voor berichtacties openen",
90
+ "aria/Open Reaction Selector": "Reactiekiezer openen",
91
+ "aria/Open Thread": "Draad openen",
92
+ "aria/Reaction list": "Reactielijst",
93
+ "aria/Retry upload": "Upload opnieuw proberen",
94
+ "aria/Send": "Verzenden",
76
95
  "ban-command-args": "[@kullanıcıadı] [metin]",
77
96
  "ban-command-description": "Bir kullanıcıyı yasakla",
78
97
  "giphy-command-args": "[metin]",
package/dist/index.cjs.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Window = require('./Window-7c2f264c.js');
5
+ var Window = require('./Window-7d524c3b.js');
6
6
  var React = require('react');
7
7
  var reactVirtuoso = require('react-virtuoso');
8
8
  var throttle = require('lodash.throttle');
@@ -36,7 +36,6 @@ require('dayjs/locale/pt');
36
36
  require('dayjs/locale/ru');
37
37
  require('dayjs/locale/tr');
38
38
  require('dayjs/locale/en');
39
- require('react/jsx-runtime');
40
39
  require('react-player');
41
40
  require('pretty-bytes');
42
41
  require('prop-types');
@@ -46,6 +45,7 @@ require('react-textarea-autosize');
46
45
  require('textarea-caret');
47
46
  require('react-is');
48
47
  require('crypto');
48
+ require('react/jsx-runtime');
49
49
 
50
50
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
51
51
 
@@ -332,13 +332,17 @@ var MessageListMainPanel = function (_a) {
332
332
  return React__default["default"].createElement(React__default["default"].Fragment, null, children);
333
333
  };
334
334
 
335
- var targetIsVisibleInContainer = function (element, container) {
336
- var msgListHeight = container.getBoundingClientRect().height;
337
- var targetMessageY = element.getBoundingClientRect().y;
338
- return 0 <= targetMessageY && targetMessageY <= msgListHeight;
335
+ var targetScrolledAboveVisibleContainerArea = function (element) {
336
+ var targetBottom = element.getBoundingClientRect().bottom;
337
+ return targetBottom < 0;
338
+ };
339
+ var targetScrolledBelowVisibleContainerArea = function (element, container) {
340
+ var targetTop = element.getBoundingClientRect().top;
341
+ var containerBottom = container.getBoundingClientRect().top;
342
+ return targetTop > containerBottom;
339
343
  };
340
344
  var useUnreadMessagesNotification = function (_a) {
341
- var isMessageListScrolledToBottom = _a.isMessageListScrolledToBottom, unreadCount = _a.unreadCount;
345
+ var isMessageListScrolledToBottom = _a.isMessageListScrolledToBottom, showAlways = _a.showAlways, unreadCount = _a.unreadCount;
342
346
  var messages = Window.useChannelStateContext('UnreadMessagesNotification').messages;
343
347
  var _b = React.useState(false), show = _b[0], setShow = _b[1];
344
348
  var isScrolledAboveTargetTop = React.useRef(false);
@@ -356,22 +360,32 @@ var useUnreadMessagesNotification = function (_a) {
356
360
  setShow(true);
357
361
  return;
358
362
  }
359
- setShow(!targetIsVisibleInContainer(observedTarget, msgListPanel));
363
+ var scrolledBelowSeparator = targetScrolledAboveVisibleContainerArea(observedTarget);
364
+ var scrolledAboveSeparator = targetScrolledBelowVisibleContainerArea(observedTarget, msgListPanel);
365
+ setShow(showAlways ? scrolledBelowSeparator || scrolledAboveSeparator : scrolledBelowSeparator);
360
366
  var observer = new IntersectionObserver(function (elements) {
361
367
  if (!elements.length)
362
368
  return;
363
- var _a = elements[0], boundingClientRect = _a.boundingClientRect, isIntersecting = _a.isIntersecting, rootBounds = _a.rootBounds;
364
- var isScrolledAboveTargetTopCurrent = !!(rootBounds &&
365
- boundingClientRect &&
366
- rootBounds.bottom < boundingClientRect.top);
367
- setShow(!isIntersecting && !isScrolledAboveTargetTopCurrent);
368
- isScrolledAboveTargetTop.current = isScrolledAboveTargetTopCurrent;
369
+ var _a = elements[0], boundingClientRect = _a.boundingClientRect, isIntersecting = _a.isIntersecting;
370
+ if (isIntersecting) {
371
+ setShow(false);
372
+ return;
373
+ }
374
+ var separatorIsAboveContainerTop = boundingClientRect.bottom < 0;
375
+ setShow(showAlways || separatorIsAboveContainerTop);
376
+ isScrolledAboveTargetTop.current = separatorIsAboveContainerTop;
369
377
  }, { root: msgListPanel });
370
378
  observer.observe(observedTarget);
371
379
  return function () {
372
380
  observer.disconnect();
373
381
  };
374
- }, [intersectionObserverIsSupported, messages, unreadCount]);
382
+ }, [
383
+ intersectionObserverIsSupported,
384
+ isMessageListScrolledToBottom,
385
+ messages,
386
+ showAlways,
387
+ unreadCount,
388
+ ]);
375
389
  React.useEffect(function () {
376
390
  /**
377
391
  * Handle situation when scrollToBottom is called from another component when the msg list is scrolled above the observed target (unread separator).
@@ -397,31 +411,84 @@ var useUnreadMessagesNotification = function (_a) {
397
411
  * @param wasChannelMarkedUnread
398
412
  */
399
413
  var useMarkRead = function (_a) {
400
- var isMessageListScrolledToBottom = _a.isMessageListScrolledToBottom, markReadOnScrolledToBottom = _a.markReadOnScrolledToBottom, messageListIsThread = _a.messageListIsThread, unreadCount = _a.unreadCount;
401
- var markRead = Window.useChannelActionContext('useMarkRead').markRead;
414
+ var isMessageListScrolledToBottom = _a.isMessageListScrolledToBottom, messageListIsThread = _a.messageListIsThread, unreadCount = _a.unreadCount, wasMarkedUnread = _a.wasMarkedUnread;
415
+ var client = Window.useChatContext('useMarkRead').client;
416
+ var _b = Window.useChannelActionContext('useMarkRead'), markRead = _b.markRead, setChannelUnreadUiState = _b.setChannelUnreadUiState;
417
+ var channel = Window.useChannelStateContext('useMarkRead').channel;
418
+ var previousRenderMessageListScrolledToBottom = React.useRef(isMessageListScrolledToBottom);
402
419
  React.useEffect(function () {
403
- var shouldMarkRead = !messageListIsThread &&
404
- isMessageListScrolledToBottom &&
405
- markReadOnScrolledToBottom &&
406
- unreadCount > 0;
420
+ var shouldMarkRead = function (unreadMessages) {
421
+ return !document.hidden &&
422
+ !wasMarkedUnread &&
423
+ !messageListIsThread &&
424
+ isMessageListScrolledToBottom &&
425
+ unreadMessages > 0;
426
+ };
407
427
  var onVisibilityChange = function () {
408
- if (!document.hidden && shouldMarkRead)
428
+ if (shouldMarkRead(unreadCount))
429
+ markRead();
430
+ };
431
+ var handleMessageNew = function (event) {
432
+ var _a, _b, _c, _d;
433
+ var newMessageToCurrentChannel = event.cid === channel.cid;
434
+ var isOwnMessage = ((_a = event.user) === null || _a === void 0 ? void 0 : _a.id) && event.user.id === ((_b = client.user) === null || _b === void 0 ? void 0 : _b.id);
435
+ var mainChannelUpdated = !((_c = event.message) === null || _c === void 0 ? void 0 : _c.parent_id) || ((_d = event.message) === null || _d === void 0 ? void 0 : _d.show_in_channel);
436
+ if (isOwnMessage)
437
+ return;
438
+ if (!isMessageListScrolledToBottom || wasMarkedUnread || document.hidden) {
439
+ setChannelUnreadUiState(function (prev) {
440
+ var _a, _b;
441
+ var previousUnreadCount = (_a = prev === null || prev === void 0 ? void 0 : prev.unread_messages) !== null && _a !== void 0 ? _a : 0;
442
+ var previousLastMessage = getPreviousLastMessage(channel.state.messages, event.message);
443
+ return Window.__assign(Window.__assign({}, (prev || {})), { last_read: (_b = prev === null || prev === void 0 ? void 0 : prev.last_read) !== null && _b !== void 0 ? _b : (previousUnreadCount === 0 && (previousLastMessage === null || previousLastMessage === void 0 ? void 0 : previousLastMessage.created_at)
444
+ ? new Date(previousLastMessage.created_at)
445
+ : new Date(0)), unread_messages: previousUnreadCount + 1 });
446
+ });
447
+ }
448
+ else if (newMessageToCurrentChannel &&
449
+ mainChannelUpdated &&
450
+ !isOwnMessage &&
451
+ shouldMarkRead(channel.countUnread())) {
409
452
  markRead();
453
+ }
410
454
  };
455
+ client.on('message.new', handleMessageNew);
411
456
  document.addEventListener('visibilitychange', onVisibilityChange);
412
- if (shouldMarkRead)
457
+ var hasScrolledToBottom = previousRenderMessageListScrolledToBottom.current !== isMessageListScrolledToBottom &&
458
+ isMessageListScrolledToBottom;
459
+ if (shouldMarkRead(hasScrolledToBottom ? channel.countUnread() : unreadCount))
413
460
  markRead();
461
+ previousRenderMessageListScrolledToBottom.current = isMessageListScrolledToBottom;
414
462
  return function () {
463
+ client.off('message.new', handleMessageNew);
415
464
  document.removeEventListener('visibilitychange', onVisibilityChange);
416
465
  };
417
466
  }, [
467
+ channel,
468
+ client,
418
469
  isMessageListScrolledToBottom,
419
470
  markRead,
420
471
  messageListIsThread,
472
+ setChannelUnreadUiState,
421
473
  unreadCount,
422
- markReadOnScrolledToBottom,
474
+ wasMarkedUnread,
423
475
  ]);
424
476
  };
477
+ function getPreviousLastMessage(messages, newMessage) {
478
+ if (!newMessage)
479
+ return;
480
+ var previousLastMessage;
481
+ for (var i = messages.length - 1; i >= 0; i--) {
482
+ var msg = messages[i];
483
+ if (!(msg === null || msg === void 0 ? void 0 : msg.id))
484
+ break;
485
+ if (msg.id !== newMessage.id) {
486
+ previousLastMessage = msg;
487
+ break;
488
+ }
489
+ }
490
+ return previousLastMessage;
491
+ }
425
492
 
426
493
  var MessageListNotifications = function (props) {
427
494
  var hasNewMessages = props.hasNewMessages, isMessageListScrolledToBottom = props.isMessageListScrolledToBottom, isNotAtLatestMessageSet = props.isNotAtLatestMessageSet, MessageNotification = props.MessageNotification, notifications = props.notifications, scrollToBottom = props.scrollToBottom, threadList = props.threadList, unreadCount = props.unreadCount;
@@ -433,11 +500,13 @@ var MessageListNotifications = function (props) {
433
500
  };
434
501
 
435
502
  var UnreadMessagesNotification = function (_a) {
436
- var queryMessageLimit = _a.queryMessageLimit, unreadCount = _a.unreadCount;
503
+ var queryMessageLimit = _a.queryMessageLimit, showCount = _a.showCount, unreadCount = _a.unreadCount;
437
504
  var _b = Window.useChannelActionContext('UnreadMessagesNotification'), jumpToFirstUnreadMessage = _b.jumpToFirstUnreadMessage, markRead = _b.markRead;
438
505
  var t = Window.useTranslationContext('UnreadMessagesNotification').t;
439
506
  return (React__default["default"].createElement("div", { className: 'str-chat__unread-messages-notification', "data-testid": 'unread-messages-notification' },
440
- React__default["default"].createElement("button", { onClick: function () { return jumpToFirstUnreadMessage(queryMessageLimit); } }, t('{{count}} unread', { count: unreadCount !== null && unreadCount !== void 0 ? unreadCount : 0 })),
507
+ React__default["default"].createElement("button", { onClick: function () { return jumpToFirstUnreadMessage(queryMessageLimit); } }, unreadCount && showCount
508
+ ? t('{{count}} unread', { count: unreadCount !== null && unreadCount !== void 0 ? unreadCount : 0 })
509
+ : t('Unread messages')),
441
510
  React__default["default"].createElement("button", { onClick: function () { return markRead(); } },
442
511
  React__default["default"].createElement(Window.CloseIcon, null))));
443
512
  };
@@ -458,7 +527,8 @@ var InfiniteScroll = function (props) {
458
527
  var hasNextPageFlag = hasNextPage || hasMoreNewer;
459
528
  var hasPreviousPageFlag = hasPreviousPage || hasMore;
460
529
  var scrollComponent = React.useRef();
461
- var scrollListener = React.useCallback(function () {
530
+ var scrollListenerRef = React.useRef();
531
+ scrollListenerRef.current = function () {
462
532
  var element = scrollComponent.current;
463
533
  if (!element || element.offsetParent === null) {
464
534
  return;
@@ -481,15 +551,7 @@ var InfiniteScroll = function (props) {
481
551
  if (offset < Number(threshold) && typeof loadNextPageFn === 'function' && hasNextPageFlag) {
482
552
  loadNextPageFn();
483
553
  }
484
- }, [
485
- hasPreviousPageFlag,
486
- hasNextPageFlag,
487
- isLoading,
488
- listenToScroll,
489
- loadPreviousPageFn,
490
- loadNextPageFn,
491
- threshold,
492
- ]);
554
+ };
493
555
  React.useEffect(function () {
494
556
  Window.deprecationAndReplacementWarning([
495
557
  [{ hasMoreNewer: hasMoreNewer }, { hasNextPage: hasNextPage }],
@@ -504,13 +566,15 @@ var InfiniteScroll = function (props) {
504
566
  var scrollElement = (_a = scrollComponent.current) === null || _a === void 0 ? void 0 : _a.parentNode;
505
567
  if (!scrollElement)
506
568
  return;
569
+ var scrollListener = function () { var _a; return (_a = scrollListenerRef.current) === null || _a === void 0 ? void 0 : _a.call(scrollListenerRef); };
507
570
  scrollElement.addEventListener('scroll', scrollListener, useCapture);
508
571
  scrollElement.addEventListener('resize', scrollListener, useCapture);
572
+ scrollListener();
509
573
  return function () {
510
574
  scrollElement.removeEventListener('scroll', scrollListener, useCapture);
511
575
  scrollElement.removeEventListener('resize', scrollListener, useCapture);
512
576
  };
513
- }, [initialLoad, scrollListener, useCapture]);
577
+ }, [initialLoad, useCapture]);
514
578
  React.useEffect(function () {
515
579
  var _a;
516
580
  var scrollElement = (_a = scrollComponent.current) === null || _a === void 0 ? void 0 : _a.parentNode;
@@ -568,7 +632,7 @@ var MessageListWithContext = function (props) {
568
632
  var _a;
569
633
  var channel = props.channel, channelUnreadUiState = props.channelUnreadUiState, _b = props.disableDateSeparator, disableDateSeparator = _b === void 0 ? false : _b, groupStyles = props.groupStyles, _c = props.hideDeletedMessages, hideDeletedMessages = _c === void 0 ? false : _c, _d = props.hideNewMessageSeparator, hideNewMessageSeparator = _d === void 0 ? false : _d, internalInfiniteScrollProps = props.internalInfiniteScrollProps, _e = props.messageActions, messageActions = _e === void 0 ? Object.keys(Window.MESSAGE_ACTIONS) : _e, _f = props.messages, messages = _f === void 0 ? [] : _f, notifications = props.notifications, _g = props.noGroupByUser, noGroupByUser = _g === void 0 ? false : _g, _h = props.pinPermissions, pinPermissions = _h === void 0 ? Window.defaultPinPermissions : _h, // @deprecated in favor of `channelCapabilities` - TODO: remove in next major release
570
634
  _j = props.returnAllReadData, // @deprecated in favor of `channelCapabilities` - TODO: remove in next major release
571
- returnAllReadData = _j === void 0 ? false : _j, _k = props.threadList, threadList = _k === void 0 ? false : _k, _l = props.unsafeHTML, unsafeHTML = _l === void 0 ? false : _l, headerPosition = props.headerPosition, read = props.read, markReadOnScrolledToBottom = props.markReadOnScrolledToBottom, _m = props.renderMessages, renderMessages = _m === void 0 ? defaultRenderMessages : _m, _o = props.messageLimit, messageLimit = _o === void 0 ? 100 : _o, loadMoreCallback = props.loadMore, loadMoreNewerCallback = props.loadMoreNewer, _p = props.hasMoreNewer, hasMoreNewer = _p === void 0 ? false : _p, suppressAutoscroll = props.suppressAutoscroll, highlightedMessageId = props.highlightedMessageId, _q = props.jumpToLatestMessage, jumpToLatestMessage = _q === void 0 ? function () { return Promise.resolve(); } : _q;
635
+ returnAllReadData = _j === void 0 ? false : _j, _k = props.threadList, threadList = _k === void 0 ? false : _k, _l = props.unsafeHTML, unsafeHTML = _l === void 0 ? false : _l, headerPosition = props.headerPosition, read = props.read, _m = props.renderMessages, renderMessages = _m === void 0 ? defaultRenderMessages : _m, _o = props.messageLimit, messageLimit = _o === void 0 ? Window.DEFAULT_NEXT_CHANNEL_PAGE_SIZE : _o, loadMoreCallback = props.loadMore, loadMoreNewerCallback = props.loadMoreNewer, _p = props.hasMoreNewer, hasMoreNewer = _p === void 0 ? false : _p, showUnreadNotificationAlways = props.showUnreadNotificationAlways, suppressAutoscroll = props.suppressAutoscroll, highlightedMessageId = props.highlightedMessageId, _q = props.jumpToLatestMessage, jumpToLatestMessage = _q === void 0 ? function () { return Promise.resolve(); } : _q;
572
636
  var _r = React__default["default"].useState(null), listElement = _r[0], setListElement = _r[1];
573
637
  var _s = React__default["default"].useState(null), ulElement = _s[0], setUlElement = _s[1];
574
638
  var customClasses = Window.useChatContext('MessageList').customClasses;
@@ -584,13 +648,14 @@ var MessageListWithContext = function (props) {
584
648
  }), hasNewMessages = _0.hasNewMessages, isMessageListScrolledToBottom = _0.isMessageListScrolledToBottom, onScroll = _0.onScroll, scrollToBottom = _0.scrollToBottom, wrapperRect = _0.wrapperRect;
585
649
  var showUnreadMessagesNotification = useUnreadMessagesNotification({
586
650
  isMessageListScrolledToBottom: isMessageListScrolledToBottom,
651
+ showAlways: !!showUnreadNotificationAlways,
587
652
  unreadCount: channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.unread_messages,
588
653
  }).show;
589
654
  useMarkRead({
590
655
  isMessageListScrolledToBottom: isMessageListScrolledToBottom,
591
- markReadOnScrolledToBottom: markReadOnScrolledToBottom,
592
656
  messageListIsThread: threadList,
593
657
  unreadCount: (_a = channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.unread_messages) !== null && _a !== void 0 ? _a : 0,
658
+ wasMarkedUnread: !!(channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.first_unread_message_id),
594
659
  });
595
660
  var _1 = useEnrichedMessages({
596
661
  channel: channel,
@@ -903,19 +968,25 @@ var useScrollToBottomOnNewMessage = function (_a) {
903
968
  * `UnreadMessagesNotification` component is rendered. This is an approximate equivalent to being
904
969
  * scrolled below the `UnreadMessagesNotification` component.
905
970
  * @param lastRead
971
+ * @param showAlways
906
972
  * @param unreadCount
907
973
  */
908
974
  var useUnreadMessagesNotificationVirtualized = function (_a) {
909
- var lastRead = _a.lastRead, unreadCount = _a.unreadCount;
975
+ var lastRead = _a.lastRead, showAlways = _a.showAlways, unreadCount = _a.unreadCount;
910
976
  var _b = React.useState(false), show = _b[0], setShow = _b[1];
911
977
  var toggleShowUnreadMessagesNotification = React.useCallback(function (renderedMessages) {
912
- if (!renderedMessages.length)
978
+ if (!unreadCount)
979
+ return;
980
+ var firstRenderedMessage = renderedMessages[0];
981
+ var lastRenderedMessage = renderedMessages.slice(-1)[0];
982
+ if (!(firstRenderedMessage && lastRenderedMessage))
913
983
  return;
914
- var firstRenderedMessageTimestamp = renderedMessages[0].created_at
915
- ? new Date(renderedMessages[0].created_at).getTime()
916
- : 0;
917
- setShow(unreadCount > 0 && !!lastRead && firstRenderedMessageTimestamp > lastRead.getTime());
918
- }, [unreadCount, lastRead]);
984
+ var scrolledBelowSeparator = !!lastRead &&
985
+ new Date(firstRenderedMessage.created_at).getTime() > lastRead.getTime();
986
+ var scrolledAboveSeparator = !!lastRead &&
987
+ new Date(lastRenderedMessage.created_at).getTime() < lastRead.getTime();
988
+ setShow(showAlways ? scrolledBelowSeparator || scrolledAboveSeparator : scrolledBelowSeparator);
989
+ }, [lastRead, showAlways, unreadCount]);
919
990
  React.useEffect(function () {
920
991
  if (!unreadCount)
921
992
  setShow(false);
@@ -978,7 +1049,7 @@ var Footer = function () {
978
1049
  };
979
1050
  var messageRenderer = function (virtuosoIndex, _data, virtuosoContext) {
980
1051
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
981
- var additionalMessageInputProps = virtuosoContext.additionalMessageInputProps, closeReactionSelectorOnClick = virtuosoContext.closeReactionSelectorOnClick, customMessageActions = virtuosoContext.customMessageActions, customMessageRenderer = virtuosoContext.customMessageRenderer, DateSeparator = virtuosoContext.DateSeparator, firstUnreadMessageId = virtuosoContext.firstUnreadMessageId, lastReadMessageId = virtuosoContext.lastReadMessageId, lastReceivedMessageId = virtuosoContext.lastReceivedMessageId, MessageUIComponent = virtuosoContext.Message, messageActions = virtuosoContext.messageActions, MessageSystem = virtuosoContext.MessageSystem, numItemsPrepended = virtuosoContext.numItemsPrepended, ownMessagesReadByOthers = virtuosoContext.ownMessagesReadByOthers, messageList = virtuosoContext.processedMessages, shouldGroupByUser = virtuosoContext.shouldGroupByUser, _k = virtuosoContext.unreadMessageCount, unreadMessageCount = _k === void 0 ? 0 : _k, UnreadMessagesSeparator = virtuosoContext.UnreadMessagesSeparator, virtuosoRef = virtuosoContext.virtuosoRef;
1052
+ var additionalMessageInputProps = virtuosoContext.additionalMessageInputProps, closeReactionSelectorOnClick = virtuosoContext.closeReactionSelectorOnClick, customMessageActions = virtuosoContext.customMessageActions, customMessageRenderer = virtuosoContext.customMessageRenderer, DateSeparator = virtuosoContext.DateSeparator, firstUnreadMessageId = virtuosoContext.firstUnreadMessageId, lastReadMessageId = virtuosoContext.lastReadMessageId, lastReceivedMessageId = virtuosoContext.lastReceivedMessageId, MessageUIComponent = virtuosoContext.Message, messageActions = virtuosoContext.messageActions, MessageSystem = virtuosoContext.MessageSystem, numItemsPrepended = virtuosoContext.numItemsPrepended, ownMessagesReadByOthers = virtuosoContext.ownMessagesReadByOthers, messageList = virtuosoContext.processedMessages, shouldGroupByUser = virtuosoContext.shouldGroupByUser, sortReactionDetails = virtuosoContext.sortReactionDetails, sortReactions = virtuosoContext.sortReactions, _k = virtuosoContext.unreadMessageCount, unreadMessageCount = _k === void 0 ? 0 : _k, UnreadMessagesSeparator = virtuosoContext.UnreadMessagesSeparator, virtuosoRef = virtuosoContext.virtuosoRef;
982
1053
  var streamMessageIndex = calculateItemIndex(virtuosoIndex, numItemsPrepended);
983
1054
  if (customMessageRenderer) {
984
1055
  return customMessageRenderer(messageList, streamMessageIndex);
@@ -1001,7 +1072,7 @@ var messageRenderer = function (virtuosoIndex, _data, virtuosoContext) {
1001
1072
  var isLastReadMessage = message.id === lastReadMessageId;
1002
1073
  var showUnreadSeparator = isLastReadMessage && !isNewestMessage && (firstUnreadMessageId || unreadMessageCount > 0); // unread count can be 0 if the user marks unread only own messages
1003
1074
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
1004
- React__default["default"].createElement(Window.Message, { additionalMessageInputProps: additionalMessageInputProps, autoscrollToBottom: (_j = virtuosoRef.current) === null || _j === void 0 ? void 0 : _j.autoscrollToBottom, closeReactionSelectorOnClick: closeReactionSelectorOnClick, customMessageActions: customMessageActions, endOfGroup: endOfGroup, firstOfGroup: firstOfGroup, groupedByUser: groupedByUser, lastReceivedId: lastReceivedMessageId, message: message, Message: MessageUIComponent, messageActions: messageActions, readBy: ownMessagesReadByOthers[message.id] || [] }),
1075
+ React__default["default"].createElement(Window.Message, { additionalMessageInputProps: additionalMessageInputProps, autoscrollToBottom: (_j = virtuosoRef.current) === null || _j === void 0 ? void 0 : _j.autoscrollToBottom, closeReactionSelectorOnClick: closeReactionSelectorOnClick, customMessageActions: customMessageActions, endOfGroup: endOfGroup, firstOfGroup: firstOfGroup, groupedByUser: groupedByUser, lastReceivedId: lastReceivedMessageId, message: message, Message: MessageUIComponent, messageActions: messageActions, readBy: ownMessagesReadByOthers[message.id] || [], sortReactionDetails: sortReactionDetails, sortReactions: sortReactions }),
1005
1076
  showUnreadSeparator && (React__default["default"].createElement("div", { className: 'str-chat__unread-messages-separator-wrapper' },
1006
1077
  React__default["default"].createElement(UnreadMessagesSeparator, { unreadCount: unreadMessageCount })))));
1007
1078
  };
@@ -1037,11 +1108,11 @@ function calculateInitialTopMostItemIndex(messages, highlightedMessageId) {
1037
1108
  }
1038
1109
  var VirtualizedMessageListWithContext = function (props) {
1039
1110
  var _a, _b;
1040
- var additionalMessageInputProps = props.additionalMessageInputProps, _c = props.additionalVirtuosoProps, additionalVirtuosoProps = _c === void 0 ? {} : _c, channel = props.channel, channelUnreadUiState = props.channelUnreadUiState, closeReactionSelectorOnClick = props.closeReactionSelectorOnClick, customMessageActions = props.customMessageActions, customMessageRenderer = props.customMessageRenderer, defaultItemHeight = props.defaultItemHeight, _d = props.disableDateSeparator, disableDateSeparator = _d === void 0 ? true : _d, groupStyles = props.groupStyles, hasMoreNewer = props.hasMoreNewer, head = props.head, _e = props.hideDeletedMessages, hideDeletedMessages = _e === void 0 ? false : _e, _f = props.hideNewMessageSeparator, hideNewMessageSeparator = _f === void 0 ? false : _f, highlightedMessageId = props.highlightedMessageId, jumpToLatestMessage = props.jumpToLatestMessage, loadingMore = props.loadingMore, loadMore = props.loadMore, loadMoreNewer = props.loadMoreNewer, markReadOnScrolledToBottom = props.markReadOnScrolledToBottom, MessageUIComponentFromProps = props.Message, messageActions = props.messageActions, _g = props.messageLimit, messageLimit = _g === void 0 ? 100 : _g, messages = props.messages, notifications = props.notifications,
1111
+ var additionalMessageInputProps = props.additionalMessageInputProps, _c = props.additionalVirtuosoProps, additionalVirtuosoProps = _c === void 0 ? {} : _c, channel = props.channel, channelUnreadUiState = props.channelUnreadUiState, closeReactionSelectorOnClick = props.closeReactionSelectorOnClick, customMessageActions = props.customMessageActions, customMessageRenderer = props.customMessageRenderer, defaultItemHeight = props.defaultItemHeight, _d = props.disableDateSeparator, disableDateSeparator = _d === void 0 ? true : _d, groupStyles = props.groupStyles, hasMoreNewer = props.hasMoreNewer, head = props.head, _e = props.hideDeletedMessages, hideDeletedMessages = _e === void 0 ? false : _e, _f = props.hideNewMessageSeparator, hideNewMessageSeparator = _f === void 0 ? false : _f, highlightedMessageId = props.highlightedMessageId, jumpToLatestMessage = props.jumpToLatestMessage, loadingMore = props.loadingMore, loadMore = props.loadMore, loadMoreNewer = props.loadMoreNewer, MessageUIComponentFromProps = props.Message, messageActions = props.messageActions, _g = props.messageLimit, messageLimit = _g === void 0 ? Window.DEFAULT_NEXT_CHANNEL_PAGE_SIZE : _g, messages = props.messages, notifications = props.notifications,
1041
1112
  // TODO: refactor to scrollSeekPlaceHolderConfiguration and components.ScrollSeekPlaceholder, like the Virtuoso Component
1042
1113
  _h = props.overscan,
1043
1114
  // TODO: refactor to scrollSeekPlaceHolderConfiguration and components.ScrollSeekPlaceholder, like the Virtuoso Component
1044
- overscan = _h === void 0 ? 0 : _h, read = props.read, _j = props.returnAllReadData, returnAllReadData = _j === void 0 ? false : _j, scrollSeekPlaceHolder = props.scrollSeekPlaceHolder, _k = props.scrollToLatestMessageOnFocus, scrollToLatestMessageOnFocus = _k === void 0 ? false : _k, _l = props.separateGiphyPreview, separateGiphyPreview = _l === void 0 ? false : _l, _m = props.shouldGroupByUser, shouldGroupByUser = _m === void 0 ? false : _m, _o = props.stickToBottomScrollBehavior, stickToBottomScrollBehavior = _o === void 0 ? 'smooth' : _o, suppressAutoscroll = props.suppressAutoscroll, threadList = props.threadList;
1115
+ overscan = _h === void 0 ? 0 : _h, read = props.read, _j = props.returnAllReadData, returnAllReadData = _j === void 0 ? false : _j, scrollSeekPlaceHolder = props.scrollSeekPlaceHolder, _k = props.scrollToLatestMessageOnFocus, scrollToLatestMessageOnFocus = _k === void 0 ? false : _k, _l = props.separateGiphyPreview, separateGiphyPreview = _l === void 0 ? false : _l, _m = props.shouldGroupByUser, shouldGroupByUser = _m === void 0 ? false : _m, showUnreadNotificationAlways = props.showUnreadNotificationAlways, sortReactionDetails = props.sortReactionDetails, sortReactions = props.sortReactions, _o = props.stickToBottomScrollBehavior, stickToBottomScrollBehavior = _o === void 0 ? 'smooth' : _o, suppressAutoscroll = props.suppressAutoscroll, threadList = props.threadList;
1045
1116
  var virtuosoComponentsFromProps = additionalVirtuosoProps.components, overridingVirtuosoProps = Window.__rest(additionalVirtuosoProps, ["components"]);
1046
1117
  // Stops errors generated from react-virtuoso to bubble up
1047
1118
  // to Sentry or other tracking tools.
@@ -1053,6 +1124,7 @@ var VirtualizedMessageListWithContext = function (props) {
1053
1124
  var lastRead = React.useMemo(function () { var _a; return (_a = channel.lastRead) === null || _a === void 0 ? void 0 : _a.call(channel); }, [channel]);
1054
1125
  var _w = useUnreadMessagesNotificationVirtualized({
1055
1126
  lastRead: channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.last_read,
1127
+ showAlways: !!showUnreadNotificationAlways,
1056
1128
  unreadCount: (_a = channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.unread_messages) !== null && _a !== void 0 ? _a : 0,
1057
1129
  }), showUnreadMessagesNotification = _w.show, toggleShowUnreadMessagesNotification = _w.toggleShowUnreadMessagesNotification;
1058
1130
  var _x = useGiphyPreview(separateGiphyPreview), giphyPreviewMessage = _x.giphyPreviewMessage, setGiphyPreviewMessage = _x.setGiphyPreviewMessage;
@@ -1110,9 +1182,9 @@ var VirtualizedMessageListWithContext = function (props) {
1110
1182
  var _y = useNewMessageNotification(processedMessages, client.userID, hasMoreNewer), atBottom = _y.atBottom, isMessageListScrolledToBottom = _y.isMessageListScrolledToBottom, newMessagesNotification = _y.newMessagesNotification, setIsMessageListScrolledToBottom = _y.setIsMessageListScrolledToBottom, setNewMessagesNotification = _y.setNewMessagesNotification;
1111
1183
  useMarkRead({
1112
1184
  isMessageListScrolledToBottom: isMessageListScrolledToBottom,
1113
- markReadOnScrolledToBottom: markReadOnScrolledToBottom,
1114
1185
  messageListIsThread: !!threadList,
1115
1186
  unreadCount: (_b = channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.unread_messages) !== null && _b !== void 0 ? _b : 0,
1187
+ wasMarkedUnread: !!(channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.first_unread_message_id),
1116
1188
  });
1117
1189
  var scrollToBottom = React.useCallback(function () { return Window.__awaiter(void 0, void 0, void 0, function () {
1118
1190
  return Window.__generator(this, function (_a) {
@@ -1168,8 +1240,9 @@ var VirtualizedMessageListWithContext = function (props) {
1168
1240
  }
1169
1241
  };
1170
1242
  var atTopStateChange = function (isAtTop) {
1171
- if (isAtTop)
1243
+ if (isAtTop) {
1172
1244
  loadMore === null || loadMore === void 0 ? void 0 : loadMore(messageLimit);
1245
+ }
1173
1246
  };
1174
1247
  React.useEffect(function () {
1175
1248
  var scrollTimeout;
@@ -1212,6 +1285,8 @@ var VirtualizedMessageListWithContext = function (props) {
1212
1285
  ownMessagesReadByOthers: ownMessagesReadByOthers,
1213
1286
  processedMessages: processedMessages,
1214
1287
  shouldGroupByUser: shouldGroupByUser,
1288
+ sortReactionDetails: sortReactionDetails,
1289
+ sortReactions: sortReactions,
1215
1290
  threadList: threadList,
1216
1291
  unreadMessageCount: channelUnreadUiState === null || channelUnreadUiState === void 0 ? void 0 : channelUnreadUiState.unread_messages,
1217
1292
  UnreadMessagesSeparator: UnreadMessagesSeparator,
@@ -1231,7 +1306,7 @@ function VirtualizedMessageList(props) {
1231
1306
  return (React__default["default"].createElement(VirtualizedMessageListWithContext, Window.__assign({ channel: channel, channelUnreadUiState: channelUnreadUiState, hasMore: !!hasMore, hasMoreNewer: !!hasMoreNewer, highlightedMessageId: highlightedMessageId, jumpToLatestMessage: jumpToLatestMessage, loadingMore: !!loadingMore, loadingMoreNewer: !!loadingMoreNewer, loadMore: loadMore, loadMoreNewer: loadMoreNewer, messages: messages, notifications: notifications, read: read, suppressAutoscroll: suppressAutoscroll }, props)));
1232
1307
  }
1233
1308
 
1234
- var version = '11.8.0';
1309
+ var version = '11.10.0';
1235
1310
 
1236
1311
  var useChat = function (_a) {
1237
1312
  var _b, _c;
@@ -1471,7 +1546,7 @@ var ThreadHeader = function (props) {
1471
1546
  React__default["default"].createElement("div", { className: 'str-chat__thread-header-details' },
1472
1547
  React__default["default"].createElement("div", { className: 'str-chat__thread-header-title' }, t('Thread')),
1473
1548
  React__default["default"].createElement("div", { className: 'str-chat__thread-header-subtitle' }, displayTitle)),
1474
- React__default["default"].createElement("button", { "aria-label": 'Close thread', className: 'str-chat__square-button str-chat__close-thread-button', "data-testid": 'close-button', onClick: closeThread },
1549
+ React__default["default"].createElement("button", { "aria-label": t('aria/Close thread'), className: 'str-chat__square-button str-chat__close-thread-button', "data-testid": 'close-button', onClick: closeThread },
1475
1550
  React__default["default"].createElement(CloseIcon, null))));
1476
1551
  };
1477
1552
 
@@ -104,21 +104,35 @@
104
104
  padding: var(--str-chat__spacing-1) 0;
105
105
  flex-shrink: 0;
106
106
  cursor: pointer;
107
+
108
+ .str-chat__message-reaction-emoji--with-fallback {
109
+ width: 18px;
110
+ line-height: 18px;
111
+ }
107
112
  }
108
113
  }
109
114
 
110
115
  .str-chat__message-reaction-emoji-big {
116
+ --str-chat__stream-emoji-size: 1em;
111
117
  align-self: center;
112
118
  font-size: 2rem;
113
119
  }
114
120
 
121
+ .str-chat__message-reaction-emoji-big.str-chat__message-reaction-emoji--with-fallback {
122
+ line-height: 2rem;
123
+ }
124
+
115
125
  .str-chat__message-reactions-details-reacting-users {
116
126
  display: flex;
117
127
  flex-direction: column;
118
128
  gap: var(--str-chat__spacing-3);
119
129
  max-height: 100%;
120
130
  overflow-y: auto;
121
- min-height: 0;
131
+ min-height: 30vh;
132
+
133
+ .str-chat__loading-indicator {
134
+ margin: auto;
135
+ }
122
136
 
123
137
  .str-chat__message-reactions-details-reacting-user {
124
138
  display: flex;
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "11.8.0";
1
+ export declare const version = "11.10.0";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,WAAW,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,YAAY,CAAC"}
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export var version = '11.8.0';
1
+ export var version = '11.10.0';